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

Support for deployment in Azure Government Cloud (Leonardo) #4813

Open
wants to merge 76 commits into
base: develop
Choose a base branch
from

Conversation

bennettn4
Copy link
Contributor

@bennettn4 bennettn4 commented Dec 11, 2024

Part of large effort to add support for services to run in Azure Government cloud.

Two parts:

  1. Support for government cloud curls
  • Added environment variable for AZURE_ENVIRONMENT
  • Updated azure-vm-init script to support gov suffix
  1. Fixes for running Leo in Azure. The user pet token is unavailable in Azure so calls which used it for Leo->WSM were replaced with the Leo service account token, and appropriate permissions to the workspace were given to the Leo service account.

https://broadworkbench.atlassian.net/browse/TOAZ-372
See related pull requests here:
workbench-libs sam bpm wsm cromwell terra-helmfile

Copy link

codecov bot commented Dec 30, 2024

Codecov Report

Attention: Patch coverage is 70.27027% with 22 lines in your changes missing coverage. Please review.

Project coverage is 74.74%. Comparing base (1a00c81) to head (c39ccc3).

Files with missing lines Patch % Lines
...sde/workbench/leonardo/monitor/MonitorAtBoot.scala 50.00% 8 Missing ⚠️
...bench/leonardo/config/AzureHostingModeConfig.scala 80.00% 3 Missing ⚠️
...workbench/leonardo/monitor/LeoMetricsMonitor.scala 50.00% 3 Missing ⚠️
...de/workbench/leonardo/app/CromwellAppInstall.scala 50.00% 2 Missing ⚠️
...kbench/leonardo/app/CromwellRunnerAppInstall.scala 60.00% 2 Missing ⚠️
...te/dsde/workbench/leonardo/app/WdsAppInstall.scala 60.00% 2 Missing ⚠️
...e/workbench/leonardo/app/WorkflowsAppInstall.scala 50.00% 2 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #4813      +/-   ##
===========================================
- Coverage    74.77%   74.74%   -0.04%     
===========================================
  Files          166      166              
  Lines        14800    14821      +21     
  Branches      1112     1197      +85     
===========================================
+ Hits         11067    11078      +11     
- Misses        3733     3743      +10     
Files with missing lines Coverage Δ
...e/workbench/leonardo/app/HailBatchAppInstall.scala 62.50% <ø> (ø)
...rkbench/leonardo/http/AppDependenciesBuilder.scala 97.91% <100.00%> (+0.02%) ⬆️
...ch/leonardo/http/service/LeoAppServiceInterp.scala 87.44% <100.00%> (+0.07%) ⬆️
.../dsde/workbench/leonardo/util/AKSInterpreter.scala 88.66% <100.00%> (-0.13%) ⬇️
...e/workbench/leonardo/util/AzurePubsubHandler.scala 84.56% <100.00%> (-0.11%) ⬇️
...workbench/leonardo/util/BuildHelmChartValues.scala 97.18% <ø> (ø)
...de/workbench/leonardo/app/CromwellAppInstall.scala 67.74% <50.00%> (-1.23%) ⬇️
...kbench/leonardo/app/CromwellRunnerAppInstall.scala 84.09% <60.00%> (-1.63%) ⬇️
...te/dsde/workbench/leonardo/app/WdsAppInstall.scala 78.94% <60.00%> (-3.41%) ⬇️
...e/workbench/leonardo/app/WorkflowsAppInstall.scala 66.66% <50.00%> (-1.34%) ⬇️
... and 3 more

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1a00c81...c39ccc3. Read the comment docs.

@bennettn4 bennettn4 marked this pull request as ready for review December 30, 2024 17:40
@bennettn4 bennettn4 requested a review from a team as a code owner December 30, 2024 17:40
Copy link
Collaborator

@LizBaldo LizBaldo left a comment

Choose a reason for hiding this comment

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

Were you able to test this? The Azure integration tests have been removed a few months ago unfortunately 🤔

This looks good, but I have a few comments around preserving the pre-existing behavior for GCP as much as possible.

raw"bard.enabled=${config.bardEnabled}"
raw"bard.enabled=${config.bardEnabled}",

// TEMPORARY HELM OVERRIDE VALUES WHILE WAITING FOR PR
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could you link the PR? if it is the terra helmfile one you should be good to merge I think

workspaceDescOpt <- tokenOpt.flatTraverse { token =>
wsmClientProvider.getWorkspace(token, workspaceId)
}
leoAuth <- samDAO.getLeoAuthToken
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why the change here for both GCP and Azure case? I would like to keep using the cached token wherever possible.

@jsaun
Copy link
Contributor

jsaun commented Jan 9, 2025

Were you able to test this? The Azure integration tests have been removed a few months ago unfortunately 🤔

Yeah, we've been running this branch in our dev environment for a while, it will need some final validation as I don't think we've tested the most recent commits though.

This looks good, but I have a few comments around preserving the pre-existing behavior for GCP as much as possible.

Yep, makes sense. I was trying to avoid the branching logic if possible to keep it consistent/simpler but I will try to update shortly for those cases you pointed out.

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.

3 participants