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.
1337 1338 1339 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1337 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
1315 1316 1317 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1315 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
1323 1324 1325 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1323 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
1328 1329 1330 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1328 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
1335 1336 1337 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1335 def versions @versions end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1342 1343 1344 1345 1346 1347 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1342 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 |