outerbounds 0.9.0__py3-none-any.whl → 0.9.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- outerbounds/command_groups/perimeters_cli.py +14 -8
- {outerbounds-0.9.0.dist-info → outerbounds-0.9.1.dist-info}/METADATA +2 -2
- {outerbounds-0.9.0.dist-info → outerbounds-0.9.1.dist-info}/RECORD +5 -5
- {outerbounds-0.9.0.dist-info → outerbounds-0.9.1.dist-info}/WHEEL +0 -0
- {outerbounds-0.9.0.dist-info → outerbounds-0.9.1.dist-info}/entry_points.txt +0 -0
@@ -126,7 +126,7 @@ def switch(config_dir=None, profile=None, output="", id=None, force=False):
|
|
126
126
|
)
|
127
127
|
|
128
128
|
try:
|
129
|
-
ensure_cloud_credentials_for_shell(config_dir, profile)
|
129
|
+
ensure_cloud_credentials_for_shell(config_dir, profile, "")
|
130
130
|
except:
|
131
131
|
click.secho(
|
132
132
|
"Failed to update cloud credentials.",
|
@@ -314,7 +314,13 @@ def list(config_dir=None, profile=None, output=""):
|
|
314
314
|
help="Show output in the specified format.",
|
315
315
|
type=click.Choice(["json", ""]),
|
316
316
|
)
|
317
|
-
|
317
|
+
@click.option(
|
318
|
+
"-c",
|
319
|
+
"--cspr-override",
|
320
|
+
default="",
|
321
|
+
help="Override the CSPR role ARN to use for AWS credentials.",
|
322
|
+
)
|
323
|
+
def ensure_cloud_creds(config_dir=None, profile=None, output="", cspr_override=""):
|
318
324
|
ensure_cloud_creds_step = CommandStatus(
|
319
325
|
"EnsureCloudCredentials",
|
320
326
|
OuterboundsCommandStatus.OK,
|
@@ -324,7 +330,7 @@ def ensure_cloud_creds(config_dir=None, profile=None, output=""):
|
|
324
330
|
ensure_cloud_creds_response = OuterboundsCommandResponse()
|
325
331
|
|
326
332
|
try:
|
327
|
-
ensure_cloud_credentials_for_shell(config_dir, profile)
|
333
|
+
ensure_cloud_credentials_for_shell(config_dir, profile, cspr_override)
|
328
334
|
click.secho("Cloud credentials updated successfully.", fg="green", err=True)
|
329
335
|
except:
|
330
336
|
click.secho(
|
@@ -430,7 +436,7 @@ def get_ob_config_or_fail_command(
|
|
430
436
|
return ob_config_dict
|
431
437
|
|
432
438
|
|
433
|
-
def ensure_cloud_credentials_for_shell(config_dir, profile):
|
439
|
+
def ensure_cloud_credentials_for_shell(config_dir, profile, cspr_override):
|
434
440
|
if "WORKSTATION_ID" not in os.environ:
|
435
441
|
# Naive check to see if we're running in workstation. No need to ensure anything
|
436
442
|
# if this is not a workstation.
|
@@ -444,7 +450,7 @@ def ensure_cloud_credentials_for_shell(config_dir, profile):
|
|
444
450
|
ensure_gcp_cloud_creds(config_dir, profile)
|
445
451
|
elif "METAFLOW_DEFAULT_AWS_CLIENT_PROVIDER" in mf_config:
|
446
452
|
# This is an AWS deployment.
|
447
|
-
ensure_aws_cloud_creds(config_dir, profile)
|
453
|
+
ensure_aws_cloud_creds(config_dir, profile, cspr_override)
|
448
454
|
|
449
455
|
|
450
456
|
def confirm_user_has_access_to_perimeter_or_fail(
|
@@ -502,7 +508,7 @@ def ensure_gcp_cloud_creds(config_dir, profile):
|
|
502
508
|
safe_write_to_disk(credentials_file_loc, json.dumps(credentials_json))
|
503
509
|
|
504
510
|
|
505
|
-
def ensure_aws_cloud_creds(config_dir, profile):
|
511
|
+
def ensure_aws_cloud_creds(config_dir, profile, cspr_override):
|
506
512
|
token_info = get_aws_auth_credentials(config_dir, profile)
|
507
513
|
|
508
514
|
try:
|
@@ -523,11 +529,11 @@ def ensure_aws_cloud_creds(config_dir, profile):
|
|
523
529
|
"web_identity_token_file": token_file_loc,
|
524
530
|
}
|
525
531
|
|
526
|
-
if token_info.get("cspr_role_arn"):
|
532
|
+
if token_info.get("cspr_role_arn") or cspr_override:
|
527
533
|
# If CSPR role is present, then we need to use the task role (in the task profile)
|
528
534
|
# to assume the CSPR role.
|
529
535
|
aws_config["profile outerbounds"] = {
|
530
|
-
"role_arn": token_info["cspr_role_arn"],
|
536
|
+
"role_arn": cspr_override or token_info["cspr_role_arn"],
|
531
537
|
"source_profile": "task",
|
532
538
|
}
|
533
539
|
else:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: outerbounds
|
3
|
-
Version: 0.9.
|
3
|
+
Version: 0.9.1
|
4
4
|
Summary: More Data Science, Less Administration
|
5
5
|
License: Proprietary
|
6
6
|
Keywords: data science,machine learning,MLOps
|
@@ -30,7 +30,7 @@ Requires-Dist: google-cloud-storage (>=2.14.0,<3.0.0) ; extra == "gcp"
|
|
30
30
|
Requires-Dist: metaflow_checkpoint (==0.2.4)
|
31
31
|
Requires-Dist: ob-metaflow (==2.18.0.1)
|
32
32
|
Requires-Dist: ob-metaflow-extensions (==1.4.9)
|
33
|
-
Requires-Dist: ob-metaflow-stubs (==6.0.9.
|
33
|
+
Requires-Dist: ob-metaflow-stubs (==6.0.9.1)
|
34
34
|
Requires-Dist: ob-project-utils (==0.1.35)
|
35
35
|
Requires-Dist: opentelemetry-distro (>=0.41b0) ; extra == "otel"
|
36
36
|
Requires-Dist: opentelemetry-exporter-otlp-proto-http (>=1.20.0) ; extra == "otel"
|
@@ -48,7 +48,7 @@ outerbounds/command_groups/fast_bakery_cli.py,sha256=5kja7v6C651XAY6dsP_IkBPJQgf
|
|
48
48
|
outerbounds/command_groups/flowprojects_cli.py,sha256=gFAA_zUIyhD092Hd7IW5InuIxOqdwRJsHgyWQjy8LZw,3792
|
49
49
|
outerbounds/command_groups/kubernetes_cli.py,sha256=2bxPKUp5g_gdwVo4lT-IeWvHxz6Jmj1KxG70nXNgX_M,14758
|
50
50
|
outerbounds/command_groups/local_setup_cli.py,sha256=tuuqJRXQ_guEwOuQSIf9wkUU0yg8yAs31myGViAK15s,36364
|
51
|
-
outerbounds/command_groups/perimeters_cli.py,sha256=
|
51
|
+
outerbounds/command_groups/perimeters_cli.py,sha256=z8vwEpNgRXMIMAWltpdaQD72fYGld-mUkcTHrkmkCyk,19299
|
52
52
|
outerbounds/command_groups/secrets_cli.py,sha256=Vgn_aiTo76a0s5hCJhNWEOrCVhyYeivD08ooQxz0y7c,2952
|
53
53
|
outerbounds/command_groups/tutorials_cli.py,sha256=UInFyiMqtscHFfi8YQwiY_6Sdw9quJOtRu5OukEBccw,3522
|
54
54
|
outerbounds/command_groups/workstations_cli.py,sha256=W3OFmInYUfd7Gl3baXIIleZWx6NI3bSeXAqCZ-uvYfA,27901
|
@@ -60,7 +60,7 @@ outerbounds/utils/schema.py,sha256=lMUr9kNgn9wy-sO_t_Tlxmbt63yLeN4b0xQXbDUDj4A,2
|
|
60
60
|
outerbounds/utils/ssh_utils.py,sha256=MRJ7Oy0M7Lqqs397JDJczTYvxvyHJ_XvBdjt4ZYKaPE,19599
|
61
61
|
outerbounds/utils/utils.py,sha256=4Z8cszNob_8kDYCLNTrP-wWads_S_MdL3Uj3ju4mEsk,501
|
62
62
|
outerbounds/vendor.py,sha256=gRLRJNXtZBeUpPEog0LOeIsl6GosaFFbCxUvR4bW6IQ,5093
|
63
|
-
outerbounds-0.9.
|
64
|
-
outerbounds-0.9.
|
65
|
-
outerbounds-0.9.
|
66
|
-
outerbounds-0.9.
|
63
|
+
outerbounds-0.9.1.dist-info/METADATA,sha256=LtvEYI1WRfyW1cWu_yEuZp0Jo7xneT0FZKnrfzGIgNw,1873
|
64
|
+
outerbounds-0.9.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
65
|
+
outerbounds-0.9.1.dist-info/entry_points.txt,sha256=AP6rZg7y5SK9e9a9iVq0Fi9Q2KPjPZSwtZ6R98rLw-8,56
|
66
|
+
outerbounds-0.9.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|