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.
1172 1173 1174 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1172 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
1150 1151 1152 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1150 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
1158 1159 1160 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1158 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
1163 1164 1165 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1163 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
1170 1171 1172 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1170 def versions @versions end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1177 1178 1179 1180 1181 1182 |
# File 'lib/google/apis/cloudfunctions_v1/classes.rb', line 1177 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 |