ChaiBapchya opened a new pull request #25:
URL: https://github.com/apache/incubator-mxnet-ci/pull/25
## Description
This PR adds the code [redacted secrets/credentials] for a serverless based
implementation of Jenkins monitor.
Current form supports testing for Nightly CD pipelines. But it's written
such that the functionality can be extended for CI pipelines too.
## Workflow
Using serverless.yml to define the resources [Secret Manager]
`handler.py` main file for Lambda function
Pseudo-code for the pipeline monitor
1. Fetch secrets [jenkins credentials for using JenkinsAPI]
2. Instantiate JenkinsObj
3. Fetch pipeline job [currently CD release]
4. Get latest build for the specific pipeline
5. Fetch builds in the latest day [i.e. same day as the latest build day]
6. Filter out specific jobs [currently `mxnet_lib/static` and `python/pypi`]
7. Raise alarm based on the build status [alarm if failure]
## Changes
new file: jenkins-pipeline-monitor/.gitignore
new file: jenkins-pipeline-monitor/deploy_lambda.sh
new file: jenkins-pipeline-monitor/environment.yml
new file: jenkins-pipeline-monitor/handler.py
new file: jenkins-pipeline-monitor/requirements.txt
new file: jenkins-pipeline-monitor/secret_manager.py
new file: jenkins-pipeline-monitor/serverless.yml
## Verification
Tested this setup on Jenkins CI Dev account using mxnet-ci-dev isengard
account. Works as expected.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]