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

Implement pull request workflows #155

Open
2 of 4 tasks
HadwaAbdelhalem opened this issue Mar 17, 2023 · 1 comment
Open
2 of 4 tasks

Implement pull request workflows #155

HadwaAbdelhalem opened this issue Mar 17, 2023 · 1 comment
Assignees
Milestone

Comments

@HadwaAbdelhalem
Copy link
Contributor

HadwaAbdelhalem commented Mar 17, 2023

Design and implement Pull request workflows for Symphony that offers a path to correctly deploy changes from a pull request branch on a simulated prod environment by first deploy the environments current configs from main branch, then subsequently layering on changes introduced from the pull request branch to show how the updated code will impact deployed environments and allow for further testing and validations before the code is merged.

Implementation shall ensure:

  • Pull request workflows implemented for both Bicep & terraform IaC tools.
  • Pull request workflows pipelines are created for Aure DevOps and GitHub.
  • Workflow.md document is updated to reflect the pull request charts and steps.
  • Pull request flow take an env name as input to use as base for the deployment before applying the changes from the PR branch.
  • pull request flow take an "auto delete" input, or have a manual intervention step to to run to control the destroy stage to clear off deployed resources.
  • pull request workflow for terraform shall ensure the remote backend configs/stage files are not overwriting the environment's remote stage files in the remote state storage account.
  • pull request workflow for terraform must not impact/change deployed environments resources.
  • Pull request workflows can run in parallel to test multiple PRs without resources collisions.

Tasks

Preview Give feedback
  1. Bicep GitHub workflows
    PabloZaiden
  2. GitHub Terraform workflows
    HadwaAbdelhalem
  3. AzDO Bicep workflows
    PabloZaiden
  4. AzDO Terraform workflows
    HadwaAbdelhalem PabloZaiden
@PabloZaiden
Copy link
Contributor

We've been discussing this with @hattan and thought that it could be useful to include the following:

  • Ability to trigger the deployment of the code in the PR manually instead of automatically. It would still be required to run it on the latest code before allowing to merge, but if the execution is manual, it makes the flow of doing several rounds of changes/fixes easier and faster.
  • If during the deployment of the new code a deletion/recreation is detected, it should make a note about that in the PR and, ideally, require an extra user confirmation that it was the desired outcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants