Class: Google::Apis::ArtifactregistryV1::GoogleDevtoolsArtifactregistryV1Rule
- Inherits:
-
Object
- Object
- Google::Apis::ArtifactregistryV1::GoogleDevtoolsArtifactregistryV1Rule
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/artifactregistry_v1/classes.rb,
lib/google/apis/artifactregistry_v1/representations.rb,
lib/google/apis/artifactregistry_v1/representations.rb
Overview
A Rule applies to repository or package level. It defines the deny or allow action of the operation when the conditions in the rule are met.
Instance Attribute Summary collapse
-
#action ⇒ String
The action this rule makes.
-
#condition ⇒ Google::Apis::ArtifactregistryV1::Expr
Represents a textual expression in the Common Expression Language (CEL) syntax.
-
#name ⇒ String
The name of the rule, for example: "projects/p1/locations/us-central1/ repositories/repo1/rules/rule1".
-
#operation ⇒ String
Corresponds to the JSON property
operation
. -
#package_id ⇒ String
The package ID the rule applies to.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleDevtoolsArtifactregistryV1Rule
constructor
A new instance of GoogleDevtoolsArtifactregistryV1Rule.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleDevtoolsArtifactregistryV1Rule
Returns a new instance of GoogleDevtoolsArtifactregistryV1Rule.
1065 1066 1067 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1065 def initialize(**args) update!(**args) end |
Instance Attribute Details
#action ⇒ String
The action this rule makes.
Corresponds to the JSON property action
1027 1028 1029 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1027 def action @action end |
#condition ⇒ Google::Apis::ArtifactregistryV1::Expr
Represents a textual expression in the Common Expression Language (CEL) syntax.
CEL is a C-like expression language. The syntax and semantics of CEL are
documented at https://github.com/google/cel-spec. Example (Comparison): title:
"Summary size limit" description: "Determines if a summary is less than 100
chars" expression: "document.summary.size() < 100" Example (Equality): title: "
Requestor is owner" description: "Determines if requestor is the document
owner" expression: "document.owner == request.auth.claims.email" Example (
Logic): title: "Public documents" description: "Determine whether the document
should be publicly visible" expression: "document.type != 'private' &&
document.type != 'internal'" Example (Data Manipulation): title: "Notification
string" description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)" The
exact variables and functions that may be referenced within an expression are
determined by the service that evaluates it. See the service documentation for
additional information.
Corresponds to the JSON property condition
1046 1047 1048 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1046 def condition @condition end |
#name ⇒ String
The name of the rule, for example: "projects/p1/locations/us-central1/
repositories/repo1/rules/rule1".
Corresponds to the JSON property name
1052 1053 1054 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1052 def name @name end |
#operation ⇒ String
Corresponds to the JSON property operation
1057 1058 1059 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1057 def operation @operation end |
#package_id ⇒ String
The package ID the rule applies to. If empty, this rule applies to all the
packages inside the repository.
Corresponds to the JSON property packageId
1063 1064 1065 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1063 def package_id @package_id end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1070 1071 1072 1073 1074 1075 1076 |
# File 'lib/google/apis/artifactregistry_v1/classes.rb', line 1070 def update!(**args) @action = args[:action] if args.key?(:action) @condition = args[:condition] if args.key?(:condition) @name = args[:name] if args.key?(:name) @operation = args[:operation] if args.key?(:operation) @package_id = args[:package_id] if args.key?(:package_id) end |