diff --git a/cmd/scw/testdata/test-all-usage-secret-folder-create-usage.golden b/cmd/scw/testdata/test-all-usage-secret-folder-create-usage.golden deleted file mode 100644 index 9cd174da54..0000000000 --- a/cmd/scw/testdata/test-all-usage-secret-folder-create-usage.golden +++ /dev/null @@ -1,21 +0,0 @@ -🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 -πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Create folder. - -USAGE: - scw secret folder create [arg=value ...] - -ARGS: - [project-id] Project ID to use. If none is passed the default project ID will be used - [name] Name of the folder - [path] Path of the folder - [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) - -FLAGS: - -h, --help help for create - -GLOBAL FLAGS: - -c, --config string The path to the config file - -D, --debug Enable debug mode - -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") - -p, --profile string The config profile to use diff --git a/cmd/scw/testdata/test-all-usage-secret-folder-delete-usage.golden b/cmd/scw/testdata/test-all-usage-secret-folder-delete-usage.golden deleted file mode 100644 index b3e08c37de..0000000000 --- a/cmd/scw/testdata/test-all-usage-secret-folder-delete-usage.golden +++ /dev/null @@ -1,19 +0,0 @@ -🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 -πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Delete a given folder specified by the `region` and `folder_id` parameters. - -USAGE: - scw secret folder delete [arg=value ...] - -ARGS: - folder-id ID of the folder - [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) - -FLAGS: - -h, --help help for delete - -GLOBAL FLAGS: - -c, --config string The path to the config file - -D, --debug Enable debug mode - -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") - -p, --profile string The config profile to use diff --git a/cmd/scw/testdata/test-all-usage-secret-folder-list-usage.golden b/cmd/scw/testdata/test-all-usage-secret-folder-list-usage.golden deleted file mode 100644 index 80ebf4cdf2..0000000000 --- a/cmd/scw/testdata/test-all-usage-secret-folder-list-usage.golden +++ /dev/null @@ -1,21 +0,0 @@ -🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 -πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Retrieve the list of folders created within a Project. - -USAGE: - scw secret folder list [arg=value ...] - -ARGS: - [project-id] Filter by Project ID (optional) - [path] Filter by path (optional) - [order-by] (created_at_asc | created_at_desc | name_asc | name_desc) - [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw | all) - -FLAGS: - -h, --help help for list - -GLOBAL FLAGS: - -c, --config string The path to the config file - -D, --debug Enable debug mode - -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") - -p, --profile string The config profile to use diff --git a/cmd/scw/testdata/test-all-usage-secret-folder-usage.golden b/cmd/scw/testdata/test-all-usage-secret-folder-usage.golden deleted file mode 100644 index c58ab54d93..0000000000 --- a/cmd/scw/testdata/test-all-usage-secret-folder-usage.golden +++ /dev/null @@ -1,22 +0,0 @@ -🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 -πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Location of the secret in the directory structure. - -USAGE: - scw secret folder - -AVAILABLE COMMANDS: - create Create folder - delete Delete a given folder specified by the `region` and `folder_id` parameters - list List folders - -FLAGS: - -h, --help help for folder - -GLOBAL FLAGS: - -c, --config string The path to the config file - -D, --debug Enable debug mode - -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") - -p, --profile string The config profile to use - -Use "scw secret folder [command] --help" for more information about a command. diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-add-owner-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-add-owner-usage.golden index 3f179f7c5b..70c5bb5fdf 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-add-owner-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-add-owner-usage.golden @@ -7,12 +7,9 @@ USAGE: ARGS: secret-id ID of the secret - [product] ID of the product to add (unknown | edge_services) + [product] ID of the product to add (unknown_product | edge_services) [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) -DEPRECATED ARGS: - [product-name] (Deprecated: use `product` field) Name of the product to add - FLAGS: -h, --help help for add-owner diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-create-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-create-usage.golden index 0a471dd30b..78ee4b4106 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-create-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-create-usage.golden @@ -6,7 +6,7 @@ USAGE: scw secret secret create [arg=value ...] EXAMPLES: - Add a given secret + Create a given secret scw secret secret create name=foobar description="$(cat )" ARGS: @@ -14,12 +14,12 @@ ARGS: [name] Name of the secret [tags.{index}] List of the secret's tags [description] Description of the secret - [type] Type of the secret (unknown_secret_type | opaque | certificate | key_value) + [type] Type of the secret (unknown_type | opaque | certificate | key_value | basic_credentials | database_credentials | ssh_key) [path] Path of the secret [ephemeral-policy.time-to-live] Time frame, from one second and up to one year, during which the secret's versions are valid. [ephemeral-policy.expires-once-accessed] Returns `true` if the version expires after a single user access. [ephemeral-policy.action] Action to perform when the version of a secret expires (unknown_action | delete | disable) - [is-protected] Returns `true` if secret protection is enabled on a given secret + [protected] Returns `true` if secret protection is enabled on a given secret [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) FLAGS: diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-delete-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-delete-usage.golden index 3669e398b0..7b16008537 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-delete-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-delete-usage.golden @@ -3,11 +3,11 @@ Delete a given secret specified by the `region` and `secret_id` parameters. USAGE: - scw secret secret delete [arg=value ...] + scw secret secret delete [arg=value ...] EXAMPLES: Delete a given secret - scw secret secret delete secret-id=11111111-1111-1111-1111-111111111111 + scw secret secret delete 11111111-1111-1111-1111-111111111111 ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-get-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-get-usage.golden index c42282476f..93794f7487 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-get-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-get-usage.golden @@ -3,7 +3,7 @@ Retrieve the metadata of a secret specified by the `region` and `secret_id` parameters. USAGE: - scw secret secret get [arg=value ...] + scw secret secret get [arg=value ...] ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-list-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-list-usage.golden index fc9d4026a8..8cfa5672f7 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-list-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-list-usage.golden @@ -10,9 +10,9 @@ ARGS: [order-by] (name_asc | name_desc | created_at_asc | created_at_desc | updated_at_asc | updated_at_desc) [tags.{index}] List of tags to filter on (optional) [name] Filter by secret name (optional) - [is-managed] Filter by managed / not managed (optional) - [path] Filter by path (optional) - [is-ephemeral] Filter by ephemeral / not ephemeral (optional) + [path] Filter by exact path (optional) + [ephemeral] Filter by ephemeral / not ephemeral (optional) + [type] Filter by secret type (optional) (unknown_type | opaque | certificate | key_value | basic_credentials | database_credentials | ssh_key) [organization-id] Filter by Organization ID (optional) [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw | all) diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-protect-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-protect-usage.golden index 8ca1309c91..262d9bef4c 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-protect-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-protect-usage.golden @@ -1,16 +1,16 @@ 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Protect a given secret specified by the `secret_id` parameter. A protected secret can be read and modified but cannot be deleted. +Enable secret protection for a given secret specified by the `secret_id` parameter. Enabling secret protection means that your secret can be read and modified, but it cannot be deleted. USAGE: scw secret secret protect [arg=value ...] EXAMPLES: - Protect a secret + Enable secret protection scw secret secret protect 11111111-1111-1111-1111-111111111111 ARGS: - secret-id ID of the secret to protect + secret-id ID of the secret to enable secret protection for [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) FLAGS: diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-unprotect-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-unprotect-usage.golden index 70c810dadb..35be607608 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-unprotect-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-unprotect-usage.golden @@ -1,16 +1,16 @@ 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Unprotect a given secret specified by the `secret_id` parameter. An unprotected secret can be read, modified and deleted. +Disable secret protection for a given secret specified by the `secret_id` parameter. Disabling secret protection means that your secret can be read, modified and deleted. USAGE: scw secret secret unprotect [arg=value ...] EXAMPLES: - Unprotect a secret + Disable secret protection scw secret secret unprotect 11111111-1111-1111-1111-111111111111 ARGS: - secret-id ID of the secret to unprotect + secret-id ID of the secret to disable secret protection for [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) FLAGS: diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-update-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-update-usage.golden index c23612d9f7..0483ac7fa3 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-update-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-update-usage.golden @@ -3,7 +3,7 @@ Edit a secret's metadata such as name, tag(s), description and ephemeral policy. The secret to update is specified by the `secret_id` and `region` parameters. USAGE: - scw secret secret update [arg=value ...] + scw secret secret update [arg=value ...] ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-secret-usage.golden b/cmd/scw/testdata/test-all-usage-secret-secret-usage.golden index 02c49a6b70..8f9ff192e9 100644 --- a/cmd/scw/testdata/test-all-usage-secret-secret-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-secret-usage.golden @@ -11,8 +11,8 @@ AVAILABLE COMMANDS: delete Delete a secret get Get metadata using the secret's ID list List secrets - protect Protect a secret - unprotect Unprotect a secret + protect Enable secret protection + unprotect Disable secret protection update Update metadata of a secret FLAGS: diff --git a/cmd/scw/testdata/test-all-usage-secret-tag-list-usage.golden b/cmd/scw/testdata/test-all-usage-secret-tag-list-usage.golden deleted file mode 100644 index bea94b1456..0000000000 --- a/cmd/scw/testdata/test-all-usage-secret-tag-list-usage.golden +++ /dev/null @@ -1,19 +0,0 @@ -🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 -πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -List all tags associated with secrets within a given Project. - -USAGE: - scw secret tag list [arg=value ...] - -ARGS: - [project-id] ID of the Project to target - [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw | all) - -FLAGS: - -h, --help help for list - -GLOBAL FLAGS: - -c, --config string The path to the config file - -D, --debug Enable debug mode - -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") - -p, --profile string The config profile to use diff --git a/cmd/scw/testdata/test-all-usage-secret-tag-usage.golden b/cmd/scw/testdata/test-all-usage-secret-tag-usage.golden index 8a13d7a98b..615b16940e 100644 --- a/cmd/scw/testdata/test-all-usage-secret-tag-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-tag-usage.golden @@ -3,10 +3,7 @@ Tag management commands. USAGE: - scw secret tag - -AVAILABLE COMMANDS: - list List tags + scw secret tag FLAGS: -h, --help help for tag @@ -16,5 +13,3 @@ GLOBAL FLAGS: -D, --debug Enable debug mode -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") -p, --profile string The config profile to use - -Use "scw secret tag [command] --help" for more information about a command. diff --git a/cmd/scw/testdata/test-all-usage-secret-usage.golden b/cmd/scw/testdata/test-all-usage-secret-usage.golden index b4951ae648..5df572793d 100644 --- a/cmd/scw/testdata/test-all-usage-secret-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-usage.golden @@ -1,12 +1,11 @@ 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -This API allows you to conveniently store, access and share sensitive data. +This API allows you to conveniently store, access and share sensitive data such as passwords, API keys and certificates. USAGE: scw secret AVAILABLE COMMANDS: - folder Folder management commands secret Secret management commands tag Tag management commands version Secret Version management commands diff --git a/cmd/scw/testdata/test-all-usage-secret-version-access-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-access-usage.golden index c98447fc98..676a6b1435 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-access-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-access-usage.golden @@ -3,11 +3,13 @@ Access sensitive data in a secret's version specified by the `region`, `secret_id` and `revision` parameters. USAGE: - scw secret version access [arg=value ...] + scw secret version access [arg=value ...] ARGS: secret-id ID of the secret revision Version number + [field] Return only the JSON field of the given name + [raw] Return only the raw payload [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) FLAGS: diff --git a/cmd/scw/testdata/test-all-usage-secret-version-create-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-create-usage.golden index 0b087508f1..4cd6089005 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-create-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-create-usage.golden @@ -3,20 +3,15 @@ Create a version of a given secret specified by the `region` and `secret_id` parameters. USAGE: - scw secret version create [arg=value ...] + scw secret version create [arg=value ...] ARGS: - secret-id ID of the secret - data Content of the secret version. Base64 is handled by the SDK (Support file loading with @/path/to/file) - [description] Description of the version - [disable-previous] Disable the previous secret version - [password-generation.length] Length of the password to generate (between 1 and 1024) - [password-generation.no-lowercase-letters] Do not include lower case letters by default in the alphabet - [password-generation.no-uppercase-letters] Do not include upper case letters by default in the alphabet - [password-generation.no-digits] Do not include digits by default in the alphabet - [password-generation.additional-chars] Additional ascii characters to be included in the alphabet - [data-crc32] (Optional.) The CRC32 checksum of the data as a base-10 integer - [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) + secret-id ID of the secret + data Content of the secret version. Base64 is handled by the SDK (Support file loading with @/path/to/file) + [description] Description of the version + [disable-previous] Disable the previous secret version + [data-crc32] (Optional.) The CRC32 checksum of the data as a base-10 integer + [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) FLAGS: -h, --help help for create diff --git a/cmd/scw/testdata/test-all-usage-secret-version-delete-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-delete-usage.golden index f129c2d1cf..bd81944ba5 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-delete-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-delete-usage.golden @@ -3,11 +3,11 @@ Delete a secret's version and the sensitive data contained in it. Deleting a version is permanent and cannot be undone. USAGE: - scw secret version delete [arg=value ...] + scw secret version delete [arg=value ...] EXAMPLES: Delete a given Secret Version - scw secret version delete secret-id=11111111-1111-1111-1111-111111111111 revision=1 + scw secret version delete 11111111-1111-1111-1111-111111111111 revision=1 ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-version-disable-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-disable-usage.golden index cc601e890e..3730831528 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-disable-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-disable-usage.golden @@ -3,7 +3,7 @@ Make a specific version inaccessible. You must specify the `region`, `secret_id` and `revision` parameters. USAGE: - scw secret version disable [arg=value ...] + scw secret version disable [arg=value ...] ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-version-enable-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-enable-usage.golden index e5944e45cf..d4eef7f77a 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-enable-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-enable-usage.golden @@ -3,7 +3,7 @@ Make a specific version accessible. You must specify the `region`, `secret_id` and `revision` parameters. USAGE: - scw secret version enable [arg=value ...] + scw secret version enable [arg=value ...] ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-version-generate-password-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-generate-password-usage.golden deleted file mode 100644 index 3e066fea88..0000000000 --- a/cmd/scw/testdata/test-all-usage-secret-version-generate-password-usage.golden +++ /dev/null @@ -1,26 +0,0 @@ -🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲 -πŸŸ₯πŸŸ₯πŸŸ₯ STDERR️️ πŸŸ₯πŸŸ₯πŸŸ₯️ -Generate a password for the given secret specified by the `region` and `secret_id` parameters. This will also create a new version of the secret that will store the password. - -USAGE: - scw secret version generate-password [arg=value ...] - -ARGS: - secret-id ID of the secret - [description] Description of the version - [disable-previous] (Optional.) Disable the previous secret version - [length] Length of the password to generate (between 1 and 1024 characters) - [no-lowercase-letters] (Optional.) Exclude lower case letters by default in the password character set - [no-uppercase-letters] (Optional.) Exclude upper case letters by default in the password character set - [no-digits] (Optional.) Exclude digits by default in the password character set - [additional-chars] (Optional.) Additional ASCII characters to be included in the password character set - [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw) - -FLAGS: - -h, --help help for generate-password - -GLOBAL FLAGS: - -c, --config string The path to the config file - -D, --debug Enable debug mode - -o, --output string Output format: json or human, see 'scw help output' for more info (default "human") - -p, --profile string The config profile to use diff --git a/cmd/scw/testdata/test-all-usage-secret-version-get-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-get-usage.golden index dac56fd98e..b6ae122ffe 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-get-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-get-usage.golden @@ -3,7 +3,7 @@ Retrieve the metadata of a secret's given version specified by the `region`, `secret_id` and `revision` parameters. USAGE: - scw secret version get [arg=value ...] + scw secret version get [arg=value ...] ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-version-list-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-list-usage.golden index 17a0b645b6..aa9a01aabb 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-list-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-list-usage.golden @@ -3,11 +3,11 @@ Retrieve the list of a given secret's versions specified by the `secret_id` and `region` parameters. USAGE: - scw secret version list [arg=value ...] + scw secret version list [arg=value ...] ARGS: secret-id ID of the secret - [status.{index}] Filter results by status (unknown | enabled | disabled | destroyed) + [status.{index}] Filter results by status (unknown_status | enabled | disabled | deleted) [region=fr-par] Region to target. If none is passed will use default region from the config (fr-par | nl-ams | pl-waw | all) FLAGS: diff --git a/cmd/scw/testdata/test-all-usage-secret-version-update-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-update-usage.golden index 34f1f83a01..b2526498c6 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-update-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-update-usage.golden @@ -3,7 +3,7 @@ Edit the metadata of a secret's given version, specified by the `region`, `secret_id` and `revision` parameters. USAGE: - scw secret version update [arg=value ...] + scw secret version update [arg=value ...] ARGS: secret-id ID of the secret diff --git a/cmd/scw/testdata/test-all-usage-secret-version-usage.golden b/cmd/scw/testdata/test-all-usage-secret-version-usage.golden index 7ddb1aa4c3..6a97c1e5a1 100644 --- a/cmd/scw/testdata/test-all-usage-secret-version-usage.golden +++ b/cmd/scw/testdata/test-all-usage-secret-version-usage.golden @@ -6,15 +6,14 @@ USAGE: scw secret version AVAILABLE COMMANDS: - access Access a secret's version using the secret's ID - create Create a version - delete Delete a version - disable Disable a version - enable Enable a version - generate-password Generate a password in a new version - get Get metadata of a secret's version using the secret's ID - list List versions of a secret using the secret's ID - update Update metadata of a version + access Access a secret's version using the secret's ID + create Create a version + delete Delete a version + disable Disable a version + enable Enable a version + get Get metadata of a secret's version using the secret's ID + list List versions of a secret using the secret's ID + update Update metadata of a version FLAGS: -h, --help help for version diff --git a/docs/commands/secret.md b/docs/commands/secret.md index cbde3b1bd0..f6f89b4ce8 100644 --- a/docs/commands/secret.md +++ b/docs/commands/secret.md @@ -1,103 +1,28 @@ # Documentation for `scw secret` -This API allows you to conveniently store, access and share sensitive data. +This API allows you to conveniently store, access and share sensitive data such as passwords, API keys and certificates. -- [Folder management commands](#folder-management-commands) - - [Create folder](#create-folder) - - [Delete a given folder specified by the `region` and `folder_id` parameters](#delete-a-given-folder-specified-by-the-`region`-and-`folder_id`-parameters) - - [List folders](#list-folders) - [Secret management commands](#secret-management-commands) - [Allow a product to use the secret](#allow-a-product-to-use-the-secret) - [Create a secret](#create-a-secret) - [Delete a secret](#delete-a-secret) - [Get metadata using the secret's ID](#get-metadata-using-the-secret's-id) - [List secrets](#list-secrets) - - [Protect a secret](#protect-a-secret) - - [Unprotect a secret](#unprotect-a-secret) + - [Enable secret protection](#enable-secret-protection) + - [Disable secret protection](#disable-secret-protection) - [Update metadata of a secret](#update-metadata-of-a-secret) - [Tag management commands](#tag-management-commands) - - [List tags](#list-tags) - [Secret Version management commands](#secret-version-management-commands) - [Access a secret's version using the secret's ID](#access-a-secret's-version-using-the-secret's-id) - [Create a version](#create-a-version) - [Delete a version](#delete-a-version) - [Disable a version](#disable-a-version) - [Enable a version](#enable-a-version) - - [Generate a password in a new version](#generate-a-password-in-a-new-version) - [Get metadata of a secret's version using the secret's ID](#get-metadata-of-a-secret's-version-using-the-secret's-id) - [List versions of a secret using the secret's ID](#list-versions-of-a-secret-using-the-secret's-id) - [Update metadata of a version](#update-metadata-of-a-version) -## Folder management commands - -Location of the secret in the directory structure. - - -### Create folder - -Create folder. - -**Usage:** - -``` -scw secret folder create [arg=value ...] -``` - - -**Args:** - -| Name | | Description | -|------|---|-------------| -| project-id | | Project ID to use. If none is passed the default project ID will be used | -| name | | Name of the folder | -| path | | Path of the folder | -| region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | - - - -### Delete a given folder specified by the `region` and `folder_id` parameters - -Delete a given folder specified by the `region` and `folder_id` parameters. - -**Usage:** - -``` -scw secret folder delete [arg=value ...] -``` - - -**Args:** - -| Name | | Description | -|------|---|-------------| -| folder-id | Required | ID of the folder | -| region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | - - - -### List folders - -Retrieve the list of folders created within a Project. - -**Usage:** - -``` -scw secret folder list [arg=value ...] -``` - - -**Args:** - -| Name | | Description | -|------|---|-------------| -| project-id | | Filter by Project ID (optional) | -| path | | Filter by path (optional) | -| order-by | One of: `created_at_asc`, `created_at_desc`, `name_asc`, `name_desc` | | -| region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw`, `all` | Region to target. If none is passed will use default region from the config | - - - ## Secret management commands Secrets are logical containers made up of zero or more immutable versions, that contain sensitive data. @@ -119,8 +44,7 @@ scw secret secret add-owner [arg=value ...] | Name | | Description | |------|---|-------------| | secret-id | Required | ID of the secret | -| ~~product-name~~ | Deprecated | (Deprecated: use `product` field) Name of the product to add | -| product | One of: `unknown`, `edge_services` | ID of the product to add | +| product | One of: `unknown_product`, `edge_services` | ID of the product to add | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | @@ -144,19 +68,19 @@ scw secret secret create [arg=value ...] | name | | Name of the secret | | tags.{index} | | List of the secret's tags | | description | | Description of the secret | -| type | One of: `unknown_secret_type`, `opaque`, `certificate`, `key_value` | Type of the secret | +| type | One of: `unknown_type`, `opaque`, `certificate`, `key_value`, `basic_credentials`, `database_credentials`, `ssh_key` | Type of the secret | | path | | Path of the secret | | ephemeral-policy.time-to-live | | Time frame, from one second and up to one year, during which the secret's versions are valid. | | ephemeral-policy.expires-once-accessed | | Returns `true` if the version expires after a single user access. | | ephemeral-policy.action | One of: `unknown_action`, `delete`, `disable` | Action to perform when the version of a secret expires | -| is-protected | | Returns `true` if secret protection is enabled on a given secret | +| protected | | Returns `true` if secret protection is enabled on a given secret | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | **Examples:** -Add a given secret +Create a given secret ``` scw secret secret create name=foobar description="$(cat )" ``` @@ -171,7 +95,7 @@ Delete a given secret specified by the `region` and `secret_id` parameters. **Usage:** ``` -scw secret secret delete [arg=value ...] +scw secret secret delete [arg=value ...] ``` @@ -188,7 +112,7 @@ scw secret secret delete [arg=value ...] Delete a given secret ``` -scw secret secret delete secret-id=11111111-1111-1111-1111-111111111111 +scw secret secret delete 11111111-1111-1111-1111-111111111111 ``` @@ -201,7 +125,7 @@ Retrieve the metadata of a secret specified by the `region` and `secret_id` para **Usage:** ``` -scw secret secret get [arg=value ...] +scw secret secret get [arg=value ...] ``` @@ -233,17 +157,17 @@ scw secret secret list [arg=value ...] | order-by | One of: `name_asc`, `name_desc`, `created_at_asc`, `created_at_desc`, `updated_at_asc`, `updated_at_desc` | | | tags.{index} | | List of tags to filter on (optional) | | name | | Filter by secret name (optional) | -| is-managed | | Filter by managed / not managed (optional) | -| path | | Filter by path (optional) | -| is-ephemeral | | Filter by ephemeral / not ephemeral (optional) | +| path | | Filter by exact path (optional) | +| ephemeral | | Filter by ephemeral / not ephemeral (optional) | +| type | One of: `unknown_type`, `opaque`, `certificate`, `key_value`, `basic_credentials`, `database_credentials`, `ssh_key` | Filter by secret type (optional) | | organization-id | | Filter by Organization ID (optional) | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw`, `all` | Region to target. If none is passed will use default region from the config | -### Protect a secret +### Enable secret protection -Protect a given secret specified by the `secret_id` parameter. A protected secret can be read and modified but cannot be deleted. +Enable secret protection for a given secret specified by the `secret_id` parameter. Enabling secret protection means that your secret can be read and modified, but it cannot be deleted. **Usage:** @@ -256,14 +180,14 @@ scw secret secret protect [arg=value ...] | Name | | Description | |------|---|-------------| -| secret-id | Required | ID of the secret to protect | +| secret-id | Required | ID of the secret to enable secret protection for | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | **Examples:** -Protect a secret +Enable secret protection ``` scw secret secret protect 11111111-1111-1111-1111-111111111111 ``` @@ -271,9 +195,9 @@ scw secret secret protect 11111111-1111-1111-1111-111111111111 -### Unprotect a secret +### Disable secret protection -Unprotect a given secret specified by the `secret_id` parameter. An unprotected secret can be read, modified and deleted. +Disable secret protection for a given secret specified by the `secret_id` parameter. Disabling secret protection means that your secret can be read, modified and deleted. **Usage:** @@ -286,14 +210,14 @@ scw secret secret unprotect [arg=value ...] | Name | | Description | |------|---|-------------| -| secret-id | Required | ID of the secret to unprotect | +| secret-id | Required | ID of the secret to disable secret protection for | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | **Examples:** -Unprotect a secret +Disable secret protection ``` scw secret secret unprotect 11111111-1111-1111-1111-111111111111 ``` @@ -308,7 +232,7 @@ Edit a secret's metadata such as name, tag(s), description and ephemeral policy. **Usage:** ``` -scw secret secret update [arg=value ...] +scw secret secret update [arg=value ...] ``` @@ -332,26 +256,15 @@ scw secret secret update [arg=value ...] Tag management commands. - -### List tags - -List all tags associated with secrets within a given Project. +Tag management commands. **Usage:** ``` -scw secret tag list [arg=value ...] +scw secret tag ``` -**Args:** - -| Name | | Description | -|------|---|-------------| -| project-id | | ID of the Project to target | -| region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw`, `all` | Region to target. If none is passed will use default region from the config | - - ## Secret Version management commands @@ -365,7 +278,7 @@ Access sensitive data in a secret's version specified by the `region`, `secret_i **Usage:** ``` -scw secret version access [arg=value ...] +scw secret version access [arg=value ...] ``` @@ -375,6 +288,8 @@ scw secret version access [arg=value ...] |------|---|-------------| | secret-id | Required | ID of the secret | | revision | Required | Version number | +| field | | Return only the JSON field of the given name | +| raw | | Return only the raw payload | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | @@ -386,7 +301,7 @@ Create a version of a given secret specified by the `region` and `secret_id` par **Usage:** ``` -scw secret version create [arg=value ...] +scw secret version create [arg=value ...] ``` @@ -398,11 +313,6 @@ scw secret version create [arg=value ...] | data | Required | Content of the secret version. Base64 is handled by the SDK | | description | | Description of the version | | disable-previous | | Disable the previous secret version | -| password-generation.length | | Length of the password to generate (between 1 and 1024) | -| password-generation.no-lowercase-letters | | Do not include lower case letters by default in the alphabet | -| password-generation.no-uppercase-letters | | Do not include upper case letters by default in the alphabet | -| password-generation.no-digits | | Do not include digits by default in the alphabet | -| password-generation.additional-chars | | Additional ascii characters to be included in the alphabet | | data-crc32 | | (Optional.) The CRC32 checksum of the data as a base-10 integer | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | @@ -415,7 +325,7 @@ Delete a secret's version and the sensitive data contained in it. Deleting a ver **Usage:** ``` -scw secret version delete [arg=value ...] +scw secret version delete [arg=value ...] ``` @@ -433,7 +343,7 @@ scw secret version delete [arg=value ...] Delete a given Secret Version ``` -scw secret version delete secret-id=11111111-1111-1111-1111-111111111111 revision=1 +scw secret version delete 11111111-1111-1111-1111-111111111111 revision=1 ``` @@ -446,7 +356,7 @@ Make a specific version inaccessible. You must specify the `region`, `secret_id` **Usage:** ``` -scw secret version disable [arg=value ...] +scw secret version disable [arg=value ...] ``` @@ -467,7 +377,7 @@ Make a specific version accessible. You must specify the `region`, `secret_id` a **Usage:** ``` -scw secret version enable [arg=value ...] +scw secret version enable [arg=value ...] ``` @@ -481,33 +391,6 @@ scw secret version enable [arg=value ...] -### Generate a password in a new version - -Generate a password for the given secret specified by the `region` and `secret_id` parameters. This will also create a new version of the secret that will store the password. - -**Usage:** - -``` -scw secret version generate-password [arg=value ...] -``` - - -**Args:** - -| Name | | Description | -|------|---|-------------| -| secret-id | Required | ID of the secret | -| description | | Description of the version | -| disable-previous | | (Optional.) Disable the previous secret version | -| length | | Length of the password to generate (between 1 and 1024 characters) | -| no-lowercase-letters | | (Optional.) Exclude lower case letters by default in the password character set | -| no-uppercase-letters | | (Optional.) Exclude upper case letters by default in the password character set | -| no-digits | | (Optional.) Exclude digits by default in the password character set | -| additional-chars | | (Optional.) Additional ASCII characters to be included in the password character set | -| region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw` | Region to target. If none is passed will use default region from the config | - - - ### Get metadata of a secret's version using the secret's ID Retrieve the metadata of a secret's given version specified by the `region`, `secret_id` and `revision` parameters. @@ -515,7 +398,7 @@ Retrieve the metadata of a secret's given version specified by the `region`, `se **Usage:** ``` -scw secret version get [arg=value ...] +scw secret version get [arg=value ...] ``` @@ -536,7 +419,7 @@ Retrieve the list of a given secret's versions specified by the `secret_id` and **Usage:** ``` -scw secret version list [arg=value ...] +scw secret version list [arg=value ...] ``` @@ -545,7 +428,7 @@ scw secret version list [arg=value ...] | Name | | Description | |------|---|-------------| | secret-id | Required | ID of the secret | -| status.{index} | One of: `unknown`, `enabled`, `disabled`, `destroyed` | Filter results by status | +| status.{index} | One of: `unknown_status`, `enabled`, `disabled`, `deleted` | Filter results by status | | region | Default: `fr-par`
One of: `fr-par`, `nl-ams`, `pl-waw`, `all` | Region to target. If none is passed will use default region from the config | @@ -557,7 +440,7 @@ Edit the metadata of a secret's given version, specified by the `region`, `secre **Usage:** ``` -scw secret version update [arg=value ...] +scw secret version update [arg=value ...] ``` diff --git a/internal/namespaces/get_commands.go b/internal/namespaces/get_commands.go index 5d376be0b2..83c7758dab 100644 --- a/internal/namespaces/get_commands.go +++ b/internal/namespaces/get_commands.go @@ -35,7 +35,7 @@ import ( "github.com/scaleway/scaleway-cli/v2/internal/namespaces/rdb/v1" "github.com/scaleway/scaleway-cli/v2/internal/namespaces/redis/v1" "github.com/scaleway/scaleway-cli/v2/internal/namespaces/registry/v1" - secret "github.com/scaleway/scaleway-cli/v2/internal/namespaces/secret/v1alpha1" + secret "github.com/scaleway/scaleway-cli/v2/internal/namespaces/secret/v1beta1" serverless_sqldb "github.com/scaleway/scaleway-cli/v2/internal/namespaces/serverless_sqldb/v1alpha1" "github.com/scaleway/scaleway-cli/v2/internal/namespaces/shell" tem "github.com/scaleway/scaleway-cli/v2/internal/namespaces/tem/v1alpha1"