Skip to content

fm storage ​

Reference for the fm storage command group (auto-generated from fm storage --help).

fm storage ​

text
Manage storage resources including volumes, snapshots, and buckets.

Examples:
  fm storage volume list
  fm storage volume create --name my-volume --size 100
  fm storage bucket list
  fm storage bucket create my-bucket

Usage:
  fm storage [command]

Available Commands:
  bucket        Manage object storage buckets
  s3-credential Manage S3 credentials
  snapshot      Manage volume snapshots
  volume        Manage block storage volumes

Flags:
  -h, --help   help for storage

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage [command] --help" for more information about a command.

fm storage bucket ​

text
Manage object storage buckets.

Usage:
  fm storage bucket [command]

Aliases:
  bucket, buckets

Available Commands:
  create      Create a bucket
  delete      Delete a bucket
  get         Get bucket details
  list        List buckets
  tags        Read and replace a bucket's tags

Flags:
  -h, --help   help for bucket

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage bucket [command] --help" for more information about a command.

fm storage bucket create ​

text
Create a new object storage bucket.

Bucket names must be globally unique, 3-63 characters, and contain only
lowercase letters, numbers, and hyphens.

Examples:
  fm storage bucket create my-bucket
  fm storage bucket create my-bucket --region sweden --versioning

Usage:
  fm storage bucket create <name> [flags]

Flags:
  -h, --help                   help for create
      --region string          bucket region
      --storage-class string   default storage class: STANDARD, STANDARD_IA, REDUCED_REDUNDANCY or GLACIER (case-insensitive; server default STANDARD)
      --tag strings            tags in key=value format
      --versioning             enable versioning

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage bucket delete ​

text
Delete an object storage bucket.

By default, the bucket must be empty. Use --force to delete a bucket
with objects (this will delete all objects first).

Usage:
  fm storage bucket delete <name> [flags]

Flags:
      --force   delete bucket with all objects
  -h, --help    help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage bucket get ​

text
Get detailed information about a specific bucket.

Usage:
  fm storage bucket get <bucket-name> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage bucket list ​

text
List all object storage buckets.

Usage:
  fm storage bucket list [flags]

Flags:
  -h, --help   help for list

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage bucket tags ​

text
Read and replace a bucket's tags

Usage:
  fm storage bucket tags [command]

Aliases:
  tags, tag

Available Commands:
  get         Show a bucket's tags
  set         Replace a bucket's tags

Flags:
  -h, --help   help for tags

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage bucket tags [command] --help" for more information about a command.
fm storage bucket tags get ​
text
Show a bucket's tags

Usage:
  fm storage bucket tags get <bucket-name> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)
fm storage bucket tags set ​
text
Replace a bucket's tags in place with exactly the given set
(replace semantics — any tag not listed is removed).

The set you pass IS the resulting set. To ADD one tag without disturbing the
others, read the current ones first with 'fm storage bucket tags get' and pass
them all back.

Use --clear to remove every tag.

The bucket's own settings (ACL, storage class, quota, CORS) are stored as
reserved bucket tags and are preserved across the replace, so clearing your tags
does not reset them.

Examples:
  fm storage bucket tags set my-bucket --tag env=prod --tag owner=team-a
  fm storage bucket tags set my-bucket --clear

Usage:
  fm storage bucket tags set <bucket-name> --tag <key=value> [--tag <key=value> ...] [flags]

Flags:
      --clear         remove ALL tags (mutually exclusive with --tag)
  -h, --help          help for set
      --tag strings   tag in key=value format (repeatable; replace semantics)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage s3-credential ​

text
Manage S3 credentials for programmatic object storage access.

Usage:
  fm storage s3-credential [command]

Aliases:
  s3-credential, s3-credentials, s3cred

Available Commands:
  create      Create S3 credential
  delete      Delete S3 credential
  list        List S3 credentials
  rotate      Rotate S3 credential

Flags:
  -h, --help   help for s3-credential

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage s3-credential [command] --help" for more information about a command.

fm storage s3-credential create ​

text
Create a new S3 credential for object storage access.

The secret key is only shown once at creation time. Store it securely.

