Skip to content

Commit

Permalink
rework the monthly deploy so it takes the need for syncing the webmas…
Browse files Browse the repository at this point in the history
…ter envs into account
  • Loading branch information
ITViking committed Nov 1, 2024
1 parent e13259a commit 7c67bb2
Showing 1 changed file with 50 additions and 30 deletions.
80 changes: 50 additions & 30 deletions docs/runbooks/monthly-release-to-editors-and-webmasters.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,36 +20,56 @@ release - 1. This usually mean last weeks release.
1. In your local environment ensure that your checkout of the `main` branch for
`dpl-platform` is up to date.
2. Create a new branch from `main`.
3. Now update `infrastructure/environments/dplplat01/sites.yaml`:
1. The 'x-defaults' anchors' 'dpl-cms-release' tag should be bumped to the
new version.
2. Then update the 'moduletest-dpl-cms-release' of 'x-webmaster'
and 'x-webmaster-with-defaults' anchor.
3. Now update 'dpl-cms-release' of the 'x-webmaster' anchor to the penultimate
version of the cms.
4. Commit the change and push your branch to GitHub and create a pull request.
5. Request a review for the change and wait for approval.
6. Start `dplsh` from the `/infrastructure` directory of your local
environment by running `../tools/dplsh/dplsh.sh`
7. Run `task cluster:mode:release` to get more nodes while deploying.
8. Run `task sites:sync` from `dplsh` to deploy the changes.
9. If there are any Terraform changes then do not apply them, abort the
deployment and consult the platform team.
10. Open the Deployments list page within the Lagoon UI to see all running and
queued deployments.
11. Wait for all the deployments to complete.
12. Run `task sites:incomplete-deployments` to identify any failed deployments.
13. If some deployments did not complete determine if the error relates to the
platform or the application.
14. For all platform-related errors try to redeploy the environment from
the Lagoon UI.
15. Merge the pull request once the deployment completes.
16. Run `task cluster:adjust:resource-request` from `dplsh`.
17. Run `task cluster:promote-workloads-to-prod` from `dplsh`.
18. Reset the webmaster moduletest environments.
19. Run 'task cluster:mode:reset' from `dplsh`.

## Procedure: a some sites fails to deploy
3. Release to webmaster production:
1. Update 'dpl-cms-release' of the 'x-webmaster' anchor to the penultimate
version of the CMS.
4. Commit the change and push your branch to GitHub and create a pull request.

Check failure on line 26 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 2; Actual: 4; Style: 1/2/3]
5. Request a review for the change and wait for approval.

Check failure on line 27 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 3; Actual: 5; Style: 1/2/3]
6. Start `dplsh` from the `/infrastructure` directory of your local

Check failure on line 28 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 4; Actual: 6; Style: 1/2/3]
environment by running `../tools/dplsh/dplsh.sh`
7. Run `task cluster:mode:release` to get more nodes while deploying.

Check failure on line 30 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 5; Actual: 7; Style: 1/2/3]
8. Run `task sites:sync` from `dplsh` to deploy the changes.

Check failure on line 31 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 6; Actual: 8; Style: 1/2/3]
9. If there are any Terraform changes then do not apply them, abort the

Check failure on line 32 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 7; Actual: 9; Style: 1/2/3]
deployment and consult the platform team.
10. Open the Deployments list page within the Lagoon UI to see all running and

Check failure on line 34 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 8; Actual: 10; Style: 1/2/3]
queued deployments.
11. Wait for all the deployments to complete.

Check failure on line 36 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 9; Actual: 11; Style: 1/2/3]
12. Run `task sites:incomplete-deployments` to identify any failed deployments.

Check failure on line 37 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 10; Actual: 12; Style: 1/2/3]
13. If some deployments did not complete determine if the error relates to the

Check failure on line 38 in docs/runbooks/monthly-release-to-editors-and-webmasters.md

View workflow job for this annotation

GitHub Actions / Lint Markdown

Ordered list item prefix [Expected: 11; Actual: 13; Style: 1/2/3]
platform or the application.
14. For all platform-related errors try to redeploy the environment from
the Lagoon UI.
15. Merge the pull request once the deployment completes.
16. Synchronize moduletest with main,so moduletest becomes an exact
copy of main by running `task sites:webmaster:reset-moduletest`.
4. Create a new branch from `main`.
5. Release to editors and webmaster moduletest:
1. Now update `infrastructure/environments/dplplat01/sites.yaml`:
2. The 'x-defaults' anchors' 'dpl-cms-release' tag should be bumped to the
new version.
3. Then update the 'moduletest-dpl-cms-release' of 'x-webmaster'
and 'x-webmaster-with-defaults' anchor with the newest release.
4. Commit the change and push your branch to GitHub and create a pull request.
5. Request a review for the change and wait for approval.
6. Start `dplsh` from the `/infrastructure` directory of your local
environment by running `../tools/dplsh/dplsh.sh`
7. Run `task sites:sync` from `dplsh` to deploy the changes.
8. If there are any Terraform changes then do not apply them, abort the
deployment and consult the platform team.
9. Open the Deployments list page within the Lagoon UI to see all running and
queued deployments.
10. Wait for all the deployments to complete.
11. Run `task sites:incomplete-deployments` to identify any failed deployments.
12. If some deployments did not complete determine if the error relates to the
platform or the application.
13. For all platform-related errors try to redeploy the environment from
the Lagoon UI.
14. Merge the pull request once the deployment completes.
6. Run `task cluster:adjust:resource-request` from `dplsh`.
7. Run `task cluster:promote-workloads-to-prod` from `dplsh`.
8. Run 'task cluster:mode:reset' from `dplsh`.

## Procedure: some sites fails to deploy

We have experience this quite a lot. We have gathered a list of known
issues and how to solve them a troubleshoot [runbook](troubleshoot-release-deployment.md)

0 comments on commit 7c67bb2

Please sign in to comment.