Class PDKPipelineTsProjectOptions.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • appEntrypoint

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder appEntrypoint​(String appEntrypoint)
        Sets the value of AwsCdkTypeScriptAppOptions.getAppEntrypoint()
        Parameters:
        appEntrypoint - The CDK app's entrypoint (relative to the source directory, which is "src" by default).
        Returns:
        this
      • edgeLambdaAutoDiscover

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder edgeLambdaAutoDiscover​(Boolean edgeLambdaAutoDiscover)
        Sets the value of AwsCdkTypeScriptAppOptions.getEdgeLambdaAutoDiscover()
        Parameters:
        edgeLambdaAutoDiscover - Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.
        Returns:
        this
      • integrationTestAutoDiscover

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder integrationTestAutoDiscover​(Boolean integrationTestAutoDiscover)
        Sets the value of AwsCdkTypeScriptAppOptions.getIntegrationTestAutoDiscover()
        Parameters:
        integrationTestAutoDiscover - Automatically discovers and creates integration tests for each `.integ.ts` file in under your test directory.
        Returns:
        this
      • lambdaAutoDiscover

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder lambdaAutoDiscover​(Boolean lambdaAutoDiscover)
        Sets the value of AwsCdkTypeScriptAppOptions.getLambdaAutoDiscover()
        Parameters:
        lambdaAutoDiscover - Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.
        Returns:
        this
      • lambdaExtensionAutoDiscover

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder lambdaExtensionAutoDiscover​(Boolean lambdaExtensionAutoDiscover)
        Sets the value of AwsCdkTypeScriptAppOptions.getLambdaExtensionAutoDiscover()
        Parameters:
        lambdaExtensionAutoDiscover - Automatically adds an `awscdk.LambdaExtension` for each `.lambda-extension.ts` entrypoint in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.
        Returns:
        this
      • lambdaOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder lambdaOptions​(io.github.cdklabs.projen.awscdk.LambdaFunctionCommonOptions lambdaOptions)
        Sets the value of AwsCdkTypeScriptAppOptions.getLambdaOptions()
        Parameters:
        lambdaOptions - Common options for all AWS Lambda functions.
        Returns:
        this
      • disableTsconfig

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder disableTsconfig​(Boolean disableTsconfig)
        Sets the value of TypeScriptProjectOptions.getDisableTsconfig()
        Parameters:
        disableTsconfig - Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).
        Returns:
        this
      • docgen

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder docgen​(Boolean docgen)
        Sets the value of TypeScriptProjectOptions.getDocgen()
        Parameters:
        docgen - Docgen by Typedoc.
        Returns:
        this
      • docsDirectory

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder docsDirectory​(String docsDirectory)
        Sets the value of TypeScriptProjectOptions.getDocsDirectory()
        Parameters:
        docsDirectory - Docs directory.
        Returns:
        this
      • entrypointTypes

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder entrypointTypes​(String entrypointTypes)
        Sets the value of TypeScriptProjectOptions.getEntrypointTypes()
        Parameters:
        entrypointTypes - The .d.ts file that includes the type declarations for this module.
        Returns:
        this
      • eslintOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder eslintOptions​(io.github.cdklabs.projen.javascript.EslintOptions eslintOptions)
        Sets the value of TypeScriptProjectOptions.getEslintOptions()
        Parameters:
        eslintOptions - Eslint options.
        Returns:
        this
      • libdir

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder libdir​(String libdir)
        Sets the value of TypeScriptProjectOptions.getLibdir()
        Parameters:
        libdir - Typescript artifacts output directory.
        Returns:
        this
      • projenrcTs

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenrcTs​(Boolean projenrcTs)
        Sets the value of TypeScriptProjectOptions.getProjenrcTs()
        Parameters:
        projenrcTs - Use TypeScript for your projenrc file (`.projenrc.ts`).
        Returns:
        this
      • projenrcTsOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenrcTsOptions​(io.github.cdklabs.projen.typescript.ProjenrcOptions projenrcTsOptions)
        Sets the value of TypeScriptProjectOptions.getProjenrcTsOptions()
        Parameters:
        projenrcTsOptions - Options for .projenrc.ts.
        Returns:
        this
      • sampleCode

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder sampleCode​(Boolean sampleCode)
        Sets the value of TypeScriptProjectOptions.getSampleCode()
        Parameters:
        sampleCode - Generate one-time sample in `src/` and `test/` if there are no files there.
        Returns:
        this
      • srcdir

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder srcdir​(String srcdir)
        Sets the value of TypeScriptProjectOptions.getSrcdir()
        Parameters:
        srcdir - Typescript sources directory.
        Returns:
        this
      • testdir

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder testdir​(String testdir)
        Sets the value of TypeScriptProjectOptions.getTestdir()
        Parameters:
        testdir - Jest tests directory. Tests files should be named `xxx.test.ts`. If this directory is under srcdir (e.g. src/test, src/__tests__), then tests are going to be compiled into lib/ and executed as javascript. If the test directory is outside of src, then we configure jest to compile the code in-memory.
        Returns:
        this
      • tsconfig

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder tsconfig​(io.github.cdklabs.projen.javascript.TypescriptConfigOptions tsconfig)
        Sets the value of TypeScriptProjectOptions.getTsconfig()
        Parameters:
        tsconfig - Custom TSConfig.
        Returns:
        this
      • tsconfigDev

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder tsconfigDev​(io.github.cdklabs.projen.javascript.TypescriptConfigOptions tsconfigDev)
        Sets the value of TypeScriptProjectOptions.getTsconfigDev()
        Parameters:
        tsconfigDev - Custom tsconfig options for the development tsconfig.json file (used for testing).
        Returns:
        this
      • tsconfigDevFile

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder tsconfigDevFile​(String tsconfigDevFile)
        Sets the value of TypeScriptProjectOptions.getTsconfigDevFile()
        Parameters:
        tsconfigDevFile - The name of the development tsconfig.json file.
        Returns:
        this
      • typescriptVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder typescriptVersion​(String typescriptVersion)
        Sets the value of TypeScriptProjectOptions.getTypescriptVersion()
        Parameters:
        typescriptVersion - TypeScript version to use. NOTE: Typescript is not semantically versioned and should remain on the same minor, so we recommend using a ~ dependency (e.g. ~1.2.3).
        Returns:
        this
      • defaultReleaseBranch

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder defaultReleaseBranch​(String defaultReleaseBranch)
        Sets the value of NodeProjectOptions.getDefaultReleaseBranch()
        Parameters:
        defaultReleaseBranch - The name of the main release branch. This parameter is required.
        Returns:
        this
      • artifactsDirectory

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder artifactsDirectory​(String artifactsDirectory)
        Sets the value of NodeProjectOptions.getArtifactsDirectory()
        Parameters:
        artifactsDirectory - A directory which will contain build artifacts.
        Returns:
        this
      • autoApproveUpgrades

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder autoApproveUpgrades​(Boolean autoApproveUpgrades)
        Sets the value of NodeProjectOptions.getAutoApproveUpgrades()
        Parameters:
        autoApproveUpgrades - Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). Throw if set to true but autoApproveOptions are not defined.
        Returns:
        this
      • buildWorkflow

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder buildWorkflow​(Boolean buildWorkflow)
        Sets the value of NodeProjectOptions.getBuildWorkflow()
        Parameters:
        buildWorkflow - Define a GitHub workflow for building PRs.
        Returns:
        this
      • buildWorkflowTriggers

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder buildWorkflowTriggers​(io.github.cdklabs.projen.github.workflows.Triggers buildWorkflowTriggers)
        Sets the value of NodeProjectOptions.getBuildWorkflowTriggers()
        Parameters:
        buildWorkflowTriggers - Build workflow triggers.
        Returns:
        this
      • bundlerOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder bundlerOptions​(io.github.cdklabs.projen.javascript.BundlerOptions bundlerOptions)
        Sets the value of NodeProjectOptions.getBundlerOptions()
        Parameters:
        bundlerOptions - Options for `Bundler`.
        Returns:
        this
      • codeCov

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder codeCov​(Boolean codeCov)
        Sets the value of NodeProjectOptions.getCodeCov()
        Parameters:
        codeCov - Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with @codeCovTokenSecret.
        Returns:
        this
      • codeCovTokenSecret

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder codeCovTokenSecret​(String codeCovTokenSecret)
        Sets the value of NodeProjectOptions.getCodeCovTokenSecret()
        Parameters:
        codeCovTokenSecret - Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.
        Returns:
        this
      • copyrightOwner

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder copyrightOwner​(String copyrightOwner)
        Sets the value of NodeProjectOptions.getCopyrightOwner()
        Parameters:
        copyrightOwner - License copyright owner.
        Returns:
        this
      • copyrightPeriod

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder copyrightPeriod​(String copyrightPeriod)
        Sets the value of NodeProjectOptions.getCopyrightPeriod()
        Parameters:
        copyrightPeriod - The copyright years to put in the LICENSE file.
        Returns:
        this
      • dependabot

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder dependabot​(Boolean dependabot)
        Sets the value of NodeProjectOptions.getDependabot()
        Parameters:
        dependabot - Use dependabot to handle dependency upgrades. Cannot be used in conjunction with depsUpgrade.
        Returns:
        this
      • dependabotOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder dependabotOptions​(io.github.cdklabs.projen.github.DependabotOptions dependabotOptions)
        Sets the value of NodeProjectOptions.getDependabotOptions()
        Parameters:
        dependabotOptions - Options for dependabot.
        Returns:
        this
      • depsUpgrade

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder depsUpgrade​(Boolean depsUpgrade)
        Sets the value of NodeProjectOptions.getDepsUpgrade()
        Parameters:
        depsUpgrade - Use github workflows to handle dependency upgrades. Cannot be used in conjunction with dependabot.
        Returns:
        this
      • depsUpgradeOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder depsUpgradeOptions​(io.github.cdklabs.projen.javascript.UpgradeDependenciesOptions depsUpgradeOptions)
        Sets the value of NodeProjectOptions.getDepsUpgradeOptions()
        Parameters:
        depsUpgradeOptions - Options for `UpgradeDependencies`.
        Returns:
        this
      • gitignore

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder gitignore​(List<String> gitignore)
        Sets the value of NodeProjectOptions.getGitignore()
        Parameters:
        gitignore - Additional entries to .gitignore.
        Returns:
        this
      • jestOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder jestOptions​(io.github.cdklabs.projen.javascript.JestOptions jestOptions)
        Sets the value of NodeProjectOptions.getJestOptions()
        Parameters:
        jestOptions - Jest options.
        Returns:
        this
      • mutableBuild

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder mutableBuild​(Boolean mutableBuild)
        Sets the value of NodeProjectOptions.getMutableBuild()
        Parameters:
        mutableBuild - Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged.

        Implies that PR builds do not have anti-tamper checks.

        Returns:
        this
      • npmignore

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder npmignore​(List<String> npmignore)
        Deprecated.
        - use `project.addPackageIgnore`
        Sets the value of NodeProjectOptions.getNpmignore()
        Parameters:
        npmignore - Additional entries to .npmignore.
        Returns:
        this
      • npmignoreEnabled

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder npmignoreEnabled​(Boolean npmignoreEnabled)
        Sets the value of NodeProjectOptions.getNpmignoreEnabled()
        Parameters:
        npmignoreEnabled - Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.
        Returns:
        this
      • packageValue

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder packageValue​(Boolean packageValue)
        Sets the value of NodeProjectOptions.getPackageValue()
        Parameters:
        packageValue - Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).
        Returns:
        this
      • prettier

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder prettier​(Boolean prettier)
        Sets the value of NodeProjectOptions.getPrettier()
        Parameters:
        prettier - Setup prettier.
        Returns:
        this
      • prettierOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder prettierOptions​(io.github.cdklabs.projen.javascript.PrettierOptions prettierOptions)
        Sets the value of NodeProjectOptions.getPrettierOptions()
        Parameters:
        prettierOptions - Prettier options.
        Returns:
        this
      • projenDevDependency

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenDevDependency​(Boolean projenDevDependency)
        Sets the value of NodeProjectOptions.getProjenDevDependency()
        Parameters:
        projenDevDependency - Indicates of "projen" should be installed as a devDependency.
        Returns:
        this
      • projenrcJs

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenrcJs​(Boolean projenrcJs)
        Sets the value of NodeProjectOptions.getProjenrcJs()
        Parameters:
        projenrcJs - Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.
        Returns:
        this
      • projenrcJsOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenrcJsOptions​(io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions)
        Sets the value of NodeProjectOptions.getProjenrcJsOptions()
        Parameters:
        projenrcJsOptions - Options for .projenrc.js.
        Returns:
        this
      • projenVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenVersion​(String projenVersion)
        Sets the value of NodeProjectOptions.getProjenVersion()
        Parameters:
        projenVersion - Version of projen to install.
        Returns:
        this
      • pullRequestTemplate

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder pullRequestTemplate​(Boolean pullRequestTemplate)
        Sets the value of NodeProjectOptions.getPullRequestTemplate()
        Parameters:
        pullRequestTemplate - Include a GitHub pull request template.
        Returns:
        this
      • pullRequestTemplateContents

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder pullRequestTemplateContents​(List<String> pullRequestTemplateContents)
        Sets the value of NodeProjectOptions.getPullRequestTemplateContents()
        Parameters:
        pullRequestTemplateContents - The contents of the pull request template.
        Returns:
        this
      • release

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder release​(Boolean release)
        Sets the value of NodeProjectOptions.getRelease()
        Parameters:
        release - Add release management to this project.
        Returns:
        this
      • releaseToNpm

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseToNpm​(Boolean releaseToNpm)
        Sets the value of NodeProjectOptions.getReleaseToNpm()
        Parameters:
        releaseToNpm - Automatically release to npm when new versions are introduced.
        Returns:
        this
      • releaseWorkflow

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder releaseWorkflow​(Boolean releaseWorkflow)
        Deprecated.
        see `release`.
        Sets the value of NodeProjectOptions.getReleaseWorkflow()
        Parameters:
        releaseWorkflow - DEPRECATED: renamed to `release`.
        Returns:
        this
      • workflowBootstrapSteps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder workflowBootstrapSteps​(List<? extends io.github.cdklabs.projen.github.workflows.JobStep> workflowBootstrapSteps)
        Sets the value of NodeProjectOptions.getWorkflowBootstrapSteps()
        Parameters:
        workflowBootstrapSteps - Workflow steps to use in order to bootstrap this repo.
        Returns:
        this
      • workflowGitIdentity

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder workflowGitIdentity​(io.github.cdklabs.projen.github.GitIdentity workflowGitIdentity)
        Sets the value of NodeProjectOptions.getWorkflowGitIdentity()
        Parameters:
        workflowGitIdentity - The git identity to use in workflows.
        Returns:
        this
      • workflowNodeVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder workflowNodeVersion​(String workflowNodeVersion)
        Sets the value of NodeProjectOptions.getWorkflowNodeVersion()
        Parameters:
        workflowNodeVersion - The node version to use in GitHub workflows.
        Returns:
        this
      • autoApproveOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder autoApproveOptions​(io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions)
        Sets the value of GitHubProjectOptions.getAutoApproveOptions()
        Parameters:
        autoApproveOptions - Enable and configure the 'auto approve' workflow.
        Returns:
        this
      • autoMerge

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder autoMerge​(Boolean autoMerge)
        Sets the value of GitHubProjectOptions.getAutoMerge()
        Parameters:
        autoMerge - Enable automatic merging on GitHub. Has no effect if github.mergify is set to false.
        Returns:
        this
      • autoMergeOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder autoMergeOptions​(io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions)
        Sets the value of GitHubProjectOptions.getAutoMergeOptions()
        Parameters:
        autoMergeOptions - Configure options for automatic merging on GitHub. Has no effect if github.mergify or autoMerge is set to false.
        Returns:
        this
      • clobber

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder clobber​(Boolean clobber)
        Sets the value of GitHubProjectOptions.getClobber()
        Parameters:
        clobber - Add a `clobber` task which resets the repo to origin.
        Returns:
        this
      • devContainer

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder devContainer​(Boolean devContainer)
        Sets the value of GitHubProjectOptions.getDevContainer()
        Parameters:
        devContainer - Add a VSCode development environment (used for GitHub Codespaces).
        Returns:
        this
      • github

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder github​(Boolean github)
        Sets the value of GitHubProjectOptions.getGithub()
        Parameters:
        github - Enable GitHub integration. Enabled by default for root projects. Disabled for non-root projects.
        Returns:
        this
      • githubOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder githubOptions​(io.github.cdklabs.projen.github.GitHubOptions githubOptions)
        Sets the value of GitHubProjectOptions.getGithubOptions()
        Parameters:
        githubOptions - Options for GitHub integration.
        Returns:
        this
      • gitpod

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder gitpod​(Boolean gitpod)
        Sets the value of GitHubProjectOptions.getGitpod()
        Parameters:
        gitpod - Add a Gitpod development environment.
        Returns:
        this
      • mergify

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder mergify​(Boolean mergify)
        Deprecated.
        use `githubOptions.mergify` instead
        Sets the value of GitHubProjectOptions.getMergify()
        Parameters:
        mergify - Whether mergify should be enabled on this repository or not.
        Returns:
        this
      • mergifyOptions

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder mergifyOptions​(io.github.cdklabs.projen.github.MergifyOptions mergifyOptions)
        Deprecated.
        use `githubOptions.mergifyOptions` instead
        Sets the value of GitHubProjectOptions.getMergifyOptions()
        Parameters:
        mergifyOptions - Options for mergify.
        Returns:
        this
      • projectType

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder projectType​(io.github.cdklabs.projen.ProjectType projectType)
        Deprecated.
        no longer supported at the base project level
        Sets the value of GitHubProjectOptions.getProjectType()
        Parameters:
        projectType - Which type of project this is (library/app).
        Returns:
        this
      • projenCredentials

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenCredentials​(io.github.cdklabs.projen.github.GithubCredentials projenCredentials)
        Sets the value of GitHubProjectOptions.getProjenCredentials()
        Parameters:
        projenCredentials - Choose a method of providing GitHub API access for projen workflows.
        Returns:
        this
      • projenTokenSecret

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder projenTokenSecret​(String projenTokenSecret)
        Deprecated.
        use `projenCredentials`
        Sets the value of GitHubProjectOptions.getProjenTokenSecret()
        Parameters:
        projenTokenSecret - The name of a secret which includes a GitHub Personal Access Token to be used by projen workflows. This token needs to have the repo, workflows and packages scope.
        Returns:
        this
      • readme

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder readme​(io.github.cdklabs.projen.SampleReadmeProps readme)
        Sets the value of GitHubProjectOptions.getReadme()
        Parameters:
        readme - The README setup.
        Returns:
        this
      • stale

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder stale​(Boolean stale)
        Sets the value of GitHubProjectOptions.getStale()
        Parameters:
        stale - Auto-close of stale issues and pull request. See staleOptions for options.
        Returns:
        this
      • staleOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder staleOptions​(io.github.cdklabs.projen.github.StaleOptions staleOptions)
        Sets the value of GitHubProjectOptions.getStaleOptions()
        Parameters:
        staleOptions - Auto-close stale issues and pull requests. To disable set stale to false.
        Returns:
        this
      • vscode

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder vscode​(Boolean vscode)
        Sets the value of GitHubProjectOptions.getVscode()
        Parameters:
        vscode - Enable VSCode integration. Enabled by default for root projects. Disabled for non-root projects.
        Returns:
        this
      • name

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder name​(String name)
        Sets the value of ProjectOptions.getName()
        Parameters:
        name - This is the name of your project. This parameter is required.
        Returns:
        this
      • commitGenerated

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder commitGenerated​(Boolean commitGenerated)
        Sets the value of ProjectOptions.getCommitGenerated()
        Parameters:
        commitGenerated - Whether to commit the managed files by default.
        Returns:
        this
      • logging

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder logging​(io.github.cdklabs.projen.LoggerOptions logging)
        Sets the value of ProjectOptions.getLogging()
        Parameters:
        logging - Configure logging options such as verbosity.
        Returns:
        this
      • outdir

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder outdir​(String outdir)
        Sets the value of ProjectOptions.getOutdir()
        Parameters:
        outdir - The root directory of the project. Relative to this directory, all files are synthesized.

        If this project has a parent, this directory is relative to the parent directory and it cannot be the same as the parent or any of it's other sub-projects.

        Returns:
        this
      • parent

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder parent​(io.github.cdklabs.projen.Project parent)
        Sets the value of ProjectOptions.getParent()
        Parameters:
        parent - The parent project, if this project is part of a bigger project.
        Returns:
        this
      • projenCommand

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenCommand​(String projenCommand)
        Sets the value of ProjectOptions.getProjenCommand()
        Parameters:
        projenCommand - The shell command to use in order to run the projen CLI. Can be used to customize in special environments.
        Returns:
        this
      • projenrcJson

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenrcJson​(Boolean projenrcJson)
        Sets the value of ProjectOptions.getProjenrcJson()
        Parameters:
        projenrcJson - Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.
        Returns:
        this
      • projenrcJsonOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder projenrcJsonOptions​(io.github.cdklabs.projen.ProjenrcOptions projenrcJsonOptions)
        Sets the value of ProjectOptions.getProjenrcJsonOptions()
        Parameters:
        projenrcJsonOptions - Options for .projenrc.json.
        Returns:
        this
      • renovatebot

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder renovatebot​(Boolean renovatebot)
        Sets the value of ProjectOptions.getRenovatebot()
        Parameters:
        renovatebot - Use renovatebot to handle dependency upgrades.
        Returns:
        this
      • renovatebotOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder renovatebotOptions​(io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions)
        Sets the value of ProjectOptions.getRenovatebotOptions()
        Parameters:
        renovatebotOptions - Options for renovatebot.
        Returns:
        this
      • allowLibraryDependencies

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder allowLibraryDependencies​(Boolean allowLibraryDependencies)
        Sets the value of NodePackageOptions.getAllowLibraryDependencies()
        Parameters:
        allowLibraryDependencies - Allow the project to include `peerDependencies` and `bundledDependencies`. This is normally only allowed for libraries. For apps, there's no meaning for specifying these.
        Returns:
        this
      • authorEmail

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder authorEmail​(String authorEmail)
        Sets the value of NodePackageOptions.getAuthorEmail()
        Parameters:
        authorEmail - Author's e-mail.
        Returns:
        this
      • authorName

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder authorName​(String authorName)
        Sets the value of NodePackageOptions.getAuthorName()
        Parameters:
        authorName - Author's name.
        Returns:
        this
      • authorOrganization

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder authorOrganization​(Boolean authorOrganization)
        Sets the value of NodePackageOptions.getAuthorOrganization()
        Parameters:
        authorOrganization - Is the author an organization.
        Returns:
        this
      • authorUrl

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder authorUrl​(String authorUrl)
        Sets the value of NodePackageOptions.getAuthorUrl()
        Parameters:
        authorUrl - Author's URL / Website.
        Returns:
        this
      • autoDetectBin

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder autoDetectBin​(Boolean autoDetectBin)
        Sets the value of NodePackageOptions.getAutoDetectBin()
        Parameters:
        autoDetectBin - Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section.
        Returns:
        this
      • bin

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder bin​(Map<String,​String> bin)
        Sets the value of NodePackageOptions.getBin()
        Parameters:
        bin - Binary programs vended with your module. You can use this option to add/customize how binaries are represented in your package.json, but unless autoDetectBin is false, every executable file under bin will automatically be added to this section.
        Returns:
        this
      • bugsEmail

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder bugsEmail​(String bugsEmail)
        Sets the value of NodePackageOptions.getBugsEmail()
        Parameters:
        bugsEmail - The email address to which issues should be reported.
        Returns:
        this
      • bugsUrl

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder bugsUrl​(String bugsUrl)
        Sets the value of NodePackageOptions.getBugsUrl()
        Parameters:
        bugsUrl - The url to your project's issue tracker.
        Returns:
        this
      • bundledDeps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder bundledDeps​(List<String> bundledDeps)
        Sets the value of NodePackageOptions.getBundledDeps()
        Parameters:
        bundledDeps - List of dependencies to bundle into this module. These modules will be added both to the dependencies section and bundledDependencies section of your package.json.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Returns:
        this
      • codeArtifactOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder codeArtifactOptions​(io.github.cdklabs.projen.javascript.CodeArtifactOptions codeArtifactOptions)
        Sets the value of NodePackageOptions.getCodeArtifactOptions()
        Parameters:
        codeArtifactOptions - Options for npm packages using AWS CodeArtifact. This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact
        Returns:
        this
      • deps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder deps​(List<String> deps)
        Sets the value of NodePackageOptions.getDeps()
        Parameters:
        deps - Runtime dependencies of this module. The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.
        Returns:
        this
      • description

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder description​(String description)
        Sets the value of NodePackageOptions.getDescription()
        Parameters:
        description - The description is just a string that helps people understand the purpose of the package. It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description
        Returns:
        this
      • devDeps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder devDeps​(List<String> devDeps)
        Sets the value of NodePackageOptions.getDevDeps()
        Parameters:
        devDeps - Build dependencies for this module. These dependencies will only be available in your build environment but will not be fetched when this module is consumed.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Returns:
        this
      • entrypoint

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder entrypoint​(String entrypoint)
        Sets the value of NodePackageOptions.getEntrypoint()
        Parameters:
        entrypoint - Module entrypoint (`main` in `package.json`). Set to an empty string to not include main in your package.json
        Returns:
        this
      • homepage

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder homepage​(String homepage)
        Sets the value of NodePackageOptions.getHomepage()
        Parameters:
        homepage - Package's Homepage / Website.
        Returns:
        this
      • keywords

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder keywords​(List<String> keywords)
        Sets the value of NodePackageOptions.getKeywords()
        Parameters:
        keywords - Keywords to include in `package.json`.
        Returns:
        this
      • license

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder license​(String license)
        Sets the value of NodePackageOptions.getLicense()
        Parameters:
        license - License's SPDX identifier. See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the licensed option if you want to no license to be specified.
        Returns:
        this
      • licensed

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder licensed​(Boolean licensed)
        Sets the value of NodePackageOptions.getLicensed()
        Parameters:
        licensed - Indicates if a license should be added.
        Returns:
        this
      • maxNodeVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder maxNodeVersion​(String maxNodeVersion)
        Sets the value of NodePackageOptions.getMaxNodeVersion()
        Parameters:
        maxNodeVersion - Minimum node.js version to require via `engines` (inclusive).
        Returns:
        this
      • minNodeVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder minNodeVersion​(String minNodeVersion)
        Sets the value of NodePackageOptions.getMinNodeVersion()
        Parameters:
        minNodeVersion - Minimum Node.js version to require via package.json `engines` (inclusive).
        Returns:
        this
      • npmAccess

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder npmAccess​(io.github.cdklabs.projen.javascript.NpmAccess npmAccess)
        Sets the value of NodePackageOptions.getNpmAccess()
        Parameters:
        npmAccess - Access level of the npm package.
        Returns:
        this
      • npmRegistry

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder npmRegistry​(String npmRegistry)
        Deprecated.
        use `npmRegistryUrl` instead
        Sets the value of NodePackageOptions.getNpmRegistry()
        Parameters:
        npmRegistry - The host name of the npm registry to publish to. Cannot be set together with npmRegistryUrl.
        Returns:
        this
      • npmRegistryUrl

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder npmRegistryUrl​(String npmRegistryUrl)
        Sets the value of NodePackageOptions.getNpmRegistryUrl()
        Parameters:
        npmRegistryUrl - The base URL of the npm package registry. Must be a URL (e.g. start with "https://" or "http://")
        Returns:
        this
      • npmTokenSecret

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder npmTokenSecret​(String npmTokenSecret)
        Sets the value of NodePackageOptions.getNpmTokenSecret()
        Parameters:
        npmTokenSecret - GitHub secret which contains the NPM token to use when publishing packages.
        Returns:
        this
      • packageManager

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder packageManager​(io.github.cdklabs.projen.javascript.NodePackageManager packageManager)
        Sets the value of NodePackageOptions.getPackageManager()
        Parameters:
        packageManager - The Node Package Manager used to execute scripts.
        Returns:
        this
      • packageName

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder packageName​(String packageName)
        Sets the value of NodePackageOptions.getPackageName()
        Parameters:
        packageName - The "name" in package.json.
        Returns:
        this
      • peerDependencyOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder peerDependencyOptions​(io.github.cdklabs.projen.javascript.PeerDependencyOptions peerDependencyOptions)
        Sets the value of NodePackageOptions.getPeerDependencyOptions()
        Parameters:
        peerDependencyOptions - Options for `peerDeps`.
        Returns:
        this
      • peerDeps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder peerDeps​(List<String> peerDeps)
        Sets the value of NodePackageOptions.getPeerDeps()
        Parameters:
        peerDeps - Peer dependencies for this module. Dependencies listed here are required to be installed (and satisfied) by the consumer of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the node_modules tree of your consumers.

        Note that prior to npm@7, peer dependencies are not automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers.

        Unless peerDependencyOptions.pinnedDevDependency is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required.

        Returns:
        this
      • repository

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder repository​(String repository)
        Sets the value of NodePackageOptions.getRepository()
        Parameters:
        repository - The repository is the location where the actual code for your package lives. See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository
        Returns:
        this
      • repositoryDirectory

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder repositoryDirectory​(String repositoryDirectory)
        Sets the value of NodePackageOptions.getRepositoryDirectory()
        Parameters:
        repositoryDirectory - If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives.
        Returns:
        this
      • scopedPackagesOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder scopedPackagesOptions​(List<? extends io.github.cdklabs.projen.javascript.ScopedPackagesOptions> scopedPackagesOptions)
        Sets the value of NodePackageOptions.getScopedPackagesOptions()
        Parameters:
        scopedPackagesOptions - Options for privately hosted scoped packages.
        Returns:
        this
      • scripts

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder scripts​(Map<String,​String> scripts)
        Sets the value of NodePackageOptions.getScripts()
        Parameters:
        scripts - npm scripts to include. If a script has the same name as a standard script, the standard script will be overwritten.
        Returns:
        this
      • stability

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder stability​(String stability)
        Sets the value of NodePackageOptions.getStability()
        Parameters:
        stability - Package's Stability.
        Returns:
        this
      • jsiiReleaseVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder jsiiReleaseVersion​(String jsiiReleaseVersion)
        Sets the value of ReleaseProjectOptions.getJsiiReleaseVersion()
        Parameters:
        jsiiReleaseVersion - Version requirement of `publib` which is used to publish modules to npm.
        Returns:
        this
      • majorVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder majorVersion​(Number majorVersion)
        Sets the value of ReleaseProjectOptions.getMajorVersion()
        Parameters:
        majorVersion - Major version to release from the default branch. If this is specified, we bump the latest version of this major version line. If not specified, we bump the global latest version.
        Returns:
        this
      • minMajorVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder minMajorVersion​(Number minMajorVersion)
        Sets the value of ReleaseProjectOptions.getMinMajorVersion()
        Parameters:
        minMajorVersion - Minimal Major version to release. This can be useful to set to 1, as breaking changes before the 1.x major release are not incrementing the major version number.

        Can not be set together with majorVersion.

        Returns:
        this
      • npmDistTag

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder npmDistTag​(String npmDistTag)
        Sets the value of ReleaseProjectOptions.getNpmDistTag()
        Parameters:
        npmDistTag - The npmDistTag to use when publishing from the default branch. To set the npm dist-tag for release branches, set the npmDistTag property for each branch.
        Returns:
        this
      • postBuildSteps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder postBuildSteps​(List<? extends io.github.cdklabs.projen.github.workflows.JobStep> postBuildSteps)
        Sets the value of ReleaseProjectOptions.getPostBuildSteps()
        Parameters:
        postBuildSteps - Steps to execute after build as part of the release workflow.
        Returns:
        this
      • prerelease

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder prerelease​(String prerelease)
        Sets the value of ReleaseProjectOptions.getPrerelease()
        Parameters:
        prerelease - Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").
        Returns:
        this
      • publishDryRun

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder publishDryRun​(Boolean publishDryRun)
        Sets the value of ReleaseProjectOptions.getPublishDryRun()
        Parameters:
        publishDryRun - Instead of actually publishing to package managers, just print the publishing command.
        Returns:
        this
      • publishTasks

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder publishTasks​(Boolean publishTasks)
        Sets the value of ReleaseProjectOptions.getPublishTasks()
        Parameters:
        publishTasks - Define publishing tasks that can be executed manually as well as workflows. Normally, publishing only happens within automated workflows. Enable this in order to create a publishing task for each publishing activity.
        Returns:
        this
      • releaseBranches

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseBranches​(Map<String,​? extends io.github.cdklabs.projen.release.BranchOptions> releaseBranches)
        Sets the value of ReleaseProjectOptions.getReleaseBranches()
        Parameters:
        releaseBranches - Defines additional release branches. A workflow will be created for each release branch which will publish releases from commits in this branch. Each release branch must be assigned a major version number which is used to enforce that versions published from that branch always use that major version. If multiple branches are used, the majorVersion field must also be provided for the default branch.
        Returns:
        this
      • releaseEveryCommit

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder releaseEveryCommit​(Boolean releaseEveryCommit)
        Deprecated.
        Use `releaseTrigger: ReleaseTrigger.continuous()` instead
        Sets the value of ReleaseProjectOptions.getReleaseEveryCommit()
        Parameters:
        releaseEveryCommit - Automatically release new versions every commit to one of branches in `releaseBranches`.
        Returns:
        this
      • releaseFailureIssue

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseFailureIssue​(Boolean releaseFailureIssue)
        Sets the value of ReleaseProjectOptions.getReleaseFailureIssue()
        Parameters:
        releaseFailureIssue - Create a github issue on every failed publishing task.
        Returns:
        this
      • releaseFailureIssueLabel

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseFailureIssueLabel​(String releaseFailureIssueLabel)
        Sets the value of ReleaseProjectOptions.getReleaseFailureIssueLabel()
        Parameters:
        releaseFailureIssueLabel - The label to apply to issues indicating publish failures. Only applies if releaseFailureIssue is true.
        Returns:
        this
      • releaseSchedule

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder releaseSchedule​(String releaseSchedule)
        Deprecated.
        Use `releaseTrigger: ReleaseTrigger.scheduled()` instead
        Sets the value of ReleaseProjectOptions.getReleaseSchedule()
        Parameters:
        releaseSchedule - CRON schedule to trigger new releases.
        Returns:
        this
      • releaseTagPrefix

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseTagPrefix​(String releaseTagPrefix)
        Sets the value of ReleaseProjectOptions.getReleaseTagPrefix()
        Parameters:
        releaseTagPrefix - Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. Note: this prefix is used to detect the latest tagged version when bumping, so if you change this on a project with an existing version history, you may need to manually tag your latest release with the new prefix.
        Returns:
        this
      • releaseTrigger

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseTrigger​(io.github.cdklabs.projen.release.ReleaseTrigger releaseTrigger)
        Sets the value of ReleaseProjectOptions.getReleaseTrigger()
        Parameters:
        releaseTrigger - The release trigger to use.
        Returns:
        this
      • releaseWorkflowName

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseWorkflowName​(String releaseWorkflowName)
        Sets the value of ReleaseProjectOptions.getReleaseWorkflowName()
        Parameters:
        releaseWorkflowName - The name of the default release workflow.
        Returns:
        this
      • releaseWorkflowSetupSteps

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder releaseWorkflowSetupSteps​(List<? extends io.github.cdklabs.projen.github.workflows.JobStep> releaseWorkflowSetupSteps)
        Sets the value of ReleaseProjectOptions.getReleaseWorkflowSetupSteps()
        Parameters:
        releaseWorkflowSetupSteps - A set of workflow steps to execute in order to setup the workflow container.
        Returns:
        this
      • versionrcOptions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder versionrcOptions​(Map<String,​? extends Object> versionrcOptions)
        Sets the value of ReleaseProjectOptions.getVersionrcOptions()
        Parameters:
        versionrcOptions - Custom configuration used when creating changelog with standard-version package. Given values either append to default configuration or overwrite values in it.
        Returns:
        this
      • workflowContainerImage

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder workflowContainerImage​(String workflowContainerImage)
        Sets the value of ReleaseProjectOptions.getWorkflowContainerImage()
        Parameters:
        workflowContainerImage - Container image to use for GitHub workflows.
        Returns:
        this
      • workflowRunsOn

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder workflowRunsOn​(List<String> workflowRunsOn)
        Sets the value of ReleaseProjectOptions.getWorkflowRunsOn()
        Parameters:
        workflowRunsOn - Github Runner selection labels.
        Returns:
        this
      • buildCommand

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder buildCommand​(String buildCommand)
        Sets the value of CdkConfigCommonOptions.getBuildCommand()
        Parameters:
        buildCommand - A command to execute before synthesis. This command will be called when running cdk synth or when cdk watch identifies a change in your source code before redeployment.
        Returns:
        this
      • cdkout

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder cdkout​(String cdkout)
        Sets the value of CdkConfigCommonOptions.getCdkout()
        Parameters:
        cdkout - cdk.out directory.
        Returns:
        this
      • context

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder context​(Map<String,​? extends Object> context)
        Sets the value of CdkConfigCommonOptions.getContext()
        Parameters:
        context - Additional context to include in `cdk.json`.
        Returns:
        this
      • featureFlags

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder featureFlags​(Boolean featureFlags)
        Sets the value of CdkConfigCommonOptions.getFeatureFlags()
        Parameters:
        featureFlags - Include all feature flags in cdk.json.
        Returns:
        this
      • requireApproval

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder requireApproval​(io.github.cdklabs.projen.awscdk.ApprovalLevel requireApproval)
        Sets the value of CdkConfigCommonOptions.getRequireApproval()
        Parameters:
        requireApproval - To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.
        Returns:
        this
      • watchExcludes

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder watchExcludes​(List<String> watchExcludes)
        Sets the value of CdkConfigCommonOptions.getWatchExcludes()
        Parameters:
        watchExcludes - Glob patterns to exclude from `cdk watch`.
        Returns:
        this
      • watchIncludes

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder watchIncludes​(List<String> watchIncludes)
        Sets the value of CdkConfigCommonOptions.getWatchIncludes()
        Parameters:
        watchIncludes - Glob patterns to include in `cdk watch`.
        Returns:
        this
      • cdkVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder cdkVersion​(String cdkVersion)
        Sets the value of AwsCdkDepsCommonOptions.getCdkVersion()
        Parameters:
        cdkVersion - Minimum version of the AWS CDK to depend on. This parameter is required.
        Returns:
        this
      • cdkAssert

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder cdkAssert​(Boolean cdkAssert)
        Deprecated.
        The
        Sets the value of AwsCdkDepsCommonOptions.getCdkAssert()
        Parameters:
        cdkAssert - Warning: NodeJS only. Install the @aws-cdk/assert library?
        Returns:
        this
      • cdkAssertions

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder cdkAssertions​(Boolean cdkAssertions)
        Sets the value of AwsCdkDepsCommonOptions.getCdkAssertions()
        Parameters:
        cdkAssertions - Install the assertions library?. Only needed for CDK 1.x. If using CDK 2.x then assertions is already included in 'aws-cdk-lib'
        Returns:
        this
      • cdkDependencies

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder cdkDependencies​(List<String> cdkDependencies)
        Deprecated.
        For CDK 2.x use "deps" instead. (or "peerDeps" if you're building a library)
        Sets the value of AwsCdkDepsCommonOptions.getCdkDependencies()
        Parameters:
        cdkDependencies - Which AWS CDKv1 modules this project requires.
        Returns:
        this
      • cdkDependenciesAsDeps

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder cdkDependenciesAsDeps​(Boolean cdkDependenciesAsDeps)
        Deprecated.
        Not supported in CDK v2.
        Sets the value of AwsCdkDepsCommonOptions.getCdkDependenciesAsDeps()
        Parameters:
        cdkDependenciesAsDeps - If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). This is to ensure that downstream consumers actually have your CDK dependencies installed when using npm < 7 or yarn, where peer dependencies are not automatically installed. If this is disabled, cdkDependencies will be added to devDependencies to ensure they are present during development.

        Note: this setting only applies to construct library projects

        Returns:
        this
      • cdkTestDependencies

        @Stability(Deprecated)
        @Deprecated
        public PDKPipelineTsProjectOptions.Builder cdkTestDependencies​(List<String> cdkTestDependencies)
        Deprecated.
        For CDK 2.x use 'devDeps' (in node.js projects) or 'testDeps' (in java projects) instead
        Sets the value of AwsCdkDepsCommonOptions.getCdkTestDependencies()
        Parameters:
        cdkTestDependencies - AWS CDK modules required for testing.
        Returns:
        this
      • cdkVersionPinning

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder cdkVersionPinning​(Boolean cdkVersionPinning)
        Sets the value of AwsCdkDepsCommonOptions.getCdkVersionPinning()
        Parameters:
        cdkVersionPinning - Use pinned version instead of caret version for CDK. You can use this to prevent mixed versions for your CDK dependencies and to prevent auto-updates. If you use experimental features this will let you define the moment you include breaking changes.
        Returns:
        this
      • constructsVersion

        @Stability(Experimental)
        public PDKPipelineTsProjectOptions.Builder constructsVersion​(String constructsVersion)
        Sets the value of AwsCdkDepsCommonOptions.getConstructsVersion()
        Parameters:
        constructsVersion - Minimum version of the `constructs` library to depend on.
        Returns:
        this