Package io.github.cdklabs.projen.build
Class BuildWorkflowOptions.Builder
- java.lang.Object
-
- io.github.cdklabs.projen.build.BuildWorkflowOptions.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<BuildWorkflowOptions>
- Enclosing interface:
- BuildWorkflowOptions
@Stability(Experimental) public static final class BuildWorkflowOptions.Builder extends Object implements software.amazon.jsii.Builder<BuildWorkflowOptions>
A builder forBuildWorkflowOptions
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
artifactsDirectory
@Stability(Experimental) public BuildWorkflowOptions.Builder artifactsDirectory(String artifactsDirectory)
Sets the value ofBuildWorkflowOptions.getArtifactsDirectory()- Parameters:
artifactsDirectory- A name of a directory that includes build artifacts. This parameter is required.- Returns:
this
-
buildTask
@Stability(Experimental) public BuildWorkflowOptions.Builder buildTask(Task buildTask)
Sets the value ofBuildWorkflowOptions.getBuildTask()- Parameters:
buildTask- The task to execute in order to build the project. This parameter is required.- Returns:
this
-
containerImage
@Stability(Experimental) public BuildWorkflowOptions.Builder containerImage(String containerImage)
Sets the value ofBuildWorkflowOptions.getContainerImage()- Parameters:
containerImage- The container image to use for builds.- Returns:
this
-
env
@Stability(Experimental) public BuildWorkflowOptions.Builder env(Map<String,String> env)
Sets the value ofBuildWorkflowOptions.getEnv()- Parameters:
env- Build environment variables.- Returns:
this
-
gitIdentity
@Stability(Experimental) public BuildWorkflowOptions.Builder gitIdentity(GitIdentity gitIdentity)
Sets the value ofBuildWorkflowOptions.getGitIdentity()- Parameters:
gitIdentity- Git identity to use for the workflow.- Returns:
this
-
mutableBuild
@Stability(Experimental) public BuildWorkflowOptions.Builder mutableBuild(Boolean mutableBuild)
Sets the value ofBuildWorkflowOptions.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.
This is enabled by default only if
githubTokenSecretis set. Otherwise it is disabled, which implies that file changes that happen during build will not be pushed back to the branch.- Returns:
this
-
name
@Stability(Experimental) public BuildWorkflowOptions.Builder name(String name)
Sets the value ofBuildWorkflowOptions.getName()- Parameters:
name- Name of the buildfile (e.g. "build" becomes "build.yml").- Returns:
this
-
permissions
@Stability(Experimental) public BuildWorkflowOptions.Builder permissions(JobPermissions permissions)
Sets the value ofBuildWorkflowOptions.getPermissions()- Parameters:
permissions- Permissions granted to the build job To limit job permissions forcontents, the desired permissions have to be explicitly set, e.g.:{ contents: JobPermission.NONE }.- Returns:
this
-
postBuildSteps
@Stability(Experimental) public BuildWorkflowOptions.Builder postBuildSteps(List<? extends JobStep> postBuildSteps)
Sets the value ofBuildWorkflowOptions.getPostBuildSteps()- Parameters:
postBuildSteps- Steps to execute after build.- Returns:
this
-
preBuildSteps
@Stability(Experimental) public BuildWorkflowOptions.Builder preBuildSteps(List<? extends JobStep> preBuildSteps)
Sets the value ofBuildWorkflowOptions.getPreBuildSteps()- Parameters:
preBuildSteps- Steps to execute before the build.- Returns:
this
-
runsOn
@Stability(Experimental) public BuildWorkflowOptions.Builder runsOn(List<String> runsOn)
Sets the value ofBuildWorkflowOptions.getRunsOn()- Parameters:
runsOn- Github Runner selection labels.- Returns:
this
-
runsOnGroup
@Stability(Experimental) public BuildWorkflowOptions.Builder runsOnGroup(GroupRunnerOptions runsOnGroup)
Sets the value ofBuildWorkflowOptions.getRunsOnGroup()- Parameters:
runsOnGroup- Github Runner Group selection options.- Returns:
this
-
workflowTriggers
@Stability(Experimental) public BuildWorkflowOptions.Builder workflowTriggers(Triggers workflowTriggers)
Sets the value ofBuildWorkflowOptions.getWorkflowTriggers()- Parameters:
workflowTriggers- Build workflow triggers.- Returns:
this
-
build
@Stability(Experimental) public BuildWorkflowOptions build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<BuildWorkflowOptions>- Returns:
- a new instance of
BuildWorkflowOptions - Throws:
NullPointerException- if any required attribute was not provided
-
-