v1

Release /

Run and manage releases

You can run and manage release flows from the pipeline you created them in.

Select the pipeline that contains the release flows you want to manage from the pipelines list. You can run a release flow for a stage, or click the options button to view runs or edit the release flow.

Run a release flow manually

You can run a release flow for a pipeline stage by clicking run in the release header in the pipeline overview.

You can enter a display name and description for the release run to help you track releases, particularly useful if you need to roll back a release. If you do not enter a name for the run it will display the generated UUID, but you can edit the display name of a run afterwards.

If the release flow contains any build deployments from build services or container registries you will be able to override the configured build or image to deploy, if required.

Click run to begin the release flow run and the view of the release flow run will open, showing you the status of each workflow and node as they are executed.

An example of a release flow run in the Northflank application

Use Git triggers to run a release flow

You can add Git triggers on the settings page of a release flow.

A trigger will run the release flow whenever a change to the specified repository is committed.

You can include:

  • branch and pull request rules to only trigger on commits to specific branches or pull requests
  • path rules to only trigger on changes to specific directories or files in a repository, or to ignore changes to specific directories or files
  • commit message ignore flags to skip runs for commits with messages that contain certain strings

You can refer to Git triggers in your release flow template.

Run a release flow using a webhook

You can enable a webhook trigger to generate a URL that will run your release flow when it receives a GET or POST request. This can be used to quickly integrate with third-party services such as GitHub Actions.

Arguments can be provided by adding URL query parameters and accessed in the release flow template. The arguments name and description modify the name or description of the run, rather than being passed as arguments into the template.

View runs

The state of the current or most recent release is indicated in the release header for each pipeline stage. This can be clicked on to view the currently running release, or the list of previous runs.

Release flow run statuses

Pending: the release flow is scheduled to run

Running: the release flow is currently running

Success: all of the nodes within the release flow completed successfully

Failed: some or all of the nodes within the release flow failed to complete successfully

Release flow runs

Click the options button and select view release flow runs.

A list of release flow runs and rollbacks in the Northflank application

This displays a list of previous and current release flow runs and their status. You can also see when the release flow was run, when it was completed, and whether it was a release or rollback.

Click on any run in the list to view the status of individual nodes. You can click on an individual node to view its code, as well as the response object which contains the response from the Northflank API and the retries object, which contains information about any attempted retries.

Node statuses

Pending: the node or workflow will run when previous steps are executed successfully

Running: the node or workflow is currently being executed

Waiting: the node is waiting for an action to be completed, will eventually timeout unless it receives a successful response

Retrying: the node has failed on previous runs, but is being executed again (up to 3 attempts)

Success: the node or workflow has completed successfully

Failed: the node or workflow has failed to execute, or exceeded 3 retries

Roll back a release

You can roll back to a specific release by opening it from the list of past release flow runs.

Click roll back to this release to return your pipeline stage to the state it was in after the selected release flow run.

Deployments to services, builds, etc, will be reverted to those deployed or promoted in the selected release flow run. This will not undo any changes such as a database migration, which you will need to restore manually.

You can also choose to roll back release flow configuration, which will restore your release flow configuration to the state it was in for the selected run.

Select view rollbacks to see a list of rollbacks to the selected release.

© 2024 Northflank Ltd. All rights reserved.