storage

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-gcp repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-google repo.

class pulumi_gcp.storage.AwaitableGetBucketObjectResult(bucket=None, cache_control=None, content=None, content_disposition=None, content_encoding=None, content_language=None, content_type=None, crc32c=None, detect_md5hash=None, md5hash=None, name=None, output_name=None, predefined_acl=None, self_link=None, source=None, storage_class=None, id=None)
class pulumi_gcp.storage.AwaitableGetObjectSignedUrlResult(bucket=None, content_md5=None, content_type=None, credentials=None, duration=None, extension_headers=None, http_method=None, path=None, signed_url=None, id=None)
class pulumi_gcp.storage.AwaitableGetProjectServiceAccountResult(email_address=None, project=None, user_project=None, id=None)
class pulumi_gcp.storage.AwaitableGetTransferProjectServieAccountResult(email=None, project=None, id=None)
class pulumi_gcp.storage.Bucket(resource_name, opts=None, bucket_policy_only=None, cors=None, encryption=None, force_destroy=None, labels=None, lifecycle_rules=None, location=None, logging=None, name=None, project=None, requester_pays=None, retention_policy=None, storage_class=None, versioning=None, website=None, __props__=None, __name__=None, __opts__=None)

Creates a new bucket in Google cloud storage service (GCS). Once a bucket has been created, its location can’t be changed. ACLs can be applied using the ``storage.BucketACL` resource <https://www.terraform.io/docs/providers/google/r/storage_bucket_acl.html>`_.

For more information see the official documentation and API.

Note: If the project id is not set on the resource or in the provider block it will be dynamically determined which will require enabling the compute api.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket_policy_only (pulumi.Input[bool]) – Enables Bucket Policy Only access to a bucket.

  • cors (pulumi.Input[list]) – The bucket’s Cross-Origin Resource Sharing (CORS) configuration. Multiple blocks of this type are permitted. Structure is documented below.

  • encryption (pulumi.Input[dict]) – The bucket’s encryption configuration.

  • force_destroy (pulumi.Input[bool]) – When deleting a bucket, this boolean option will delete all contained objects. If you try to delete a bucket that contains objects, this provider will fail that run.

  • labels (pulumi.Input[dict]) – A set of key/value label pairs to assign to the bucket.

  • lifecycle_rules (pulumi.Input[list]) – The bucket’s Lifecycle Rules configuration. Multiple blocks of this type are permitted. Structure is documented below.

  • location (pulumi.Input[str]) – The GCS location

  • logging (pulumi.Input[dict]) – The bucket’s Access & Storage Logs configuration.

  • name (pulumi.Input[str]) – The name of the bucket.

  • project (pulumi.Input[str]) – The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

  • requester_pays (pulumi.Input[bool]) – Enables Requester Pays on a storage bucket.

  • retention_policy (pulumi.Input[dict]) – Configuration of the bucket’s data retention policy for how long objects in the bucket should be retained. Structure is documented below.

  • storage_class (pulumi.Input[str]) – The Storage Class of the new bucket. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

  • versioning (pulumi.Input[dict]) – The bucket’s Versioning configuration.

  • website (pulumi.Input[dict]) – Configuration if the bucket acts as a website. Structure is documented below.

The cors object supports the following:

  • maxAgeSeconds (pulumi.Input[float])

  • methods (pulumi.Input[list])

  • origins (pulumi.Input[list])

  • responseHeaders (pulumi.Input[list])

The encryption object supports the following:

  • defaultKmsKeyName (pulumi.Input[str])

The lifecycle_rules object supports the following:

  • action (pulumi.Input[dict])

    • storage_class (pulumi.Input[str]) - The Storage Class of the new bucket. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

    • type (pulumi.Input[str])

  • condition (pulumi.Input[dict])

    • age (pulumi.Input[float])

    • createdBefore (pulumi.Input[str])

    • isLive (pulumi.Input[bool])

    • matchesStorageClasses (pulumi.Input[list])

    • numNewerVersions (pulumi.Input[float])

    • withState (pulumi.Input[str])

The logging object supports the following:

  • logBucket (pulumi.Input[str])

  • logObjectPrefix (pulumi.Input[str])

The retention_policy object supports the following:

  • isLocked (pulumi.Input[bool])

  • retentionPeriod (pulumi.Input[float])

The versioning object supports the following:

  • enabled (pulumi.Input[bool])

The website object supports the following:

  • mainPageSuffix (pulumi.Input[str])

  • notFoundPage (pulumi.Input[str])

bucket_policy_only = None

Enables Bucket Policy Only access to a bucket.

cors = None

The bucket’s Cross-Origin Resource Sharing (CORS) configuration. Multiple blocks of this type are permitted. Structure is documented below.

  • maxAgeSeconds (float)

  • methods (list)

  • origins (list)

  • responseHeaders (list)

encryption = None

The bucket’s encryption configuration.

  • defaultKmsKeyName (str)

force_destroy = None

When deleting a bucket, this boolean option will delete all contained objects. If you try to delete a bucket that contains objects, this provider will fail that run.

labels = None

A set of key/value label pairs to assign to the bucket.

lifecycle_rules = None

The bucket’s Lifecycle Rules configuration. Multiple blocks of this type are permitted. Structure is documented below.

  • action (dict)

    • storage_class (str) - The Storage Class of the new bucket. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

    • type (str)

  • condition (dict)

    • age (float)

    • createdBefore (str)

    • isLive (bool)

    • matchesStorageClasses (list)

    • numNewerVersions (float)

    • withState (str)

location = None

The GCS location

logging = None

The bucket’s Access & Storage Logs configuration.

  • logBucket (str)

  • logObjectPrefix (str)

name = None

The name of the bucket.

project = None

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

requester_pays = None

Enables Requester Pays on a storage bucket.

retention_policy = None

Configuration of the bucket’s data retention policy for how long objects in the bucket should be retained. Structure is documented below.

  • isLocked (bool)

  • retentionPeriod (float)

The URI of the created resource.

storage_class = None

The Storage Class of the new bucket. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

url = None

The base URL of the bucket, in the format gs://<bucket-name>.

versioning = None

The bucket’s Versioning configuration.

  • enabled (bool)

website = None

Configuration if the bucket acts as a website. Structure is documented below.

  • mainPageSuffix (str)

  • notFoundPage (str)

static get(resource_name, id, opts=None, bucket_policy_only=None, cors=None, encryption=None, force_destroy=None, labels=None, lifecycle_rules=None, location=None, logging=None, name=None, project=None, requester_pays=None, retention_policy=None, self_link=None, storage_class=None, url=None, versioning=None, website=None)

Get an existing Bucket resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket_policy_only (pulumi.Input[bool]) –

    Enables Bucket Policy Only access to a bucket.

  • cors (pulumi.Input[list]) –

    The bucket’s Cross-Origin Resource Sharing (CORS) configuration. Multiple blocks of this type are permitted. Structure is documented below.

  • encryption (pulumi.Input[dict]) – The bucket’s encryption configuration.

  • force_destroy (pulumi.Input[bool]) – When deleting a bucket, this boolean option will delete all contained objects. If you try to delete a bucket that contains objects, this provider will fail that run.

  • labels (pulumi.Input[dict]) – A set of key/value label pairs to assign to the bucket.

  • lifecycle_rules (pulumi.Input[list]) –

    The bucket’s Lifecycle Rules configuration. Multiple blocks of this type are permitted. Structure is documented below.

  • location (pulumi.Input[str]) –

    The GCS location

  • logging (pulumi.Input[dict]) –

    The bucket’s Access & Storage Logs configuration.

  • name (pulumi.Input[str]) – The name of the bucket.

  • project (pulumi.Input[str]) – The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

  • requester_pays (pulumi.Input[bool]) –

    Enables Requester Pays on a storage bucket.

  • retention_policy (pulumi.Input[dict]) – Configuration of the bucket’s data retention policy for how long objects in the bucket should be retained. Structure is documented below.

  • self_link (pulumi.Input[str]) – The URI of the created resource.

  • storage_class (pulumi.Input[str]) –

    The Storage Class of the new bucket. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

  • url (pulumi.Input[str]) – The base URL of the bucket, in the format gs://<bucket-name>.

  • versioning (pulumi.Input[dict]) –

    The bucket’s Versioning configuration.

  • website (pulumi.Input[dict]) – Configuration if the bucket acts as a website. Structure is documented below.

The cors object supports the following:

  • maxAgeSeconds (pulumi.Input[float])

  • methods (pulumi.Input[list])

  • origins (pulumi.Input[list])

  • responseHeaders (pulumi.Input[list])

The encryption object supports the following:

  • defaultKmsKeyName (pulumi.Input[str])

The lifecycle_rules object supports the following:

  • action (pulumi.Input[dict])

    • storage_class (pulumi.Input[str]) - The Storage Class of the new bucket. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

    • type (pulumi.Input[str])

  • condition (pulumi.Input[dict])

    • age (pulumi.Input[float])

    • createdBefore (pulumi.Input[str])

    • isLive (pulumi.Input[bool])

    • matchesStorageClasses (pulumi.Input[list])

    • numNewerVersions (pulumi.Input[float])

    • withState (pulumi.Input[str])

The logging object supports the following:

  • logBucket (pulumi.Input[str])

  • logObjectPrefix (pulumi.Input[str])

The retention_policy object supports the following:

  • isLocked (pulumi.Input[bool])

  • retentionPeriod (pulumi.Input[float])

The versioning object supports the following:

  • enabled (pulumi.Input[bool])

The website object supports the following:

  • mainPageSuffix (pulumi.Input[str])

  • notFoundPage (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.BucketACL(resource_name, opts=None, bucket=None, default_acl=None, predefined_acl=None, role_entities=None, __props__=None, __name__=None, __opts__=None)

Creates a new bucket ACL in Google cloud storage service (GCS). For more information see the official documentation and API.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • default_acl (pulumi.Input[str]) – Configure this ACL to be the default ACL.

  • predefined_acl (pulumi.Input[str]) – The canned GCS ACL to apply. Must be set if role_entity is not.

  • role_entities (pulumi.Input[list]) – List of role/entity pairs in the form ROLE:entity. See GCS Bucket ACL documentation for more details. Must be set if predefined_acl is not.

bucket = None

The name of the bucket it applies to.

default_acl = None

Configure this ACL to be the default ACL.

predefined_acl = None

The canned GCS ACL to apply. Must be set if role_entity is not.

role_entities = None

List of role/entity pairs in the form ROLE:entity. See GCS Bucket ACL documentation for more details. Must be set if predefined_acl is not.

static get(resource_name, id, opts=None, bucket=None, default_acl=None, predefined_acl=None, role_entities=None)

Get an existing BucketACL resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • default_acl (pulumi.Input[str]) – Configure this ACL to be the default ACL.

  • predefined_acl (pulumi.Input[str]) –

    The canned GCS ACL to apply. Must be set if role_entity is not.

  • role_entities (pulumi.Input[list]) –

    List of role/entity pairs in the form ROLE:entity. See GCS Bucket ACL documentation for more details. Must be set if predefined_acl is not.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.BucketIAMBinding(resource_name, opts=None, bucket=None, members=None, role=None, __props__=None, __name__=None, __opts__=None)

Three different resources help you manage your IAM policy for storage bucket. Each of these resources serves a different use case:

  • storage.BucketIAMBinding: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the storage bucket are preserved.

  • storage.BucketIAMMember: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the storage bucket are preserved.

  • storage.BucketIAMPolicy: Setting a policy removes all other permissions on the bucket, and if done incorrectly, there’s a real chance you will lock yourself out of the bucket. If possible for your use case, using multiple storage.BucketIAMBinding resources will be much safer. See the usage example on how to work with policy correctly.

Note: storage.BucketIAMBinding resources can be used in conjunction with storage.BucketIAMMember resources only if they do not grant privilege to the same role.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • role (pulumi.Input[str]) – The role that should be applied. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

bucket = None

The name of the bucket it applies to.

etag = None

(Computed) The etag of the storage bucket’s IAM policy.

role = None

The role that should be applied. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

static get(resource_name, id, opts=None, bucket=None, etag=None, members=None, role=None)

Get an existing BucketIAMBinding resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • etag (pulumi.Input[str]) – (Computed) The etag of the storage bucket’s IAM policy.

  • role (pulumi.Input[str]) – The role that should be applied. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.BucketIAMMember(resource_name, opts=None, bucket=None, member=None, role=None, __props__=None, __name__=None, __opts__=None)

Three different resources help you manage your IAM policy for storage bucket. Each of these resources serves a different use case:

  • storage.BucketIAMBinding: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the storage bucket are preserved.

  • storage.BucketIAMMember: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the storage bucket are preserved.

  • storage.BucketIAMPolicy: Setting a policy removes all other permissions on the bucket, and if done incorrectly, there’s a real chance you will lock yourself out of the bucket. If possible for your use case, using multiple storage.BucketIAMBinding resources will be much safer. See the usage example on how to work with policy correctly.

Note: storage.BucketIAMBinding resources can be used in conjunction with storage.BucketIAMMember resources only if they do not grant privilege to the same role.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • role (pulumi.Input[str]) – The role that should be applied. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

bucket = None

The name of the bucket it applies to.

etag = None

(Computed) The etag of the storage bucket’s IAM policy.

role = None

The role that should be applied. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

static get(resource_name, id, opts=None, bucket=None, etag=None, member=None, role=None)

Get an existing BucketIAMMember resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • etag (pulumi.Input[str]) – (Computed) The etag of the storage bucket’s IAM policy.

  • role (pulumi.Input[str]) – The role that should be applied. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.BucketIAMPolicy(resource_name, opts=None, bucket=None, policy_data=None, __props__=None, __name__=None, __opts__=None)

Three different resources help you manage your IAM policy for storage bucket. Each of these resources serves a different use case:

  • storage.BucketIAMBinding: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the storage bucket are preserved.

  • storage.BucketIAMMember: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the storage bucket are preserved.

  • storage.BucketIAMPolicy: Setting a policy removes all other permissions on the bucket, and if done incorrectly, there’s a real chance you will lock yourself out of the bucket. If possible for your use case, using multiple storage.BucketIAMBinding resources will be much safer. See the usage example on how to work with policy correctly.

Note: storage.BucketIAMBinding resources can be used in conjunction with storage.BucketIAMMember resources only if they do not grant privilege to the same role.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

bucket = None

The name of the bucket it applies to.

etag = None

(Computed) The etag of the storage bucket’s IAM policy.

static get(resource_name, id, opts=None, bucket=None, etag=None, policy_data=None)

Get an existing BucketIAMPolicy resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • etag (pulumi.Input[str]) – (Computed) The etag of the storage bucket’s IAM policy.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.BucketObject(resource_name, opts=None, bucket=None, cache_control=None, content=None, content_disposition=None, content_encoding=None, content_language=None, content_type=None, detect_md5hash=None, name=None, source=None, storage_class=None, __props__=None, __name__=None, __opts__=None)

Creates a new object inside an existing bucket in Google cloud storage service (GCS). ACLs can be applied using the storage.ObjectACL resource.

For more information see

the official documentation and API.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the containing bucket.

  • cache_control (pulumi.Input[str]) – Cache-Control directive to specify caching behavior of object data. If omitted and object is accessible to all anonymous users, the default will be public, max-age=3600

  • content (pulumi.Input[str]) – Data as string to be uploaded. Must be defined if source is not. Note: The content field is marked as sensitive. To view the raw contents of the object, please define an output.

  • content_disposition (pulumi.Input[str]) – Content-Disposition of the object data.

  • content_encoding (pulumi.Input[str]) – Content-Encoding of the object data.

  • content_language (pulumi.Input[str]) – Content-Language of the object data.

  • content_type (pulumi.Input[str]) – Content-Type of the object data. Defaults to “application/octet-stream” or “text/plain; charset=utf-8”.

  • name (pulumi.Input[str]) – The name of the object. If you’re interpolating the name of this object, see output_name instead.

  • pulumi.Archive]] source (pulumi.Input[Union[pulumi.Asset,) – A path to the data you want to upload. Must be defined if content is not.

  • storage_class (pulumi.Input[str]) – The StorageClass of the new bucket object. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE. If not provided, this defaults to the bucket’s default storage class or to a standard class.

bucket = None

The name of the containing bucket.

cache_control = None

Cache-Control directive to specify caching behavior of object data. If omitted and object is accessible to all anonymous users, the default will be public, max-age=3600

content = None

Data as string to be uploaded. Must be defined if source is not. Note: The content field is marked as sensitive. To view the raw contents of the object, please define an output.

content_disposition = None

Content-Disposition of the object data.

content_encoding = None

Content-Encoding of the object data.

content_language = None

Content-Language of the object data.

content_type = None

Content-Type of the object data. Defaults to “application/octet-stream” or “text/plain; charset=utf-8”.

crc32c = None

(Computed) Base 64 CRC32 hash of the uploaded data.

md5hash = None

(Computed) Base 64 MD5 hash of the uploaded data.

name = None

The name of the object. If you’re interpolating the name of this object, see output_name instead.

output_name = None

(Computed) The name of the object. Use this field in interpolations with storage.ObjectACL to recreate storage.ObjectACL resources when your storage.BucketObject is recreated.

(Computed) A url reference to this object.

source = None

A path to the data you want to upload. Must be defined if content is not.

storage_class = None

The StorageClass of the new bucket object. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE. If not provided, this defaults to the bucket’s default storage class or to a standard class.

static get(resource_name, id, opts=None, bucket=None, cache_control=None, content=None, content_disposition=None, content_encoding=None, content_language=None, content_type=None, crc32c=None, detect_md5hash=None, md5hash=None, name=None, output_name=None, self_link=None, source=None, storage_class=None)

Get an existing BucketObject resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the containing bucket.

  • cache_control (pulumi.Input[str]) –

    Cache-Control directive to specify caching behavior of object data. If omitted and object is accessible to all anonymous users, the default will be public, max-age=3600

  • content (pulumi.Input[str]) –

    Data as string to be uploaded. Must be defined if source is not. Note: The content field is marked as sensitive. To view the raw contents of the object, please define an output.

  • content_disposition (pulumi.Input[str]) –

    Content-Disposition of the object data.

  • content_encoding (pulumi.Input[str]) –

    Content-Encoding of the object data.

  • content_language (pulumi.Input[str]) –

    Content-Language of the object data.

  • content_type (pulumi.Input[str]) –

    Content-Type of the object data. Defaults to “application/octet-stream” or “text/plain; charset=utf-8”.

  • crc32c (pulumi.Input[str]) – (Computed) Base 64 CRC32 hash of the uploaded data.

  • md5hash (pulumi.Input[str]) – (Computed) Base 64 MD5 hash of the uploaded data.

  • name (pulumi.Input[str]) – The name of the object. If you’re interpolating the name of this object, see output_name instead.

  • output_name (pulumi.Input[str]) – (Computed) The name of the object. Use this field in interpolations with storage.ObjectACL to recreate storage.ObjectACL resources when your storage.BucketObject is recreated.

  • self_link (pulumi.Input[str]) – (Computed) A url reference to this object.

  • pulumi.Archive]] source (pulumi.Input[Union[pulumi.Asset,) – A path to the data you want to upload. Must be defined if content is not.

  • storage_class (pulumi.Input[str]) –

    The StorageClass of the new bucket object. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE. If not provided, this defaults to the bucket’s default storage class or to a standard class.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.DefaultObjectACL(resource_name, opts=None, bucket=None, role_entities=None, __props__=None, __name__=None, __opts__=None)

Authoritatively manages the default object ACLs for a Google Cloud Storage bucket without managing the bucket itself.

Note that for each object, its creator will have the "OWNER" role in addition to the default ACL that has been defined.

For more information see the official documentation and API.

Want fine-grained control over default object ACLs? Use storage.DefaultObjectAccessControl to control individual role entity pairs.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • role_entities (pulumi.Input[list]) – List of role/entity pairs in the form ROLE:entity. See GCS Object ACL documentation for more details. Omitting the field is the same as providing an empty list.

bucket = None

The name of the bucket it applies to.

role_entities = None

List of role/entity pairs in the form ROLE:entity. See GCS Object ACL documentation for more details. Omitting the field is the same as providing an empty list.

static get(resource_name, id, opts=None, bucket=None, role_entities=None)

Get an existing DefaultObjectACL resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket it applies to.

  • role_entities (pulumi.Input[list]) –

    List of role/entity pairs in the form ROLE:entity. See GCS Object ACL documentation for more details. Omitting the field is the same as providing an empty list.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.DefaultObjectAccessControl(resource_name, opts=None, bucket=None, entity=None, object=None, role=None, __props__=None, __name__=None, __opts__=None)

The DefaultObjectAccessControls resources represent the Access Control Lists (ACLs) applied to a new object within a Google Cloud Storage bucket when no ACL was provided for that object. ACLs let you specify who has access to your bucket contents and to what extent.

There are two roles that can be assigned to an entity:

READERs can get an object, though the acl property will not be revealed. OWNERs are READERs, and they can get the acl property, update an object, and call all objectAccessControls methods on the object. The owner of an object is always an OWNER. For more information, see Access Control, with the caveat that this API uses READER and OWNER instead of READ and FULL_CONTROL.

To get more information about DefaultObjectAccessControl, see:

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

static get(resource_name, id, opts=None, bucket=None, domain=None, email=None, entity=None, entity_id=None, generation=None, object=None, project_team=None, role=None)

Get an existing DefaultObjectAccessControl resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

The project_team object supports the following:

  • projectNumber (pulumi.Input[str])

  • team (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.GetBucketObjectResult(bucket=None, cache_control=None, content=None, content_disposition=None, content_encoding=None, content_language=None, content_type=None, crc32c=None, detect_md5hash=None, md5hash=None, name=None, output_name=None, predefined_acl=None, self_link=None, source=None, storage_class=None, id=None)

A collection of values returned by getBucketObject.

cache_control = None

(Computed) Cache-Control directive to specify caching behavior of object data. If omitted and object is accessible to all anonymous users, the default will be public, max-age=3600

content_disposition = None

(Computed) Content-Disposition of the object data.

content_encoding = None

(Computed) Content-Encoding of the object data.

content_language = None

(Computed) Content-Language of the object data.

content_type = None

(Computed) Content-Type of the object data. Defaults to “application/octet-stream” or “text/plain; charset=utf-8”.

crc32c = None

(Computed) Base 64 CRC32 hash of the uploaded data.

md5hash = None

(Computed) Base 64 MD5 hash of the uploaded data.

(Computed) A url reference to this object.

storage_class = None

(Computed) The StorageClass of the new bucket object. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE. If not provided, this defaults to the bucket’s default storage class or to a standard class.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_gcp.storage.GetObjectSignedUrlResult(bucket=None, content_md5=None, content_type=None, credentials=None, duration=None, extension_headers=None, http_method=None, path=None, signed_url=None, id=None)

A collection of values returned by getObjectSignedUrl.

signed_url = None

The signed URL that can be used to access the storage object without authentication.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_gcp.storage.GetProjectServiceAccountResult(email_address=None, project=None, user_project=None, id=None)

A collection of values returned by getProjectServiceAccount.

email_address = None

The email address of the service account. This value is often used to refer to the service account in order to grant IAM permissions.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_gcp.storage.GetTransferProjectServieAccountResult(email=None, project=None, id=None)

A collection of values returned by getTransferProjectServieAccount.

email = None

Email address of the default service account used by Storage Transfer Jobs running in this project

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_gcp.storage.Notification(resource_name, opts=None, bucket=None, custom_attributes=None, event_types=None, object_name_prefix=None, payload_format=None, topic=None, __props__=None, __name__=None, __opts__=None)
Creates a new notification configuration on a specified bucket, establishing a flow of event notifications from GCS to a Cloud Pub/Sub topic.

For more information see

the official documentation and API.

In order to enable notifications, a special Google Cloud Storage service account unique to the project must have the IAM permission “projects.topics.publish” for a Cloud Pub/Sub topic in the project. To get the service account’s email address, use the storage.getProjectServiceAccount datasource’s email_address value, and see below for an example of enabling notifications by granting the correct IAM permission. See the notifications documentation for more details.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket.

  • custom_attributes (pulumi.Input[dict]) – A set of key/value attribute pairs to attach to each Cloud PubSub message published for this notification subscription

  • event_types (pulumi.Input[list]) – List of event type filters for this notification config. If not specified, Cloud Storage will send notifications for all event types. The valid types are: "OBJECT_FINALIZE", "OBJECT_METADATA_UPDATE", "OBJECT_DELETE", "OBJECT_ARCHIVE"

  • object_name_prefix (pulumi.Input[str]) – Specifies a prefix path filter for this notification config. Cloud Storage will only send notifications for objects in this bucket whose names begin with the specified prefix.

  • payload_format (pulumi.Input[str]) – The desired content of the Payload. One of "JSON_API_V1" or "NONE".

  • topic (pulumi.Input[str]) – The Cloud PubSub topic to which this subscription publishes. Expects either the topic name, assumed to belong to the default GCP provider project, or the project-level name, i.e. projects/my-gcp-project/topics/my-topic or my-topic.

bucket = None

The name of the bucket.

custom_attributes = None

A set of key/value attribute pairs to attach to each Cloud PubSub message published for this notification subscription

event_types = None

List of event type filters for this notification config. If not specified, Cloud Storage will send notifications for all event types. The valid types are: "OBJECT_FINALIZE", "OBJECT_METADATA_UPDATE", "OBJECT_DELETE", "OBJECT_ARCHIVE"

object_name_prefix = None

Specifies a prefix path filter for this notification config. Cloud Storage will only send notifications for objects in this bucket whose names begin with the specified prefix.

payload_format = None

The desired content of the Payload. One of "JSON_API_V1" or "NONE".

The URI of the created resource.

topic = None

The Cloud PubSub topic to which this subscription publishes. Expects either the topic name, assumed to belong to the default GCP provider project, or the project-level name, i.e. projects/my-gcp-project/topics/my-topic or my-topic.

static get(resource_name, id, opts=None, bucket=None, custom_attributes=None, event_types=None, object_name_prefix=None, payload_format=None, self_link=None, topic=None)

Get an existing Notification resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket.

  • custom_attributes (pulumi.Input[dict]) – A set of key/value attribute pairs to attach to each Cloud PubSub message published for this notification subscription

  • event_types (pulumi.Input[list]) – List of event type filters for this notification config. If not specified, Cloud Storage will send notifications for all event types. The valid types are: "OBJECT_FINALIZE", "OBJECT_METADATA_UPDATE", "OBJECT_DELETE", "OBJECT_ARCHIVE"

  • object_name_prefix (pulumi.Input[str]) – Specifies a prefix path filter for this notification config. Cloud Storage will only send notifications for objects in this bucket whose names begin with the specified prefix.

  • payload_format (pulumi.Input[str]) – The desired content of the Payload. One of "JSON_API_V1" or "NONE".

  • self_link (pulumi.Input[str]) – The URI of the created resource.

  • topic (pulumi.Input[str]) – The Cloud PubSub topic to which this subscription publishes. Expects either the topic name, assumed to belong to the default GCP provider project, or the project-level name, i.e. projects/my-gcp-project/topics/my-topic or my-topic.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.ObjectACL(resource_name, opts=None, bucket=None, object=None, predefined_acl=None, role_entities=None, __props__=None, __name__=None, __opts__=None)

Authoritatively manages the access control list (ACL) for an object in a Google Cloud Storage (GCS) bucket. Removing a storage.ObjectACL sets the acl to the private predefined ACL.

For more information see the official documentation and API.

Want fine-grained control over object ACLs? Use storage.ObjectAccessControl to control individual role entity pairs.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket the object is stored in.

  • object (pulumi.Input[str]) – The name of the object to apply the acl to.

  • predefined_acl (pulumi.Input[str]) –

    The “canned” predefined ACL to apply. Must be set if role_entity is not.

  • role_entities (pulumi.Input[list]) –

    List of role/entity pairs in the form ROLE:entity. See GCS Object ACL documentation for more details. Must be set if predefined_acl is not.

bucket = None

The name of the bucket the object is stored in.

object = None

The name of the object to apply the acl to.

predefined_acl = None

The “canned” predefined ACL to apply. Must be set if role_entity is not.

role_entities = None

List of role/entity pairs in the form ROLE:entity. See GCS Object ACL documentation for more details. Must be set if predefined_acl is not.

static get(resource_name, id, opts=None, bucket=None, object=None, predefined_acl=None, role_entities=None)

Get an existing ObjectACL resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bucket (pulumi.Input[str]) – The name of the bucket the object is stored in.

  • object (pulumi.Input[str]) – The name of the object to apply the acl to.

  • predefined_acl (pulumi.Input[str]) –

    The “canned” predefined ACL to apply. Must be set if role_entity is not.

  • role_entities (pulumi.Input[list]) –

    List of role/entity pairs in the form ROLE:entity. See GCS Object ACL documentation for more details. Must be set if predefined_acl is not.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.ObjectAccessControl(resource_name, opts=None, bucket=None, entity=None, object=None, role=None, __props__=None, __name__=None, __opts__=None)

The ObjectAccessControls resources represent the Access Control Lists (ACLs) for objects within Google Cloud Storage. ACLs let you specify who has access to your data and to what extent.

There are two roles that can be assigned to an entity:

READERs can get an object, though the acl property will not be revealed. OWNERs are READERs, and they can get the acl property, update an object, and call all objectAccessControls methods on the object. The owner of an object is always an OWNER. For more information, see Access Control, with the caveat that this API uses READER and OWNER instead of READ and FULL_CONTROL.

To get more information about ObjectAccessControl, see:

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

static get(resource_name, id, opts=None, bucket=None, domain=None, email=None, entity=None, entity_id=None, generation=None, object=None, project_team=None, role=None)

Get an existing ObjectAccessControl resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

The project_team object supports the following:

  • projectNumber (pulumi.Input[str])

  • team (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_gcp.storage.TransferJob(resource_name, opts=None, description=None, project=None, schedule=None, status=None, transfer_spec=None, __props__=None, __name__=None, __opts__=None)

Creates a new Transfer Job in Google Cloud Storage Transfer.

To get more information about Google Cloud Storage Transfer, see:

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – Unique description to identify the Transfer Job.

  • project (pulumi.Input[str]) – The project in which the resource belongs. If it is not provided, the provider project is used.

  • schedule (pulumi.Input[dict]) – Schedule specification defining when the Transfer Job should be scheduled to start, end and and what time to run. Structure documented below.

  • status (pulumi.Input[str]) – Status of the job. Default: ENABLED. NOTE: The effect of the new job status takes place during a subsequent job run. For example, if you change the job status from ENABLED to DISABLED, and an operation spawned by the transfer is running, the status change would not affect the current operation.

  • transfer_spec (pulumi.Input[dict]) – Transfer specification. Structure documented below.

The schedule object supports the following:

  • scheduleEndDate (pulumi.Input[dict])

    • day (pulumi.Input[float])

    • month (pulumi.Input[float])

    • year (pulumi.Input[float])

  • scheduleStartDate (pulumi.Input[dict])

    • day (pulumi.Input[float])

    • month (pulumi.Input[float])

    • year (pulumi.Input[float])

  • startTimeOfDay (pulumi.Input[dict])

    • hours (pulumi.Input[float])

    • minutes (pulumi.Input[float])

    • nanos (pulumi.Input[float])

    • seconds (pulumi.Input[float])

The transfer_spec object supports the following:

  • awsS3DataSource (pulumi.Input[dict])

    • awsAccessKey (pulumi.Input[dict])

      • accessKeyId (pulumi.Input[str])

      • secretAccessKey (pulumi.Input[str])

    • bucket_name (pulumi.Input[str])

  • gcsDataSink (pulumi.Input[dict])

    • bucket_name (pulumi.Input[str])

  • gcsDataSource (pulumi.Input[dict])

    • bucket_name (pulumi.Input[str])

  • httpDataSource (pulumi.Input[dict])

    • listUrl (pulumi.Input[str])

  • objectConditions (pulumi.Input[dict])

    • excludePrefixes (pulumi.Input[list])

    • includePrefixes (pulumi.Input[list])

    • maxTimeElapsedSinceLastModification (pulumi.Input[str])

    • minTimeElapsedSinceLastModification (pulumi.Input[str])

  • transferOptions (pulumi.Input[dict])

    • deleteObjectsFromSourceAfterTransfer (pulumi.Input[bool])

    • deleteObjectsUniqueInSink (pulumi.Input[bool])

    • overwriteObjectsAlreadyExistingInSink (pulumi.Input[bool])

creation_time = None

When the Transfer Job was created.

deletion_time = None

When the Transfer Job was deleted.

description = None

Unique description to identify the Transfer Job.

last_modification_time = None

When the Transfer Job was last modified.

name = None

The name of the Transfer Job.

project = None

The project in which the resource belongs. If it is not provided, the provider project is used.

schedule = None

Schedule specification defining when the Transfer Job should be scheduled to start, end and and what time to run. Structure documented below.

  • scheduleEndDate (dict)

    • day (float)

    • month (float)

    • year (float)

  • scheduleStartDate (dict)

    • day (float)

    • month (float)

    • year (float)

  • startTimeOfDay (dict)

    • hours (float)

    • minutes (float)

    • nanos (float)

    • seconds (float)

status = None

Status of the job. Default: ENABLED. NOTE: The effect of the new job status takes place during a subsequent job run. For example, if you change the job status from ENABLED to DISABLED, and an operation spawned by the transfer is running, the status change would not affect the current operation.

transfer_spec = None

Transfer specification. Structure documented below.

  • awsS3DataSource (dict)

    • awsAccessKey (dict)

      • accessKeyId (str)

      • secretAccessKey (str)

    • bucket_name (str)

  • gcsDataSink (dict)

    • bucket_name (str)

  • gcsDataSource (dict)

    • bucket_name (str)

  • httpDataSource (dict)

    • listUrl (str)

  • objectConditions (dict)

    • excludePrefixes (list)

    • includePrefixes (list)

    • maxTimeElapsedSinceLastModification (str)

    • minTimeElapsedSinceLastModification (str)

  • transferOptions (dict)

    • deleteObjectsFromSourceAfterTransfer (bool)

    • deleteObjectsUniqueInSink (bool)

    • overwriteObjectsAlreadyExistingInSink (bool)

static get(resource_name, id, opts=None, creation_time=None, deletion_time=None, description=None, last_modification_time=None, name=None, project=None, schedule=None, status=None, transfer_spec=None)

Get an existing TransferJob resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • creation_time (pulumi.Input[str]) – When the Transfer Job was created.

  • deletion_time (pulumi.Input[str]) – When the Transfer Job was deleted.

  • description (pulumi.Input[str]) – Unique description to identify the Transfer Job.

  • last_modification_time (pulumi.Input[str]) – When the Transfer Job was last modified.

  • name (pulumi.Input[str]) – The name of the Transfer Job.

  • project (pulumi.Input[str]) – The project in which the resource belongs. If it is not provided, the provider project is used.

  • schedule (pulumi.Input[dict]) – Schedule specification defining when the Transfer Job should be scheduled to start, end and and what time to run. Structure documented below.

  • status (pulumi.Input[str]) – Status of the job. Default: ENABLED. NOTE: The effect of the new job status takes place during a subsequent job run. For example, if you change the job status from ENABLED to DISABLED, and an operation spawned by the transfer is running, the status change would not affect the current operation.

  • transfer_spec (pulumi.Input[dict]) – Transfer specification. Structure documented below.

The schedule object supports the following:

  • scheduleEndDate (pulumi.Input[dict])

    • day (pulumi.Input[float])

    • month (pulumi.Input[float])

    • year (pulumi.Input[float])

  • scheduleStartDate (pulumi.Input[dict])

    • day (pulumi.Input[float])

    • month (pulumi.Input[float])

    • year (pulumi.Input[float])

  • startTimeOfDay (pulumi.Input[dict])

    • hours (pulumi.Input[float])

    • minutes (pulumi.Input[float])

    • nanos (pulumi.Input[float])

    • seconds (pulumi.Input[float])

The transfer_spec object supports the following:

  • awsS3DataSource (pulumi.Input[dict])

    • awsAccessKey (pulumi.Input[dict])

      • accessKeyId (pulumi.Input[str])

      • secretAccessKey (pulumi.Input[str])

    • bucket_name (pulumi.Input[str])

  • gcsDataSink (pulumi.Input[dict])

    • bucket_name (pulumi.Input[str])

  • gcsDataSource (pulumi.Input[dict])

    • bucket_name (pulumi.Input[str])

  • httpDataSource (pulumi.Input[dict])

    • listUrl (pulumi.Input[str])

  • objectConditions (pulumi.Input[dict])

    • excludePrefixes (pulumi.Input[list])

    • includePrefixes (pulumi.Input[list])

    • maxTimeElapsedSinceLastModification (pulumi.Input[str])

    • minTimeElapsedSinceLastModification (pulumi.Input[str])

  • transferOptions (pulumi.Input[dict])

    • deleteObjectsFromSourceAfterTransfer (pulumi.Input[bool])

    • deleteObjectsUniqueInSink (pulumi.Input[bool])

    • overwriteObjectsAlreadyExistingInSink (pulumi.Input[bool])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

pulumi_gcp.storage.get_bucket_object(bucket=None, name=None, opts=None)

Gets an existing object inside an existing bucket in Google Cloud Storage service (GCS). See the official documentation and API.

Parameters
  • bucket (str) – The name of the containing bucket.

  • name (str) – The name of the object.

pulumi_gcp.storage.get_object_signed_url(bucket=None, content_md5=None, content_type=None, credentials=None, duration=None, extension_headers=None, http_method=None, path=None, opts=None)

The Google Cloud storage signed URL data source generates a signed URL for a given storage object. Signed URLs provide a way to give time-limited read or write access to anyone in possession of the URL, regardless of whether they have a Google account.

For more info about signed URL’s is available here.

Parameters
  • bucket (str) – The name of the bucket to read the object from

  • content_md5 (str) – The MD5 digest value in Base64. Typically retrieved from google_storage_bucket_object.object.md5hash attribute. If you provide this in the datasource, the client (e.g. browser, curl) must provide the Content-MD5 HTTP header with this same value in its request.

  • content_type (str) – If you specify this in the datasource, the client must provide the Content-Type HTTP header with the same value in its request.

  • credentials (str) – What Google service account credentials json should be used to sign the URL. This data source checks the following locations for credentials, in order of preference: data source credentials attribute, provider credentials attribute and finally the GOOGLE_APPLICATION_CREDENTIALS environment variable.

  • duration (str) –

    For how long shall the signed URL be valid (defaults to 1 hour - i.e. 1h). See here for info on valid duration formats.

  • extension_headers (dict) – As needed. The server checks to make sure that the client provides matching values in requests using the signed URL. Any header starting with x-goog- is accepted but see the Google Docs for list of headers that are supported by Google.

  • http_method (str) – What HTTP Method will the signed URL allow (defaults to GET)

  • path (str) – The full path to the object inside the bucket

pulumi_gcp.storage.get_project_service_account(project=None, user_project=None, opts=None)

Get the email address of a project’s unique Google Cloud Storage service account.

Each Google Cloud project has a unique service account for use with Google Cloud Storage. Only this special service account can be used to set up storage.Notification resources.

For more information see the API reference.

Parameters
  • project (str) – The project the unique service account was created for. If it is not provided, the provider project is used.

  • user_project (str) – The project the lookup originates from. This field is used if you are making the request from a different account than the one you are finding the service account for.

pulumi_gcp.storage.get_transfer_project_servie_account(project=None, opts=None)

Use this data source to retrieve Storage Transfer service account for this project

Parameters

project (str) – The project ID. If it is not provided, the provider project is used.