cloudresourcemanager

package
v1.84.0 Latest Latest
Warning

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

Go to latest
Published: Feb 12, 2026 License: Apache-2.0 Imports: 11 Imported by: 7

Documentation

Overview

Copyright 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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 2026 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
View Source
const TagValueMaxPage = -1

Variables

View Source
var YAML_folder []byte
View Source
var YAML_project []byte
View Source
var YAML_tag_key []byte
View Source
var YAML_tag_value []byte

Functions

func DCLFolderSchema added in v1.10.3

func DCLFolderSchema() *dcl.Schema

func DCLProjectSchema added in v1.10.3

func DCLProjectSchema() *dcl.Schema

func DCLTagKeySchema added in v1.10.3

func DCLTagKeySchema() *dcl.Schema

func DCLTagValueSchema added in v1.24.0

func DCLTagValueSchema() *dcl.Schema

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) ApplyTagValue added in v1.24.0

func (c *Client) ApplyTagValue(ctx context.Context, rawDesired *TagValue, opts ...dcl.ApplyOption) (*TagValue, 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, parent string, 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) DeleteTagValue added in v1.24.0

func (c *Client) DeleteTagValue(ctx context.Context, r *TagValue) 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) GetTagValue added in v1.24.0

func (c *Client) GetTagValue(ctx context.Context, r *TagValue) (*TagValue, 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, parent string) (*ProjectList, error)

func (*Client) ListProjectWithMaxResults

func (c *Client) ListProjectWithMaxResults(ctx context.Context, parent string, 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

type TagValue added in v1.24.0

type TagValue 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"`
}

func (*TagValue) Describe added in v1.24.0

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

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

func (*TagValue) GetPolicy added in v1.24.0

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

func (*TagValue) IAMPolicyVersion added in v1.24.0

func (r *TagValue) IAMPolicyVersion() int

func (*TagValue) ID added in v1.24.0

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

func (*TagValue) SetPolicyURL added in v1.24.0

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

func (*TagValue) SetPolicyVerb added in v1.24.0

func (r *TagValue) SetPolicyVerb() string

func (*TagValue) String added in v1.24.0

func (r *TagValue) String() string

type TagValueList added in v1.24.0

type TagValueList struct {
	Items []*TagValue
	// contains filtered or unexported fields
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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