1
0
mirror of synced 2025-12-25 11:03:37 -05:00
Files
docs/content/actions/using-github-hosted-runners/customizing-github-hosted-runners.md
2021-04-30 19:30:36 -07:00

2.4 KiB

title, intro, product, versions, type, topics
title intro product versions type topics
Customizing GitHub-hosted runners You can install additional software on GitHub-hosted runners as a part of your workflow. {% data reusables.gated-features.actions %}
free-pro-team enterprise-server
* >=2.22
tutorial
Workflows

{% data reusables.actions.enterprise-github-hosted-runners %}

If you require additional software packages on {% data variables.product.prodname_dotcom %}-hosted runners, you can create a job that installs the packages as part of your workflow.

To see which packages are already installed by default, see "Preinstalled software."

This guide demonstrates how to create a job that installs additional software on a {% data variables.product.prodname_dotcom %}-hosted runner.

Installing software on Ubuntu runners

The following example demonstrates how to install an apt package as part of a job.

{% raw %}

name: Build on Ubuntu
on: push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - name: Check out repository code
      uses: actions/checkout@v2
    - name: Install jq tool
      run: |
        sudo apt-get update
        sudo apt-get install jq

{% endraw %}

{% note %}

Note: Always run sudo apt-get update before installing a package. In case the apt index is stale, this command fetches and re-indexes any available packages, which helps prevent package installation failures.

{% endnote %}

Installing software on macOS runners

The following example demonstrates how to install Brew packages and casks as part of a job.

{% raw %}

name: Build on macOS
on: push

jobs:
  build:
    runs-on: macos-latest
    steps:
    - name: Check out repository code
      uses: actions/checkout@v2
    - name: Install GitHub CLI
      run: |
        brew update
        brew install gh
    - name: Install Microsoft Edge
      run: |
        brew update
        brew install --cask microsoft-edge

{% endraw %}

Installing software on Windows runners

The following example demonstrates how to use Chocolatey to install the {% data variables.product.prodname_dotcom %} CLI as part of a job.

{% raw %}

name: Build on Windows
on: push
jobs:
  build:
    runs-on: windows-latest
    steps:
      - run: choco install gh
      - run: gh version

{% endraw %}