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

Document the current GHA build and deploy workflows #373

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

derekadombek
Copy link
Collaborator

Description

This PR is specific to the build and deploy workflows explaining requirements, reasoning and what we had in mind for the possible future.

Screenshots (if applicable)

Related Issues

[Link any related issues or tasks from your project management system.]

Checklist

  • The title of this PR is descriptive and concise.
  • My changes follow the style guidelines of this project.
  • I have added or updated test cases to cover my changes.
  • I've let the team know about this PR by linking it in the review channel

Administrator added 2 commits November 5, 2024 13:16
@derekadombek derekadombek self-assigned this Nov 5, 2024
@marycrawford
Copy link
Collaborator

Hey Derek, I know you are OOO this week so I did a quick cursory review of your PR. Will go over it again after I work on priority work this week. Feel free to add other folks on the team for review of the documentation as well. There is no rush! Enjoy your conference and will have this review completed when you return on Monday.

Administrator added 2 commits November 18, 2024 13:14
Copy link
Collaborator

@marycrawford marycrawford left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good. Some comments.

Azure Resource Group Naming:

- `reportvision-rg-dev`
- `reportvision-rg-demo`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am a bit confused, I thought you mentioned to Bora and Pri that we were only going to work with one environment (dev) since you stated the demo environment was unstable. Are we still doing two environments now? If so, this is something we will have to discuss with the other engineers since they are still under the impression that we will have these two environments.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for meeting with me yesterday (11/18) and explaining that the demo environment is considered unstable which meant that it was simply another non-production environment. In addition, that we were only using it to demo to prospective partners. I believe your explanation resolves this comment.


## Prerequisites

There are secrets for Azure authentication from Github Action's located within the Github Settings. At the time of reading this, you may need to create new federated secrets and Resource Groups in your Azure account, while also updating the existing `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_SUBSCRIPTION_ID` secrets in each Github Environmnet.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would remove the uncertainty of At the time of reading this, may need since anyone using this to You will need.


## Complete e2e build and deploy for ReportVision

If you would like to build and deploy all of ReportVision's services at once, `deploy-dev.yml` will do the trick specifically for dev and demo environments within Azure only.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps say To build versus If you would like to build.


## Prerequisites

There are secrets for Azure authentication from Github Action's located within the Github Settings. At the time of reading this, you may need to create new federated secrets and Resource Groups in your Azure account, while also updating the existing `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_SUBSCRIPTION_ID` secrets in each Github Environment.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The requirements should have some bullet point items of what individuals need to build or run things locally or to gain access to the repository.

For example:

  • Admin privileges to Github Settings
  • Azure admin privileges to your account
  • Terraform installed

Recommend updating the wording of the current Prerequisites to something more definitive:

You will need to update the secrets and following variable values: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_SUBSCRIPTION_ID.

Not sure if the Resource Group name have to be changed. Azure documentation states the Resource Group name must be unique within a subscription and between 1 and 90 characters long. Perhaps note if there is an error when they run terraform regarding the resource group, they can change it to a unique name between 1-90 characters.

Copy link
Collaborator Author

@derekadombek derekadombek Nov 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💯 agree with

The requirements should have some bullet point items of what individuals need to build or run things locally or to gain access to the repository.

For example:

Admin privileges to Github Settings
Azure admin privileges to your account
Terraform installed
Recommend updating the wording of the current Prerequisites to something more definitive:

You will need to update the secrets and following variable values: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_SUBSCRIPTION_ID.`

for this part:

`Not sure if the Resource Group name have to be changed. Azure documentation states the Resource Group name must be unique within a subscription and between 1 and 90 characters long. Perhaps note if there is an error when they run terraform regarding the resource group, they can change it to a unique name between 1-90 characters.

Thank you!

The reason they are required to use that naming convention, is to match how they're being variablized in Github Actions. The caveat to that however, is who ever take this over in the future are able to change that but they will need to change it in both places(Azure and Github Actions) I could explain that but I think thats a little out of scope for this document, because if someone wants to change that they most likely will have good knowledge of how Github Action deployments work with Azure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation ops
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Document the entirety of the current DevOps work that has been done and also how to use them.
2 participants