The second integration point I’d like to cover is that of our continuous delivery service. In this case, we are working with AWS CodePipelie and will leverage the jiraBuildInfoProvider module defined in the
atlassian-connect.json add-on descriptor located in the
./app/src/main/resources/ directory of our application.
AWS CodePipeline is a fully managed continuous delivery service that helps you automate your release pipelines for fast and reliable application and infrastructure updates. CodePipeline automates the build, test, and deploy phases of your release process every time there is a code change, based on the release model you define.
Our goal with this integration is to update Jira with the status of our build and deployment stages. We can accomplish this by creating a CloudWatch Events Rule that triggers on an event. In this case, state changes in our pipeline that will invoke our Lambda functions. These functions will query the AWS CodePipeline API and gather a few pieces of information to report on the status of our Build and Deploy stages for our respective commit. The data will then POST to our Atlassian Connect App which will in turn authenticate with our Jira Software Cloud (JSWC) tenant. The following diagram illustrates this workflow: