From 6728cbcd9ed1530c8547815dcc7e59c2b8fc67f7 Mon Sep 17 00:00:00 2001 From: Jamie Brynes Date: Sat, 31 Aug 2024 15:45:25 +0100 Subject: [PATCH] ci: refactor out common build steps in CI pipelines --- .github/actions/setup/action.yml | 15 ++++++++++++ .github/workflows/premerge.yml | 42 ++++++++++++-------------------- 2 files changed, 31 insertions(+), 26 deletions(-) create mode 100644 .github/actions/setup/action.yml diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml new file mode 100644 index 0000000..3221bc5 --- /dev/null +++ b/.github/actions/setup/action.yml @@ -0,0 +1,15 @@ +name: "Common Setup" +description: "Sets up Nix and the development environment" +runs: + using: "composite" + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Install Nix + uses: DeterminateSystems/nix-installer-action@main + - name: Setup Magic Nix cache + uses: DeterminateSystems/magic-nix-cache-action@main + - name: Use nix-develop shell + uses: nicknovitski/nix-develop@v1.1.0 + with: + arguments: ./nix --impure diff --git a/.github/workflows/premerge.yml b/.github/workflows/premerge.yml index 0b30760..5e1b206 100644 --- a/.github/workflows/premerge.yml +++ b/.github/workflows/premerge.yml @@ -1,23 +1,24 @@ name: "premerge" on: [push] +setup_steps: &setup_steps + - name: Checkout + uses: actions/checkout@v4 + - name: Install Nix + uses: DeterminateSystems/nix-installer-action@main + - name: Setup Magic Nix cache + uses: DeterminateSystems/magic-nix-cache-action@main + - name: Use nix-develop shell + uses: nicknovitski/nix-develop@v1.1.0 + with: + arguments: ./nix --impure + jobs: build: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install Nix - uses: DeterminateSystems/nix-installer-action@main - - - name: Setup Magic Nix cache - uses: DeterminateSystems/magic-nix-cache-action@main - - - name: Use nix-develop shell - uses: nicknovitski/nix-develop@v1.1.0 - with: - arguments: ./nix --impure + - name: Setup + uses: ./.github/actions/setup - name: Install dependencies run: npm install @@ -41,19 +42,8 @@ jobs: docs: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install Nix - uses: DeterminateSystems/nix-installer-action@main - - - name: Setup Magic Nix cache - uses: DeterminateSystems/magic-nix-cache-action@main - - - name: Use nix-develop shell - uses: nicknovitski/nix-develop@v1.1.0 - with: - arguments: ./nix --impure + - name: Setup + uses: ./.github/actions/setup - name: Install dependencies run: npm install