Skip to content

Action Runners#

There are two broad catagories of Action Runners: Github Hosted and Self-Hosted.

Github Hosted Runners#

This is the default. They incur a cost per minute to run once our pre-allocated number has been reached. Currently we are allocated 50,000 minutes per month across the enterprise.

  • These runners do NOT have access to on-prem resources.
  • While we are nowhere near our limit of minutes you are free to use these, if we start to exhaust minutes we will work with teams to migrate to the U of M provided runners (see below).

How to use github hosted runners

Self-hosted Runners#

Self hosted runners are installed on your own hosts and do not include any tools/apps/binaries. Each team would be required to manage the installation and updates on their own.

Self Hosted runners may be needed to access on-prem resources such as Artifactory.

How to install and use Self-hosted runners.

U of MN Hosted Runners#

To help reduce this toil and additional consumption of University resources (vms), Devex will supply/manage U of MN self-hosted runners for Github Actions. The runners are created/updated by Github but run by Devex.

  • These runners operate on UofM IP space and therefore can access on-prem resources.
  • If you look on the Actions/runner groups page for your organization (github.com/organizations/YOUR-ORG-NAME/settings/actions/runner-groups) you will see a Default group listed under 'Shared by the Enterprise'. Example

Choosing a Runner#

Github's documentation on how to use a runner for a job can be found Here.

How to use the U of MN Runners#

All you have to do to is call out the label runs-on: arc-runner-enterprise in the actions yaml file in .github/workflows/

Note: Currently this does not support Windows runners

Example:

Text Only
# Simple workflow for deploying static content to GitHub Pages
name: Deploy static content to Pages
on:
  # Runs on pushes targeting the default branch
  push:
    branches: ["main"]
  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

jobs:
  # Single deploy job since we're just deploying
  deploy:
    runs-on: arc-runner-enterprise #Devex maintained arc-runner
    steps: ACTION_STEPS_HERE