Giter Site home page Giter Site logo

smithmicro / bamboo-ci-health Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 95 KB

Health reporting tool for Bamboo CI builds

Home Page: https://bamboo.your-company.com

License: The Unlicense

Python 95.19% Dockerfile 4.81%
bamboo-server health reporting

bamboo-ci-health's People

Contributors

mblomdahl avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

mblomdahl

bamboo-ci-health's Issues

Where is this cool `generate_reports.py` script that I've been reading about in the README?

Right now, it's just a script that does nothing.

#!/usr/bin/env python3
'''
generate_reports.py
===================

A command-line tool for generating HTML reports from Bamboo MySQL database.
'''

import click

@click.command()
def generate_reports():
    """Generate Bamboo reports."""

if __name__ == '__main__':
    generate_reports()

Should it be something here, maybe?

Missing support for Git LFS

When running local agents on the Bamboo master, git checkout does not work on LFS repos. Can we update the Bamboo server Dockerfile to install and initialize this git addon?

VirtualEnv with Pandas and MySQL 5.7 Support

We need a Python 3 virtualenv to work from, it should have everything needed to create a simple command line tool which queries Bamboo's MySQL database and return the data as easily managed DataFrames. E.g.

pip install pandas click ipython sqlalchemy pymysql wheel

Instructions and Docker Support for Running Bamboo Locally

We need to be able to run a local Bamboo server with MySQL, in order to have realistic database contents to generate reports from.

Instructions on how to run MySQL server in Docker: https://hub.docker.com/_/mysql

services:
  mysql_server:
    image: mysql/mysql-server:5.7
    container_name: bamboo_mysql
    command: --default-authentication-plugin=mysql_native_password
    ports:
      - target: 3306
        published: 3306
        protocol: tcp
        mode: host
    environment:
      - MYSQL_DATABASE=bamboo
      - MYSQL_USER=bamboo
      - MYSQL_ROOT_PASSWORD=*******
    volumes:
      - bamboo_mysql:/var/lib/mysql:rw

Instructions on how to run Bamboo server in Docker: https://hub.docker.com/r/atlassian/bamboo-server

services:
  bamboo_server:
    image: atlassian/bamboo-server:8.2.5
    container_name: bamboo_server
    depends_on:
      - mysql_server
    ports:
      - target: 8085
        published: 8085
        protocol: tcp
        mode: host
    environment:
      - ATL_PROXY_NAME=mblomdahl-mkdevops-se-bamboo-ci-health-7gwq6wr562p5qw-8085.githubpreview.dev
      - ATL_PROXY_PORT=443
      - ATL_LICENSE=AAA...X02kc
      - ATL_JDBC_URL=jdbc:mysql://bamboo_mysql:3306/bamboo
      - ATL_JDBC_USER=bamboo
      - ATL_JDBC_PASSWORD=********
      - ATL_JDBC_TYPE=mysql
    volumes:
      - bamboo_server:/var/atlassian/application/application-data/bamboo:rw

Example Ansible tasks for downloading MySQL driver:

  # See https://confluence.atlassian.com/bamboo/mysql-289276817.html
- name: download mysql connector
  unarchive:
    src: https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.44.tar.gz
    dest: /tmp
    remote_src: yes
    creates: /tmp/mysql-connector-java-5.1.44
  tags: bamboo

- name: add mysql connector to bamboo install
  shell: cp -v /tmp/mysql-connector-java-5.1.44/mysql-connector-java-5.1.44-bin.jar
         /opt/atlassian/atlassian-bamboo-latest/lib/
  args:
    creates: /opt/atlassian/atlassian-bamboo-latest/lib/mysql-connector-java-5.1.44-bin.jar
  become: yes
  become_user: bamboo
  tags: bamboo

These should be compiled into a docker-compose.yml that we can run without too much hazzle.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.