# coding=utf-8
# *** WARNING: this file was generated by pulumi-language-python. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import builtins as _builtins
import pulumi
from enum import Enum

__all__ = [
    'AuthPolicyDecision',
    'AuthPolicyPermissionLevel',
    'AuthPolicyTokenType',
    'CloudProvider',
    'EnvironmentPermission',
    'PulumiOperation',
    'RbacPermission',
    'ScanSchedule',
    'TargetActionType',
    'TeamStackPermissionScope',
    'WebhookFilters',
    'WebhookFormat',
    'WebhookGroup',
]


@pulumi.type_token("pulumiservice:index:AuthPolicyDecision")
class AuthPolicyDecision(_builtins.str, Enum):
    DENY = "deny"
    """
    A deny rule for Oidc Issuer Policy.
    """
    ALLOW = "allow"
    """
    An allow rule for Oidc Issuer Policy.
    """


@pulumi.type_token("pulumiservice:index:AuthPolicyPermissionLevel")
class AuthPolicyPermissionLevel(_builtins.str, Enum):
    STANDARD = "standard"
    """
    Standard level of permissions.
    """
    ADMIN = "admin"
    """
    Admin level of permissions.
    """


@pulumi.type_token("pulumiservice:index:AuthPolicyTokenType")
class AuthPolicyTokenType(_builtins.str, Enum):
    PERSONAL = "personal"
    """
    Personal Pulumi token. Requires userLogin field to be filled.
    """
    TEAM = "team"
    """
    Team Pulumi token. Requires teamName field to be filled.
    """
    ORGANIZATION = "organization"
    """
    Organization Pulumi token. Requires authorizedPermissions field to be filled.
    """
    RUNNER = "runner"
    """
    Deployment Runner Pulumi token. Requires runnerID field to be filled.
    """


@pulumi.type_token("pulumiservice:index:CloudProvider")
class CloudProvider(_builtins.str, Enum):
    AWS = "aws"
    """
    Amazon Web Services
    """
    AZURE_NATIVE = "azure-native"
    """
    Microsoft Azure
    """
    GCP = "gcp"
    """
    Google Cloud Platform
    """
    KUBERNETES = "kubernetes"
    """
    Kubernetes
    """
    OCI = "oci"
    """
    Oracle Cloud Infrastructure
    """


@pulumi.type_token("pulumiservice:index:EnvironmentPermission")
class EnvironmentPermission(_builtins.str, Enum):
    NONE = "none"
    """
    No permissions.
    """
    READ = "read"
    """
    Permission to read environment definition only.
    """
    OPEN = "open"
    """
    Permission to open and read the environment.
    """
    WRITE = "write"
    """
    Permission to open, read and update the environment.
    """
    ADMIN = "admin"
    """
    Permission for all operations on the environment.
    """


@pulumi.type_token("pulumiservice:index:PulumiOperation")
class PulumiOperation(_builtins.str, Enum):
    UPDATE = "update"
    """
    Analogous to `pulumi up` command.
    """
    PREVIEW = "preview"
    """
    Analogous to `pulumi preview` command.
    """
    REFRESH = "refresh"
    """
    Analogous to `pulumi refresh` command.
    """
    DESTROY = "destroy"
    """
    Analogous to `pulumi destroy` command.
    """


@pulumi.type_token("pulumiservice:index:RbacPermission")
class RbacPermission(_builtins.str, Enum):
    READ = "environment:read"
    """
    Read permission.
    """
    READ_DECRYPT = "environment:read_decrypt"
    """
    Read and decrypt permission.
    """
    OPEN = "environment:open"
    """
    Open permission.
    """
    WRITE = "environment:write"
    """
    Write permission.
    """
    DELETE = "environment:delete"
    """
    Delete permission.
    """
    CLONE = "environment:clone"
    """
    Clone permission.
    """
    ROTATE = "environment:rotate"
    """
    Rotate permission.
    """


@pulumi.type_token("pulumiservice:index:ScanSchedule")
class ScanSchedule(_builtins.str, Enum):
    NONE = "none"
    """
    Disable automated scanning.
    """
    DAILY = "daily"
    """
    Run automated scans once per day.
    """


@pulumi.type_token("pulumiservice:index:TargetActionType")
class TargetActionType(_builtins.str, Enum):
    UPDATE = "update"
    """
    Update action type for approval rules.
    """


@pulumi.type_token("pulumiservice:index:TeamStackPermissionScope")
class TeamStackPermissionScope(_builtins.float, Enum):
    READ = 101
    """
    Grants read permissions to stack.
    """
    EDIT = 102
    """
    Grants edit permissions to stack.
    """
    ADMIN = 103
    """
    Grants admin permissions to stack.
    """


@pulumi.type_token("pulumiservice:index:WebhookFilters")
class WebhookFilters(_builtins.str, Enum):
    STACK_CREATED = "stack_created"
    """
    Trigger a webhook when a stack is created. Only valid for org webhooks.
    """
    STACK_DELETED = "stack_deleted"
    """
    Trigger a webhook when a stack is deleted. Only valid for org webhooks.
    """
    UPDATE_SUCCEEDED = "update_succeeded"
    """
    Trigger a webhook when a stack update succeeds.
    """
    UPDATE_FAILED = "update_failed"
    """
    Trigger a webhook when a stack update fails.
    """
    PREVIEW_SUCCEEDED = "preview_succeeded"
    """
    Trigger a webhook when a stack preview succeeds.
    """
    PREVIEW_FAILED = "preview_failed"
    """
    Trigger a webhook when a stack preview fails.
    """
    DESTROY_SUCCEEDED = "destroy_succeeded"
    """
    Trigger a webhook when a stack destroy succeeds.
    """
    DESTROY_FAILED = "destroy_failed"
    """
    Trigger a webhook when a stack destroy fails.
    """
    REFRESH_SUCCEEDED = "refresh_succeeded"
    """
    Trigger a webhook when a stack refresh succeeds.
    """
    REFRESH_FAILED = "refresh_failed"
    """
    Trigger a webhook when a stack refresh fails.
    """
    DEPLOYMENT_QUEUED = "deployment_queued"
    """
    Trigger a webhook when a deployment is queued.
    """
    DEPLOYMENT_STARTED = "deployment_started"
    """
    Trigger a webhook when a deployment starts running.
    """
    DEPLOYMENT_SUCCEEDED = "deployment_succeeded"
    """
    Trigger a webhook when a deployment succeeds.
    """
    DEPLOYMENT_FAILED = "deployment_failed"
    """
    Trigger a webhook when a deployment fails.
    """
    DRIFT_DETECTED = "drift_detected"
    """
    Trigger a webhook when drift is detected.
    """
    DRIFT_DETECTION_SUCCEEDED = "drift_detection_succeeded"
    """
    Trigger a webhook when a drift detection run succeeds, regardless of whether drift is detected.
    """
    DRIFT_DETECTION_FAILED = "drift_detection_failed"
    """
    Trigger a webhook when a drift detection run fails.
    """
    DRIFT_REMEDIATION_SUCCEEDED = "drift_remediation_succeeded"
    """
    Trigger a webhook when a drift remediation run succeeds.
    """
    DRIFT_REMEDIATION_FAILED = "drift_remediation_failed"
    """
    Trigger a webhook when a drift remediation run fails.
    """
    ENVIRONMENT_CREATED = "environment_created"
    """
    Trigger a webhook when a new environment is created.
    """
    ENVIRONMENT_DELETED = "environment_deleted"
    """
    Trigger a webhook when an environment is deleted.
    """
    ENVIRONMENT_REVISION_CREATED = "environment_revision_created"
    """
    Trigger a webhook when a new revision is created on an environment.
    """
    ENVIRONMENT_REVISION_RETRACTED = "environment_revision_retracted"
    """
    Trigger a webhook when a revision is retracted on an environment.
    """
    ENVIRONMENT_REVISION_TAG_CREATED = "environment_revision_tag_created"
    """
    Trigger a webhook when a revision tag is created on an environment.
    """
    ENVIRONMENT_REVISION_TAG_DELETED = "environment_revision_tag_deleted"
    """
    Trigger a webhook when a revision tag is deleted on an environment.
    """
    ENVIRONMENT_REVISION_TAG_UPDATED = "environment_revision_tag_updated"
    """
    Trigger a webhook when a revision tag is updated on an environment.
    """
    ENVIRONMENT_TAG_CREATED = "environment_tag_created"
    """
    Trigger a webhook when an environment tag is created.
    """
    ENVIRONMENT_TAG_DELETED = "environment_tag_deleted"
    """
    Trigger a webhook when an environment tag is deleted.
    """
    ENVIRONMENT_TAG_UPDATED = "environment_tag_updated"
    """
    Trigger a webhook when an environment tag is updated.
    """
    IMPORTED_ENVIRONMENT_CHANGED = "imported_environment_changed"
    """
    Trigger a webhook when an imported environment has changed.
    """


@pulumi.type_token("pulumiservice:index:WebhookFormat")
class WebhookFormat(_builtins.str, Enum):
    RAW = "raw"
    """
    The default webhook format.
    """
    SLACK = "slack"
    """
    Messages formatted for consumption by Slack incoming webhooks.
    """
    PULUMI_DEPLOYMENTS = "pulumi_deployments"
    """
    Initiate deployments on a stack from a Pulumi Cloud webhook.
    """
    MICROSOFT_TEAMS = "ms_teams"
    """
    Messages formatted for consumption by Microsoft Teams incoming webhooks.
    """


@pulumi.type_token("pulumiservice:index:WebhookGroup")
class WebhookGroup(_builtins.str, Enum):
    STACKS = "stacks"
    """
    A group of webhooks containing all stack events.
    """
    DEPLOYMENTS = "deployments"
    """
    A group of webhooks containing all deployment events.
    """
    ENVIRONMENTS = "environments"
    """
    A group of webhooks containing all environment events.
    """
