Class SmithyApiGatewayPythonProjectOptions.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • moduleName

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder moduleName​(String moduleName)
        Sets the value of PythonProjectOptions.getModuleName()
        Parameters:
        moduleName - Name of the python package as used in imports and filenames. This parameter is required. Must only consist of alphanumeric characters and underscores.
        Returns:
        this
      • deps

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder deps​(List<String> deps)
        Sets the value of PythonProjectOptions.getDeps()
        Parameters:
        deps - List of runtime dependencies for this project. Dependencies use the format: <module>@<semver>

        Additional dependencies can be added via project.addDependency().

        Returns:
        this
      • devDeps

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder devDeps​(List<String> devDeps)
        Sets the value of PythonProjectOptions.getDevDeps()
        Parameters:
        devDeps - List of dev dependencies for this project. Dependencies use the format: <module>@<semver>

        Additional dependencies can be added via project.addDevDependency().

        Returns:
        this
      • poetry

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder poetry​(Boolean poetry)
        Sets the value of PythonProjectOptions.getPoetry()
        Parameters:
        poetry - Use poetry to manage your project dependencies, virtual environment, and (optional) packaging/publishing.
        Returns:
        this
      • projenrcJs

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder projenrcJs​(Boolean projenrcJs)
        Sets the value of PythonProjectOptions.getProjenrcJs()
        Parameters:
        projenrcJs - Use projenrc in javascript. This will install projen as a JavaScript dependency and add a synth task which will run .projenrc.js.
        Returns:
        this
      • projenrcJsOptions

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder projenrcJsOptions​(io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions)
        Sets the value of PythonProjectOptions.getProjenrcJsOptions()
        Parameters:
        projenrcJsOptions - Options related to projenrc in JavaScript.
        Returns:
        this
      • projenrcPython

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder projenrcPython​(Boolean projenrcPython)
        Sets the value of PythonProjectOptions.getProjenrcPython()
        Parameters:
        projenrcPython - Use projenrc in Python. This will install projen as a Python dependency and add a synth task which will run .projenrc.py.
        Returns:
        this
      • projenrcPythonOptions

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder projenrcPythonOptions​(io.github.cdklabs.projen.python.ProjenrcOptions projenrcPythonOptions)
        Sets the value of PythonProjectOptions.getProjenrcPythonOptions()
        Parameters:
        projenrcPythonOptions - Options related to projenrc in python.
        Returns:
        this
      • pytestOptions

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder pytestOptions​(io.github.cdklabs.projen.python.PytestOptions pytestOptions)
        Sets the value of PythonProjectOptions.getPytestOptions()
        Parameters:
        pytestOptions - pytest options.
        Returns:
        this
      • sample

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder sample​(Boolean sample)
        Sets the value of PythonProjectOptions.getSample()
        Parameters:
        sample - Include sample code and test if the relevant directories don't exist.
        Returns:
        this
      • setuptools

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder setuptools​(Boolean setuptools)
        Sets the value of PythonProjectOptions.getSetuptools()
        Parameters:
        setuptools - Use setuptools with a setup.py script for packaging and publishing.
        Returns:
        this
      • venv

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder venv​(Boolean venv)
        Sets the value of PythonProjectOptions.getVenv()
        Parameters:
        venv - Use venv to manage a virtual environment for installing dependencies inside.
        Returns:
        this
      • venvOptions

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder venvOptions​(io.github.cdklabs.projen.python.VenvOptions venvOptions)
        Sets the value of PythonProjectOptions.getVenvOptions()
        Parameters:
        venvOptions - Venv options.
        Returns:
        this
      • autoApproveOptions

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.Builder githubOptions​(io.github.cdklabs.projen.github.GitHubOptions githubOptions)
        Sets the value of GitHubProjectOptions.getGithubOptions()
        Parameters:
        githubOptions - Options for GitHub integration.
        Returns:
        this
      • mergify

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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
      • commitGenerated

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.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 SmithyApiGatewayPythonProjectOptions.Builder renovatebot​(Boolean renovatebot)
        Sets the value of ProjectOptions.getRenovatebot()
        Parameters:
        renovatebot - Use renovatebot to handle dependency upgrades.
        Returns:
        this
      • renovatebotOptions

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

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder authorEmail​(String authorEmail)
        Sets the value of PythonPackagingOptions.getAuthorEmail()
        Parameters:
        authorEmail - Author's e-mail. This parameter is required.
        Returns:
        this
      • authorName

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder authorName​(String authorName)
        Sets the value of PythonPackagingOptions.getAuthorName()
        Parameters:
        authorName - Author's name. This parameter is required.
        Returns:
        this
      • version

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder version​(String version)
        Sets the value of PythonPackagingOptions.getVersion()
        Parameters:
        version - Version of the package. This parameter is required.
        Returns:
        this
      • classifiers

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder classifiers​(List<String> classifiers)
        Sets the value of PythonPackagingOptions.getClassifiers()
        Parameters:
        classifiers - A list of PyPI trove classifiers that describe the project.
        Returns:
        this
      • description

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder description​(String description)
        Sets the value of PythonPackagingOptions.getDescription()
        Parameters:
        description - A short description of the package.
        Returns:
        this
      • license

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder license​(String license)
        Sets the value of PythonPackagingOptions.getLicense()
        Parameters:
        license - License of this package as an SPDX identifier.
        Returns:
        this
      • poetryOptions

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder poetryOptions​(io.github.cdklabs.projen.python.PoetryPyprojectOptionsWithoutDeps poetryOptions)
        Sets the value of PythonPackagingOptions.getPoetryOptions()
        Parameters:
        poetryOptions - Additional options to set for poetry if using poetry.
        Returns:
        this
      • setupConfig

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder setupConfig​(Map<String,​? extends Object> setupConfig)
        Sets the value of PythonPackagingOptions.getSetupConfig()
        Parameters:
        setupConfig - Additional fields to pass in the setup() function if using setuptools.
        Returns:
        this
      • serviceName

        @Stability(Experimental)
        public SmithyApiGatewayPythonProjectOptions.Builder serviceName​(SmithyServiceName serviceName)
        Parameters:
        serviceName - The name of the Smithy service from your model which will be targeted for deployment and client generation. This parameter is required. On initial project synthesis this service name will be written to the sample "hello world" model. If you change this value after initial synthesis you will need to manually update your Smithy models to match, unless you delete the "model" directory. Likewise, if you change the namespace or service name in your Smithy models you will need to update this value to ensure your service can be found.
        Returns:
        this