Thanks. I've managed to setup most of this system. However, how would I implement the JIRA step? Would this be a ShellCommand?
I already have a script that can lookup the JIRA ticket ID from the current checked-out git branch and add a comment to JIRA using the API, but how would this step know the result of the unittests ran in the previous step? On Sun, Dec 6, 2015 at 5:15 AM, Pierre Tardy <[email protected]> wrote: > Hi Chris, > This workflow is pretty common CI. > Buildbot is perfectly suited to implement it. The framework > > 1) If you have arbitrary branch name, you would use a single > AnyBranchScheduler, and then use the "branch" property to figure out your > working directory/ > > 2) If you have a predefined set of branches (e.g prod, staging, mainline), > then you might want to create one builder per branch, and then use a branch > filter to choose which branch goes to which builder. > > In anycase you would need one change source, whether its the basic > gitpoller or more fancy gerrit/github/gitlab change sources. > > If you want to update JIRA based on the results you can do that using the > JIRA REST api, in one of your final steps and python tool like requests. > buildbot does not have any out of the box tool to update JIRA > How you get the value of the JIRA request depends on the detail of your > workflow. > > > HTH, > Pierre > Le jeu. 3 déc. 2015 à 22:54, Chris Spencer <[email protected]> a écrit : > >> Hi, I'm new to Buildbot and I'm researching it to see if it'll fit into >> my dev workflow. >> >> I have unittests that take about 45 minutes to complete. They're a mix of >> Django and Selenium tests which get run against multiple client >> configurations. Since they take so long to run, I want to automate the >> process as much as possible. >> >> I have a small dev team, and all work is done through Git branches. I'd >> like to configure Buildbot so that whenever someone pushes a change to a >> "primary" Git repo on Bitbucket, Buildbot will: >> >> 1. Checkout the branch. >> 2. Create a separate Python virtualenv for that branch (and do nothing if >> a pip-requirements.txt was not changed since the last run for this branch) >> 3. Install system packages from an apt-requirements.txt (just a list of >> standard Ubuntu packages). >> 4. Run Django's `manage.py test <list of apps>` to run all tests, and >> email the branch's last committer if an error occurred. >> 5. If another commit is made while the tests are running, the ongoing >> tests should be aborted, and restarted. >> 6. Publish the test results in a Jira ticket associated with the branch. >> >> Is this something that's within Buildbot's wheelhouse? I'm reading >> through the intro docs now, but I'm not finding anything about setting it >> up to poll and test every single branch in your repo. >> >> Regards, >> Chris >> _______________________________________________ >> users mailing list >> [email protected] >> https://lists.buildbot.net/mailman/listinfo/users > >
_______________________________________________ users mailing list [email protected] https://lists.buildbot.net/mailman/listinfo/users
