particle-os-cli/.github/workflows/build.yml
2024-02-19 20:52:20 -05:00

60 lines
1.5 KiB
YAML

name: Earthly main branch +all
on:
workflow_dispatch:
push:
branches:
- main
env:
FORCE_COLOR: 1
jobs:
build:
permissions:
packages: write
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- name: Maximize build space
uses: ublue-os/remove-unwanted-software@v6
- uses: earthly/actions-setup@v1
with:
version: v0.8.3
- name: Earthly login
env:
EARTHLY_SAT_TOKEN: ${{ secrets.EARTHLY_SAT_TOKEN }}
if: env.EARTHLY_SAT_TOKEN != null
run: |
earthly account login --token ${{ secrets.EARTHLY_SAT_TOKEN }} >> /dev/null
earthly org s blue-build
earthly sat s blue-build
# Setup repo and add caching
- uses: actions/checkout@v4
with:
ref: main
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Run build
if: github.repository == 'blue-build/cli'
run: earthly --push --ci +build
- name: Switch to integration-tests satellite
env:
EARTHLY_SAT_TOKEN: ${{ secrets.EARTHLY_SAT_TOKEN }}
if: env.EARTHLY_SAT_TOKEN != null
run: earthly sat s blue-build-integration-tests
- name: Run integration tests
if: github.repository == 'blue-build/cli'
run: earthly --ci -P ./integration-tests+all