From c2ca3e3ebd9302fe4bd4af9a76d918aa076654db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Pe=C4=8Dovnik?= Date: Mon, 20 Dec 2021 00:41:50 +0100 Subject: [PATCH] Github Actions update (#3361) --- .github/workflows/build-beta-images.yml | 26 ++++- .github/workflows/build-docker.yml | 102 ++++++++++++------ .../build-kernel-on-merge-request.yml | 4 +- .github/workflows/build-test-image-docker.yml | 8 ++ .github/workflows/build-u-boot.yml | 6 +- 5 files changed, 106 insertions(+), 40 deletions(-) diff --git a/.github/workflows/build-beta-images.yml b/.github/workflows/build-beta-images.yml index e805f5dd33..b50859536b 100644 --- a/.github/workflows/build-beta-images.yml +++ b/.github/workflows/build-beta-images.yml @@ -1,11 +1,22 @@ -name: Beta images +name: Beta Images on: workflow_dispatch: jobs: + merge: + uses: armbian/scripts/.github/workflows/merge-from-branch.yml@master + + with: + branch: 'nightly' + + secrets: + GPG_KEY2: ${{ secrets.GPG_KEY2 }} + GPG_PASSPHRASE2: ${{ secrets.GPG_PASSPHRASE2 }} + x86: + needs: [ merge ] uses: armbian/scripts/.github/workflows/build-with-docker.yml@master with: @@ -28,12 +39,13 @@ jobs: KNOWN_HOSTS_UPLOAD: ${{ secrets.KNOWN_HOSTS_UPLOAD }} cli: + needs: [ merge ] uses: armbian/scripts/.github/workflows/build-with-docker.yml@master with: variant: 'cli:beta' - runner: "small" + runner: "ubuntu-latest" part: 1 of: 1 include: '' @@ -51,6 +63,7 @@ jobs: desktop: + needs: [ merge ] uses: armbian/scripts/.github/workflows/build-with-docker.yml@master with: @@ -70,3 +83,12 @@ jobs: SCRIPTS_ACCESS_TOKEN: ${{ secrets.SCRIPTS_ACCESS_TOKEN }} SSH_KEY_TORRENTS: ${{ secrets.KEY_TORRENTS }} KNOWN_HOSTS_UPLOAD: ${{ secrets.KNOWN_HOSTS_UPLOAD }} + + jobsend: + name: finish + needs: [x86,cli,desktop] + runs-on: [ubuntu-latest] + if: ${{ github.repository_owner == 'Armbian' }} + steps: + - run: | + echo "End" diff --git a/.github/workflows/build-docker.yml b/.github/workflows/build-docker.yml index 4bbd6d1111..4c7c0c6191 100644 --- a/.github/workflows/build-docker.yml +++ b/.github/workflows/build-docker.yml @@ -12,7 +12,7 @@ jobs: build-arm64: name: Build for ARM - runs-on: arm64 + runs-on: aarch64 if: ${{ github.repository_owner == 'Armbian' }} steps: @@ -25,6 +25,72 @@ jobs: ref: master clean: false + - name: Checkout support scripts + uses: actions/checkout@v2 + with: + fetch-depth: 0 + repository: armbian/scripts + path: scripts + clean: false + + - name: Sync + run: | + mkdir -p build/userpatches + sudo cp scripts/configs/* build/userpatches/ + + - name: Login to GitHub Container Registry + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.CR_PAT }} + + - name: Build Docker image + + run: | + + docker stop $(docker ps -a -q) 2>/dev/null || true + docker rm $(docker ps -a -q) 2>/dev/null || true + docker images -a | awk '{print $3}' | xargs docker rmi --force 2>/dev/null || true + cd build + sed -i "s/-it --rm/-i --rm/" config/templates/config-docker.conf + touch .ignore_changes + ./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 + + - name: Push Docker image + + run: docker push ghcr.io/armbian/build:$(cat build/VERSION | sed 's/trunk.*/trunk/')"-$(dpkg --print-architecture)" + + + build-amd64: + + name: Build for X86 + runs-on: ubuntu-latest + if: ${{ github.repository_owner == 'Armbian' }} + steps: + + - name: Checkout repository + uses: actions/checkout@v2 + with: + fetch-depth: 0 + repository: armbian/build + path: build + ref: master + clean: false + + - name: Checkout support scripts + uses: actions/checkout@v2 + with: + fetch-depth: 0 + repository: armbian/scripts + path: scripts + clean: false + + - name: Sync + run: | + mkdir -p build/userpatches + sudo cp scripts/configs/* build/userpatches/ + - name: Login to GitHub Container Registry uses: docker/login-action@v1 with: @@ -40,37 +106,7 @@ jobs: sed -i "s/-it --rm/-i --rm/" config/templates/config-docker.conf touch .ignore_changes ./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)-arm64 - name: Push Docker image - run: docker push ghcr.io/armbian/build:$(cat VERSION)-arm64 - - - build-amd64: - - name: Build for X86 - runs-on: ubuntu-latest - if: ${{ github.repository_owner == 'Armbian' }} - steps: - - - name: Checkout repository - uses: actions/checkout@v2 - - - name: Login to GitHub Container Registry - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.CR_PAT }} - - - name: Build Docker image - - run: | - - sed -i "s/-it --rm/-i --rm/" config/templates/config-docker.conf - touch .ignore_changes - ./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)-amd64 - - - name: Push Docker image - run: docker push ghcr.io/armbian/build:$(cat VERSION)-amd64 + + run: docker push ghcr.io/armbian/build:$(cat build/VERSION | sed 's/trunk.*/trunk/')"-$(dpkg --print-architecture)" diff --git a/.github/workflows/build-kernel-on-merge-request.yml b/.github/workflows/build-kernel-on-merge-request.yml index b85c71fc5b..de4eec0df3 100644 --- a/.github/workflows/build-kernel-on-merge-request.yml +++ b/.github/workflows/build-kernel-on-merge-request.yml @@ -44,7 +44,7 @@ jobs: run: | # make sure to cut what is after trunk in case we start from nightly - sudo docker pull ghcr.io/armbian/build:$(cat build/VERSION | sed 's/trunk.*/trunk/') + sudo docker pull ghcr.io/armbian/build:$(cat build/VERSION | sed 's/trunk.*/trunk/')"-$(dpkg --print-architecture)" - name: Determine changed kernels run: | @@ -133,7 +133,7 @@ jobs: if: ${{ matrix.node != 'none:none:none' }} run: | - sudo docker pull ghcr.io/armbian/build:$(cat build/VERSION | sed 's/trunk.*/trunk/') + sudo docker pull ghcr.io/armbian/build:$(cat build/VERSION | sed 's/trunk.*/trunk/')"-$(dpkg --print-architecture)" - name: Build if: ${{ matrix.node != 'none:none:none' }} diff --git a/.github/workflows/build-test-image-docker.yml b/.github/workflows/build-test-image-docker.yml index e59edc476b..1506b5dbfe 100644 --- a/.github/workflows/build-test-image-docker.yml +++ b/.github/workflows/build-test-image-docker.yml @@ -36,6 +36,14 @@ jobs: path: build clean: true + - name: Checkout support scripts + uses: actions/checkout@v2 + with: + fetch-depth: 0 + repository: armbian/scripts + path: scripts + clean: true + - name: Sync run: | diff --git a/.github/workflows/build-u-boot.yml b/.github/workflows/build-u-boot.yml index 9afaf54e72..43ed178ad5 100644 --- a/.github/workflows/build-u-boot.yml +++ b/.github/workflows/build-u-boot.yml @@ -2,9 +2,9 @@ name: Beta Bootloader on: workflow_dispatch: - workflow_run: - workflows: ["Beta Kernel"] - types: [completed] +# workflow_run: +# workflows: ["Beta Kernel"] +# types: [completed] jobs: