@pulumiverse/scaleway
Version:
A Pulumi package for creating and managing Scaleway cloud resources.
310 lines • 10.9 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Creates and manages a Scaleway Serverless Job Definition. For more information, see the [Go API documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/jobs/v1alpha1).
*
* ## Example Usage
*
* ### Basic
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scaleway from "@pulumiverse/scaleway";
*
* const main = new scaleway.job.Definition("main", {
* name: "testjob",
* cpuLimit: 140,
* memoryLimit: 256,
* imageUri: "docker.io/alpine:latest",
* command: "ls",
* timeout: "10m",
* env: {
* foo: "bar",
* },
* cron: {
* schedule: "5 4 1 * *",
* timezone: "Europe/Paris",
* },
* });
* ```
*
* ### With Secret Reference
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scaleway from "@pulumiverse/scaleway";
*
* const main = new scaleway.job.Definition("main", {
* name: "testjob",
* cpuLimit: 140,
* memoryLimit: 256,
* imageUri: "docker.io/alpine:latest",
* command: "ls",
* timeout: "10m",
* cron: {
* schedule: "5 4 1 * *",
* timezone: "Europe/Paris",
* },
* secretReferences: [
* {
* secretId: "11111111-1111-1111-1111-111111111111",
* file: "/home/dev/secret_file",
* },
* {
* secretId: jobSecret.id,
* secretVersion: "1",
* environment: "FOO",
* },
* ],
* });
* ```
*
* ## Import
*
* Serverless Jobs can be imported using the `{region}/{id}`, e.g.
*
* ```sh
* $ pulumi import scaleway:job/definition:Definition job fr-par/11111111-1111-1111-1111-111111111111
* ```
*/
export declare class Definition extends pulumi.CustomResource {
/**
* Get an existing Definition 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?: DefinitionState, opts?: pulumi.CustomResourceOptions): Definition;
/**
* Returns true if the given object is an instance of Definition. 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 Definition;
/**
* The arguments that will be passed to the startup command at runtime (in list of string format). Overrides the default arguments defined in the job image. Environment variables and secrets can be included, and will be expanded before the arguments are used.
*/
readonly args: pulumi.Output<string[] | undefined>;
/**
* The command that will be run in the container if specified.
*
* @deprecated Please use startupCommand instead
*/
readonly command: pulumi.Output<string | undefined>;
/**
* The amount of vCPU computing resources to allocate to each container running the job.
*/
readonly cpuLimit: pulumi.Output<number>;
/**
* The cron configuration
*/
readonly cron: pulumi.Output<outputs.job.DefinitionCron | undefined>;
/**
* The description of the job
*/
readonly description: pulumi.Output<string | undefined>;
/**
* The environment variables of the container.
*/
readonly env: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The uri of the container image that will be used for the job run.
*/
readonly imageUri: pulumi.Output<string>;
/**
* The local storage capacity of the job in MiB.
*/
readonly localStorageCapacity: pulumi.Output<number>;
/**
* The memory computing resources in MB to allocate to each container running the job.
*/
readonly memoryLimit: pulumi.Output<number>;
/**
* The name of the job.
*/
readonly name: pulumi.Output<string>;
/**
* `projectId`) The ID of the project the Job is associated with.
*/
readonly projectId: pulumi.Output<string>;
/**
* `region`) The region of the Job.
*/
readonly region: pulumi.Output<string | undefined>;
/**
* Defines a retry policy for the job.
*/
readonly retryPolicy: pulumi.Output<outputs.job.DefinitionRetryPolicy | undefined>;
/**
* A reference to a secret stored in Secret Manager.
*/
readonly secretReferences: pulumi.Output<outputs.job.DefinitionSecretReference[] | undefined>;
/**
* The command (main executable or entrypoint script) that will be run in the container (in list of string format). Overrides the default command defined in the job image.
*/
readonly startupCommands: pulumi.Output<string[] | undefined>;
/**
* The job run timeout, in Go Time format (ex: `2h30m25s`)
*/
readonly timeout: pulumi.Output<string>;
/**
* Create a Definition 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: DefinitionArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Definition resources.
*/
export interface DefinitionState {
/**
* The arguments that will be passed to the startup command at runtime (in list of string format). Overrides the default arguments defined in the job image. Environment variables and secrets can be included, and will be expanded before the arguments are used.
*/
args?: pulumi.Input<pulumi.Input<string>[] | undefined>;
/**
* The command that will be run in the container if specified.
*
* @deprecated Please use startupCommand instead
*/
command?: pulumi.Input<string | undefined>;
/**
* The amount of vCPU computing resources to allocate to each container running the job.
*/
cpuLimit?: pulumi.Input<number | undefined>;
/**
* The cron configuration
*/
cron?: pulumi.Input<inputs.job.DefinitionCron | undefined>;
/**
* The description of the job
*/
description?: pulumi.Input<string | undefined>;
/**
* The environment variables of the container.
*/
env?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
} | undefined>;
/**
* The uri of the container image that will be used for the job run.
*/
imageUri?: pulumi.Input<string | undefined>;
/**
* The local storage capacity of the job in MiB.
*/
localStorageCapacity?: pulumi.Input<number | undefined>;
/**
* The memory computing resources in MB to allocate to each container running the job.
*/
memoryLimit?: pulumi.Input<number | undefined>;
/**
* The name of the job.
*/
name?: pulumi.Input<string | undefined>;
/**
* `projectId`) The ID of the project the Job is associated with.
*/
projectId?: pulumi.Input<string | undefined>;
/**
* `region`) The region of the Job.
*/
region?: pulumi.Input<string | undefined>;
/**
* Defines a retry policy for the job.
*/
retryPolicy?: pulumi.Input<inputs.job.DefinitionRetryPolicy | undefined>;
/**
* A reference to a secret stored in Secret Manager.
*/
secretReferences?: pulumi.Input<pulumi.Input<inputs.job.DefinitionSecretReference>[] | undefined>;
/**
* The command (main executable or entrypoint script) that will be run in the container (in list of string format). Overrides the default command defined in the job image.
*/
startupCommands?: pulumi.Input<pulumi.Input<string>[] | undefined>;
/**
* The job run timeout, in Go Time format (ex: `2h30m25s`)
*/
timeout?: pulumi.Input<string | undefined>;
}
/**
* The set of arguments for constructing a Definition resource.
*/
export interface DefinitionArgs {
/**
* The arguments that will be passed to the startup command at runtime (in list of string format). Overrides the default arguments defined in the job image. Environment variables and secrets can be included, and will be expanded before the arguments are used.
*/
args?: pulumi.Input<pulumi.Input<string>[] | undefined>;
/**
* The command that will be run in the container if specified.
*
* @deprecated Please use startupCommand instead
*/
command?: pulumi.Input<string | undefined>;
/**
* The amount of vCPU computing resources to allocate to each container running the job.
*/
cpuLimit: pulumi.Input<number>;
/**
* The cron configuration
*/
cron?: pulumi.Input<inputs.job.DefinitionCron | undefined>;
/**
* The description of the job
*/
description?: pulumi.Input<string | undefined>;
/**
* The environment variables of the container.
*/
env?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
} | undefined>;
/**
* The uri of the container image that will be used for the job run.
*/
imageUri: pulumi.Input<string>;
/**
* The local storage capacity of the job in MiB.
*/
localStorageCapacity: pulumi.Input<number>;
/**
* The memory computing resources in MB to allocate to each container running the job.
*/
memoryLimit: pulumi.Input<number>;
/**
* The name of the job.
*/
name?: pulumi.Input<string | undefined>;
/**
* `projectId`) The ID of the project the Job is associated with.
*/
projectId?: pulumi.Input<string | undefined>;
/**
* `region`) The region of the Job.
*/
region?: pulumi.Input<string | undefined>;
/**
* Defines a retry policy for the job.
*/
retryPolicy?: pulumi.Input<inputs.job.DefinitionRetryPolicy | undefined>;
/**
* A reference to a secret stored in Secret Manager.
*/
secretReferences?: pulumi.Input<pulumi.Input<inputs.job.DefinitionSecretReference>[] | undefined>;
/**
* The command (main executable or entrypoint script) that will be run in the container (in list of string format). Overrides the default command defined in the job image.
*/
startupCommands?: pulumi.Input<pulumi.Input<string>[] | undefined>;
/**
* The job run timeout, in Go Time format (ex: `2h30m25s`)
*/
timeout?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=definition.d.ts.map