cloudresourcemanager

package
v1.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2022 License: Apache-2.0 Imports: 10 Imported by: 7

Documentation

Overview

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Package cloudresourcemanager defines operations in the declarative SDK.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Package cloudresourcemanager contains support code for the CRM service.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2022 Google LLC. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

View Source
const FolderMaxPage = -1
View Source
const ProjectMaxPage = -1
View Source
const TagKeyMaxPage = -1

Variables

View Source
var YAML_folder = []byte("info:\n  title: CloudResourceManager/Folder\n  description: The CloudResourceManager Folder resource\n  x-dcl-struct-name: Folder\n  x-dcl-has-iam: true\npaths:\n  get:\n    description: The function used to get information about a Folder\n    parameters:\n    - name: Folder\n      required: true\n      description: A full instance of a Folder\n  apply:\n    description: The function used to apply information about a Folder\n    parameters:\n    - name: Folder\n      required: true\n      description: A full instance of a Folder\n  delete:\n    description: The function used to delete a Folder\n    parameters:\n    - name: Folder\n      required: true\n      description: A full instance of a Folder\n  deleteAll:\n    description: The function used to delete all Folder\n    parameters:\n    - name: parent\n      required: true\n      schema:\n        type: string\n  list:\n    description: The function used to list information about many Folder\n    parameters:\n    - name: parent\n      required: true\n      schema:\n        type: string\ncomponents:\n  schemas:\n    Folder:\n      title: Folder\n      x-dcl-id: folders/{{name}}\n      x-dcl-has-iam: true\n      type: object\n      required:\n      - parent\n      properties:\n        createTime:\n          type: string\n          format: date-time\n          x-dcl-go-name: CreateTime\n          readOnly: true\n          description: Output only. Timestamp when the Folder was created. Assigned\n            by the server.\n          x-kubernetes-immutable: true\n        deleteTime:\n          type: string\n          format: date-time\n          x-dcl-go-name: DeleteTime\n          readOnly: true\n          description: Output only. Timestamp when the Folder was requested to be\n            deleted.\n          x-kubernetes-immutable: true\n        displayName:\n          type: string\n          x-dcl-go-name: DisplayName\n          description: 'The folder''s display name. A folder''s display name must\n            be unique amongst its siblings, e.g. no two folders with the same parent\n            can share the same display name. The display name must start and end with\n            a letter or digit, may contain letters, digits, spaces, hyphens and underscores\n            and can be no longer than 30 characters. This is captured by the regular\n            expression: `[p{L}p{N}]([p{L}p{N}_- ]{0,28}[p{L}p{N}])?`.'\n        etag:\n          type: string\n          x-dcl-go-name: Etag\n          readOnly: true\n          description: Output only. A checksum computed by the server based on the\n            current value of the Folder resource. This may be sent on update and delete\n            requests to ensure the client has an up-to-date value before proceeding.\n          x-kubernetes-immutable: true\n        name:\n          type: string\n          x-dcl-go-name: Name\n          description: Output only. The resource name of the Folder.\n          x-kubernetes-immutable: true\n          x-dcl-server-generated-parameter: true\n        parent:\n          type: string\n          x-dcl-go-name: Parent\n          description: Required. The Folder's parent's resource name. Updates to the\n            folder's parent must be performed via MoveFolder.\n          x-dcl-forward-slash-allowed: true\n        state:\n          type: string\n          x-dcl-go-name: State\n          x-dcl-go-type: FolderStateEnum\n          readOnly: true\n          description: 'Output only. The lifecycle state of the folder. Possible values:\n            LIFECYCLE_STATE_UNSPECIFIED, ACTIVE, DELETE_REQUESTED'\n          x-kubernetes-immutable: true\n          enum:\n          - LIFECYCLE_STATE_UNSPECIFIED\n          - ACTIVE\n          - DELETE_REQUESTED\n        updateTime:\n          type: string\n          format: date-time\n          x-dcl-go-name: UpdateTime\n          readOnly: true\n          description: Output only. Timestamp when the Folder was last modified.\n          x-kubernetes-immutable: true\n")

blaze-out/k8-fastbuild/genfiles/cloud/graphite/mmv2/services/google/cloudresourcemanager/folder.yaml

View Source
var YAML_project = []byte("info:\n  title: CloudResourceManager/Project\n  description: The CloudResourceManager Project resource\n  x-dcl-struct-name: Project\n  x-dcl-has-iam: true\npaths:\n  get:\n    description: The function used to get information about a Project\n    parameters:\n    - name: Project\n      required: true\n      description: A full instance of a Project\n  apply:\n    description: The function used to apply information about a Project\n    parameters:\n    - name: Project\n      required: true\n      description: A full instance of a Project\n  delete:\n    description: The function used to delete a Project\n    parameters:\n    - name: Project\n      required: true\n      description: A full instance of a Project\n  deleteAll:\n    description: The function used to delete all Project\n    parameters: []\n  list:\n    description: The function used to list information about many Project\n    parameters: []\ncomponents:\n  schemas:\n    Project:\n      title: Project\n      x-dcl-id: projects/{{name}}\n      x-dcl-labels: labels\n      x-dcl-has-iam: true\n      type: object\n      properties:\n        displayname:\n          type: string\n          x-dcl-go-name: DisplayName\n          description: 'The optional user-assigned display name of the Project. When\n            present it must be between 4 to 30 characters. Allowed characters are:\n            lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote,\n            space, and exclamation point. Example: `My Project` Read-write.'\n          x-kubernetes-immutable: true\n        labels:\n          type: object\n          additionalProperties:\n            type: string\n          x-dcl-go-name: Labels\n          description: User-specified labels.\n        lifecycleState:\n          type: string\n          x-dcl-go-name: LifecycleState\n          x-dcl-go-type: ProjectLifecycleStateEnum\n          readOnly: true\n          description: 'The Project lifecycle state. Read-only. Possible values: LIFECYCLE_STATE_UNSPECIFIED,\n            ACTIVE, DELETE_REQUESTED, DELETE_IN_PROGRESS'\n          x-kubernetes-immutable: true\n          enum:\n          - LIFECYCLE_STATE_UNSPECIFIED\n          - ACTIVE\n          - DELETE_REQUESTED\n          - DELETE_IN_PROGRESS\n        name:\n          type: string\n          x-dcl-go-name: Name\n          description: 'The unique, user-assigned ID of the Project. It must be 6\n            to 30 lowercase letters, digits, or hyphens. It must start with a letter.\n            Trailing hyphens are prohibited. Example: `tokyo-rain-123` Read-only after\n            creation.'\n          x-kubernetes-immutable: true\n        parent:\n          type: string\n          x-dcl-go-name: Parent\n          description: 'An optional reference to a parent Resource. Supported values\n            include organizations/<org_id> and folders/<folder_id>. Once set, the\n            parent cannot be cleared. The `parent` can be set on creation or using\n            the `UpdateProject` method; the end user must have the `resourcemanager.projects.create`\n            permission on the parent. Read-write. '\n          x-kubernetes-immutable: true\n        projectNumber:\n          type: integer\n          format: int64\n          x-dcl-go-name: ProjectNumber\n          readOnly: true\n          description: 'The number uniquely identifying the project. Example: `415104041262`\n            Read-only. '\n          x-kubernetes-immutable: true\n")

blaze-out/k8-fastbuild/genfiles/cloud/graphite/mmv2/services/google/cloudresourcemanager/project.yaml

