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.
1539 1540 1541 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1539 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
1517 1518 1519 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1517 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
1525 1526 1527 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1525 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
1530 1531 1532 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1530 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
1537 1538 1539 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1537 def versions @versions end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1544 1545 1546 1547 1548 1549 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1544 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 |