feat: report status of PR sandboxes
Description
This MR adds status reporting for PR sandboxes.
Four types of notifications are added:
- Pre-deployment notification: This notification is posted when the "trigger" job is created by Gitlab in pending state. This is typically the first job when deployment is triggered in Gitlab, which creates the follow-up MR and deployment pipeline.
- Deployment started notification: This notification is posted when the "child" deployment pipeline is in the "running" state. This point in the deployment process is chosen for notification, because any failures before this point is typically not related to the configs/requirements/codebase and therfore beyond the control of the PR author to fix.
- Deployment failed notification: This notification is posted when a job in the "child" pipeline, and thus the entire child pipeline has failed. The logs of the failed job is posted along with the notification.
- Deployment success notification: This notification is posted when the "child" pipeline is successful. The LMS/CMS urls are also posted with this notification.
Testing instructions
Steps to test the changes:
- TBD
Dependencies
List the dependencies required for this change, if any. Do not forget to link grove-template merge request here if that's affected by this change.
Screenshots
If applicable, add screenshots to help explain your feature.
Checklist
If any of the items below is not applicable, do not remove them, but put a check in it.
-
All providers include the new feature/change -
All affected providers can provision new clusters -
Unit tests are added/updated -
Documentation is added/updated -
The TOOLS_CONTAINER_IMAGE_VERSION
in ci_vars.yml is updated -
The grove-template repository is updated
Additional context
OpenCraft internal ticket : SE-6063
Edited by Kaustav Banerjee