View Source
var YAML_tag_key = []byte("info:\n  title: CloudResourceManager/TagKey\n  description: The CloudResourceManager TagKey resource\n  x-dcl-struct-name: TagKey\n  x-dcl-has-iam: true\npaths:\n  get:\n    description: The function used to get information about a TagKey\n    parameters:\n    - name: TagKey\n      required: true\n      description: A full instance of a TagKey\n  apply:\n    description: The function used to apply information about a TagKey\n    parameters:\n    - name: TagKey\n      required: true\n      description: A full instance of a TagKey\n  delete:\n    description: The function used to delete a TagKey\n    parameters:\n    - name: TagKey\n      required: true\n      description: A full instance of a TagKey\ncomponents:\n  schemas:\n    TagKey:\n      title: TagKey\n      x-dcl-id: tagKeys/{{name}}\n      x-dcl-has-iam: true\n      type: object\n      required:\n      - parent\n      - shortName\n      properties:\n        createTime:\n          type: string\n          format: date-time\n          x-dcl-go-name: CreateTime\n          readOnly: true\n          description: Output only. Creation time.\n          x-kubernetes-immutable: true\n        description:\n          type: string\n          x-dcl-go-name: Description\n          description: Optional. User-assigned description of the TagKey. Must not\n            exceed 256 characters. Read-write.\n        etag:\n          type: string\n          x-dcl-go-name: Etag\n          readOnly: true\n          description: Optional. Entity tag which users can pass to prevent race conditions.\n          x-kubernetes-immutable: true\n        name:\n          type: string\n          x-dcl-go-name: Name\n          description: Immutable. The generated numeric id for the TagKey.\n          x-kubernetes-immutable: true\n          x-dcl-server-generated-parameter: true\n        namespacedName:\n          type: string\n          x-dcl-go-name: NamespacedName\n          readOnly: true\n          description: Output only. Immutable. Namespaced name of the TagKey.\n          x-kubernetes-immutable: true\n        parent:\n          type: string\n          x-dcl-go-name: Parent\n          description: Immutable. The resource name of the new TagKey's parent. Must\n            be of the form `organizations/{org_id}`.\n          x-kubernetes-immutable: true\n          x-dcl-forward-slash-allowed: true\n        purpose:\n          type: string\n          x-dcl-go-name: Purpose\n          x-dcl-go-type: TagKeyPurposeEnum\n          description: 'Optional. A purpose denotes that this Tag is intended for\n            use in policies of a specific policy engine, and will involve that policy\n            engine in management operations involving this Tag. A purpose does not\n            grant a policy engine exclusive rights to the Tag, and it may be referenced\n            by other policy engines. A purpose cannot be changed once set. Possible\n            values: PURPOSE_UNSPECIFIED, GCE_FIREWALL'\n          x-kubernetes-immutable: true\n          enum:\n          - PURPOSE_UNSPECIFIED\n          - GCE_FIREWALL\n        purposeData:\n          type: object\n          additionalProperties:\n            type: string\n          x-dcl-go-name: PurposeData\n          description: Optional. Purpose data corresponds to the policy system that\n            the tag is intended for. See documentation for `Purpose` for formatting\n            of this field. Purpose data cannot be changed once set.\n          x-kubernetes-immutable: true\n        shortName:\n          type: string\n          x-dcl-go-name: ShortName\n          description: Required. Immutable. The user friendly name for a TagKey. The\n            short name should be unique for TagKeys within the same tag namespace.\n            The short name must be 1-63 characters, beginning and ending with an alphanumeric\n            character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and\n            alphanumerics between.\n          x-kubernetes-immutable: true\n        updateTime:\n          type: string\n          format: date-time\n          x-dcl-go-name: UpdateTime\n          readOnly: true\n          description: Output only. Update time.\n          x-kubernetes-immutable: true\n")

blaze-out/k8-fastbuild/genfiles/cloud/graphite/mmv2/services/google/cloudresourcemanager/tag_key.yaml

Functions

This section is empty.

Types

type Client

type Client struct {
	Config *dcl.Config
}

The Client is the base struct of all operations. This will receive the Get, Delete, List, and Apply operations on all resources.

func NewClient

func NewClient(c *dcl.Config) *Client

