id = "awsume"
name = "AWSume"
homepage = "https://awsu.me"
description = "Awsume is a convenient way to manage session tokens and assume role credentials."
icon = "https://awsu.me/logo.png"
executables = ["awsume"]
[dotfiles]
paths = [
"~/.awsume/config.yaml",
"[configHome]/awsume/config.yaml",
]
exclude = [
"~/.awsume/cache/",
"~/.awsume/logs/",
"[xdgCache]/awsume/",
"~/.local/state/awsume/logs/",
]
secret = []
side_effect = false
[commands]
format = 1
label = "Assume an AWS role"
description = "Assume a profile or role and export its credentials, or open the AWS console. SAML, web identity, plugin and JSON credential options are left out."
quality = "ai-draft"
base = "fig:awsume"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/awsume.ts"
license = "MIT"
[[commands.field]]
id = "profile"
label = "Profile"
description = "Profile name from your AWS config."
type = "string"
position = 0
sources = ["fig"]
[[commands.field]]
id = "region"
label = "Region"
type = "string"
option = ["--region"]
sources = ["fig"]
[[commands.field]]
id = "role_arn"
label = "Role ARN"
description = "Role ARN or <partition>:<account_id>:<role_name>."
type = "string"
option = ["--role-arn"]
sources = ["fig"]
[[commands.field]]
id = "source_profile"
label = "Source profile"
description = "Used with a role ARN."
type = "string"
option = ["--source-profile"]
sources = ["fig"]
[[commands.field]]
id = "mfa_token"
label = "MFA token"
type = "string"
option = ["--mfa-token"]
sources = ["fig"]
[[commands.field]]
id = "external_id"
label = "External ID"
type = "string"
option = ["--external-id"]
sources = ["fig"]
[[commands.field]]
id = "session_name"
label = "Role session name"
type = "string"
option = ["--session-name"]
sources = ["fig"]
[[commands.field]]
id = "role_duration"
label = "Role duration (seconds)"
type = "integer"
option = ["--role-duration"]
sources = ["fig"]
[[commands.field]]
id = "output_profile"
label = "Output profile"
description = "Profile to write credentials to."
type = "string"
option = ["--output-profile", "-o"]
sources = ["fig"]
[[commands.field]]
id = "refresh"
label = "Force refresh"
type = "boolean"
option = ["--refresh", "-r"]
sources = ["fig"]
[[commands.field]]
id = "auto_refresh"
label = "Auto refresh"
type = "boolean"
option = ["--auto-refresh", "-a"]
sources = ["fig"]
[[commands.field]]
id = "show_commands"
label = "Show export commands"
type = "boolean"
option = ["--show-commands", "-s"]
sources = ["fig"]
[[commands.field]]
id = "unset"
label = "Unset AWS variables"
type = "boolean"
option = ["--unset", "-u"]
sources = ["fig"]
[[commands.field]]
id = "console"
label = "Open AWS console"
type = "boolean"
option = ["--console", "-c"]
sources = ["fig"]
[[commands.field]]
id = "console_service"
label = "Console service"
description = "Open the console on a specific service."
type = "string"
option = ["--console-service"]
sources = ["fig"]
[[commands.task]]
id = "assume"
label = "Assume profile"
fields = ["profile", "region", "mfa_token"]
required = ["profile"]
[[commands.task]]
id = "console"
label = "Open console"
fields = ["profile", "console", "console_service"]
required = ["profile"]
set = { console = [true] }
[[commands.task]]
id = "unset"
label = "Unset credentials"
fields = ["unset"]
required = []
set = { unset = [true] }
lock = ["unset"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["profile", "region", "unset", "console"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["role_arn", "source_profile", "mfa_token", "external_id", "session_name", "role_duration", "output_profile", "refresh", "auto_refresh", "show_commands", "console_service"]