@pulumi/yandex
Version:
A Pulumi package for creating and managing yandex cloud resources.
291 lines (290 loc) • 17.4 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import { input as inputs, output as outputs } from "./types";
/**
* Allows management of [Yandex Cloud Functions Trigger](https://cloud.yandex.com/docs/functions/)
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as yandex from "@pulumi/yandex";
*
* const myTrigger = new yandex.FunctionTrigger("my_trigger", {
* description: "any description",
* function: {
* id: "tf-test",
* },
* timer: {
* cronExpression: "* * * * ? *",
* },
* });
* ```
*/
export declare class FunctionTrigger extends pulumi.CustomResource {
/**
* Get an existing FunctionTrigger resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FunctionTriggerState, opts?: pulumi.CustomResourceOptions): FunctionTrigger;
/**
* Returns true if the given object is an instance of FunctionTrigger. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is FunctionTrigger;
/**
* Creation timestamp of the Yandex Cloud Functions Trigger
*/
readonly createdAt: pulumi.Output<string>;
/**
* Description of the Yandex Cloud Functions Trigger
*/
readonly description: pulumi.Output<string | undefined>;
/**
* Dead Letter Queue settings definition for Yandex Cloud Functions Trigger
* * `dlq.0.queue_id` - ID of Dead Letter Queue for Trigger (Queue ARN)
* * `dlq.0.service_account_id` - Service Account ID for Dead Letter Queue for Yandex Cloud Functions Trigger
*/
readonly dlq: pulumi.Output<outputs.FunctionTriggerDlq | undefined>;
/**
* Folder ID for the Yandex Cloud Functions Trigger
*/
readonly folderId: pulumi.Output<string>;
/**
* [Yandex.Cloud Function](https://cloud.yandex.com/docs/functions/concepts/function) settings definition for Yandex Cloud Functions Trigger
* * `function.0.id` - Yandex.Cloud Function ID for Yandex Cloud Functions Trigger
* * `function.0.service_account_id` - Service account ID for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.tag` - Tag for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.retry_attempts` - Retry attempts for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.retry_interval` - Retry interval in seconds for Yandex.Cloud Function for Yandex Cloud Functions Trigger
*/
readonly function: pulumi.Output<outputs.FunctionTriggerFunction>;
/**
* [IoT](https://cloud.yandex.com/docs/functions/concepts/trigger/iot-core-trigger) settings definition for Yandex Cloud Functions Trigger, if present. Only one section `iot` or `messageQueue` or `objectStorage` or `timer` can be defined.
* * `iot.0.registry_id` - IoT Registry ID for Yandex Cloud Functions Trigger
* * `iot.0.device_id` - IoT Device ID for Yandex Cloud Functions Trigger
* * `iot.0.topic` - IoT Topic for Yandex Cloud Functions Trigger
*/
readonly iot: pulumi.Output<outputs.FunctionTriggerIot | undefined>;
/**
* A set of key/value label pairs to assign to the Yandex Cloud Functions Trigger
*/
readonly labels: pulumi.Output<{
[key: string]: string;
} | undefined>;
readonly logGroup: pulumi.Output<outputs.FunctionTriggerLogGroup | undefined>;
/**
* [Logging](https://cloud.yandex.com/docs/functions/concepts/trigger/logging) settings definition for Yandex Cloud Functions Trigger, if present
* * `logging.0.group_id` - Logging group ID for Yandex Cloud Functions Trigger
* * `logging.0.resource_ids` - Resource ID filter setting for Yandex Cloud Functions Trigger
* * `logging.0.resource_types` - Resource type filter setting for Yandex Cloud Functions Trigger
* * `logging.0.levels` - Logging level filter setting for Yandex Cloud Functions Trigger
* * `logging.0.batch_cutoff` - Batch Duration in seconds for Yandex Cloud Functions Trigger
* * `logging.0.batch_size` - Batch Size for Yandex Cloud Functions Trigger
*/
readonly logging: pulumi.Output<outputs.FunctionTriggerLogging | undefined>;
/**
* [Message Queue](https://cloud.yandex.com/docs/functions/concepts/trigger/ymq-trigger) settings definition for Yandex Cloud Functions Trigger, if present
* * `message_queue.0.queue_id` - Message Queue ID for Yandex Cloud Functions Trigger
* * `message_queue.0.service_account_id` - Message Queue Service Account ID for Yandex Cloud Functions Trigger
* * `message_queue.0.batch_cutoff` - Batch Duration in seconds for Yandex Cloud Functions Trigger
* * `message_queue.0.batch_size` - Batch Size for Yandex Cloud Functions Trigger
* * `message_queue.0.visibility_timeout` - Visibility timeout for Yandex Cloud Functions Trigger
*/
readonly messageQueue: pulumi.Output<outputs.FunctionTriggerMessageQueue | undefined>;
/**
* Yandex Cloud Functions Trigger name used to define trigger
*/
readonly name: pulumi.Output<string>;
/**
* [Object Storage](https://cloud.yandex.com/docs/functions/concepts/trigger/os-trigger) settings definition for Yandex Cloud Functions Trigger, if present
* * `object_storage.0.bucket_id` - Object Storage Bucket ID for Yandex Cloud Functions Trigger
* * `object_storage.0.prefix` - Prefix for Object Storage for Yandex Cloud Functions Trigger
* * `object_storage.0.suffix` - Suffix for Object Storage for Yandex Cloud Functions Trigger
* * `object_storage.0.create` - Boolean flag for setting create event for Yandex Cloud Functions Trigger
* * `object_storage.0.update` - Boolean flag for setting update event for Yandex Cloud Functions Trigger
* * `object_storage.0.delete` - Boolean flag for setting delete event for Yandex Cloud Functions Trigger
*/
readonly objectStorage: pulumi.Output<outputs.FunctionTriggerObjectStorage | undefined>;
/**
* [Timer](https://cloud.yandex.com/docs/functions/concepts/trigger/timer) settings definition for Yandex Cloud Functions Trigger, if present
* * `timer.0.cron_expression` - Cron expression for timer for Yandex Cloud Functions Trigger
*/
readonly timer: pulumi.Output<outputs.FunctionTriggerTimer | undefined>;
/**
* Create a FunctionTrigger resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: FunctionTriggerArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering FunctionTrigger resources.
*/
export interface FunctionTriggerState {
/**
* Creation timestamp of the Yandex Cloud Functions Trigger
*/
createdAt?: pulumi.Input<string>;
/**
* Description of the Yandex Cloud Functions Trigger
*/
description?: pulumi.Input<string>;
/**
* Dead Letter Queue settings definition for Yandex Cloud Functions Trigger
* * `dlq.0.queue_id` - ID of Dead Letter Queue for Trigger (Queue ARN)
* * `dlq.0.service_account_id` - Service Account ID for Dead Letter Queue for Yandex Cloud Functions Trigger
*/
dlq?: pulumi.Input<inputs.FunctionTriggerDlq>;
/**
* Folder ID for the Yandex Cloud Functions Trigger
*/
folderId?: pulumi.Input<string>;
/**
* [Yandex.Cloud Function](https://cloud.yandex.com/docs/functions/concepts/function) settings definition for Yandex Cloud Functions Trigger
* * `function.0.id` - Yandex.Cloud Function ID for Yandex Cloud Functions Trigger
* * `function.0.service_account_id` - Service account ID for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.tag` - Tag for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.retry_attempts` - Retry attempts for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.retry_interval` - Retry interval in seconds for Yandex.Cloud Function for Yandex Cloud Functions Trigger
*/
function?: pulumi.Input<inputs.FunctionTriggerFunction>;
/**
* [IoT](https://cloud.yandex.com/docs/functions/concepts/trigger/iot-core-trigger) settings definition for Yandex Cloud Functions Trigger, if present. Only one section `iot` or `messageQueue` or `objectStorage` or `timer` can be defined.
* * `iot.0.registry_id` - IoT Registry ID for Yandex Cloud Functions Trigger
* * `iot.0.device_id` - IoT Device ID for Yandex Cloud Functions Trigger
* * `iot.0.topic` - IoT Topic for Yandex Cloud Functions Trigger
*/
iot?: pulumi.Input<inputs.FunctionTriggerIot>;
/**
* A set of key/value label pairs to assign to the Yandex Cloud Functions Trigger
*/
labels?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
logGroup?: pulumi.Input<inputs.FunctionTriggerLogGroup>;
/**
* [Logging](https://cloud.yandex.com/docs/functions/concepts/trigger/logging) settings definition for Yandex Cloud Functions Trigger, if present
* * `logging.0.group_id` - Logging group ID for Yandex Cloud Functions Trigger
* * `logging.0.resource_ids` - Resource ID filter setting for Yandex Cloud Functions Trigger
* * `logging.0.resource_types` - Resource type filter setting for Yandex Cloud Functions Trigger
* * `logging.0.levels` - Logging level filter setting for Yandex Cloud Functions Trigger
* * `logging.0.batch_cutoff` - Batch Duration in seconds for Yandex Cloud Functions Trigger
* * `logging.0.batch_size` - Batch Size for Yandex Cloud Functions Trigger
*/
logging?: pulumi.Input<inputs.FunctionTriggerLogging>;
/**
* [Message Queue](https://cloud.yandex.com/docs/functions/concepts/trigger/ymq-trigger) settings definition for Yandex Cloud Functions Trigger, if present
* * `message_queue.0.queue_id` - Message Queue ID for Yandex Cloud Functions Trigger
* * `message_queue.0.service_account_id` - Message Queue Service Account ID for Yandex Cloud Functions Trigger
* * `message_queue.0.batch_cutoff` - Batch Duration in seconds for Yandex Cloud Functions Trigger
* * `message_queue.0.batch_size` - Batch Size for Yandex Cloud Functions Trigger
* * `message_queue.0.visibility_timeout` - Visibility timeout for Yandex Cloud Functions Trigger
*/
messageQueue?: pulumi.Input<inputs.FunctionTriggerMessageQueue>;
/**
* Yandex Cloud Functions Trigger name used to define trigger
*/
name?: pulumi.Input<string>;
/**
* [Object Storage](https://cloud.yandex.com/docs/functions/concepts/trigger/os-trigger) settings definition for Yandex Cloud Functions Trigger, if present
* * `object_storage.0.bucket_id` - Object Storage Bucket ID for Yandex Cloud Functions Trigger
* * `object_storage.0.prefix` - Prefix for Object Storage for Yandex Cloud Functions Trigger
* * `object_storage.0.suffix` - Suffix for Object Storage for Yandex Cloud Functions Trigger
* * `object_storage.0.create` - Boolean flag for setting create event for Yandex Cloud Functions Trigger
* * `object_storage.0.update` - Boolean flag for setting update event for Yandex Cloud Functions Trigger
* * `object_storage.0.delete` - Boolean flag for setting delete event for Yandex Cloud Functions Trigger
*/
objectStorage?: pulumi.Input<inputs.FunctionTriggerObjectStorage>;
/**
* [Timer](https://cloud.yandex.com/docs/functions/concepts/trigger/timer) settings definition for Yandex Cloud Functions Trigger, if present
* * `timer.0.cron_expression` - Cron expression for timer for Yandex Cloud Functions Trigger
*/
timer?: pulumi.Input<inputs.FunctionTriggerTimer>;
}
/**
* The set of arguments for constructing a FunctionTrigger resource.
*/
export interface FunctionTriggerArgs {
/**
* Description of the Yandex Cloud Functions Trigger
*/
description?: pulumi.Input<string>;
/**
* Dead Letter Queue settings definition for Yandex Cloud Functions Trigger
* * `dlq.0.queue_id` - ID of Dead Letter Queue for Trigger (Queue ARN)
* * `dlq.0.service_account_id` - Service Account ID for Dead Letter Queue for Yandex Cloud Functions Trigger
*/
dlq?: pulumi.Input<inputs.FunctionTriggerDlq>;
/**
* Folder ID for the Yandex Cloud Functions Trigger
*/
folderId?: pulumi.Input<string>;
/**
* [Yandex.Cloud Function](https://cloud.yandex.com/docs/functions/concepts/function) settings definition for Yandex Cloud Functions Trigger
* * `function.0.id` - Yandex.Cloud Function ID for Yandex Cloud Functions Trigger
* * `function.0.service_account_id` - Service account ID for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.tag` - Tag for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.retry_attempts` - Retry attempts for Yandex.Cloud Function for Yandex Cloud Functions Trigger
* * `function.0.retry_interval` - Retry interval in seconds for Yandex.Cloud Function for Yandex Cloud Functions Trigger
*/
function: pulumi.Input<inputs.FunctionTriggerFunction>;
/**
* [IoT](https://cloud.yandex.com/docs/functions/concepts/trigger/iot-core-trigger) settings definition for Yandex Cloud Functions Trigger, if present. Only one section `iot` or `messageQueue` or `objectStorage` or `timer` can be defined.
* * `iot.0.registry_id` - IoT Registry ID for Yandex Cloud Functions Trigger
* * `iot.0.device_id` - IoT Device ID for Yandex Cloud Functions Trigger
* * `iot.0.topic` - IoT Topic for Yandex Cloud Functions Trigger
*/
iot?: pulumi.Input<inputs.FunctionTriggerIot>;
/**
* A set of key/value label pairs to assign to the Yandex Cloud Functions Trigger
*/
labels?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
logGroup?: pulumi.Input<inputs.FunctionTriggerLogGroup>;
/**
* [Logging](https://cloud.yandex.com/docs/functions/concepts/trigger/logging) settings definition for Yandex Cloud Functions Trigger, if present
* * `logging.0.group_id` - Logging group ID for Yandex Cloud Functions Trigger
* * `logging.0.resource_ids` - Resource ID filter setting for Yandex Cloud Functions Trigger
* * `logging.0.resource_types` - Resource type filter setting for Yandex Cloud Functions Trigger
* * `logging.0.levels` - Logging level filter setting for Yandex Cloud Functions Trigger
* * `logging.0.batch_cutoff` - Batch Duration in seconds for Yandex Cloud Functions Trigger
* * `logging.0.batch_size` - Batch Size for Yandex Cloud Functions Trigger
*/
logging?: pulumi.Input<inputs.FunctionTriggerLogging>;
/**
* [Message Queue](https://cloud.yandex.com/docs/functions/concepts/trigger/ymq-trigger) settings definition for Yandex Cloud Functions Trigger, if present
* * `message_queue.0.queue_id` - Message Queue ID for Yandex Cloud Functions Trigger
* * `message_queue.0.service_account_id` - Message Queue Service Account ID for Yandex Cloud Functions Trigger
* * `message_queue.0.batch_cutoff` - Batch Duration in seconds for Yandex Cloud Functions Trigger
* * `message_queue.0.batch_size` - Batch Size for Yandex Cloud Functions Trigger
* * `message_queue.0.visibility_timeout` - Visibility timeout for Yandex Cloud Functions Trigger
*/
messageQueue?: pulumi.Input<inputs.FunctionTriggerMessageQueue>;
/**
* Yandex Cloud Functions Trigger name used to define trigger
*/
name?: pulumi.Input<string>;
/**
* [Object Storage](https://cloud.yandex.com/docs/functions/concepts/trigger/os-trigger) settings definition for Yandex Cloud Functions Trigger, if present
* * `object_storage.0.bucket_id` - Object Storage Bucket ID for Yandex Cloud Functions Trigger
* * `object_storage.0.prefix` - Prefix for Object Storage for Yandex Cloud Functions Trigger
* * `object_storage.0.suffix` - Suffix for Object Storage for Yandex Cloud Functions Trigger
* * `object_storage.0.create` - Boolean flag for setting create event for Yandex Cloud Functions Trigger
* * `object_storage.0.update` - Boolean flag for setting update event for Yandex Cloud Functions Trigger
* * `object_storage.0.delete` - Boolean flag for setting delete event for Yandex Cloud Functions Trigger
*/
objectStorage?: pulumi.Input<inputs.FunctionTriggerObjectStorage>;
/**
* [Timer](https://cloud.yandex.com/docs/functions/concepts/trigger/timer) settings definition for Yandex Cloud Functions Trigger, if present
* * `timer.0.cron_expression` - Cron expression for timer for Yandex Cloud Functions Trigger
*/
timer?: pulumi.Input<inputs.FunctionTriggerTimer>;
}