Class: Google::Apis::CloudfunctionsV1::SecretVolume
- Inherits:
-
Object
- Object
- Google::Apis::CloudfunctionsV1::SecretVolume
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudfunctions_v1/classes.rb,
lib/google/apis/cloudfunctions_v1/representations.rb,
lib/google/apis/cloudfunctions_v1/representations.rb
Overview
Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. Secret value is not a part of the configuration. Every filesystem read operation performs a lookup in secret manager to retrieve the secret value.
Instance Attribute Summary collapse
-
#mount_path ⇒ String
The path within the container to mount the secret volume.
-
#project_id ⇒ String
Project identifier (preferrably project number but can also be the project ID) of the project that contains the secret.
-
#secret ⇒ String
Name of the secret in secret manager (not the full resource name).
-
#versions ⇒ Array<Google::Apis::CloudfunctionsV1::SecretVersion>
List of secret versions to mount for this secret.
Instance Method Summary collapse
-
#initialize(**args) ⇒ SecretVolume
constructor
A new instance of SecretVolume.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ SecretVolume
Returns a new instance of SecretVolume.
1852 1853 1854 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1852 def initialize(**args) update!(**args) end |
Instance Attribute Details
#mount_path ⇒ String
The path within the container to mount the secret volume. For example, setting
the mount_path as /etc/secrets would mount the secret value files under the
/etc/secrets directory. This directory will also be completely shadowed and
unavailable to mount any other secrets. Recommended mount paths: /etc/secrets
Restricted mount paths: /cloudsql, /dev/log, /pod, /proc, /var/log
Corresponds to the JSON property mountPath
1830 1831 1832 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1830 def mount_path @mount_path end |
#project_id ⇒ String
Project identifier (preferrably project number but can also be the project ID)
of the project that contains the secret. If not set, it will be populated with
the function's project assuming that the secret exists in the same project as
of the function.
Corresponds to the JSON property projectId
1838 1839 1840 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1838 def project_id @project_id end |
#secret ⇒ String
Name of the secret in secret manager (not the full resource name).
Corresponds to the JSON property secret
1843 1844 1845 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1843 def secret @secret end |
#versions ⇒ Array<Google::Apis::CloudfunctionsV1::SecretVersion>
List of secret versions to mount for this secret. If empty, the latest
version of the secret will be made available in a file named after the secret
under the mount point.
Corresponds to the JSON property versions
1850 1851 1852 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1850 def versions @versions end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1857 1858 1859 1860 1861 1862 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1857 def update!(**args) @mount_path = args[:mount_path] if args.key?(:mount_path) @project_id = args[:project_id] if args.key?(:project_id) @secret = args[:secret] if args.key?(:secret) @versions = args[:versions] if args.key?(:versions) end |