Dynamic YAML definitions
In the past, users had to choose either YAML or GUI pipeline configuration for each project, leading to restrictions and challenges for YAML enthusiasts. Now, with the new dynamic definitions, users can freely switch between both options within a single project, providing more flexibility and making it easier to manage their configurations.
With YAML mode enabled in the project, making any changes in the UI simply generated a code snippet that you then had to paste in manually.
New YAML functionality
With this update, each pipeline includes a new YAML tab that seamlessly syncs with any UI modifications you apply. Conversely, changes made within the YAML configuration are instantly reflected in the UI.
Image loading...
Every pipeline has an option to select whether to store the YAML configuration in the repository or not. This can be done by indicating the Location in the YAML tab.
When selecting the file's location, you can store it in any other repository (project) you have access to by choosing it from the dropdown menu.
By storing your YAML in the repository, you can also hard-set the branch it should be on, or choose to make it dynamic. If you want to have your configuration file on a fixed branch, Buddy will ignore the refs set in the file itself.
Image loading...
Dynamic branch
On git push
, the pipeline definition switches to the one defined in the branch, pull request (PR), or tag to which the push was made, provided that the push reference matches the pipeline's codescope definition set in YAML.
Example:
When the pipeline definition's codescope is set to refs/branches/dev
, the dev will switch the pipeline definition to its own once a push to dev is made.
Autodiscovery
By enabling autodiscovery option in the Project Settings, pipeline definitions will be autodiscovered in the /.buddy/
directory.
If the YAML definition includes multiple branches, Buddy will utilize the definition specific to each branch within its respective branch's codescope.
Adding .fixed
to the YAML filename (e.g., pipeline.fixed.yml) instructs Buddy to apply the initial branch's configuration across all branches listed in codescope. The "initial branch" refers to the branch where the definition was first introduced.
Jarek Dylewski
Customer Support
A journalist and an SEO specialist trying to find himself in the unforgiving world of coders. Gamer, a non-fiction literature fan and obsessive carnivore. Jarek uses his talents to convert the programming lingo into a cohesive and approachable narration.