leverage 2.2.0rc4__tar.gz → 3.0.0__tar.gz
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.
- {leverage-2.2.0rc4 → leverage-3.0.0}/PKG-INFO +1 -1
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/__init__.py +1 -1
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/auth.py +5 -6
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/aws.py +1 -1
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/credentials.py +1 -1
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/tf.py +1 -1
- {leverage-2.2.0rc4 → leverage-3.0.0}/pyproject.toml +1 -1
- {leverage-2.2.0rc4 → leverage-3.0.0}/LICENSE.txt +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/README.md +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/_backend_config.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/_internals.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/_parsing.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/_utils.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/conf.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/leverage.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/logger.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/__init__.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/kubectl.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/project.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/run.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/runner.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/tfautomv.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/tfrunner.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/modules/utils.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/path.py +0 -0
- {leverage-2.2.0rc4 → leverage-3.0.0}/leverage/tasks.py +0 -0
|
@@ -270,7 +270,7 @@ def refresh_layer_credentials_mfa(paths: PathsHandler):
|
|
|
270
270
|
continue
|
|
271
271
|
|
|
272
272
|
# if it is exactly that variable, we already know the layer profile is tf_profile
|
|
273
|
-
layer_profile = tf_profile if raw_profile in ("
|
|
273
|
+
layer_profile = tf_profile if raw_profile in ("var.profile", "each.value.profile") else None
|
|
274
274
|
|
|
275
275
|
# replace variables with their corresponding values
|
|
276
276
|
profile_name = (
|
|
@@ -284,7 +284,7 @@ def refresh_layer_credentials_mfa(paths: PathsHandler):
|
|
|
284
284
|
layer_profile = profile_name
|
|
285
285
|
|
|
286
286
|
logger.info(f"Attempting to get temporary credentials for {profile_name} profile.")
|
|
287
|
-
if profile := config_updater.get_section(f"profile {profile_name}"):
|
|
287
|
+
if profile := config_updater.get_section(f"profile {profile_name}-mfa"):
|
|
288
288
|
role_arn = profile.get("role_arn").value
|
|
289
289
|
mfa_serial = profile.get("mfa_serial").value
|
|
290
290
|
source_profile = profile.get("source_profile").value
|
|
@@ -295,6 +295,9 @@ def refresh_layer_credentials_mfa(paths: PathsHandler):
|
|
|
295
295
|
f"Check the following link for possible solutions: https://leverage.binbash.co/user-guide/troubleshooting/credentials/",
|
|
296
296
|
)
|
|
297
297
|
|
|
298
|
+
if not paths.aws_cache_dir.exists():
|
|
299
|
+
paths.aws_cache_dir.mkdir(parents=True)
|
|
300
|
+
|
|
298
301
|
cache_file = paths.aws_cache_dir / profile_name
|
|
299
302
|
if cache_file.exists():
|
|
300
303
|
logger.debug(f"Found cached credentials in {cache_file}.")
|
|
@@ -321,12 +324,8 @@ def refresh_layer_credentials_mfa(paths: PathsHandler):
|
|
|
321
324
|
raise ExitError(1, "Aborted by user.")
|
|
322
325
|
|
|
323
326
|
try:
|
|
324
|
-
logger.debug(
|
|
325
|
-
f"Assuming role {role_arn} for {profile_name} profile with serial {mfa_serial} and token code {mfa_token_code}"
|
|
326
|
-
)
|
|
327
327
|
credentials = client.assume_role(
|
|
328
328
|
RoleArn=role_arn,
|
|
329
|
-
SourceIdentity=source_profile,
|
|
330
329
|
RoleSessionName=f"leverage-{profile_name}",
|
|
331
330
|
SerialNumber=mfa_serial,
|
|
332
331
|
TokenCode=mfa_token_code,
|
|
@@ -248,7 +248,7 @@ def login(awscli: Runner, paths: PathsHandler) -> None:
|
|
|
248
248
|
logger.info(
|
|
249
249
|
f"Attempting to automatically open the SSO authorization page in your default browser.\n"
|
|
250
250
|
f"If the browser does not open or you wish to use a different device to authorize this request, open the following URL:\n"
|
|
251
|
-
f"\n{paths.common_conf.get('sso_start_url')}\n"
|
|
251
|
+
f"\n{paths.common_conf.get('sso_start_url')}/#/device\n"
|
|
252
252
|
f"\nThen enter the code:\n"
|
|
253
253
|
f"\n{device_authorization['userCode']}\n"
|
|
254
254
|
)
|
|
@@ -611,7 +611,7 @@ def configure_accounts_profiles(
|
|
|
611
611
|
if mfa_serial:
|
|
612
612
|
account_profile["mfa_serial"] = mfa_serial
|
|
613
613
|
# A profile identifier looks like `le-security-oaar`
|
|
614
|
-
account_profiles[f"{short_name}-{account_name}-{PROFILES[_type]['profile_role']}"] = account_profile
|
|
614
|
+
account_profiles[f"{short_name}-{account_name}-{PROFILES[_type]['profile_role']}-mfa"] = account_profile
|
|
615
615
|
|
|
616
616
|
logger.info("Backing up account profiles file.")
|
|
617
617
|
shutil.copy(paths.aws_config_file, paths.aws_config_file.with_suffix(".bkp"))
|
|
@@ -322,7 +322,7 @@ def _init(tf: TFRunner, paths: PathsHandler, args: Sequence[str], working_dir: P
|
|
|
322
322
|
)
|
|
323
323
|
init_args = (*filtered_args, f"-backend-config={paths.backend_tfvars}")
|
|
324
324
|
|
|
325
|
-
tf.run("init", *init_args, working_dir=working_dir)
|
|
325
|
+
tf.run("init", *tf_default_args(), *init_args, working_dir=working_dir)
|
|
326
326
|
|
|
327
327
|
|
|
328
328
|
@authenticate
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|