From e1fb14ee79f5979d4a1cf005f39a6f88f4b01054 Mon Sep 17 00:00:00 2001 From: alexpasmantier Date: Sun, 16 Mar 2025 16:38:30 +0100 Subject: [PATCH] ci(deb): temporarily disable old compatibility builds --- .github/workflows/cd.yml | 207 ++++++++++++++++----------------------- 1 file changed, 85 insertions(+), 122 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 83f7742..aae5c7a 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -1,13 +1,11 @@ name: CD # Continuous Deployment permissions: contents: write - on: push: tags: - '[v]?[0-9]+.[0-9]+.[0-9]+' workflow_dispatch: - jobs: create-release: name: Create a release @@ -19,7 +17,6 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - - name: Generate a changelog uses: orhun/git-cliff-action@v4 with: @@ -27,19 +24,14 @@ jobs: args: --latest --strip header env: OUTPUT: BODY.md - - name: Publish on GitHub uses: ncipollo/release-action@v1 with: prerelease: false bodyFile: BODY.md - - publish-release: - name: Publishing for ${{ matrix.os }} runs-on: ${{ matrix.os }} - strategy: matrix: include: @@ -91,7 +83,6 @@ jobs: binary-postfix: "" use-cross: false binary-name: tv - steps: - name: Checkout repository uses: actions/checkout@v4 @@ -102,7 +93,6 @@ jobs: target: ${{ matrix.target }} profile: minimal override: true - - uses: Swatinem/rust-cache@v2 - name: Cargo build uses: actions-rs/cargo@v1 @@ -111,7 +101,6 @@ jobs: use-cross: ${{ matrix.use-cross }} toolchain: stable args: --release --target ${{ matrix.target }} - - name: install strip command shell: bash run: | @@ -155,71 +144,61 @@ jobs: run: | Compress-Archive -Path "$env:BINARY_NAME" -Destination "$($env:RELEASE_NAME).zip" (Get-FileHash "$($env:RELEASE_NAME).zip" -Algorithm SHA256).Hash.ToLower() > "$($env:RELEASE_NAME).zip.sha256" - - name: Releasing assets uses: softprops/action-gh-release@v2 with: - files: | - + files: |2 target/${{ matrix.target }}/release/${{ matrix.binary-name }}-*.tar.gz target/${{ matrix.target }}/release/${{ matrix.binary-name }}-*.zip target/${{ matrix.target }}/release/${{ matrix.binary-name }}-*.sha256 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # (for older glibc compatibility: https://github.com/alexpasmantier/television/issues/339) - publish-release-legacy-linux: - name: Publishing for Legacy Linux - runs-on: ubuntu-latest - container: centos:7 - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Install dependencies - run: | - yum -y update - yum -y groupinstall "Development Tools" - yum -y install gcc-c++ glibc-devel glibc-static - - - name: Install Rust toolchain - run: | - curl https://sh.rustup.rs -sSf | sh -s -- -y - source $HOME/.cargo/env - rustup target add x86_64-unknown-linux-gnu - - - name: Cargo build - run: | - cargo build --release --target x86_64-unknown-linux-gnu - - - name: Packaging final binary - run: | - cd target/x86_64-unknown-linux-gnu/release - tar czvf tv-legacy-linux.tar.gz tv - - - name: Releasing assets - uses: softprops/action-gh-release@v2 - with: - files: | - target/x86_64-unknown-linux-gnu/release/tv-legacy-linux.tar.gz - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - + # publish-release-legacy-linux: + # name: Publishing for Legacy Linux + # runs-on: ubuntu-latest + # container: centos:7 + # + # steps: + # - name: Checkout repository + # uses: actions/checkout@v4 + # + # - name: Install dependencies + # run: | + # yum -y update + # yum -y groupinstall "Development Tools" + # yum -y install gcc-c++ glibc-devel glibc-static + # + # - name: Install Rust toolchain + # run: | + # curl https://sh.rustup.rs -sSf | sh -s -- -y + # source $HOME/.cargo/env + # rustup target add x86_64-unknown-linux-gnu + # + # - name: Cargo build + # run: | + # cargo build --release --target x86_64-unknown-linux-gnu + # + # - name: Packaging final binary + # run: | + # cd target/x86_64-unknown-linux-gnu/release + # tar czvf tv-legacy-linux.tar.gz tv + # + # - name: Releasing assets + # uses: softprops/action-gh-release@v2 + # with: + # files: | + # target/x86_64-unknown-linux-gnu/release/tv-legacy-linux.tar.gz + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} publish-release-deb: name: publish-release-deb for ${{ matrix.target }} runs-on: ubuntu-latest - strategy: matrix: include: - target: x86_64-unknown-linux-musl - target: armv7-unknown-linux-musleabihf - - env: TARGET: ${{ matrix.target }} # Emit backtraces on panics. @@ -227,67 +206,51 @@ jobs: # Since we're distributing the dpkg, we don't know whether the user will # have PCRE2 installed, so just do a static build. PCRE2_SYS_STATIC: 1 - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Install packages (Ubuntu) - shell: bash - run: | - if ! command -V sudo; then - apt-get update - apt-get install -y --no-install-recommends sudo - fi - sudo apt-get update - sudo apt-get install -y --no-install-recommends \ - zsh xz-utils liblz4-tool musl-tools brotli zstd - - - name: Install Rust - uses: dtolnay/rust-toolchain@master - with: - toolchain: nightly - target: ${{ env.TARGET }} - - # for some reason, the above action doesn't seem to set the target correctly - - name: Add rustup target - shell: bash - run: | - rustup target add ${{ env.TARGET }} - - - name: Install cargo-deb - shell: bash - run: | - cargo install cargo-deb - - - name: Create deployment directory - shell: bash - run: | - dir=deployment/deb - mkdir -p "$dir" - echo "DEPLOY_DIR=$dir" >> $GITHUB_ENV - - - name: Build release binary - shell: bash - run: | - cargo deb --profile deb --target ${{ env.TARGET }} - version="${{ github.ref_name }}" - echo "DEB_DIR=target/${{ env.TARGET }}/debian" >> $GITHUB_ENV - echo "DEB_NAME=television_$version-1_${{ env.TARGET }}.deb" >> $GITHUB_ENV - - - name: Create sha256 sum of deb file - shell: bash - run: | - cd "$DEB_DIR" - sum="$DEB_NAME.sha256" - shasum -a 256 "$DEB_NAME" > "$sum" - echo "SUM=$sum" >> $GITHUB_ENV - - - name: Upload release archive - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - shell: bash - run: | - cd "$DEB_DIR" - version="${{ github.ref_name }}" - gh release upload "$version" "$DEB_NAME" "$SUM" + - name: Checkout repository + uses: actions/checkout@v4 + - name: Install packages (Ubuntu) + shell: bash + run: "if ! command -V sudo; then\n apt-get update\n apt-get install -y --no-install-recommends sudo\nfi\nsudo apt-get update\nsudo apt-get install -y --no-install-recommends \\\n zsh xz-utils liblz4-tool musl-tools brotli zstd \n" + - name: Install Rust + uses: dtolnay/rust-toolchain@master + with: + toolchain: nightly + target: ${{ env.TARGET }} + # for some reason, the above action doesn't seem to set the target correctly + - name: Add rustup target + shell: bash + run: | + rustup target add ${{ env.TARGET }} + - name: Install cargo-deb + shell: bash + run: | + cargo install cargo-deb + - name: Create deployment directory + shell: bash + run: | + dir=deployment/deb + mkdir -p "$dir" + echo "DEPLOY_DIR=$dir" >> $GITHUB_ENV + - name: Build release binary + shell: bash + run: | + cargo deb --profile deb --target ${{ env.TARGET }} + version="${{ github.ref_name }}" + echo "DEB_DIR=target/${{ env.TARGET }}/debian" >> $GITHUB_ENV + echo "DEB_NAME=television_$version-1_${{ env.TARGET }}.deb" >> $GITHUB_ENV + - name: Create sha256 sum of deb file + shell: bash + run: | + cd "$DEB_DIR" + sum="$DEB_NAME.sha256" + shasum -a 256 "$DEB_NAME" > "$sum" + echo "SUM=$sum" >> $GITHUB_ENV + - name: Upload release archive + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + shell: bash + run: | + cd "$DEB_DIR" + version="${{ github.ref_name }}" + gh release upload "$version" "$DEB_NAME" "$SUM"