Examples:
  fm storage s3-credential create
  fm storage s3-credential create --description "Backup script"
  fm storage s3-credential create --name backup-writer \
    --allowed-bucket backups --allowed-action s3:PutObject --allowed-action s3:GetObject \
    --ip 203.0.113.0/24

An empty/omitted scope means unrestricted on that axis (all buckets / all
actions / any IP) — set them to apply least privilege.

Usage:
  fm storage s3-credential create [flags]

Flags:
      --allowed-action strings   restrict to these S3 actions, e.g. s3:GetObject (repeatable; empty = all actions)
      --allowed-bucket strings   restrict to these buckets (repeatable; empty = all buckets)
      --description string       credential description
  -h, --help                     help for create
      --ip strings               restrict to these source IPs/CIDRs (repeatable; empty = any IP)
      --name string              credential name

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage s3-credential delete ​

text
Delete an S3 credential.

Usage:
  fm storage s3-credential delete <credential-id> [flags]

Flags:
  -h, --help   help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage s3-credential list ​

text
List all S3 credentials for object storage access.

Usage:
  fm storage s3-credential list [flags]

Flags:
  -h, --help   help for list

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage s3-credential rotate ​

text
Rotate an S3 credential, generating new access and secret keys.

Usage:
  fm storage s3-credential rotate <credential-id> [flags]

Flags:
  -h, --help   help for rotate

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage snapshot ​

text
Manage volume snapshots.

Usage:
  fm storage snapshot [command]

Aliases:
  snapshot, snapshots, snap

Available Commands:
  create      Create a snapshot
  delete      Delete a snapshot
  get         Get snapshot details
  list        List snapshots
  restore     Restore a snapshot to a new volume

Flags:
  -h, --help   help for snapshot

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage snapshot [command] --help" for more information about a command.

fm storage snapshot create ​

text
Create a new volume snapshot.

Examples:
  fm storage snapshot create --name backup-snap --volume vol-123
  fm storage snapshot create --name db-snapshot --volume vol-123 --description "Daily backup"

Usage:
  fm storage snapshot create [flags]

Flags:
      --description string   snapshot description
  -h, --help                 help for create
      --name string          snapshot name (required)
      --tag strings          tags in key=value format
      --volume string        volume ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage snapshot delete ​

text
Delete a volume snapshot.

Usage:
  fm storage snapshot delete <snapshot-id> [flags]

Flags:
  -h, --help            help for delete
      --volume string   volume ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage snapshot get ​

text
Get detailed information about a specific snapshot.

Usage:
  fm storage snapshot get <snapshot-id> [flags]

Flags:
  -h, --help            help for get
      --volume string   volume ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage snapshot list ​

text
List all volume snapshots.

Usage:
  fm storage snapshot list [flags]

Flags:
  -h, --help            help for list
      --volume string   volume ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage snapshot restore ​

text
Restore a snapshot to a new volume.

Examples:
  fm storage snapshot restore snap-123 --volume vol-123 --name restored-vol

Usage:
  fm storage snapshot restore <snapshot-id> [flags]

