Nabarun Gogoi
72f1abcdf6
* Add a script to deploy test records * Add checks for ApplicationDeploymentRecord and the deployment URL * Add a CI workflow to run the app deployment test * Update test deployment request record config * Add test for deployment removal * Update test deployment request record * Increase max retries * Add retries when checking if URL is up or down * Rename test script * Run webapp deployment test CI on PR * Remove unnecessary jq installation step from CI * Revert "Run webapp deployment test CI on PR" This reverts commit 01f373501a95b95cf0abc1dee8fed639ec62daf5. * Add a step for Slack alerts on a CI failure * Add a workflow dispatch for manual trigger * Update workflow title and remove trigger on main * Document deployment test setup --------- Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
24 lines
1.6 KiB
Markdown
24 lines
1.6 KiB
Markdown
# deployer test
|
|
|
|
Check if the live web app deployer is in a working state
|
|
|
|
- Web app repo used: https://github.com/snowball-tools-platform/test-progressive-web-app (main branch)
|
|
- Config used: [../config.yml](../config.yml)
|
|
- The script [test-webapp-deployment-undeployment.sh](./test-webapp-deployment-undeployment.sh) performs the following:
|
|
- Create / update [`ApplicationRecord`](./records/application-record.yml) and [`ApplicationDeploymentRequest`](./records/application-deployment-request.yml) records with latest meta data from the repo
|
|
- Fetch the latest version of `deployment-test-app` from registry and increment `ApplicationRecord` version
|
|
- Publish the resulting `ApplicationRecord` record
|
|
- Set names to the record and check name resolution
|
|
- Publish the `ApplicationDeploymentRequest` record
|
|
- Check that the deployment occurs
|
|
- Check that a `ApplicationDeploymentRecord` is created
|
|
- Check that the deployment record has correct `ApplicationRecord` id
|
|
- Check that the URL present in deployment record is active
|
|
- Create and publish a [`ApplicationDeploymentRemovalRequest`](./records/application-deployment-removal-request.yml) record
|
|
- Check that the deployment is removed
|
|
- Check that a `ApplicationDeploymentRemovalRecord` is created
|
|
- Check that the deployment URL goes down
|
|
- The test script is run in a GitHub CI [workflow](../../../.github/workflows/test-app-deployment.yaml) that:
|
|
- Is scheduled to run everyday on the default (`main`) branch or can be triggered manually
|
|
- Sends Slack alerts to configured channels on failure
|