You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(obs): extend support for object storage (#458)
### Object Storage Service Management
- **Service Creation**: Implemented `object-storage create` command with
support for:
- `--label` flag for setting labels during creation
- `--network` flag for network attachment during creation
- `--configured` flag for setting configured status
- `--wait` flag that blocks until service reaches "running" state
### Bucket Management
- **Bucket Operations**: Implemented bucket management:
- `object-storage bucket create` - Create new buckets
- `object-storage bucket delete` - Delete existing buckets
- `object-storage bucket list` - List all buckets for a service
### Label Management
- **Dedicated Label Commands**: Added structured label management:
- `object-storage label add` - Add labels to existing services
- `object-storage label remove` - Remove specific labels from services
- `object-storage label list` - List all labels for a service
### Network Management
- **Network Operations**: Added network management:
- `object-storage network attach` - Attach networks to services
- `object-storage network detach` - Detach networks from services
### User Management
- **User Operations**: Added user management:
- `object-storage user create` - Create new users
- `object-storage user delete` - Delete existing users
- `object-storage user list` - List all users for a service
- Access Key Management
- **Access Key Operations**: Implemented access key management:
- `object-storage create-access-key` - Generate new access keys for
users
- `object-storage delete-access-key` - Remove access keys
- `object-storage list-access-keys` - List all access keys for a user
---------
Co-authored-by: Bachir Khiati <bachir.khiati@upcloud.com>
Co-authored-by: Ville Välimäki <ville.valimaki@upcloud.com>
Co-authored-by: Ville Välimäki <110451292+villevsv-upcloud@users.noreply.github.com>
Co-authored-by: Toni Kangas <kangasta@users.noreply.github.com>
s.Cobra().Long=commands.WrapLongDescription(`Create an access key for a user in managed object storage service\n\nCreates a new access key for the specified user in a managed object storage service. The access key can be used to authenticate API requests to the object storage service. Note that the secret access key is only shown once during creation and cannot be retrieved later.`)
35
+
36
+
fs:=s.Cobra().Flags()
37
+
fs.StringVar(&s.params.Username, "username", "", "The username to create the access key for.")
s.Cobra().Long=commands.WrapLongDescription(`Delete an access key from a user in managed object storage service\n\nDeletes the specified access key from the user in the managed object storage service. The access key will be permanently deleted and can no longer be used for authentication.`)
35
+
36
+
fs:=s.Cobra().Flags()
37
+
fs.StringVar(&s.params.Username, "username", "", "Username that owns the access key")
38
+
fs.StringVar(&s.params.AccessKeyID, "access-key-id", "", "Access key ID to delete")
return output.OnlyMarshaled{Value: fmt.Sprintf("Access key %s deleted for user %s from service %s", s.params.AccessKeyID, s.params.Username, serviceUUID)}, nil
s.Cobra().Long=commands.WrapLongDescription(`List access keys for a user in managed object storage service\n\nLists all access keys for the specified user in the managed object storage service. This helps you find the access key IDs needed for deletion.`)
35
+
36
+
fs:=s.Cobra().Flags()
37
+
fs.StringVar(&s.params.Username, "username", "", "The username of the user to list access keys from.")
0 commit comments