NewClient creates a client that retries all operations a few times each.

func (*Client) ApplyFolder

func (c *Client) ApplyFolder(ctx context.Context, rawDesired *Folder, opts ...dcl.ApplyOption) (*Folder, error)

func (*Client) ApplyProject

func (c *Client) ApplyProject(ctx context.Context, rawDesired *Project, opts ...dcl.ApplyOption) (*Project, error)

func (*Client) ApplyTagKey

func (c *Client) ApplyTagKey(ctx context.Context, rawDesired *TagKey, opts ...dcl.ApplyOption) (*TagKey, error)

func (*Client) DeleteAllFolder

func (c *Client) DeleteAllFolder(ctx context.Context, parent string, filter func(*Folder) bool) error

DeleteAllFolder deletes all resources that the filter functions returns true on.

func (*Client) DeleteAllProject

func (c *Client) DeleteAllProject(ctx context.Context, filter func(*Project) bool) error

DeleteAllProject deletes all resources that the filter functions returns true on.

func (*Client) DeleteFolder

func (c *Client) DeleteFolder(ctx context.Context, r *Folder) error

func (*Client) DeleteProject

func (c *Client) DeleteProject(ctx context.Context, r *Project) error

func (*Client) DeleteTagKey

func (c *Client) DeleteTagKey(ctx context.Context, r *TagKey) error

func (*Client) GetFolder

func (c *Client) GetFolder(ctx context.Context, r *Folder) (*Folder, error)

func (*Client) GetProject

func (c *Client) GetProject(ctx context.Context, r *Project) (*Project, error)

func (*Client) GetTagKey

func (c *Client) GetTagKey(ctx context.Context, r *TagKey) (*TagKey, error)

func (*Client) ListFolder

func (c *Client) ListFolder(ctx context.Context, parent string) (*FolderList, error)

func (*Client) ListFolderWithMaxResults

func (c *Client) ListFolderWithMaxResults(ctx context.Context, parent string, pageSize int32) (*FolderList, error)

func (*Client) ListProject

func (c *Client) ListProject(ctx context.Context) (*ProjectList, error)

func (*Client) ListProjectWithMaxResults

func (c *Client) ListProjectWithMaxResults(ctx context.Context, pageSize int32) (*ProjectList, error)

type Folder

type Folder struct {
	Name        *string          `json:"name"`
	Parent      *string          `json:"parent"`
	DisplayName *string          `json:"displayName"`
	State       *FolderStateEnum `json:"state"`
	CreateTime  *string          `json:"createTime"`
	UpdateTime  *string          `json:"updateTime"`
	DeleteTime  *string          `json:"deleteTime"`
	Etag        *string          `json:"etag"`
}

func (*Folder) Describe

func (r *Folder) Describe() dcl.ServiceTypeVersion

Describe returns a simple description of this resource to ensure that automated tools can identify it.

func (*Folder) GetPolicy

func (r *Folder) GetPolicy(basePath string) (string, string, *bytes.Buffer, error)

func (*Folder) IAMPolicyVersion

func (r *Folder) IAMPolicyVersion() int

func (*Folder) ID

func (r *Folder) ID() (string, error)

func (*Folder) SetPolicyURL

func (r *Folder) SetPolicyURL(userBasePath string) string

func (*Folder) SetPolicyVerb

func (r *Folder) SetPolicyVerb() string

func (*Folder) String

func (r *Folder) String() string

type FolderList

type FolderList struct {
	Items []*Folder
	// contains filtered or unexported fields
}

func (*FolderList) HasNext

func (l *FolderList) HasNext() bool

func (*FolderList) Next

func (l *FolderList) Next(ctx context.Context, c *Client) error

type FolderStateEnum

type FolderStateEnum string

The enum FolderStateEnum.

func FolderStateEnumRef

func FolderStateEnumRef(s string) *FolderStateEnum

