Another pack of updates for Github actions (#3288)

This commit is contained in:
Igor Pečovnik 2021-11-23 22:37:06 +01:00 committed by GitHub
parent e9fe8fe177
commit a55122a1d2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 77 additions and 64 deletions

View File

@ -1,4 +1,4 @@
name: Build beta images
name: Build Beta Images
on:
workflow_dispatch:

View File

@ -1,4 +1,4 @@
name: Build beta kernel packages
name: Build Beta Kernel
on:
schedule:

View File

@ -1,4 +1,4 @@
name: Build rootfs cache
name: Build Rootfs Cache
on:
workflow_dispatch:

View File

@ -1,4 +1,4 @@
name: Build Docker image
name: Build Docker Image
on:
# Trigger the workflow on push but only for the main branch
push:
@ -30,7 +30,7 @@ jobs:
run: |
sed -i "s/-it --rm/-i --rm/" config/templates/config-docker.conf
touch .ignore_changes
./compile.sh docker JUST_INIT="yes"
./compile.sh docker BOARD=virtual-qemu BRANCH=current RELEASE=focal BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no COMPRESS_OUTPUTIMAGE=no REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-firmware" JUST_INIT=yes
docker tag armbian:$(cat VERSION) ghcr.io/armbian/build:$(cat VERSION)
- name: Push Docker image

View File

@ -1,4 +1,4 @@
name: Lint scripts and build kernel
name: Lint Scripts And Build Kernel
on:
workflow_dispatch:

View File

@ -1,4 +1,4 @@
name: Build selected image
name: Build Selected Image
on:

View File

@ -1,4 +1,4 @@
name: Stable images
name: Build Stable Images
on:

View File

@ -1,19 +1,23 @@
name: Build image with CI Docker image
name: Build With Docker Image
on:
# Trigger the workflow on push but only for the main branch
#push:
# branches:
# - master
# Trigger manually
# Trigger after Docker image was built
workflow_run:
workflows: ["Build Docker image"]
types:
- completed
# Trigger manually
workflow_dispatch:
jobs:
Build:
name: Build image with CI Docker image
runs-on: ubuntu-latest
gradle:
strategy:
fail-fast: false
matrix:
release: [focal,buster,bullseye,hirsute,jammy]
branch: [current]
if: ${{ github.repository_owner == 'Armbian' }}
name: Variant
runs-on: ubuntu-latest
steps:
- name: Checkout repository
@ -35,12 +39,45 @@ jobs:
- name: Sync
run: |
mkdir -p build/userpatches
sudo cp scripts/configs/* build/userpatches/
- name: Pull Docker image
run: |
docker pull ghcr.io/armbian/build:$(cat build/VERSION)
sudo docker pull ghcr.io/armbian/build:$(cat build/VERSION)
- name: Build Qemu virtual image
run: |
cd build
# we need to fix this once but fake toolchain will prevent downloading it each time
mkdir -p cache/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu
touch cache/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/.download-complete
mkdir -p cache/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi
touch cache/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabi/.download-complete
mkdir -p cache/toolchain/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux
touch cache/toolchain/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/.download-complete
mkdir -p cache/toolchain/gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux
touch cache/toolchain/gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux/.download-complete
mkdir -p cache/toolchain/gcc-linaro-arm-none-eabi-4.8-2014.04_linux
touch cache/toolchain/gcc-linaro-arm-none-eabi-4.8-2014.04_linux/.download-complete
mkdir -p cache/toolchain/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu
touch cache/toolchain/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/.download-complete
mkdir -p cache/toolchain/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf
touch cache/toolchain/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/.download-complete
mkdir -p cache/toolchain/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu
touch cache/toolchain/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/.download-complete
mkdir -p cache/toolchain/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf
touch cache/toolchain/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/.download-complete
sed -i "s/-it --rm/-i --rm/" userpatches/config-docker.conf
sed -i "s/COMPRESS_OUTPUTIMAGE=.*/COMPRESS_OUTPUTIMAGE=\"no\"/" userpatches/lib.config
./compile.sh docker BOARD=virtual-qemu BRANCH=current RELEASE=focal BUILD_MINIMAL=yes BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no COMPRESS_OUTPUTIMAGE=no REPOSITORY_INSTALL="u-boot,kernel,armbian-config,armbian-firmware"
./compile.sh docker BETA=yes EXPERT=yes BOARD=virtual-qemu BRANCH=${{ matrix.branch }} RELEASE=${{ matrix.release }} BUILD_MINIMAL=no BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=prebuilt COMPRESS_OUTPUTIMAGE=no IGNORE_UPDATES=yes
# - name: Upload artefacts
# uses: actions/upload-artifact@v2
# with:
# name: virtual-qemu
# path: build/output/images/*

View File

@ -1,4 +1,4 @@
name: Build beta u-boot packages
name: Build Beta U-boot
on:
workflow_dispatch:

View File

@ -1,4 +1,4 @@
name: Forked helper
name: Forked Helper
on:
push:

View File

@ -1,4 +1,4 @@
name: Maintain runners
name: Maintain Runners
on:
workflow_dispatch:
@ -75,17 +75,9 @@ jobs:
cd build
[[ ! -f .ignore_changes ]] && sudo touch .ignore_changes
sudo rm -rf cache/sources
if [[ $(curl -s http://ifconfig.me) == "93.103.15.56" ]]; then
sudo rm -rf cache/toolchain
sudo mkdir -p cache/toolchain cache/rootfs || true
! sudo mountpoint -q cache/toolchain && sudo mount nas:/tank/armbian/toolchain.armbian.com cache/toolchain -o rsize=32768,wsize=32768,timeo=5,retrans=2,actimeo=60,retry=15 || true
! sudo mountpoint -q cache/rootfs && sudo mount nas:/tank/armbian/dl.armbian.com/_rootfs cache/rootfs -o rsize=32768,wsize=32768,timeo=5,retrans=2,actimeo=60,retry=15 || true
fi
./compile.sh KERNEL_ONLY="yes" CLEAN_LEVEL="sources,alldebs" BOARD="bananapim64" BRANCH="current" KERNEL_CONFIGURE="no" USE_TORRENT="yes" REPOSITORY_INSTALL="kernel,u-boot"
sudo rm -rf output/debs
sudo rm -rf output/debs-beta
Caches:
name: Sync & test cache integrity
@ -103,7 +95,7 @@ jobs:
Check:
name: Checks
needs: [ Caches ]
runs-on: [self-hosted, Linux, x64, images]
runs-on: [self-hosted, Linux, x64, cache]
if: ${{ github.repository_owner == 'armbian' }}
timeout-minutes: 480
strategy:
@ -146,8 +138,18 @@ jobs:
path: build
ref: nightly
clean: false
- name: Import GPG key
uses: crazy-max/ghaction-import-gpg@v3
with:
gpg-private-key: ${{ secrets.GPG_KEY1 }}
passphrase: ${{ secrets.GPG_PASSPHRASE1 }}
workdir: scripts
git-user-signingkey: true
- name: Sync or mount rootfs
env:
GPG_PASS: ${{ secrets.GPG_PASSPHRASE1 }}
run: |
# Test compressed file integrity
@ -161,37 +163,11 @@ jobs:
fi
ls -l build/cache/rootfs/
sudo lz4 -t build/cache/rootfs/${CHUNK}
Docker-arm64:
name: Docker image on arm64
runs-on: [self-hosted, Linux, ARM64]
if: ${{ github.repository_owner == 'Armbian' }}
steps:
- name: Fix permissions
run: |
[[ -d build/.git ]] && sudo chown -R $USER:$USER build/.git || true
- name: Checkout Armbian build script
uses: actions/checkout@v2
with:
fetch-depth: 0
repository: armbian/build
path: build
ref: nightly
clean: false
- name: Build Docker image
run: |
cd build
sed -i "s/-it --rm/-i --rm/" config/templates/config-docker.conf
[[ ! -f .ignore_changes ]] && sudo touch .ignore_changes
./compile.sh dockerpurge KERNEL_ONLY="yes" BOARD="bananapi" BRANCH="current" KERNEL_CONFIGURE="no" \
USE_TORRENT="yes" REPOSITORY_INSTALL="kernel" 'prepare_host'
sed -i "s/-it --rm/-i --rm/" userpatches/config-docker.conf
echo "${GPG_PASS}" | sudo -H -u ${USER} bash -c "gpg --passphrase-fd 0 --armor --detach-sign --pinentry-mode loopback --batch --yes build/cache/rootfs/${CHUNK}" || exit 1
Finish:
name: Finish
needs: [Check,Docker-arm64]
needs: [Check]
runs-on: [self-hosted, Linux, small]
if: ${{ github.repository_owner == 'Armbian' }}
steps:

View File

@ -1,4 +1,4 @@
name: Update package repository
name: Update Repository
on:
workflow_dispatch: