diff --git a/.build/software/shairport-sync/container_build.bash b/.build/software/shairport-sync/container_build.bash index 330187de1c..f01582ed90 100755 --- a/.build/software/shairport-sync/container_build.bash +++ b/.build/software/shairport-sync/container_build.bash @@ -43,7 +43,7 @@ do esac shift done -[[ $DISTRO =~ ^'buster'|'bullseye'|'bookworm'$ ]] || { G_DIETPI-NOTIFY 1 "Invalid distro \"$DISTRO\" passed, aborting..."; exit 1; } +[[ $DISTRO =~ ^('buster'|'bullseye'|'bookworm')$ ]] || { G_DIETPI-NOTIFY 1 "Invalid distro \"$DISTRO\" passed, aborting..."; exit 1; } case $ARCH in 'armv6l') image="DietPi_Container-ARMv6-${DISTRO^}" arch=1;; 'armv7l') image="DietPi_Container-ARMv7-${DISTRO^}" arch=2;; diff --git a/.build/software/squeezelite/build.bash b/.build/software/squeezelite/build.bash index efb4d8e550..9e578c6cba 100755 --- a/.build/software/squeezelite/build.bash +++ b/.build/software/squeezelite/build.bash @@ -138,13 +138,21 @@ DEPS_APT_VERSIONED=${DEPS_APT_VERSIONED%,} # shellcheck disable=SC2001 grep -q 'raspbian' /etc/os-release && DEPS_APT_VERSIONED=$(sed 's/+rp[it][0-9]\+[^)]*)/)/g' <<< "$DEPS_APT_VERSIONED") || DEPS_APT_VERSIONED=$(sed 's/+b[0-9]\+)/)/g' <<< "$DEPS_APT_VERSIONED") +# - Obtain version +version="$(mawk -F\" '/MAJOR_VERSION/{print $2;exit}' squeezelite-master/squeezelite.h).$(mawk -F\" '/MINOR_VERSION/{print $2;exit}' squeezelite-master/squeezelite.h)-$(mawk -F\" '/MICRO_VERSION/{print $2;exit}' squeezelite-master/squeezelite.h)" +G_EXEC curl -sSfo package.deb "https://dietpi.com/downloads/binaries/$G_DISTRO_NAME/squeezelite_$G_HW_ARCH_NAME.deb" +old_version=$(dpkg-deb -f package.deb Version) +G_EXEC rm package.deb +suffix=${old_version#*-dietpi} +[[ $old_version == "$version-"* ]] && suffix="dietpi$((suffix+1))" || suffix="dietpi1" + # - control cat << _EOF_ > "$DIR/DEBIAN/control" Package: squeezelite -Version: $(mawk -F\" '/MAJOR_VERSION/{print $2;exit}' squeezelite-master/squeezelite.h).$(mawk -F\" '/MINOR_VERSION/{print $2;exit}' squeezelite-master/squeezelite.h)-$(mawk -F\" '/MICRO_VERSION/{print $2;exit}' squeezelite-master/squeezelite.h)-dietpi1 +Version: $version-$suffix Architecture: $(dpkg --print-architecture) Maintainer: MichaIng -Date: $(date '+%a, %d %b %Y %T %z') +Date: $(date -u '+%a, %d %b %Y %T %z') Standards-Version: 4.6.2.0 Installed-Size: $(du -sk "$DIR" | mawk '{print $1}') Depends:$DEPS_APT_VERSIONED diff --git a/.build/software/squeezelite/container_build.bash b/.build/software/squeezelite/container_build.bash index 88c9ae2ba1..44d7019178 100755 --- a/.build/software/squeezelite/container_build.bash +++ b/.build/software/squeezelite/container_build.bash @@ -43,18 +43,13 @@ do esac shift done -case $DISTRO in - 5) distro='buster';; - 6) distro='bullseye';; - 7) distro='bookworm';; - *) G_DIETPI-NOTIFY 1 "Invalid distro \"$DISTRO\" passed, aborting..."; exit 1;; -esac +[[ $DISTRO =~ ^('buster'|'bullseye'|'bookworm')$ ]] || { G_DIETPI-NOTIFY 1 "Invalid distro \"$DISTRO\" passed, aborting..."; exit 1; } case $ARCH in - 1) image="DietPi_Container-ARMv6-${distro^}" arch='armv6l';; - 2) image="DietPi_Container-ARMv7-${distro^}" arch='armv7l';; - 3) image="DietPi_Container-ARMv8-${distro^}" arch='aarch64';; - 10) image="DietPi_Container-x86_64-${distro^}" arch='x86_64';; - 11) image='DietPi_Container-RISC-V-Sid' arch='riscv64';; + 'armv6l') image="DietPi_Container-ARMv6-${DISTRO^}" arch=1;; + 'armv7l') image="DietPi_Container-ARMv7-${DISTRO^}" arch=2;; + 'aarch64') image="DietPi_Container-ARMv8-${DISTRO^}" arch=3;; + 'x86_64') image="DietPi_Container-x86_64-${DISTRO^}" arch=10;; + 'riscv64') image='DietPi_Container-RISC-V-Sid' arch=11;; *) G_DIETPI-NOTIFY 1 "Invalid architecture \"$ARCH\" passed, aborting..."; exit 1;; esac @@ -62,7 +57,7 @@ esac # Dependencies ########################################## apackages=('7zip' 'parted' 'fdisk' 'systemd-container') -(( $G_HW_ARCH == $ARCH || ( $G_HW_ARCH < 10 && $G_HW_ARCH > $ARCH ) )) || apackages+=('qemu-user-static' 'binfmt-support') +(( $G_HW_ARCH == $arch || ( $G_HW_ARCH < 10 && $G_HW_ARCH > $arch ) )) || apackages+=('qemu-user-static' 'binfmt-support') G_AG_CHECK_INSTALL_PREREQ "${apackages[@]}" ########################################## @@ -92,7 +87,7 @@ G_EXEC mount "${FP_LOOP}p1" rootfs G_CONFIG_INJECT 'AUTO_SETUP_AUTOMATED=' 'AUTO_SETUP_AUTOMATED=1' rootfs/boot/dietpi.txt # Force ARMv6 arch on Raspbian -(( $ARCH == 1 )) && echo 'sed -i -e '\''/^G_HW_ARCH=/c\G_HW_ARCH=1'\'' -e '\''/^G_HW_ARCH_NAME=/c\G_HW_ARCH_NAME=armv6l'\'' /boot/dietpi/.hw_model' > rootfs/boot/Automation_Custom_PreScript.sh +(( $arch == 1 )) && echo 'sed -i -e '\''/^G_HW_ARCH=/c\G_HW_ARCH=1'\'' -e '\''/^G_HW_ARCH_NAME=/c\G_HW_ARCH_NAME=armv6l'\'' /boot/dietpi/.hw_model' > rootfs/boot/Automation_Custom_PreScript.sh # Avoid DietPi-Survey uploads to not mess with the statistics G_EXEC rm rootfs/root/.ssh/known_hosts @@ -109,7 +104,7 @@ cat << _EOF_ > rootfs/boot/Automation_Custom_Script.sh || exit 1 #!/bin/dash echo '[ INFO ] Running Squeezelite build script...' bash -c "\$(curl -sSf 'https://raw.githubusercontent.com/$G_GITOWNER/DietPi/$G_GITBRANCH/.build/software/squeezelite/build.bash')" -mv -v '/tmp/squeezelite_$arch.deb' / +mv -v '/tmp/squeezelite_$ARCH.deb' / poweroff _EOF_ @@ -117,5 +112,5 @@ _EOF_ # Boot container ########################################## systemd-nspawn -bD rootfs -[[ -f rootfs/squeezelite_$arch.deb ]] || exit 1 +[[ -f rootfs/squeezelite_$ARCH.deb ]] || exit 1 } diff --git a/.github/workflows/squeezelite.yml b/.github/workflows/squeezelite.yml index b6e8cc8705..08ef07b58b 100644 --- a/.github/workflows/squeezelite.yml +++ b/.github/workflows/squeezelite.yml @@ -3,242 +3,73 @@ on: workflow_dispatch: inputs: arch: - description: 'Target architecture index: 1, 2, 3, 10 or all' + description: 'Target architecture' + type: choice + options: [armv6l, armv7l, aarch64, x86_64, riscv64, all] + default: all required: true - distro: - description: 'Target Debian version index: 5, 6, 7 or all' + dist: + description: 'Target Debian version' + type: choice + options: [buster, bullseye, bookworm, all] + default: all required: true concurrency: group: ${{ github.workflow }}-${{ github.event.inputs.arch }}-${{ github.event.inputs.distro }} cancel-in-progress: true permissions: {} +defaults: + run: + shell: sh + working-directory: /dev/shm jobs: - armv6_buster: - if: ( github.event.inputs.arch == 1 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 5 || github.event.inputs.distro == 'all' ) - # https://github.com/actions/virtual-environments - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 1 -d 5 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_armv6l.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}buster/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/buster/testing/","https://dietpi.com/downloads/binaries/buster/testing/squeezelite_armv6l.deb"]}' - armv6_bullseye: - if: ( github.event.inputs.arch == 1 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 6 || github.event.inputs.distro == 'all' ) + prep: + outputs: + arch: ${{ steps.arch.outputs.arch }} + dist: ${{ steps.dist.outputs.dist }} runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 1 -d 6 - - name: Upload package + - id: arch run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_armv6l.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bullseye/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bullseye/testing/","https://dietpi.com/downloads/binaries/bullseye/testing/squeezelite_armv6l.deb"]}' - armv6_bookworm: - if: ( github.event.inputs.arch == 1 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 7 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 1 -d 7 - - name: Upload package + if [ '${{ github.event.inputs.arch }}' = 'all' ] + then + echo 'arch=["armv6l", "armv7l", "aarch64", "x86_64", "riscv64"]' >> "$GITHUB_OUTPUT" + else + echo 'arch=["${{ github.event.inputs.arch }}"]' >> "$GITHUB_OUTPUT" + fi + - id: dist run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_armv6l.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bookworm/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bookworm/testing/","https://dietpi.com/downloads/binaries/bookworm/testing/squeezelite_armv6l.deb"]}' - - armv7_buster: - if: ( github.event.inputs.arch == 2 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 5 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 2 -d 5 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_armv7l.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}buster/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/buster/testing/","https://dietpi.com/downloads/binaries/buster/testing/squeezelite_armv7l.deb"]}' - armv7_bullseye: - if: ( github.event.inputs.arch == 2 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 6 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 2 -d 6 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_armv7l.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bullseye/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bullseye/testing/","https://dietpi.com/downloads/binaries/bullseye/testing/squeezelite_armv7l.deb"]}' - armv7_bookworm: - if: ( github.event.inputs.arch == 2 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 7 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 2 -d 7 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_armv7l.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bookworm/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bookworm/testing/","https://dietpi.com/downloads/binaries/bookworm/testing/squeezelite_armv7l.deb"]}' - - armv8_buster: - if: ( github.event.inputs.arch == 3 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 5 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 3 -d 5 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_aarch64.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}buster/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/buster/testing/","https://dietpi.com/downloads/binaries/buster/testing/squeezelite_aarch64.deb"]}' - armv8_bullseye: - if: ( github.event.inputs.arch == 3 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 6 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 3 -d 6 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_aarch64.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bullseye/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bullseye/testing/","https://dietpi.com/downloads/binaries/bullseye/testing/squeezelite_aarch64.deb"]}' - armv8_bookworm: - if: ( github.event.inputs.arch == 3 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 7 || github.event.inputs.distro == 'all' ) + if [ '${{ github.event.inputs.dist }}' = 'all' ] + then + echo 'dist=["buster", "bullseye", "bookworm"]' >> "$GITHUB_OUTPUT" + else + echo 'dist=["${{ github.event.inputs.dist }}"]' >> "$GITHUB_OUTPUT" + fi + build: + needs: prep + strategy: + matrix: + arch: ${{ fromJson(needs.prep.outputs.arch) }} + dist: ${{ fromJson(needs.prep.outputs.dist) }} + exclude: + - { arch: riscv64, dist: buster } + - { arch: riscv64, dist: bullseye } + fail-fast: false + name: "Build: ${{ matrix.arch }} - ${{ matrix.dist }}" + # https://github.com/actions/virtual-environments runs-on: ubuntu-22.04 - defaults: - run: - shell: sh steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 3 -d 7 - - name: Upload package + - name: Build + run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=$GITHUB_REF_NAME; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/$GITHUB_REF_NAME/.build/software/squeezelite/container_build.bash")" -- -a '${{ matrix.arch }}' -d '${{ matrix.dist }}' + - name: Upload run: | - [ -d ~/.ssh ] || mkdir ~/.ssh + # SSH server and client keys + mkdir ~/.ssh umask 377 echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_aarch64.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bookworm/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bookworm/testing/","https://dietpi.com/downloads/binaries/bookworm/testing/squeezelite_aarch64.deb"]}' - x86_64_buster: - if: ( github.event.inputs.arch == 10 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 5 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 10 -d 5 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_x86_64.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}buster/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/buster/testing/","https://dietpi.com/downloads/binaries/buster/testing/squeezelite_x86_64.deb"]}' - x86_64_bullseye: - if: ( github.event.inputs.arch == 10 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 6 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 10 -d 6 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_x86_64.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bullseye/' - curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bullseye/testing/","https://dietpi.com/downloads/binaries/bullseye/testing/squeezelite_x86_64.deb"]}' - x86_64_bookworm: - if: ( github.event.inputs.arch == 10 || github.event.inputs.arch == 'all' ) && ( github.event.inputs.distro == 7 || github.event.inputs.distro == 'all' ) - runs-on: ubuntu-22.04 - defaults: - run: - shell: sh - working-directory: /dev/shm - steps: - - name: Start build container - run: sudo bash -c "G_GITOWNER=$GITHUB_REPOSITORY_OWNER G_GITBRANCH=${GITHUB_REF#refs/heads/}; $(curl -sSf "https://raw.githubusercontent.com/$GITHUB_REPOSITORY_OWNER/DietPi/${GITHUB_REF#refs/heads/}/.build/software/squeezelite/container_build.bash")" 'DietPi-Build_Squeezelite' -a 10 -d 7 - - name: Upload package - run: | - [ -d ~/.ssh ] || mkdir ~/.ssh - umask 377 - echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts - echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519 - curl -T rootfs/squeezelite_x86_64.deb --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}bookworm/' + # Upload + curl -T 'rootfs/squeezelite_${{ matrix.arch }}.deb' --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}${{ matrix.dist }}/' curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' \ - --data '{"files":["https://dietpi.com/downloads/binaries/bookworm/testing/","https://dietpi.com/downloads/binaries/bookworm/testing/squeezelite_x86_64.deb"]}' + --data '{"files":["https://dietpi.com/downloads/binaries/${{ matrix.dist }}/testing/","https://dietpi.com/downloads/binaries/${{ matrix.dist }}/testing/squeezelite_${{ matrix.arch }}.deb"]}'