Flags:
      --description string   description for the new volume
  -h, --help                 help for restore
      --name string          name for the new volume (required)
      --volume string        volume ID the snapshot belongs to (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume ​

text
Manage block storage volumes.

Usage:
  fm storage volume [command]

Aliases:
  volume, volumes, vol

Available Commands:
  attach      Attach a volume to an instance
  create      Create a volume
  delete      Delete a volume
  detach      Detach a volume from an instance
  get         Get volume details
  list        List volumes
  resize      Resize a volume
  tags        Read and replace a volume's tags

Flags:
  -h, --help   help for volume

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage volume [command] --help" for more information about a command.

fm storage volume attach ​

text
Attach a block storage volume to a compute instance.

Examples:
  fm storage volume attach vol-123 inst-456
  fm storage volume attach vol-123 inst-456 --device /dev/vdb

Usage:
  fm storage volume attach <volume-id> <instance-id> [flags]

Flags:
      --device string   device path (e.g., /dev/vdb)
  -h, --help            help for attach

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume create ​

text
Create a new block storage volume.

Examples:
  fm storage volume create --name my-volume --size 100
  fm storage volume create --name db-volume --size 500 --type ssd --encrypted
  fm storage volume create --name restore-vol --size 100 --snapshot snap-123

Usage:
  fm storage volume create [flags]

Flags:
      --description string   volume description
      --encrypted            enable encryption
  -h, --help                 help for create
      --name string          volume name (required)
      --size int             volume size in GB (required)
      --snapshot string      create from snapshot ID
      --tag strings          tags in key=value format
      --type string          volume tier key (default: the platform default tier; tab-complete or see the volume-tier catalog for offered tiers)
      --zone string          availability zone

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume delete ​

text
Delete a block storage volume.

Usage:
  fm storage volume delete <volume-id> [flags]

Flags:
      --force   force delete attached volume
  -h, --help    help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume detach ​

text
Detach a block storage volume from a compute instance.

Usage:
  fm storage volume detach <volume-id> [flags]

Flags:
      --force   force detach
  -h, --help    help for detach

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume get ​

text
Get detailed information about a specific volume.

Usage:
  fm storage volume get <volume-id> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume list ​

text
List all block storage volumes.

Usage:
  fm storage volume list [flags]

Flags:
  -h, --help            help for list
      --status string   filter by status (available, in-use, etc.)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume resize ​

text
Resize a block storage volume to a new size.

Note: Volumes can only be increased in size, not decreased. The increase
counts against the tenant's block-storage quota; a resize over the quota is
refused and the command exits non-zero with the reason.

By default the command waits until the resize has finished. Use --no-wait to
return as soon as the request is accepted.

Examples:
  fm storage volume resize vol-123 200
  fm storage volume resize vol-123 200 --no-wait

Usage:
  fm storage volume resize <volume-id> <new-size> [flags]

Flags:
  -h, --help      help for resize
      --no-wait   return as soon as the resize is accepted instead of waiting for it to finish

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm storage volume tags ​

text
Read and replace a volume's tags

Usage:
  fm storage volume tags [command]

Aliases:
  tags, tag

Available Commands:
  get         Show a volume's tags
  set         Replace a volume's tags

Flags:
  -h, --help   help for tags

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm storage volume tags [command] --help" for more information about a command.
fm storage volume tags get ​
text
Show the resource's tags: yours one key=value per line, then any keys the
platform manages, listed separately as read-only. Those are kept when you
replace your tags, so they are not part of the set to pass to 'tags set'.

Under -o json or -o yaml only your own tags are printed — exactly the set 'tags
set' accepts, so the output can be fed back to it. Pass --include-platform to
print every key instead, the platform's included.

A key or value that contains a comma, '=', a quote, leading, trailing or
repeated spaces, or any unusual character is shown quoted, and one longer than
256 characters is cut short with '…'.

Usage:
  fm storage volume tags get <volume-id> [flags]

Flags:
  -h, --help               help for get
      --include-platform   under -o json/yaml, print every key, the platform's included (default: only yours, the set 'tags set' accepts)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)
fm storage volume tags set ​
text
Replace a volume's tags in place with exactly the given set
(replace semantics — any tag not listed is removed).

The set you pass IS the resulting set. To ADD one tag without disturbing the
others, read the current ones first with 'fm storage volume tags get' and pass
them all back.

Use --clear to remove every tag.

The platform's own keys (customer-id, request-id, project-id and the
frostmoln_ / frostmoln- namespace, in any letter case) are Frostmoln's, not
yours: 'tags get' lists them apart from your tags, a --tag that sets one is
refused, and the replace keeps them. Leave them out; --clear removes only your
own tags and does not disturb the volume's tenant boundary or billing
attribution.

Examples:
  fm storage volume tags set vol-123 --tag env=prod --tag owner=team-a
  fm storage volume tags set vol-123 --clear

Usage:
  fm storage volume tags set <volume-id> --tag <key=value> [--tag <key=value> ...] [flags]

Flags:
      --clear         remove ALL tags (mutually exclusive with --tag)
  -h, --help          help for set
      --tag strings   tag in key=value format (repeatable; replace semantics)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)