Helios User Guide

Overview

Helios is a deployment management tool that simplifies the process of deploying pull requests and branches to your environments. This guide walks you through the basic deployment workflow.

Prerequisites

  • GitHub account with access to the repository (should have at least WRITE permissions)

  • Available GitHub environments (configured in the repository’s Settings > Environments section)

Deployment Workflow

1. Repository Selection

Select the repository you want to deploy from the Helios home page .

Repository selection screen

2. Authentication

  • Log in with your GitHub account.

Login with GitHub GitHub authentication

3. Pull Request Selection

  • Choose the pull request or branch you want to deploy.

Pull request table screen Pull request details screen

Note

If your repository has a build workflow that must complete before deployment can start, please wait for it to finish.

For example, in the Artemis repository, deployments for PRs and default branches rely on the build workflow completing successfully before the deployment workflow begins. For other branches deployed directly to test servers, the build is triggered during deployment. Therefore, deployments of non-default branches (not part of a PR to the default branch) may take more time.

GitHub build workflow status example

4. Deployment Initiation

  • Click the deploy button to start the deployment process.

Deploy button and options
  • The deployment enters a pending state. This is the initial phase that begins immediately after the workflow is triggered.

During this phase, the workflow may:

  • Check whether a successful build for the selected branch or commit already exists.

  • Run the build pipeline before proceeding to the actual deployment.

  • Wait in the GitHub Actions queue if there is high activity in the repository (e.g., many workflows running concurrently).

Depending on the repository setup and GitHub’s action runners, this phase may take varying amounts of time.

Deployment pending status
  • The deployment moves to the in-progress state during active deployment.

Deployment progress status
  • Once deployment is complete, the workflow should display a green check mark indicating success, and the server’s status should also appear as healthy.

Successful deployment with green check

5. Unlock the environment once you finish testing.

Unlock test environment

Troubleshooting

Manual Deployment Fallback

Warning ⚠️

Manual workflow deployment should be used only as a last resort, as it may conflict with Helios' environment locking mechanism.

If Helios is temporarily unresponsive, inaccessible, or experiencing issues that prevent you from triggering deployments, you can fall back to manually triggering a GitHub Actions workflow.

This fallback mechanism requires a working CI/CD pipeline in your repository. The exact workflow name and configuration may vary across repositories.

As an example, in the Artemis repository, deployments to test servers and staging/production environments are handled by two separate workflows:

GitHub deployment workflow

Required Inputs

  • Use workflow from: Select your target branch

  • Which branch to deploy: Again, select your target branch

  • Commit SHA to deploy: Write the commit SHA you want to deploy

  • Which environment to deploy: Use format artemis-test7.artemis.cit.tum.de

  • Username: Your GitHub username

Note

Some of the input fields listed above may be optional depending on how the deployment workflow is implemented in your repository. Each repository defines its own required and optional inputs, so refer to the workflow YAML file or the GitHub Actions UI to understand which fields are used.

Support

For assistance: