UNPKG

@pulumi/pulumiservice

Version:
279 lines (278 loc) 8.74 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as enums from "../types/enums"; export interface AWSOIDCConfigurationArgs { /** * Duration of the assume-role session in “XhYmZs” format */ duration?: pulumi.Input<string>; /** * Optional set of IAM policy ARNs that further restrict the assume-role session */ policyARNs?: pulumi.Input<pulumi.Input<string>[]>; /** * The ARN of the role to assume using the OIDC token. */ roleARN: pulumi.Input<string>; /** * The name of the assume-role session. */ sessionName: pulumi.Input<string>; } export interface AuthPolicyDefinitionArgs { /** * The permission level for organization tokens. */ authorizedPermissions?: pulumi.Input<pulumi.Input<enums.AuthPolicyPermissionLevel>[]>; /** * The rule type of this policy definition */ decision: pulumi.Input<enums.AuthPolicyDecision>; /** * OIDC rules to set for this policy. */ rules: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The runner ID for deployment runner tokens. */ runnerID?: pulumi.Input<string>; /** * The team name for team tokens. */ teamName?: pulumi.Input<string>; /** * The token type for this policy definition */ tokenType: pulumi.Input<enums.AuthPolicyTokenType>; /** * The user login for personal tokens. */ userLogin?: pulumi.Input<string>; } export interface AzureOIDCConfigurationArgs { /** * The client ID of the federated workload identity. */ clientId: pulumi.Input<string>; /** * The subscription ID of the federated workload identity. */ subscriptionId: pulumi.Input<string>; /** * The tenant ID of the federated workload identity. */ tenantId: pulumi.Input<string>; } /** * Dependency cache settings for the deployment */ export interface DeploymentSettingsCacheOptionsArgs { /** * Enable dependency caching */ enable?: pulumi.Input<boolean>; } /** * deploymentSettingsCacheOptionsArgsProvideDefaults sets the appropriate defaults for DeploymentSettingsCacheOptionsArgs */ export declare function deploymentSettingsCacheOptionsArgsProvideDefaults(val: DeploymentSettingsCacheOptionsArgs): DeploymentSettingsCacheOptionsArgs; /** * The executor context defines information about the executor where the deployment is executed. If unspecified, the default 'pulumi/pulumi' image is used. */ export interface DeploymentSettingsExecutorContextArgs { /** * Allows overriding the default executor image with a custom image. E.g. 'pulumi/pulumi-nodejs:latest' */ executorImage: pulumi.Input<string>; } /** * Git source settings for a deployment. */ export interface DeploymentSettingsGitAuthBasicAuthArgs { /** * Password for git basic authentication. */ password: pulumi.Input<string>; /** * User name for git basic authentication. */ username: pulumi.Input<string>; } /** * Git source settings for a deployment. */ export interface DeploymentSettingsGitAuthSSHAuthArgs { /** * Optional password for SSH authentication. */ password?: pulumi.Input<string>; /** * SSH private key. */ sshPrivateKey: pulumi.Input<string>; } /** * Git source settings for a deployment. */ export interface DeploymentSettingsGitSourceArgs { /** * The branch to deploy. One of either `branch` or `commit` must be specified. */ branch?: pulumi.Input<string>; /** * The commit to deploy. One of either `branch` or `commit` must be specified. */ commit?: pulumi.Input<string>; /** * Git authentication configuration for this deployment. Should not be specified if there are `gitHub` settings for this deployment. */ gitAuth?: pulumi.Input<inputs.DeploymentSettingsGitSourceGitAuthArgs>; /** * The directory within the repository where the Pulumi.yaml is located. */ repoDir?: pulumi.Input<string>; /** * The repository URL to use for git settings. Should not be specified if there are `gitHub` settings for this deployment. */ repoUrl?: pulumi.Input<string>; } /** * Git source settings for a deployment. */ export interface DeploymentSettingsGitSourceGitAuthArgs { /** * Basic auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined. */ basicAuth?: pulumi.Input<inputs.DeploymentSettingsGitAuthBasicAuthArgs>; /** * SSH auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined. */ sshAuth?: pulumi.Input<inputs.DeploymentSettingsGitAuthSSHAuthArgs>; } /** * GitHub settings for the deployment. */ export interface DeploymentSettingsGithubArgs { /** * Trigger a deployment running `pulumi up` on commit. */ deployCommits?: pulumi.Input<boolean>; /** * The paths within the repo that deployments should be filtered to. */ paths?: pulumi.Input<pulumi.Input<string>[]>; /** * Trigger a deployment running `pulumi preview` when a PR is opened. */ previewPullRequests?: pulumi.Input<boolean>; /** * Use this stack as a template for pull request review stacks. */ pullRequestTemplate?: pulumi.Input<boolean>; /** * The GitHub repository in the format org/repo. */ repository?: pulumi.Input<string>; } /** * deploymentSettingsGithubArgsProvideDefaults sets the appropriate defaults for DeploymentSettingsGithubArgs */ export declare function deploymentSettingsGithubArgsProvideDefaults(val: DeploymentSettingsGithubArgs): DeploymentSettingsGithubArgs; /** * Settings related to the Pulumi operation environment during the deployment. */ export interface DeploymentSettingsOperationContextArgs { /** * Environment variables to set for the deployment. */ environmentVariables?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * OIDC configuration to use during the deployment. */ oidc?: pulumi.Input<inputs.OperationContextOIDCArgs>; /** * Options to override default behavior during the deployment. */ options?: pulumi.Input<inputs.OperationContextOptionsArgs>; /** * Shell commands to run before the Pulumi operation executes. */ preRunCommands?: pulumi.Input<pulumi.Input<string>[]>; } /** * Settings related to the source of the deployment. */ export interface DeploymentSettingsSourceContextArgs { /** * Git source settings for a deployment. */ git?: pulumi.Input<inputs.DeploymentSettingsGitSourceArgs>; } export interface GCPOIDCConfigurationArgs { /** * The numerical ID of the GCP project. */ projectId: pulumi.Input<string>; /** * The ID of the identity provider associated with the workload pool. */ providerId: pulumi.Input<string>; /** * The region of the GCP project. */ region?: pulumi.Input<string>; /** * The email address of the service account to use. */ serviceAccount: pulumi.Input<string>; /** * The lifetime of the temporary credentials in “XhYmZs” format. */ tokenLifetime?: pulumi.Input<string>; /** * The ID of the workload pool to use. */ workloadPoolId: pulumi.Input<string>; } export interface OperationContextOIDCArgs { /** * AWS-specific OIDC configuration. */ aws?: pulumi.Input<inputs.AWSOIDCConfigurationArgs>; /** * Azure-specific OIDC configuration. */ azure?: pulumi.Input<inputs.AzureOIDCConfigurationArgs>; /** * GCP-specific OIDC configuration. */ gcp?: pulumi.Input<inputs.GCPOIDCConfigurationArgs>; } export interface OperationContextOptionsArgs { /** * Whether the stack should be deleted after it is destroyed. */ deleteAfterDestroy?: pulumi.Input<boolean>; /** * The shell to use to run commands during the deployment. Defaults to 'bash'. */ shell?: pulumi.Input<string>; /** * Skip the default dependency installation step - use this to customize the dependency installation (e.g. if using yarn or poetry) */ skipInstallDependencies?: pulumi.Input<boolean>; /** * Skip intermediate deployments (Consolidate multiple deployments of the same type into one deployment) */ skipIntermediateDeployments?: pulumi.Input<boolean>; } export interface TemplateSourceDestinationArgs { /** * Destination URL that gets filled in on new project creation. */ url?: pulumi.Input<string>; }