ci/base: add the repo path and comments to help working locally #132
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Yocto | |
on: | |
workflow_call: | |
pull_request: | |
push: | |
branches: | |
- main | |
env: | |
CACHE_DIR: /srv/gh-runners/quic-yocto | |
KAS_REPO_REF_DIR: /srv/gh-runners/quic-yocto/kas-mirrors | |
jobs: | |
kas-lock: | |
if: github.repository == 'quic-yocto/meta-qcom-hwe' | |
runs-on: [self-hosted, x86] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Run kas lock | |
run: | | |
kas dump --update --lock --inplace ci/base.yml | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: kas-lock | |
path: ci/*.lock.yml | |
yocto-check-layer: | |
needs: kas-lock | |
if: github.repository == 'quic-yocto/meta-qcom-hwe' | |
runs-on: [self-hosted, x86] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/download-artifact@v4 | |
with: | |
name: kas-lock | |
path: ci/*.lock.yml | |
- name: Run yocto-check-layer | |
run: | | |
ci/yocto-check-layer.sh | |
compile: | |
needs: kas-lock | |
if: github.repository == 'quic-yocto/meta-qcom-hwe' | |
strategy: | |
fail-fast: true | |
matrix: | |
machine: | |
- qcm6490-idp | |
- qcs6490-rb3gen2-core-kit | |
- sa8775p-ride-sx | |
runs-on: [self-hosted, x86] | |
name: ${{ matrix.machine }}/poky/systemd | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/download-artifact@v4 | |
with: | |
name: kas-lock | |
path: ci/*.lock.yml | |
- name: Kas build | |
run: | | |
export DL_DIR=${CACHE_DIR}/downloads | |
export SSTATE_DIR=${CACHE_DIR}/sstate-cache | |
export KAS_WORK_DIR=$PWD/../kas | |
mkdir $KAS_WORK_DIR | |
kas build ci/mirror.yml:ci/${{ matrix.machine }}.yml | |
- name: Publish image | |
run: | | |
build_dir=${CACHE_DIR}/builds/${GITHUB_RUN_ID} | |
mkdir -p $build_dir | |
img_dir=$build_dir/${{ matrix.machine }} | |
[ -d $img_dir ] && rm -rf $img_dir | |
mv ../kas/build/tmp/deploy/images/${{matrix.machine}} $img_dir | |
# Instruct our file server to make these files available for download | |
url="https://quic-yocto-fileserver-1029608027416.us-central1.run.app/${GITHUB_RUN_ID}/${{ matrix.machine }}/" | |
retries=3 | |
for ((i=0; i<retries; i++)); do | |
curl -X POST -v ${url} && break | |
echo "something went wrong, sleep and retry" | |
sleep 2 | |
done | |
(( retries == i )) && { echo 'Failed to publish artifacts'; exit 1; } | |
echo Image available at: ${url} |