Amplify Toolbox
    Preparing search index...

    Interface PipelineSourceConfig

    Configuration for the pipeline source (GitHub/CodeConnections).

    Uses AWS CodeConnections (formerly CodeStar Connections) for OAuth-based access to GitHub repositories. No token management required — the connection is created once via the AWS Console.

    interface PipelineSourceConfig {
        connectionArn: string | ConfigValue;
        repo: string;
        triggerFilters?: string[];
        triggerOnPush?: boolean;
    }
    Index

    Properties

    connectionArn: string | ConfigValue

    ARN of the AWS CodeConnections connection.

    Important: This connection requires a one-time OAuth handshake via the AWS Console before it can be used. After creating the connection resource (via CDK, CLI, or Console), you must complete the OAuth flow in the Console under Developer Tools → Connections — the connection will be in PENDING status until authorized.

    Steps:

    1. Create the connection (Console or CLI)
    2. Navigate to Developer Tools → Connections in the AWS Console
    3. Select the pending connection and click "Update pending connection"
    4. Authorize the GitHub app and select your repository/organization
    5. The status changes to AVAILABLE — the pipeline can now pull source
    'arn:aws:codeconnections:us-east-1:123456789:connection/abc-def'

    Accepts a `config('CONNECTION_ARN')` marker (SSM) to keep the ARN out of
    source. It is resolved at **synth time** and inlined as a literal into the
    template (the CodePipeline service needs a literal ARN), so this requires the
    async `await Pipeline.create(...)` path. A `secret()` is intentionally **not**
    accepted here: a synth-inlined value lands in the template, which would defeat
    the point of a secretand a connection ARN is a reference, not a credential.
    repo: string

    Repository in owner/repo format.

    'my-org/my-app'
    
    triggerFilters?: string[]

    Path-based trigger filters for monorepo support.

    When specified, the pipeline only triggers on pushes that modify files matching these path patterns. Useful for monorepos where multiple pipelines share a single repository.

    ['packages/backend/**', 'shared/**']
    
    triggerOnPush?: boolean

    Whether to trigger the pipeline on push to the branch.

    true