Giter VIP home page Giter VIP logo

gittreasures's Introduction

GitTreasures


Retired

As of March 2021, this project is no longer being maintained. It was a hacky workaround of a solution for an internal team problem to begin with, and while it has served that purpose well over the last few years, the team using it has evolved, and its processes are more mature today than they were when this layer of middleware was written. Thus, it is no longer needed.

If you have perused the repo and still think that this project might be beneficial, then feel free to fork it and use it. The code should be straightforward and adequately self-documented, but I'm happy to provide implementation assistance either via extended documentation or a video call, or else to discuss arrangements for hosting/implementing for you.

If all you need is integration TestRail, then you should use TestRailYak, which is a package I built on top of Gurock's TestRail API binding that makes it easy to read and write to a TestRail instance.


GitTreasures is a solution for facilitating Gitflow using a source control application, a source of support tickets and/or new development stories, and a Kanban type board. For source control, currently git based option GitLab is supported, along with plans to add GitHub support in the very near future. There is also support for a local git instance. The development tasks can come from Jira, from GitHub or GitLab issues. Support for other issue tracking software is not on the foreseeable horizon, but it is definitely something I would be interested in working with someone else on if anyone wanted to help. Lastly, Trello is the project board I chose due to its flexibility and ease of use.

Why not just use the existing integrations between those tools, you ask?

Great question! If your tooling is solely for personal projects and you would rather use the existing integrations, becasue you control all of the aspects, then by all means use those instead.

If you work for someone who lets you have direct access to the repositories and the support ticketing system, or you are the one who makes those decisions, then you may also choose to use an existing solution.

If any one of those systems is provided to you, but are restricted in such a way that it is not possible to access the data you need, then hacky workarounds are your friend. This was created during a time when I didn't have the ability to just hook into Jira and tightly couple Trello actions to it.

Even with all the existing tools at your disposal, you may decide you want to do something fancy, or something hyper specific to your own workflow that the other plugins do not support. GitTreasures can be easily extended and is written in Python to make development fast and fun.

Instructions

If using Python 3

Due to changes in the urllib package between Python 2 and 3, Python 3 users must modify the first line in __init__.py of the Trello package in /<python directory>/Lib/site-packages/trello/. Instead of from urllib import quote_plus, that import statement should be from urllib import parse

These instructions are for integration with a GitLab hosted repository. GitHub integration is not set up yet but will likely be very similar to GitLab. Task scripts will be kept around for setup with a local copy of just the commits (I think I ran git clone --no-checkout to just get the Git data) but further documentation will not be prioritized for a while (feel free to help with that).

Steps

  1. Clone repo wherever you want to use GitTreasures

git clone <repository>

  1. Create data/ inside GitTreasures/

cd GitTreasures/ && mkdir data

  1. Copy task_scripts/init.py script to project root

cp task_scripts/init.py .

  1. Run init.py to initialize the database with commit data

cd ../ && python task_scripts/db_setup.py

Endpoint

This tool has the option of being run from the command line, a CI server such as Travis or Jenkins, or as an endpoint with a simple Flask front end:

Screenshot

To run the Flask version of this endpoint locally:

python endpoint.py

Then in your browser, navigate to http://localhost:5000/ and click one of the links to run GitTreasures in Live Mode or Test Mode, or the TestRail update script.

To run the NodeJS version of the endpoint, which was added when the Trello plugin was added, follow the steps below for the plugin.

Trello Plugin

To run:

cd trello_plugin

  1. Install dependencies:

npm install

  1. Start the server:

npm start

Then, follow the prompts in the Trello UI to connect to add some custom buttons to each Trello card. Written to meet board automation needs before Butler was acquired by Trello and folded into their offerings.

gittreasures's People

Contributors

bbeale avatar dependabot[bot] avatar

Stargazers

 avatar

Watchers

James Cloos avatar

Forkers

monamehrsa

gittreasures's Issues

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.