Create a new trigger in a particular project and location.
Scopes
You will need authorization for the https://www.googleapis.com/auth/cloud-platform scope to make a valid call.
If unset, the scope for this method defaults to https://www.googleapis.com/auth/cloud-platform.
You can set the scope for this method like this: eventarc1 --scope <scope> projects locations-triggers-create ...
Required Scalar Argument
- <parent> (string)
- Required. The parent collection in which to add this trigger.
Required Request Value
The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.
For example, a structure like this:
Trigger:
channel: string
create-time: string
destination:
cloud-function: string
cloud-run:
path: string
region: string
service: string
gke:
cluster: string
location: string
namespace: string
path: string
service: string
http-endpoint:
uri: string
network-config:
network-attachment: string
workflow: string
etag: string
event-data-content-type: string
labels: { string: string }
name: string
service-account: string
transport:
pubsub:
subscription: string
topic: string
uid: string
update-time: string
can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.
-r . channel=gubergren
- Optional. The name of the channel associated with the trigger in
projects/{project}/locations/{location}/channels/{channel}
format. You must provide a channel to receive events from Eventarc SaaS partners.
- Optional. The name of the channel associated with the trigger in
create-time=ea
- Output only. The creation time.
destination cloud-function=dolor
- The Cloud Function resource name. Cloud Functions V1 and V2 are supported. Format:
projects/{project}/locations/{location}/functions/{function}
This is a read-only field. Creating Cloud Functions V1/V2 triggers is only supported via the Cloud Functions product. An error will be returned if the user sets this value.
- The Cloud Function resource name. Cloud Functions V1 and V2 are supported. Format:
cloud-run path=lorem
- Optional. The relative path on the Cloud Run service the events should be sent to. The value must conform to the definition of a URI path segment (section 3.3 of RFC2396). Examples: "/route", "route", "route/subroute".
region=eos
- Required. The region the Cloud Run service is deployed in.
-
service=labore
- Required. The name of the Cloud Run service being addressed. See https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services. Only services located in the same project as the trigger object can be addressed.
-
..gke cluster=sed
- Required. The name of the cluster the GKE service is running in. The cluster must be running in the same project as the trigger being created.
location=duo
- Required. The name of the Google Compute Engine in which the cluster resides, which can either be compute zone (for example, us-central1-a) for the zonal clusters or region (for example, us-central1) for regional clusters.
namespace=sed
- Required. The namespace the GKE service is running in.
path=no
- Optional. The relative path on the GKE service the events should be sent to. The value must conform to the definition of a URI path segment (section 3.3 of RFC2396). Examples: "/route", "route", "route/subroute".
-
service=stet
- Required. Name of the GKE service.
-
..http-endpoint uri=kasd
- Required. The URI of the HTTP enpdoint. The value must be a RFC2396 URI string. Examples:
http://10.10.10.8:80/route
,http://svc.us-central1.p.local:8080/
. Only HTTP and HTTPS protocols are supported. The host can be either a static IP addressable from the VPC specified by the network config, or an internal DNS hostname of the service resolvable via Cloud DNS.
- Required. The URI of the HTTP enpdoint. The value must be a RFC2396 URI string. Examples:
-
..network-config network-attachment=et
- Required. Name of the NetworkAttachment that allows access to the destination VPC. Format:
projects/{PROJECT_ID}/regions/{REGION}/networkAttachments/{NETWORK_ATTACHMENT_NAME}
- Required. Name of the NetworkAttachment that allows access to the destination VPC. Format:
-
.. workflow=sed
- The resource name of the Workflow whose Executions are triggered by the events. The Workflow resource should be deployed in the same project as the trigger. Format:
projects/{project}/locations/{location}/workflows/{workflow}
- The resource name of the Workflow whose Executions are triggered by the events. The Workflow resource should be deployed in the same project as the trigger. Format:
-
.. etag=et
- Output only. This checksum is computed by the server based on the value of other fields, and might be sent only on create requests to ensure that the client has an up-to-date value before proceeding.
event-data-content-type=et
- Optional. EventDataContentType specifies the type of payload in MIME format that is expected from the CloudEvent data field. This is set to
application/json
if the value is not defined.
- Optional. EventDataContentType specifies the type of payload in MIME format that is expected from the CloudEvent data field. This is set to
labels=key=vero
- Optional. User labels attached to the triggers that can be used to group resources.
- the value will be associated with the given
key
name=erat
- Required. The resource name of the trigger. Must be unique within the location of the project and must be in
projects/{project}/locations/{location}/triggers/{trigger}
format.
- Required. The resource name of the trigger. Must be unique within the location of the project and must be in
service-account=sed
- Optional. The IAM service account email associated with the trigger. The service account represents the identity of the trigger. The
iam.serviceAccounts.actAs
permission must be granted on the service account to allow a principal to impersonate the service account. For more information, see the Roles and permissions page specific to the trigger destination.
- Optional. The IAM service account email associated with the trigger. The service account represents the identity of the trigger. The
transport.pubsub subscription=duo
- Output only. The name of the Pub/Sub subscription created and managed by Eventarc as a transport for the event delivery. Format:
projects/{PROJECT_ID}/subscriptions/{SUBSCRIPTION_NAME}
.
- Output only. The name of the Pub/Sub subscription created and managed by Eventarc as a transport for the event delivery. Format:
-
topic=dolore
- Optional. The name of the Pub/Sub topic created and managed by Eventarc as a transport for the event delivery. Format:
projects/{PROJECT_ID}/topics/{TOPIC_NAME}
. You can set an existing topic for triggers of the typegoogle.cloud.pubsub.topic.v1.messagePublished
. The topic you provide here is not deleted by Eventarc at trigger deletion.
- Optional. The name of the Pub/Sub topic created and managed by Eventarc as a transport for the event delivery. Format:
-
... uid=et
- Output only. Server-assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
update-time=voluptua.
- Output only. The last-modified time.
About Cursors
The cursor position is key to comfortably set complex nested structures. The following rules apply:
- The cursor position is always set relative to the current one, unless the field name starts with the
.
character. Fields can be nested such as in-r f.s.o
. - The cursor position is set relative to the top-level structure if it starts with
.
, e.g.-r .s.s
- You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify
-r struct.sub_struct=bar
. - You can move the cursor one level up by using
..
. Each additional.
moves it up one additional level. E.g....
would go three levels up.
Optional Output Flags
The method's return value a JSON encoded structure, which will be written to standard output by default.
- -o out
- out specifies the destination to which to write the server's result to.
It will be a JSON-encoded structure.
The destination may be
-
to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.
- out specifies the destination to which to write the server's result to.
It will be a JSON-encoded structure.
The destination may be
Optional Method Properties
You may set the following properties to further configure the call. Please note that -p
is followed by one
or more key-value-pairs, and is called like this -p k1=v1 k2=v2
even though the listing below repeats the
-p
for completeness.
-
-p trigger-id=string
- Required. The user-provided ID to be assigned to the trigger.
-
-p validate-only=boolean
- Optional. If set, validate the request and preview the review, but do not post it.
Optional General Properties
The following properties can configure any call, and are not specific to this method.
-
-p $-xgafv=string
- V1 error format.
-
-p access-token=string
- OAuth access token.
-
-p alt=string
- Data format for response.
-
-p callback=string
- JSONP
-
-p fields=string
- Selector specifying which fields to include in a partial response.
-
-p key=string
- API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
-
-p oauth-token=string
- OAuth 2.0 token for the current user.
-
-p pretty-print=boolean
- Returns response with indentations and line breaks.
-
-p quota-user=string
- Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
-
-p upload-type=string
- Legacy upload protocol for media (e.g. "media", "multipart").
-
-p upload-protocol=string
- Upload protocol for media (e.g. "raw", "multipart").