remove trust points #869
Workflow file for this run
This file contains hidden or 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: Release | |
| on: | |
| push: | |
| branches: [ RC_2_1, master ] | |
| tags: | |
| - 'v[0-9]*.[0-9]*.[0-9]*' | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.ref }}-${{ github.workflow }}-${{ github.event_name }} | |
| cancel-in-progress: true | |
| jobs: | |
| dist: | |
| name: Build source package | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 1 | |
| filter: tree:0 | |
| submodules: recursive | |
| - name: patch libdatachannel (windows 32/64-bit builds) | |
| run: git apply ../patch-libdatachannel-32bit-builds.patch | |
| working-directory: deps/libdatachannel | |
| - name: update package lists | |
| continue-on-error: true | |
| timeout-minutes: 5 | |
| run: | | |
| sudo DEBIAN_FRONTEND=noninteractive apt-get -o Acquire::Retries=3 -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 update | |
| - uses: Chocobo1/setup-ccache-action@v1 | |
| with: | |
| update_packager_index: false | |
| override_cache_key: ccache-linux-dist-${{ github.base_ref || github.ref_name }} | |
| ccache_options: | | |
| max_size=15G | |
| - name: install dependencies | |
| run: | | |
| sudo DEBIAN_FRONTEND=noninteractive apt-get install -y python3-docutils python3-pygments python3-pil gsfonts inkscape icoutils graphviz hunspell imagemagick rsync | |
| sudo DEBIAN_FRONTEND=noninteractive apt-get install -y libboost-tools-dev libboost-python-dev libboost-dev libboost-system-dev libboost-json-dev python3-setuptools | |
| python3 -m pip install aafigure | |
| python3 -m pip install websockets | |
| echo "using gcc ;" >>~/user-config.jam | |
| - name: verify version matches tag | |
| if: startsWith(github.ref, 'refs/tags/') | |
| run: | | |
| TAG_VERSION="${GITHUB_REF_NAME#v}" | |
| TAG_VERSION="${TAG_VERSION%%-*}" | |
| MAKEFILE_VERSION="$(grep '^VERSION=' Makefile | cut -d= -f2)" | |
| if [ "$TAG_VERSION" != "$MAKEFILE_VERSION" ]; then | |
| echo "error: tag version (${TAG_VERSION}) does not match Makefile VERSION (${MAKEFILE_VERSION})" | |
| exit 1 | |
| fi | |
| - name: build docs and source package | |
| run: AAFIGURE=~/.local/bin/aafigure RST2HTML=rst2html make dist | |
| - uses: actions/upload-artifact@v7 | |
| with: | |
| name: tarball | |
| path: libtorrent-rasterbar-*.tar.gz | |
| - name: test-tarball (b2 install) | |
| run: | | |
| tar xvzf libtorrent-rasterbar-*.tar.gz | |
| cd libtorrent-rasterbar-*/ | |
| b2 install --prefix=test-install-root | |
| cat test-install-root/lib/pkgconfig/libtorrent-rasterbar.pc | |
| - name: test-tarball (installed headers are self-sufficient) | |
| run: | | |
| cd libtorrent-rasterbar-*/ | |
| ./tools/check_installed_headers.py test-install-root | |
| - name: test-tarball (b2 tests) | |
| run: | | |
| cd libtorrent-rasterbar-*/test | |
| b2 testing.execute=off | |
| b2 test_torrent_info | |
| - name: test-tarball (b2 build tools) | |
| run: | | |
| cd libtorrent-rasterbar-*/tools | |
| b2 | |
| - name: test-tarball (b2 build examples) | |
| run: | | |
| cd libtorrent-rasterbar-*/examples | |
| b2 | |
| - name: test-tarball (python bindings) | |
| run: | | |
| cd libtorrent-rasterbar-*/bindings/python/ | |
| python3 setup.py build | |
| - name: test-tarball (cmake configure and build) | |
| env: | |
| # required by deps/libdatachannel's own deps (usrsctp, plog), which | |
| # declare cmake_minimum_required versions older than modern cmake allows | |
| CMAKE_POLICY_VERSION_MINIMUM: 3.5 | |
| run: | | |
| cd libtorrent-rasterbar-*/ | |
| cmake -B build-cmake -DCMAKE_BUILD_TYPE=Debug -Dbuild_tests=ON -Dbuild_examples=ON -Dbuild_tools=ON -Dwebtorrent=on | |
| cmake --build build-cmake | |
| - name: test-tarball (ctest) | |
| run: | | |
| cd libtorrent-rasterbar-*/build-cmake | |
| ctest --output-on-failure | |
| upload: | |
| name: Upload release asset | |
| needs: dist | |
| if: startsWith(github.ref, 'refs/tags/') | |
| runs-on: ubuntu-24.04 | |
| permissions: | |
| contents: write | |
| steps: | |
| - uses: actions/download-artifact@v8 | |
| with: | |
| name: tarball | |
| path: dist | |
| - name: upload release asset | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| cd dist | |
| gh release upload "$GITHUB_REF_NAME" libtorrent-rasterbar-*.tar.gz --clobber --repo "$GITHUB_REPOSITORY" |