Shipfox
Integrations/CI Provider

GitHub Actions

Overview

GitHub Actions is an automation tool that allows you to build, test, and deploy your code within GitHub. It enables you to create workflows that automate every step of your development process, enhancing software updates and code quality with integrated CI/CD features.

By connecting GitHub Actions with Shipfox, you can track the execution of your workflows, identify performance bottlenecks, troubleshoot operational issues, and optimize your deployment processes.

Setup

Install the GitHub App

Install the Shipfox GitHub App

Go Shipfox GitHub App's page and follow the steps to install it in your GitHub organization. This grants Shipfox the required permissions to run your GitHub Actions jobs.

Shipfox works only with GitHub organizations. It does not support personal repositories.

Assign a Shipfox organization

After installation, go to the Shipfox dashboard and choose which Shipfox organization to link with your GitHub App installation.

Run your CI jobs on Shipfox

Edit your GitHub Actions workflow file to use the Shipfox runner:

.github/workflows/ci.yml
jobs:
  build:
-    runs-on: ubuntu-latest
+    runs-on: shipfox-2vcpu-ubuntu-2404

Setup done

You’re now ready to unlock the full potential of CI with Shipfox.

Backfill with historical data

It is possible to ingest historical data from GitHub actions, which allows you to get started straight away.

  1. On the Shipfox dashboard, go to your organization's GitHub settings.
  2. In the Import from GitHub section, click on Import GitHub data.
  3. Input the repository information and date from which you want to import data.
  4. Click Import.

You import job has now started, you will be able to track its status from this settings page.

Due to rate-limit constraints of the GitHub API, import jobs can take a lot of time. With a complex CI, importing multiple months of data can take more than a day.We can also import only 1 repository at a time per GitHub App installation, therefore if you launch multiple jobs in parallel, they will be ran sequentially.