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

Fix Tests run on daily schedule #31 #40

Merged
merged 8 commits into from
Nov 9, 2023
Merged

Conversation

brunoborges
Copy link
Member

Fixes #31

@brunoborges brunoborges temporarily deployed to Development October 18, 2023 23:25 — with GitHub Actions Inactive
@brunoborges brunoborges requested review from johnoliver and dantelmomsft and removed request for dantelmomsft November 1, 2023 17:09
@brunoborges
Copy link
Member Author

@dantelmomsft John and I met, and we thought about pushing to production whenever there is a push to main branch, plus the manual dispatch. WDYT?

Copy link
Contributor

@d3r3kk d3r3kk left a comment

Choose a reason for hiding this comment

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

I'm helping!

.github/workflows/template-validation.yaml Outdated Show resolved Hide resolved
.github/workflows/template-validation.yaml Outdated Show resolved Hide resolved
.github/workflows/template-validation.yaml Outdated Show resolved Hide resolved
.github/workflows/template-validation.yaml Outdated Show resolved Hide resolved
@dantelmomsft
Copy link
Collaborator

dantelmomsft commented Nov 2, 2023

@dantelmomsft John and I met, and we thought about pushing to production whenever there is a push to main branch, plus the manual dispatch. WDYT?

this how I see this:

  1. CI pipelines

    • App CI: triggered on each commit (or PR) on a dedicated develop branch (today this branch is the main unfortunately). Such branch is linked to a dedicated dev environment. The CI pipeline should also contain some smoke tests on dedicated dev env. This is the purpose of the current app-ci.yaml
    • Infra CI: like the above one but it's triggered only on infra folder changes and will validate the bicep code. It should also redeploy the whole infrastructure, restart the app and run smoke tests. This is the purpose of the initial infra-validation.yaml I've created ( please bring it back :-) )
  2. Daily/Nightly build pipelines

    • scheduled infra+app deployment on dedicated environment. Basically it brings together App CI and Infra CI tasks + more functional/performance tests. It could run against the same CI dev environment, or using a dedicated staging environment scaled up/out. The current template-validation.yaml you've created it's a good first step, but we should try to avoid job duplication across pipelines, I see the opportunity to use github pipeline reusable templates here.
  3. App Release pipelines

    • Code Promotion: on-demand pipeline which will take care of automating/orchestrating code release (maven release + react npm release). It creates the release tags and deploy the binaries on the binary repository (jar repo, container repo).
    • Production Deployment: Triggered on tag creation will deploy infra+app on a dedicated production environment and run full tests suite against it.

Copy link
Collaborator

@dantelmomsft dantelmomsft left a comment

Choose a reason for hiding this comment

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

Please bring back the infra validation CI pipeline.
If you agree with the strategy I've shared in my last comment, we should at least add a dedicated production environment and deploy the tagged release. After that we can start use CI + scheduled daily build pipelines on the current dev environment.

@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

Copy link
Collaborator

@dantelmomsft dantelmomsft left a comment

Choose a reason for hiding this comment

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

@brunoborges I've updated the PR based on the last conversation we had. some highlights:

  • rebased the PR
  • created a production environment where release 1.0.0 have been deployed
  • app-ci supports tags deployment on production environment
  • template-validation have been enabled for PR on main and scheduled nightly
  • infra-ci has been added to support bicep changes. bicep is validated, infra and app deployment have been commented to have more time to review the approach and avoid to break dev environment

Let me know if you agree and I will merge back in the main

@dantelmomsft dantelmomsft merged commit 450e2ad into main Nov 9, 2023
5 checks passed
@dantelmomsft dantelmomsft deleted the fix-actions-flows branch May 16, 2024 10:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Tests run on daily schedule
4 participants