fixup! [feature] Add support for fsspec backends #259
This file contains 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: AppImage | |
on: | |
push: | |
branches: '**' | |
tags: 'v*' | |
workflow_dispatch: | |
jobs: | |
Manylinux-Appimage: | |
runs-on: ubuntu-latest | |
container: quay.io/pypa/manylinux_2_28_x86_64 | |
env: | |
APP_PYTHON_VERSION: "3.12" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build AppImage | |
working-directory: AppImage | |
run: bash build-ratarmount-appimage.sh | |
# This action also does not work with manylinux2014 (CentOS 7) anymore, | |
# probably because CentOS 7 was EOL on 2024-06-30. | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: ratarmount-x86_64.AppImage | |
path: "AppImage/ratarmount*-x86_64.AppImage" | |
AppImage-Tests: | |
runs-on: ${{ matrix.os }} | |
needs: [Manylinux-Appimage] | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
parallelization: [0, 1, 2] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
# We need one tag for testing the git mount. | |
# This is BROKEN! God damn it. Is anything working at all... | |
# https://github.com/actions/checkout/issues/1781 | |
fetch-tags: true | |
- name: Fetch tag for tests | |
run: git fetch origin refs/tags/v0.15.2:refs/tags/v0.15.2 | |
- uses: actions/download-artifact@v3 | |
with: | |
name: ratarmount-x86_64.AppImage | |
- name: Install AppImage | |
run: | | |
chmod u+x ratarmount*-x86_64.AppImage | |
mv ratarmount*-x86_64.AppImage /usr/local/bin/ratarmount | |
echo "/usr/local/bin" >> $GITHUB_PATH | |
- name: Install Dependencies | |
run: | | |
# These are required for creating test files on the fly not for ratarmount! | |
sudo apt-get -y install bzip2 pixz zstd unar fuse | |
- name: Install pip Test Dependencies | |
run: | | |
python3 -m pip install -r tests/requirements-tests.txt | |
# Explicitly install pygit2 even on Python 3.13+ because we have set up libgit2 manually. | |
python3 -m pip install pygit2 | |
python3 -c 'import pygit2' | |
- name: Test Simple Startup | |
run: | | |
ratarmount --help | |
ratarmount --version | |
- name: Test Simple Mount | |
run: | | |
ratarmount tests/single-file.tar mimi | |
ls -la mimi | |
sleep 1s | |
ratarmount -u mimi | |
- name: Install pip Test Dependencies | |
run: | | |
python3 -m pip install -r tests/requirements-tests.txt | |
# Explicitly install pygit2 even on Python 3.13+ because we have set up libgit2 manually. | |
python3 -m pip install pygit2 | |
python3 -c 'import pygit2' | |
- name: Regression Tests | |
run: | | |
# Starting up ratarmount for each very short test is quite slow, especially on the CI machine (3-5s). | |
# On my local machine, it's around 1s, which is not good, but also not bad. | |
# The AppImage extraction script is already tested in the simple tests above, so it should be fine | |
# to extract it once and then test the AppRun script, which still modifies the LD_LIBRARY_PATH and | |
# still uses the bundled libraries, i.e., it still is a good integrity test for the AppImage. | |
time /usr/local/bin/ratarmount --appimage-extract | |
export RATARMOUNT_CMD=$PWD/squashfs-root/AppRun | |
export PARALLELIZATIONS=${{ matrix.parallelization }} | |
bash tests/runtests.sh |