Skip to content
This repository has been archived by the owner on Mar 11, 2021. It is now read-only.

provide a REST API we can use from Jenkins Pipelines and other build processes to report that a CI / CD job has deployed a build to an environment #726

Open
jstrachan opened this issue Feb 3, 2017 · 0 comments
Labels
Milestone

Comments

@jstrachan
Copy link
Contributor

when folks submit a PR to fix an issue its gonna be handy to comment on the issue/PR with details of where the application is in terms of namespaces/environments so that the user sees on the work item a link to open the app to test if the issue is really fixed.

e.g. for UI related issues, folks could then test out the running app in the Test / Staging / Production environment and use that to then +1 or close/approve a work item.

So it would be nice if we can POST some JSON to some endpoint from inside the pipelines that the work item tracker can then figure out what is best to do.

My first thought was to update the status of the issue; which may happen one day - though thats not really for the Jenkins pipeline (or posting code) to decide as it may decide on the workflow model being used on a project. Some may want to update stuff to a 'Ready for Test' status when things arrive in Staging - others may just want to add a comment to the work item and not update the status.

So I figure lets just POST all the related data we can to a canonical endpoint in the planner REST API - and then the implementation can figure out how best to change the state & represent that to the end user; worst case we just make a comment for now?

I was thinking of posting things like the development namespace name, the environment namespace name, the app name, the branch name (which hopefully would be the work item ID for a project?) details of the BuildConfig name, Build name, link to the Jenkins job and a URL for users to try the app and any other relevant metadata as a blob of JSON for now.

We just need to know what URL you'd like us to POST to really and we can wire this into the Jenkins pipeline library. We could start with a NOOP; then try add a Comment? Just something simple for now like:

built in build 123 and ready for testing in the `Staging` environment at https://foo.bar/ 
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

3 participants