Snake CI Release Notes
This page documents all changes made from release to release.
We often write blog posts for major & minor releases, make sure to check it out too: Snake CI Blog.
New option in settings added: «Use HTTP(S) instead of SSH for cloning repositories». Snake Runner will use http (or https if available) protocol for fetching Git repositories using special secret access tokens issued by the add-on.
This feature requires upgrading your Snake Runner instances to version 0.8.4.
Changelog: Snake Runner Release Notes
- Pipelines from forks were not properly attached to pull requests.
We’ve submitted the DataCenter approved version by Atlassian team to Marketplace.
No technical changes.
Technical release related to Data Center reviewal process.
- Disable synchronous hooks for Data Center by default due to additional git processes spawned during snake-ci.yaml validation;
- Move Snake CI/CD section lower in Repository/Project Settings.
- Remove prefix
Add-on:from the admin menu.
New environment variables:
The unique hash of a previous commit that triggered the pipeline.
The short representation of
The ID of the pull request triggered the pipeline (scope to the repository).
The title of the pull request.
The state of the pull request.
The target ref of the pull request (base branch).
The target ref’s commit of the pull request.
Whether the target repository is fork. Value: true or false.
The source ref of the pull request (to be merged).
The source ref’s commit of the pull request.
Whether the source repository is fork. Value: true or false.
Whether the merge is cross-repository. Value: true or false.
See other environment variables here.
Snake CI features for forked repositories now can be disabled globally, on the project or the repository levels.
Learn more about available settings here.
Pipeline & Jobs counters are rendered server-side now too;
Moved Snake CI menu items below in the admin menu (a hard requirement by Atlassian);
Two new clean up strategies:
- delete pipelines, jobs, and jobs logs if repository deleted;
- regularly clean up old pipelines, jobs, and jobs logs if they are older than the specified number of days (default value is 60 days);
Allow admins to switch mode of Snake CI post-receive hook from synchronous into asynchronous. NOTE: asynchronous mode means that users will not receive the link on the pipeline created by given changeset during
Data Center only: automatic refresh of counters is disabled by default now, but it can be enabled in the admin panel;
A feature that allows users to define their own templates with a set of environment variables for New Pipeline buttons available on Pipeline List & Pull Request pages.
A few new attributes on environment variables, we make our best to help you to hide your secrets in jobs logs.
The GO TO LAST LINE button. Users now can press the follow logs button on the bottom of the Pipeline page and follow jobs logs as they appear in real time.
- Multiple environment variables could have the same name.
- Fix an exception when using an empty YAML file as the pipeline definition.
- Do not request Pipelines & Jobs counters on the Project Settings page
- Do not request Pipelines & Jobs counters on the projects pages with no repositories and on the repositories pages without Pipelines.
- Limit size of commit messages shown on the Pipeline page to 1MB (too long messages are truncated).
- Fix matching regular expressions in the
Add the current stage and the status of jobs to the pipelines list; Screenshot.
Add the Run Pipeline button on Pull Request page.
The button consists of two parts:
The left part immediately triggers a new pipeline on the current branch;
The right part opens a dialog where the branch is already set and you can specify additional environment variables; Screenshot.
- Removing an online runner will gracefully terminate its pipelines and shut down the runner;
- A runner’s name doesn’t need to be unique anymore;
- Improved support for Bitbucket 5+
- Fix: an error while deleting an environment variable;
- Fix: some icons were missing on old versions of Bitbucket
- Cosmetic changes due to different versions of the Atlassian UI framework.
- Improved consistency with Atlassian Design Guidelines:
in progressstatuses are blue now, only
successstatus is green
- Fix: an error while retrying a pipeline in the Pipelines tab on the Pull Requests page;
- Fix: clicking on the Back button on the Pull Requests page did not work properly in some scenarios;
- Fix: an error while cancelling a pending pipeline due to an unavailable runner;
- Fix: pipelines triggered by a Merge Commit were not automatically linked to related Pull Requests;
- Fix: an error while cancelling a running pipeline created by the Retry button.
Now a branch, a tag, or a variable name in the
onlysection may be a regular expression. The regular expression must be specified using
/symbol surrounding it.
With the new release, it’s possible to use submodules and clone other repositories from your Bitbucket instance without managing SSH keys manually.
Additional support for Bitbucket 7 which brings back the Pipelines tab in single Pull Request view.
- Fix: overriding variable value by specifying variable with the same name on different scope did not work.
- Fix: invalid listing order of runners in Admin panel; now online runners always be listed first.
- Fix: typos and other minor problems in the UI
Consider updating the runner to the latest version (0.4.0) to get the most out of the new add-on release.
onlysection added. The CI evaluates that at least one variable from the given list is specified before creating the job. The variables can be specified in Environment Variables or specified by a user in the New Pipeline dialog.
User-specified environment variables in New Pipeline dialog.
Now users can specify a list of key-value variables that will be used during Pipeline evaluation and execution.
- MySQL support improved
- Hooks installation fixes
- Retry of a pipeline with a broken config now produces correct status.
- Performance improvements related to enabling hooks during Bitbucket start
- Fix: UI did not display properly on the Bitbucket instances under non-root
context path (e.g.
The feature allows specifying a list of branches or tags that are allowed to execute a given job.
The hook introduces restrictions on merging Pull Requests. The hook ensures that the latest pipeline of the pull-request has the
COMPLETEDstatus, otherwise, it doesn’t allow merging the PR.
New action: New pipeline.
The button can be found on the page with the list of pipelines. Pressing the button opens the modal window where you can choose a branch or a tag and trigger pipeline on the specified Git reference.
- Fix: show only header line of multi-line commit messages;
- Fix: pipelines caused by merge commits didn’t bind properly to pull requests;
- Fix: properly redirect after pressing retry button from pipeline details page;
- Fix: pipelines caused by pull request update didn’t bind properly to a pull request in some cases because of the asynchronous nature of events.
New action: retry pipeline
The button can be found on pipeline details page or in the list of pipelines on the right side.
Pressing this button causes restart of the current pipeline with the new pipeline id.
On the pipeline page:
On the list of pipelines page:
- Duplicated counters in the sidebar menu
- Job status was not correctly updated if a parallel job failed
- Support for Oracle
- Data Center compatibility
- Improve performance of binding Pipelines to Pull Requests
Support for Bitbucket 5.x