FolderStateEnumRef returns a *FolderStateEnum with the value of string s If the empty string is provided, nil is returned.

func (FolderStateEnum) Validate

func (v FolderStateEnum) Validate() error

type Project

type Project struct {
	Labels         map[string]string          `json:"labels"`
	LifecycleState *ProjectLifecycleStateEnum `json:"lifecycleState"`
	DisplayName    *string                    `json:"displayname"`
	Parent         *string                    `json:"parent"`
	Name           *string                    `json:"name"`
	ProjectNumber  *int64                     `json:"projectNumber"`
}

func (*Project) Describe

func (r *Project) Describe() dcl.ServiceTypeVersion

Describe returns a simple description of this resource to ensure that automated tools can identify it.

func (*Project) GetPolicy

func (r *Project) GetPolicy(basePath string) (string, string, *bytes.Buffer, error)

func (*Project) IAMPolicyVersion

func (r *Project) IAMPolicyVersion() int

func (*Project) ID

func (r *Project) ID() (string, error)

func (*Project) SetPolicyURL

func (r *Project) SetPolicyURL(userBasePath string) string

func (*Project) SetPolicyVerb

func (r *Project) SetPolicyVerb() string

func (*Project) String

func (r *Project) String() string

type ProjectLifecycleStateEnum

type ProjectLifecycleStateEnum string

The enum ProjectLifecycleStateEnum.

func ProjectLifecycleStateEnumRef

func ProjectLifecycleStateEnumRef(s string) *ProjectLifecycleStateEnum

ProjectLifecycleStateEnumRef returns a *ProjectLifecycleStateEnum with the value of string s If the empty string is provided, nil is returned.

func (ProjectLifecycleStateEnum) Validate

func (v ProjectLifecycleStateEnum) Validate() error

type ProjectList

type ProjectList struct {
	Items []*Project
	// contains filtered or unexported fields
}

func (*ProjectList) HasNext

func (l *ProjectList) HasNext() bool

func (*ProjectList) Next

func (l *ProjectList) Next(ctx context.Context, c *Client) error

type TagKey

type TagKey struct {
	Name           *string            `json:"name"`
	Parent         *string            `json:"parent"`
	ShortName      *string            `json:"shortName"`
	NamespacedName *string            `json:"namespacedName"`
	Description    *string            `json:"description"`
	CreateTime     *string            `json:"createTime"`
	UpdateTime     *string            `json:"updateTime"`
	Etag           *string            `json:"etag"`
	Purpose        *TagKeyPurposeEnum `json:"purpose"`
	PurposeData    map[string]string  `json:"purposeData"`
}

func (*TagKey) Describe

func (r *TagKey) Describe() dcl.ServiceTypeVersion

Describe returns a simple description of this resource to ensure that automated tools can identify it.

func (*TagKey) GetPolicy

func (r *TagKey) GetPolicy(basePath string) (string, string, *bytes.Buffer, error)

func (*TagKey) IAMPolicyVersion

func (r *TagKey) IAMPolicyVersion() int

func (*TagKey) ID

func (r *TagKey) ID() (string, error)

func (*TagKey) SetPolicyURL

func (r *TagKey) SetPolicyURL(userBasePath string) string

func (*TagKey) SetPolicyVerb

func (r *TagKey) SetPolicyVerb() string

func (*TagKey) String

func (r *TagKey) String() string

type TagKeyList

type TagKeyList struct {
	Items []*TagKey
	// contains filtered or unexported fields
}

type TagKeyPurposeEnum

type TagKeyPurposeEnum string

The enum TagKeyPurposeEnum.

func TagKeyPurposeEnumRef

func TagKeyPurposeEnumRef(s string) *TagKeyPurposeEnum

TagKeyPurposeEnumRef returns a *TagKeyPurposeEnum with the value of string s If the empty string is provided, nil is returned.

func (TagKeyPurposeEnum) Validate

func (v TagKeyPurposeEnum) Validate() error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL