Class Publisher.Builder

  • All Implemented Interfaces:
    software.amazon.jsii.Builder<Publisher>
    Enclosing class:
    Publisher

    @Stability(Experimental)
    public static final class Publisher.Builder
    extends Object
    implements software.amazon.jsii.Builder<Publisher>
    (experimental) A fluent builder for Publisher.
    • Method Detail

      • artifactName

        @Stability(Experimental)
        public Publisher.Builder artifactName​(String artifactName)
        (experimental) The name of the artifact to download (e.g. dist).

        The artifact is expected to include a subdirectory for each release target: go (GitHub), dotnet (NuGet), java (Maven), js (npm), python (PyPI).

        Parameters:
        artifactName - The name of the artifact to download (e.g. dist). This parameter is required.
        Returns:
        this
        See Also:
        https://github.com/aws/publib
      • buildJobId

        @Stability(Experimental)
        public Publisher.Builder buildJobId​(String buildJobId)
        (experimental) The job ID that produces the build artifacts.

        All publish jobs will take a dependency on this job.

        Parameters:
        buildJobId - The job ID that produces the build artifacts. This parameter is required.
        Returns:
        this
      • condition

        @Stability(Experimental)
        public Publisher.Builder condition​(String condition)
        (experimental) A GitHub workflow expression used as a condition for publishers.

        Default: - no condition

        Parameters:
        condition - A GitHub workflow expression used as a condition for publishers. This parameter is required.
        Returns:
        this
      • dryRun

        @Stability(Experimental)
        public Publisher.Builder dryRun​(Boolean dryRun)
        (experimental) Do not actually publish, only print the commands that would be executed instead.

        Useful if you wish to block all publishing from a single option.

        Parameters:
        dryRun - Do not actually publish, only print the commands that would be executed instead. This parameter is required.
        Returns:
        this
      • failureIssue

        @Stability(Experimental)
        public Publisher.Builder failureIssue​(Boolean failureIssue)
        (experimental) Create an issue when a publish task fails.

        Default: false

        Parameters:
        failureIssue - Create an issue when a publish task fails. This parameter is required.
        Returns:
        this
      • failureIssueLabel

        @Stability(Experimental)
        public Publisher.Builder failureIssueLabel​(String failureIssueLabel)
        (experimental) The label to apply to the issue marking failed publish tasks.

        Only applies if failureIssue is true.

        Default: "failed-release"

        Parameters:
        failureIssueLabel - The label to apply to the issue marking failed publish tasks. This parameter is required.
        Returns:
        this
      • jsiiReleaseVersion

        @Stability(Deprecated)
        @Deprecated
        public Publisher.Builder jsiiReleaseVersion​(String jsiiReleaseVersion)
        Deprecated.
        use publibVersion instead
        Parameters:
        jsiiReleaseVersion - This parameter is required.
        Returns:
        this
      • publibVersion

        @Stability(Experimental)
        public Publisher.Builder publibVersion​(String publibVersion)
        (experimental) Version requirement for publib.

        Default: "latest"

        Parameters:
        publibVersion - Version requirement for publib. This parameter is required.
        Returns:
        this
      • publishTasks

        @Stability(Experimental)
        public Publisher.Builder publishTasks​(Boolean publishTasks)
        (experimental) 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.

        Default: false

        Parameters:
        publishTasks - Define publishing tasks that can be executed manually as well as workflows. This parameter is required.
        Returns:
        this
      • workflowContainerImage

        @Stability(Experimental)
        public Publisher.Builder workflowContainerImage​(String workflowContainerImage)
        (experimental) Container image to use for GitHub workflows.

        Default: - default image

        Parameters:
        workflowContainerImage - Container image to use for GitHub workflows. This parameter is required.
        Returns:
        this
      • workflowNodeVersion

        @Stability(Experimental)
        public Publisher.Builder workflowNodeVersion​(String workflowNodeVersion)
        (experimental) Node version to setup in GitHub workflows if any node-based CLI utilities are needed.

        For example publib, the CLI projen uses to publish releases, is an npm library.

        Default: 18.x

        Parameters:
        workflowNodeVersion - Node version to setup in GitHub workflows if any node-based CLI utilities are needed. This parameter is required.
        Returns:
        this
      • workflowRunsOn

        @Stability(Experimental)
        public Publisher.Builder workflowRunsOn​(List<String> workflowRunsOn)
        (experimental) Github Runner selection labels.

        Default: ["ubuntu-latest"]

        Parameters:
        workflowRunsOn - Github Runner selection labels. This parameter is required.
        Returns:
        this
      • workflowRunsOnGroup

        @Stability(Experimental)
        public Publisher.Builder workflowRunsOnGroup​(GroupRunnerOptions workflowRunsOnGroup)
        (experimental) Github Runner Group selection options.

        Parameters:
        workflowRunsOnGroup - Github Runner Group selection options. This parameter is required.
        Returns:
        this
      • build

        @Stability(Experimental)
        public Publisher build()
        Specified by:
        build in interface software.amazon.jsii.Builder<Publisher>
        Returns:
        a newly built instance of Publisher.