Documentation
¶
Overview ¶
Package file provides methods and message types of the file v1alpha1 API.
Index ¶
- Constants
- type API
- func (s *API) CreateFileSystem(req *CreateFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
- func (s *API) DeleteFileSystem(req *DeleteFileSystemRequest, opts ...scw.RequestOption) error
- func (s *API) GetFileSystem(req *GetFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
- func (s *API) ListAttachments(req *ListAttachmentsRequest, opts ...scw.RequestOption) (*ListAttachmentsResponse, error)
- func (s *API) ListFileSystems(req *ListFileSystemsRequest, opts ...scw.RequestOption) (*ListFileSystemsResponse, error)
- func (s *API) Regions() []scw.Region
- func (s *API) UpdateFileSystem(req *UpdateFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
- func (s *API) WaitForFileSystem(req *WaitForFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
- type Attachment
- type AttachmentResourceType
- type CreateFileSystemRequest
- type DeleteFileSystemRequest
- type FileSystem
- type FileSystemStatus
- type GetFileSystemRequest
- type ListAttachmentsRequest
- type ListAttachmentsResponse
- type ListFileSystemsRequest
- type ListFileSystemsRequestOrderBy
- type ListFileSystemsResponse
- type UpdateFileSystemRequest
- type WaitForFileSystemRequest
Constants ¶
const ( AttachmentResourceTypeUnknownResourceType = AttachmentResourceType("unknown_resource_type") AttachmentResourceTypeInstanceServer = AttachmentResourceType("instance_server") )
const ( // If unspecified, the filesystem status is unknown by default. FileSystemStatusUnknownStatus = FileSystemStatus("unknown_status") // The filesystem is created and available. FileSystemStatusAvailable = FileSystemStatus("available") // The filesystem is in error state. FileSystemStatusError = FileSystemStatus("error") // The filesystem is under creation (transient). FileSystemStatusCreating = FileSystemStatus("creating") // The filesystem is being updated (transient). FileSystemStatusUpdating = FileSystemStatus("updating") )
const ( // Order by creation date (ascending). ListFileSystemsRequestOrderByCreatedAtAsc = ListFileSystemsRequestOrderBy("created_at_asc") // Order by creation date (descending). ListFileSystemsRequestOrderByCreatedAtDesc = ListFileSystemsRequestOrderBy("created_at_desc") // Order by name (ascending). ListFileSystemsRequestOrderByNameAsc = ListFileSystemsRequestOrderBy("name_asc") // Order by name (descending). ListFileSystemsRequestOrderByNameDesc = ListFileSystemsRequestOrderBy("name_desc") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
type API struct {
// contains filtered or unexported fields
}
This API allows you to manage your File Storage resources.
func (*API) CreateFileSystem ¶
func (s *API) CreateFileSystem(req *CreateFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
CreateFileSystem: To create a new filesystem, you must specify a name, a size, and a project ID.
func (*API) DeleteFileSystem ¶
func (s *API) DeleteFileSystem(req *DeleteFileSystemRequest, opts ...scw.RequestOption) error
DeleteFileSystem: You must specify the `filesystem_id` of the filesystem you want to delete.
func (*API) GetFileSystem ¶
func (s *API) GetFileSystem(req *GetFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
GetFileSystem: Retrieve all properties and current status of a specific filesystem identified by its ID.
func (*API) ListAttachments ¶
func (s *API) ListAttachments(req *ListAttachmentsRequest, opts ...scw.RequestOption) (*ListAttachmentsResponse, error)
ListAttachments: List all existing attachments in a specified region. By default, the attachments listed are ordered by creation date in ascending order. This can be modified using the `order_by` field.
func (*API) ListFileSystems ¶
func (s *API) ListFileSystems(req *ListFileSystemsRequest, opts ...scw.RequestOption) (*ListFileSystemsResponse, error)
ListFileSystems: Retrieve all filesystems in the specified region. By default, the filesystems listed are ordered by creation date in ascending order. This can be modified using the `order_by` field.
func (*API) UpdateFileSystem ¶
func (s *API) UpdateFileSystem(req *UpdateFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
UpdateFileSystem: Update the technical details of a filesystem, such as its name, tags or its new size.
func (*API) WaitForFileSystem ¶
func (s *API) WaitForFileSystem(req *WaitForFileSystemRequest, opts ...scw.RequestOption) (*FileSystem, error)
type Attachment ¶
type Attachment struct { // ID: UUID of the attachment. ID string `json:"id"` // FilesystemID: UUID of the filesystem. FilesystemID string `json:"filesystem_id"` // ResourceID: UUID of the attached resource. ResourceID string `json:"resource_id"` // ResourceType: the type of the attached resource. // Default value: unknown_resource_type ResourceType AttachmentResourceType `json:"resource_type"` // Zone: the zone where the resource is located. Zone *scw.Zone `json:"zone"` }
Attachment: Represents an attachment between a filesystem and a resource.
type AttachmentResourceType ¶
type AttachmentResourceType string
func (AttachmentResourceType) MarshalJSON ¶
func (enum AttachmentResourceType) MarshalJSON() ([]byte, error)
func (AttachmentResourceType) String ¶
func (enum AttachmentResourceType) String() string
func (*AttachmentResourceType) UnmarshalJSON ¶
func (enum *AttachmentResourceType) UnmarshalJSON(data []byte) error
func (AttachmentResourceType) Values ¶
func (enum AttachmentResourceType) Values() []AttachmentResourceType
type CreateFileSystemRequest ¶
type CreateFileSystemRequest struct { // Region: region to target. If none is passed will use default region from the config. Region scw.Region `json:"-"` // Name: name of the filesystem. Name string `json:"name"` // ProjectID: UUID of the project the filesystem belongs to. ProjectID string `json:"project_id"` // Size: must be compliant with the minimum (100 GB) and maximum (10 TB) allowed size. Size uint64 `json:"size"` // Tags: list of tags assigned to the filesystem. Tags []string `json:"tags"` }
CreateFileSystemRequest: Request to create a new filesystem.
type DeleteFileSystemRequest ¶
type DeleteFileSystemRequest struct { // Region: region to target. If none is passed will use default region from the config. Region scw.Region `json:"-"` // FilesystemID: UUID of the filesystem. FilesystemID string `json:"-"` }
DeleteFileSystemRequest: Request to delete a specific filesystem.
type FileSystem ¶
type FileSystem struct { // ID: UUID of the filesystem. ID string `json:"id"` // Name: name of the filesystem. Name string `json:"name"` // Size: filesystem size in bytes. Size scw.Size `json:"size"` // Status: current status of the filesystem (e.g. creating, available, ...). // Default value: unknown_status Status FileSystemStatus `json:"status"` // ProjectID: UUID of the project to which the filesystem belongs. ProjectID string `json:"project_id"` // OrganizationID: UUID of the organization to which the filesystem belongs. OrganizationID string `json:"organization_id"` // Tags: list of tags assigned to the filesystem. Tags []string `json:"tags"` // NumberOfAttachments: the current number of attachments (mounts) that the filesystem has. NumberOfAttachments uint32 `json:"number_of_attachments"` // Region: region where the filesystem is located. Region scw.Region `json:"region"` // CreatedAt: creation date of the filesystem. CreatedAt *time.Time `json:"created_at"` // UpdatedAt: last update date of the properties of the filesystem. UpdatedAt *time.Time `json:"updated_at"` }
FileSystem: Represents a filesystem resource and its properties.
type FileSystemStatus ¶
type FileSystemStatus string
Status of the filesystem.
func (FileSystemStatus) MarshalJSON ¶
func (enum FileSystemStatus) MarshalJSON() ([]byte, error)
func (FileSystemStatus) String ¶
func (enum FileSystemStatus) String() string
func (*FileSystemStatus) UnmarshalJSON ¶
func (enum *FileSystemStatus) UnmarshalJSON(data []byte) error
func (FileSystemStatus) Values ¶
func (enum FileSystemStatus) Values() []FileSystemStatus
type GetFileSystemRequest ¶
type GetFileSystemRequest struct { // Region: region to target. If none is passed will use default region from the config. Region scw.Region `json:"-"` // FilesystemID: UUID of the filesystem. FilesystemID string `json:"-"` }
GetFileSystemRequest: Request to retrieve a specific filesystem.
type ListAttachmentsRequest ¶
type ListAttachmentsRequest struct { // Region: region to target. If none is passed will use default region from the config. Region scw.Region `json:"-"` // FilesystemID: UUID of the File Storage volume. FilesystemID *string `json:"-"` // ResourceID: filter by resource ID. ResourceID *string `json:"-"` // ResourceType: filter by resource type. // Default value: unknown_resource_type ResourceType AttachmentResourceType `json:"-"` // Zone: filter by resource zone. Zone *scw.Zone `json:"-"` // Page: page number (starting at 1). Page *int32 `json:"-"` // PageSize: number of entries per page (default: 20, max: 100). PageSize *uint32 `json:"-"` }
ListAttachmentsRequest: Request to list filesystem attachments with filtering and pagination options.
type ListAttachmentsResponse ¶
type ListAttachmentsResponse struct { // Attachments: list of filesystem attachments matching the request criteria. Attachments []*Attachment `json:"attachments"` // TotalCount: total number of filesystem attachments matching the criteria. TotalCount uint64 `json:"total_count"` }
ListAttachmentsResponse: Response containing a list of filesystem attachments and total count.
func (*ListAttachmentsResponse) UnsafeAppend ¶
func (r *ListAttachmentsResponse) UnsafeAppend(res any) (uint64, error)
UnsafeAppend should not be used Internal usage only
func (*ListAttachmentsResponse) UnsafeGetTotalCount ¶
func (r *ListAttachmentsResponse) UnsafeGetTotalCount() uint64
UnsafeGetTotalCount should not be used Internal usage only
type ListFileSystemsRequest ¶
type ListFileSystemsRequest struct { // Region: region to target. If none is passed will use default region from the config. Region scw.Region `json:"-"` // OrderBy: criteria to use when ordering the list. // Default value: created_at_asc OrderBy ListFileSystemsRequestOrderBy `json:"-"` // ProjectID: filter by project ID. ProjectID *string `json:"-"` // OrganizationID: filter by organization ID. OrganizationID *string `json:"-"` // Page: page number (starting at 1). Page *int32 `json:"-"` // PageSize: number of entries per page (default: 20, max: 100). PageSize *uint32 `json:"-"` // Name: filter the returned filesystems by their names. Name *string `json:"-"` // Tags: filter by tags. Only filesystems with one or more matching tags will be returned. Tags []string `json:"-"` }
ListFileSystemsRequest: Request to list filesystems with filtering and pagination options.
type ListFileSystemsRequestOrderBy ¶
type ListFileSystemsRequestOrderBy string
Sorting options for filesystem listing.
func (ListFileSystemsRequestOrderBy) MarshalJSON ¶
func (enum ListFileSystemsRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListFileSystemsRequestOrderBy) String ¶
func (enum ListFileSystemsRequestOrderBy) String() string
func (*ListFileSystemsRequestOrderBy) UnmarshalJSON ¶
func (enum *ListFileSystemsRequestOrderBy) UnmarshalJSON(data []byte) error
func (ListFileSystemsRequestOrderBy) Values ¶
func (enum ListFileSystemsRequestOrderBy) Values() []ListFileSystemsRequestOrderBy
type ListFileSystemsResponse ¶
type ListFileSystemsResponse struct { // Filesystems: list of filesystems matching the request criteria. Filesystems []*FileSystem `json:"filesystems"` // TotalCount: total number of filesystems matching the criteria. TotalCount uint64 `json:"total_count"` }
ListFileSystemsResponse: Response containing a list of filesystems and total count.
func (*ListFileSystemsResponse) UnsafeAppend ¶
func (r *ListFileSystemsResponse) UnsafeAppend(res any) (uint64, error)
UnsafeAppend should not be used Internal usage only
func (*ListFileSystemsResponse) UnsafeGetTotalCount ¶
func (r *ListFileSystemsResponse) UnsafeGetTotalCount() uint64
UnsafeGetTotalCount should not be used Internal usage only
type UpdateFileSystemRequest ¶
type UpdateFileSystemRequest struct { // Region: region to target. If none is passed will use default region from the config. Region scw.Region `json:"-"` // FilesystemID: UUID of the filesystem. FilesystemID string `json:"-"` // Name: when defined, is the new name of the filesystem. Name *string `json:"name,omitempty"` // Size: size in bytes, with a granularity of 100 GB (10^11 bytes). // Must be compliant with the minimum (100 GB) and maximum (10 TB) allowed size. Size *uint64 `json:"size,omitempty"` // Tags: list of tags assigned to the filesystem. Tags *[]string `json:"tags,omitempty"` }
UpdateFileSystemRequest: Request to update a specific filesystem.