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.
1523 1524 1525 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1523 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
1501 1502 1503 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1501 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
1509 1510 1511 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1509 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
1514 1515 1516 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1514 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
1521 1522 1523 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1521 def versions @versions end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1528 1529 1530 1531 1532 1533 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1528 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 |