@pulumiverse/scaleway
Version:
A Pulumi package for creating and managing Scaleway cloud resources.
276 lines • 10.2 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* The `scaleway.containers.Container` data source is used to retrieve information about a Serverless Container.
*
* Refer to the Serverless Containers [product documentation](https://www.scaleway.com/en/docs/serverless/containers/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-containers/) for more information.
*
* For more information on the limitations of Serverless Containers, refer to the [dedicated documentation](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/).
*
* ## Retrieve a Serverless Container
*
* The following commands allow you to:
*
* - retrieve a container by its name
* - retrieve a container by its ID
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scaleway from "@pulumiverse/scaleway";
*
* const main = new scaleway.containers.Namespace("main", {});
* const mainContainer = new scaleway.containers.Container("main", {
* name: "test-container-data",
* namespaceId: main.id,
* });
* // Get info by container name
* const byName = scaleway.containers.getContainerOutput({
* namespaceId: main.id,
* name: mainContainer.name,
* });
* // Get info by container ID
* const byId = scaleway.containers.getContainerOutput({
* namespaceId: main.id,
* containerId: mainContainer.id,
* });
* ```
*
* ## Arguments reference
*
* This section lists the arguments that you can provide to the `scaleway.containers.Container` data source to filter and retrieve the desired namespace. Each argument has a specific purpose:
*
* - `name` - (Required) The unique name of the container.
*
* - `namespaceId` - (Required) The container namespace ID of the container.
*
* - `projectId` - (Optional) The unique identifier of the project with which the container is associated.
*
* > **Important** Updating the `name` argument will recreate the container.
*/
export declare function getContainer(args: GetContainerArgs, opts?: pulumi.InvokeOptions): Promise<GetContainerResult>;
/**
* A collection of arguments for invoking getContainer.
*/
export interface GetContainerArgs {
containerId?: string;
name?: string;
namespaceId: string;
projectId?: string;
/**
* (Defaults to provider `region`) The region in which the container was created.
*/
region?: string;
}
/**
* A collection of values returned by getContainer.
*/
export interface GetContainerResult {
/**
* Arguments passed to the command specified in the "command" field. These override the default arguments from the container image, and behave like command-line parameters.
*/
readonly args: string[];
/**
* Command executed when the container starts. This overrides the default command defined in the container image. This is usually the main executable, or entry point script to run.
*/
readonly commands: string[];
readonly containerId?: string;
/**
* The amount of vCPU computing resources to allocate to each container.
*/
readonly cpuLimit: number;
/**
* The cron status of the container.
*/
readonly cronStatus: string;
readonly deploy: boolean;
/**
* The description of the container.
*/
readonly description: string;
/**
* The native domain name of the container
*/
readonly domainName: string;
/**
* The [environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#environment-variables) of the container.
*/
readonly environmentVariables: {
[key: string]: string;
};
/**
* The error message of the container.
*/
readonly errorMessage: string;
/**
* (Deprecated) Health check configuration block of the container.
*/
readonly healthChecks: outputs.containers.GetContainerHealthCheck[];
/**
* (Deprecated) Allows both HTTP and HTTPS (`enabled`) or redirect HTTP to HTTPS (`redirected`). Defaults to `enabled`.
*/
readonly httpOption: string;
/**
* Allows both HTTP and HTTPS (`false`) or redirect HTTP to HTTPS (`true`). Defaults to `false`.
*/
readonly httpsConnectionsOnly: boolean;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* The image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
*/
readonly image: string;
/**
* Defines how to check if the container is running.
*/
readonly livenessProbes: outputs.containers.GetContainerLivenessProbe[];
/**
* (Deprecated) Local storage limit of the container (in MB)
*/
readonly localStorageLimit: number;
/**
* Local storage limit of the container (in bytes).
*/
readonly localStorageLimitBytes: number;
/**
* The maximum number of instances this container can scale to.
*/
readonly maxScale: number;
/**
* (Deprecated) The memory resources in MB to allocate to each container.
*/
readonly memoryLimit: number;
/**
* The memory resources in bytes to allocate to each container.
*/
readonly memoryLimitBytes: number;
/**
* The minimum number of container instances running continuously.
*/
readonly minScale: number;
readonly name?: string;
readonly namespaceId: string;
/**
* The port to expose the container.
*/
readonly port: number;
/**
* The privacy type defines the way to authenticate to your container. Please check our dedicated [section](https://www.scaleway.com/en/developers/api/serverless-containers/#protocol-9dd4c8).
*/
readonly privacy: string;
/**
* The ID of the Private Network the container is connected to.
*/
readonly privateNetworkId: string;
readonly projectId?: string;
/**
* The communication [protocol](https://www.scaleway.com/en/developers/api/serverless-containers/#path-containers-update-an-existing-container) `http1` or `h2c`. Defaults to `http1`.
*/
readonly protocol: string;
/**
* The native domain name of the container
*/
readonly publicEndpoint: string;
/**
* (Defaults to provider `region`) The region in which the container was created.
*/
readonly region?: string;
/**
* (Deprecated) The registry image address (e.g., `rg.fr-par.scw.cloud/$NAMESPACE/$IMAGE`)
*/
readonly registryImage: string;
readonly registrySha256: string;
/**
* Execution environment of the container.
*/
readonly sandbox: string;
/**
* Configuration block used to decide when to scale up or down. Possible values:
*/
readonly scalingOptions: outputs.containers.GetContainerScalingOption[];
/**
* The [secret environment variables](https://www.scaleway.com/en/docs/serverless-containers/concepts/#secrets) of the container.
*/
readonly secretEnvironmentVariables: {
[key: string]: string;
};
/**
* Defines how to check if the container has started successfully.
*/
readonly startupProbes: outputs.containers.GetContainerStartupProbe[];
/**
* The container status.
*/
readonly status: string;
/**
* The list of tags associated with the container.
*/
readonly tags: string[];
/**
* The maximum amount of time in seconds your container can spend processing a request before being stopped. Default to `300` seconds.
*/
readonly timeout: number;
}
/**
* The `scaleway.containers.Container` data source is used to retrieve information about a Serverless Container.
*
* Refer to the Serverless Containers [product documentation](https://www.scaleway.com/en/docs/serverless/containers/) and [API documentation](https://www.scaleway.com/en/developers/api/serverless-containers/) for more information.
*
* For more information on the limitations of Serverless Containers, refer to the [dedicated documentation](https://www.scaleway.com/en/docs/serverless-containers/reference-content/containers-limitations/).
*
* ## Retrieve a Serverless Container
*
* The following commands allow you to:
*
* - retrieve a container by its name
* - retrieve a container by its ID
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scaleway from "@pulumiverse/scaleway";
*
* const main = new scaleway.containers.Namespace("main", {});
* const mainContainer = new scaleway.containers.Container("main", {
* name: "test-container-data",
* namespaceId: main.id,
* });
* // Get info by container name
* const byName = scaleway.containers.getContainerOutput({
* namespaceId: main.id,
* name: mainContainer.name,
* });
* // Get info by container ID
* const byId = scaleway.containers.getContainerOutput({
* namespaceId: main.id,
* containerId: mainContainer.id,
* });
* ```
*
* ## Arguments reference
*
* This section lists the arguments that you can provide to the `scaleway.containers.Container` data source to filter and retrieve the desired namespace. Each argument has a specific purpose:
*
* - `name` - (Required) The unique name of the container.
*
* - `namespaceId` - (Required) The container namespace ID of the container.
*
* - `projectId` - (Optional) The unique identifier of the project with which the container is associated.
*
* > **Important** Updating the `name` argument will recreate the container.
*/
export declare function getContainerOutput(args: GetContainerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetContainerResult>;
/**
* A collection of arguments for invoking getContainer.
*/
export interface GetContainerOutputArgs {
containerId?: pulumi.Input<string | undefined>;
name?: pulumi.Input<string | undefined>;
namespaceId: pulumi.Input<string>;
projectId?: pulumi.Input<string | undefined>;
/**
* (Defaults to provider `region`) The region in which the container was created.
*/
region?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getContainer.d.ts.map