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

[#952] Updated Lagoon deployment script to use variable update. #1209

Merged
merged 3 commits into from
Mar 1, 2024

Conversation

richardgaunt
Copy link
Collaborator

@richardgaunt richardgaunt commented Feb 28, 2024

closes #952

Checklist before requesting a review

  • I have formatted the subject to include ticket number as [#123] Verb in past tense with dot at the end.
  • I have added a link to the issue tracker
  • I have provided information in Changed section about WHY something was done if this was not a normal implementation
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added tests that prove my fix is effective or that my feature works
  • I have run new and existing relevant tests locally with my changes, and they passed
  • I have provided screenshots, where applicable

Changed

  1. Updated to lagoon update variable rather than add and delete.
  2. Updated tests.

Screenshots

@@ -314,16 +314,13 @@ load _helper.deployment.bash
# Get a list of environments.
assert_contains "-l testlagoon list environments -p testproject --output-json --pretty" "$(mock_get_call_args "${mock_lagoon}" 2)"
# Explicitly set DB overwrite flag to 0 due to a bug in Lagoon.
assert_contains "-l testlagoon delete variable -p testproject -e testbranch -N DREVOPS_PROVISION_OVERRIDE_DB" "$(mock_get_call_args "${mock_lagoon}" 3)"
assert_contains "-l testlagoon add variable -p testproject -e testbranch -N DREVOPS_PROVISION_OVERRIDE_DB -V 0 -S global" "$(mock_get_call_args "${mock_lagoon}" 4)"
assert_contains "-l testlagoon update variable -p testproject -e testbranch -N DREVOPS_PROVISION_OVERRIDE_DB -V 0 -S global" "$(mock_get_call_args "${mock_lagoon}" 4)"
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Had trouble running locally - with the deployment code we could test it in isolation as unit tests rather than deploying actual builds.

Copy link
Member

Choose a reason for hiding this comment

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

@richardgaunt the numbers (3, 4 etc.) at the end of the assertions need to be updated throughout the whole test after the order being modified (this is due to using an old way of asserting that commands run in the order)

assert_contains "-l testlagoon update variable -p testproject -e testbranch -N DREVOPS_PROVISION_OVERRIDE_DB -V 0 -S global" "$(mock_get_call_args "${mock_lagoon}" 3)"

@AlexSkrypnyk
Copy link
Member

@richardgaunt
could you please confirm that you have tested this code for 2 cases on real Lagoon instance:

  1. The env is brand new
  2. The env already exists and the deployment is a follow-up deployment

This is to make sure that Lagoon's API supports running update on non-existing variable.

@AlexSkrypnyk AlexSkrypnyk added the PR: Requires more work Pull request was reviewed and reviver(s) asked to work further on the pull request label Feb 28, 2024
Copy link
Member

@AlexSkrypnyk AlexSkrypnyk left a comment

Choose a reason for hiding this comment

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

@richardgaunt
Could you please update tests. Thank you

@richardgaunt
Copy link
Collaborator Author

@richardgaunt could you please confirm that you have tested this code for 2 cases on real Lagoon instance:

1. The env is brand new

2. The env already exists and the deployment is a follow-up deployment

This is to make sure that Lagoon's API supports running update on non-existing variable.

Tested with the PR new environment creation, tested with overriding a database. All worked correctly and the variables were correct values after deploying.

@AlexSkrypnyk AlexSkrypnyk changed the title [#952] Added laggon update variable. [#952] Updated Lagoon deployment script to use variable update. Mar 1, 2024
@AlexSkrypnyk AlexSkrypnyk enabled auto-merge (squash) March 1, 2024 00:08
@AlexSkrypnyk AlexSkrypnyk added Type: Chore Issue is related to maintenance and removed PR: Requires more work Pull request was reviewed and reviver(s) asked to work further on the pull request labels Mar 1, 2024
Copy link

codecov bot commented Mar 1, 2024

Codecov Report

Attention: Patch coverage is 50.00000% with 3 lines in your changes are missing coverage. Please review.

Project coverage is 61.51%. Comparing base (e5808aa) to head (cda0d0f).

Files Patch % Lines
scripts/drevops/deploy-lagoon.sh 50.00% 3 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##           develop    #1209       +/-   ##
============================================
- Coverage    71.88%   61.51%   -10.37%     
============================================
  Files           38       38               
  Lines         2849     2843        -6     
============================================
- Hits          2048     1749      -299     
- Misses         801     1094      +293     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@AlexSkrypnyk AlexSkrypnyk force-pushed the feature/add-update-lagoon-variable branch from 6241c1b to cda0d0f Compare March 1, 2024 05:25
@AlexSkrypnyk AlexSkrypnyk merged commit db0f670 into develop Mar 1, 2024
17 of 19 checks passed
@AlexSkrypnyk AlexSkrypnyk deleted the feature/add-update-lagoon-variable branch March 1, 2024 05:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Chore Issue is related to maintenance
Projects
Status: Released in 1.20
Development

Successfully merging this pull request may close these issues.

Update Lagoon deployments to use variable update instead of variable delete + variable add
2 participants