diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 1a4e789..731301a 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,7 +9,7 @@ on: - "Formula/keyweave.rb" jobs: - test: + hosted: strategy: matrix: os: @@ -21,21 +21,37 @@ jobs: name: Test on ${{ matrix.os }} runs-on: ${{ matrix.os }} - continue-on-error: true steps: - - name: Check if Homebrew is installed + - name: Check installation using Homebrew run: | if ! command -v brew &> /dev/null then echo "Homebrew not found, installing..." /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + (echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /home/runner/.bashrc + eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" else echo "Homebrew is already installed." fi - - - name: Verify Homebrew installation - run: | brew tap bartvdbraak/keyweave brew install keyweave keyweave --version + emulated: + name: Test on raspios-lite + runs-on: ubuntu-latest + + steps: + - uses: pguyot/arm-runner-action@v2.5.2 + with: + commands: | + if ! command -v brew &> /dev/null + then + echo "Homebrew not found, installing..." + su pi -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + else + echo "Homebrew is already installed." + fi + su pi -c /usr/local/bin/brew tap bartvdbraak/keyweave + su pi -c /usr/local/bin/brew install keyweave + su pi -c keyweave --version \ No newline at end of file diff --git a/README.md b/README.md index 90a7ba9..28cacd7 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Homebrew Keyweave Formula +[![End-to-end tests](https://github.com/bartvdbraak/homebrew-keyweave/actions/workflows/tests.yml/badge.svg)](https://github.com/bartvdbraak/homebrew-keyweave/actions/workflows/tests.yml) + ## Description This Homebrew formula provides a convenient way to install [Keyweave](https://github.com/bartvdbraak/keyweave) on macOS and Linux systems. Keyweave is a tool that fetches secrets from Azure Key Vault and weaves them into a convenient .env file. This formula supports multiple architectures and libc variations, making it versatile for various system configurations.