Advanced settings
The Settings tab also will reveal a couple of advanced features that will let you fine-tune your pipeline.
Resources
This option lets you optimize the efficiency of your processes by assigning the resources on the basis of the tasks the pipeline performs:
Image loading...Setting resources in pipeline
Priority
Priority determines how soon a queued pipeline will be triggered. For instance, if there are 4 pipelines in the queue, and you assign High priority to the last one, it will move up the line and be executed once the ongoing execution is completed:
Image loading...Setting priority in pipeline
Force deploy from scratch
Most of the deployment actions are based on changesets, which means only the files from the latest revision are deployed. Checking 'Force deploy from scratch' will force Buddy to deploy all files from the repository on every execution. If the option is selected, the changeset trigger conditions added in the pipeline won't be taken into account.
Clear cache before execution
The cache stores a clone of the repository and dependencies required by your build, which massively reduces build times. In some cases, however, you may need to fetch the dependencies on every build execution. To do that, select the option 'Erase filesystem, Docker layers & cached container paths on run'. It will force Buddy to download the packages every time the pipeline is run. If the option is selected, the changeset trigger conditions added in the pipeline won't be taken into account.
Skip queued runs for same Git reference
If a user triggers a pipeline that's already in progress, the execution will be queued and won't start until the first one is over. If there are more executions queued (for example 5) and you check 'New run for same Git reference terminates runs in progress', Buddy will only run the newest execution (5th) and skip the rest (2-4).
Image loading...Runtime configuration
Terminate runs in progress for same Git reference
If a user triggers a pipeline that's already in progress, the ongoing execution will be terminated and replaced with the new one.
Execute pipeline runs concurrently
Selecting the option lets you trigger multiple executions of a single pipeline simultaneously. This feature is useful if you want to test every single commit or test multiple branches at the same time.
Fetch all refs
When the pipeline is run, Buddy fetches only one Git reference to the pipeline filesystem (branch, tag or pull request). Selecting the 'Fetch all refs' option will force Buddy to fetch all Git references.
Clone depth
The clone depth specifies how many commits should be cloned to the filesystem on the pipeline execution. Creating a shallow clone is useful if your .git/
directory occupies too much space.
Image loading...Clone presets
Target URL
The Quick Link puts a label on your pipeline that lets you promptly access the associated website, e.g. to review changes after a deployment.
Image loading...Setting quick link
Trigger condition
Usually, your application is first built and then deployed to the server. However, not every change in the repository requires a build. In such cases, The Run if tab is the place to go to define certain conditions that will trigger the build.
Image loading...Setting trigger conditions
Visibility & permissions
The Permissions tab in the pipeline settings allows you to restrict pipeline's visibility and scope of operations to individual users and groups.
Image loading...Permission settings
The permissions can be restricted to the following built-in roles:
- None (Deny) – the user cannot see the pipeline in the project at all
- Project role – the permission defined in the role with which the user was assigned to the project (default)
- View-only – the user can browse the pipeline but cannot run or modify its settings
- Run-only – the user can run the pipeline, but cannot modify its settings
- Manage – the user can run and modify the pipeline, just like with the Developer role
Sep 23, 2024