Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release Staging Workflow Updates for Helm #491

Open
3 of 6 tasks
P0NDER0SA opened this issue Dec 30, 2024 · 11 comments
Open
3 of 6 tasks

Release Staging Workflow Updates for Helm #491

P0NDER0SA opened this issue Dec 30, 2024 · 11 comments
Assignees
Labels
Tech Debt An issue targeting an identified technical debt

Comments

@P0NDER0SA
Copy link

P0NDER0SA commented Dec 30, 2024

Description

As a developer I'd like our code and release automation to have parity between Staging and Production so that there are no discrepancies when debugging or releasing code.

WHY are we building?

Our current process doesn't have parity between these environments, and with updates being made due to our helmfile rollout, we have to make these changes to account for the update. The main goal here is to clean up how our docker images are tagged for our 4 notify components (admin, api, doc download and documentation)

WHAT are we building?

updated workflows so that both staging and production use the same image tags and basic release process in manifests to update it's version/code. ADR below outlines the principal:

https://github.com/cds-snc/ADR/blob/d45e79b604ea471b4b05365ffb31d2a04a11f0e7/0015_GC_Notify_Release_Automation.md

VALUE created by our solution

Much simpler and easy to understand release process and parity between environments which we should strive to have.

Acceptance Criteria

  • Staging deployed releases uses the exact same docker image versions via our helm environment files
  • Workflows on push to main (Staging) for all notify components are updated to push docker image tags to our manifests helm environment files
  • Manifests PR Trigger Token is added to Terraform for each component

QA Steps

@P0NDER0SA P0NDER0SA added the Tech Debt An issue targeting an identified technical debt label Dec 30, 2024
@P0NDER0SA P0NDER0SA self-assigned this Dec 30, 2024
@P0NDER0SA
Copy link
Author

Sync up with Ben and decide on how to accomplish. this without everyrthing exploding

@P0NDER0SA
Copy link
Author

Managed to make some progress with this code so the credentials are starting to work, but not completely. will work with Ben on this today

@P0NDER0SA
Copy link
Author

Workflows added for Admin and Manifests! It runs and updates accordingly. Need to add them to the other 3 components, next... to be continued.

PRs:
cds-snc/notification-admin#2034
cds-snc/notification-manifests#3287

@ben851
Copy link
Contributor

ben851 commented Jan 9, 2025

@P0NDER0SA
Copy link
Author

Should be able to get this finished today :fingers_crossed:

@P0NDER0SA P0NDER0SA changed the title Release Process Updates (Parity with Staging and Production) Release Staging Workflow Updates for Helm Jan 9, 2025
@P0NDER0SA
Copy link
Author

@P0NDER0SA
Copy link
Author

Doc D, Documentation, API and Admin have all been updated accordingly, and they are all working as they should! I've verified all of the tags, and they match what's in our Public ECR. I've also added the secrets to Terraform that are required for our PR Dispatches to work (ie. API Repo Workflow Calls --> Manifests Repo Workflow). PRs are all listed above! That is all :)

@ben851
Copy link
Contributor

ben851 commented Jan 15, 2025

There was an issue in the code where it still wasn't picking up the image versions and was defaulting to latest. That was corrected yesterday. Will verify today.

@sastels
Copy link

sastels commented Jan 15, 2025

Ben will finish QAing today

@ben851
Copy link
Contributor

ben851 commented Jan 16, 2025

Looks good!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Tech Debt An issue targeting an identified technical debt
Projects
None yet
Development

No branches or pull requests

3 participants