Update build workflows to use the latest github actions versions, and to switch to Python 3.12.8 and Go 1.23.5

This commit is contained in:
Micah Lee 2025-02-02 14:15:48 -08:00
parent 70b3bfc6aa
commit 0dac824472
No known key found for this signature in database

View File

@ -12,18 +12,18 @@ jobs:
build-win64:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Install python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.11.6"
python-version: "3.12.8"
- name: Install poetry
run: C:\hostedtoolcache\windows\Python\3.11.6\x64\python -m pip install poetry
run: C:\hostedtoolcache\windows\Python\3.12.8\x64\python -m pip install poetry
- name: Restore cache - poetry
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~\AppData\Local\pypoetry\Cache\virtualenvs
key: ${{ runner.os }}-win64-poetry-${{ hashFiles('desktop/poetry.lock') }}
@ -31,27 +31,27 @@ jobs:
- name: Install poetry dependencies
run: |
cd desktop
C:\hostedtoolcache\windows\Python\3.11.6\x64\Scripts\poetry install
C:\hostedtoolcache\windows\Python\3.11.6\x64\Scripts\poetry env list --full-path
C:\hostedtoolcache\windows\Python\3.12.8\x64\Scripts\poetry install
C:\hostedtoolcache\windows\Python\3.12.8\x64\Scripts\poetry env list --full-path
- name: Restore cache - tor
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop\build\tor
key: ${{ runner.os }}-win64-tor-${{ hashFiles('desktop/scripts/get-tor.py') }}
- name: Get tor binaries from Tor Browser (64-bit)
run: cd desktop && C:\hostedtoolcache\windows\Python\3.11.6\x64\Scripts\poetry run python .\scripts\get-tor.py win64
run: cd desktop && C:\hostedtoolcache\windows\Python\3.12.8\x64\Scripts\poetry run python .\scripts\get-tor.py win64
- name: Install Go >=1.21.1
uses: actions/setup-go@v4
- name: Install Go >=1.23.5
uses: actions/setup-go@v5
with:
go-version: ">=1.21.1"
go-version: ">=1.23.5"
cache: false
- run: go version
- name: Restore cache - obfs4proxy
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop\onionshare\resources\tor\obfs4proxy.exe
key: ${{ runner.os }}-win64-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.ps1') }}
@ -67,7 +67,7 @@ jobs:
}
- name: Restore cache - snowflake
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop\onionshare\resources\tor\snowflake-client.exe
key: ${{ runner.os }}-win64-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.ps1') }}
@ -83,7 +83,7 @@ jobs:
}
- name: Restore cache - meek
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop\onionshare\resources\tor\meek-client.exe
key: ${{ runner.os }}-win64-meek-${{ hashFiles('desktop/scripts/build-pt-meek.ps1') }}
@ -101,8 +101,8 @@ jobs:
- name: Build OnionShare
run: |
cd desktop
C:\hostedtoolcache\windows\Python\3.11.6\x64\Scripts\poetry run python .\setup-freeze.py build
C:\hostedtoolcache\windows\Python\3.11.6\x64\Scripts\poetry run python .\scripts\build-windows.py cleanup-build
C:\hostedtoolcache\windows\Python\3.12.8\x64\Scripts\poetry run python .\setup-freeze.py build
C:\hostedtoolcache\windows\Python\3.12.8\x64\Scripts\poetry run python .\scripts\build-windows.py cleanup-build
- name: Compress
shell: pwsh
@ -110,7 +110,7 @@ jobs:
mv desktop\build\exe.win-amd64-3.11\ ~\onionshare-win64
Compress-Archive -LiteralPath ~\onionshare-win64 -DestinationPath ~\onionshare-win64.zip
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: win64-build
path: ~\onionshare-win64.zip
@ -118,11 +118,11 @@ jobs:
build-mac-intel:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Install Python 3.11.6 (universal2)
- name: Install Python 3.12.8 (universal2)
run: |
curl -L https://www.python.org/ftp/python/3.11.6/python-3.11.6-macos11.pkg --output ~/Downloads/python.pkg
curl -L https://www.python.org/ftp/python/3.12.8/python-3.12.8-macos11.pkg --output ~/Downloads/python.pkg
sudo installer -pkg ~/Downloads/python.pkg -target /
- name: Install poetry
@ -130,7 +130,7 @@ jobs:
curl -sSL https://install.python-poetry.org | python3 -
- name: Restore cache - poetry
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/Library/Caches/pypoetry/virtualenvs
key: ${{ runner.os }}-macos-poetry-${{ hashFiles('desktop/poetry.lock') }}
@ -141,7 +141,7 @@ jobs:
~/Library/Application\ Support/pypoetry/venv/bin/poetry install
- name: Restore cache - tor
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop/build/tor
key: ${{ runner.os }}-macos-tor-${{ hashFiles('desktop/scripts/get-tor.py') }}
@ -151,15 +151,15 @@ jobs:
cd desktop
~/Library/Application\ Support/pypoetry/venv/bin/poetry run python ./scripts/get-tor.py macos
- name: Install Go >=1.21.1
uses: actions/setup-go@v4
- name: Install Go >=1.23.5
uses: actions/setup-go@v5
with:
go-version: ">=1.21.1"
go-version: ">=1.23.5"
cache: false
- run: go version
- name: Restore cache - obfs4proxy
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop/onionshare/resources/tor/obfs4proxy
key: ${{ runner.os }}-macos-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.sh') }}
@ -174,7 +174,7 @@ jobs:
fi
- name: Restore cache - snowflake
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop/onionshare/resources/tor/snowflake-client
key: ${{ runner.os }}-macos-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.sh') }}
@ -189,7 +189,7 @@ jobs:
fi
- name: Restore cache - meek
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: desktop/onionshare/resources/tor/meek-client
key: ${{ runner.os }}-macos-meek-${{ hashFiles('desktop/scripts/build-pt-meek.sh') }}
@ -223,7 +223,7 @@ jobs:
cd desktop/build
tar -czvf ~/onionshare-macos-intel.tar.gz OnionShare.app
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: mac-intel-build
path: ~/onionshare-macos-intel.tar.gz
@ -231,7 +231,7 @@ jobs:
build-flatpak:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup
run: |
@ -240,13 +240,13 @@ jobs:
flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo
- name: Restore cache - .flatpak-builder
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: flatpak/.flatpak-builder
key: flatpak-.flatpak-builder-${{ hashFiles('flatpak/org.onionshare.OnionShare.yaml') }}
- name: Restore cache - build
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: flatpak/build
key: flatpak-build-${{ hashFiles('flatpak/org.onionshare.OnionShare.yaml') }}
@ -257,7 +257,7 @@ jobs:
flatpak-builder build --force-clean --install-deps-from=flathub --install --user org.onionshare.OnionShare.yaml
flatpak build-bundle ~/.local/share/flatpak/repo ~/OnionShare.flatpak org.onionshare.OnionShare --runtime-repo=https://flathub.org/repo/flathub.flatpakrepo
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: flatpak-build
path: ~/OnionShare.flatpak
@ -265,10 +265,10 @@ jobs:
build-snap:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Restore cache - lxd
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/lxd_cache.tar.gz
key: snap-lxd-${{ hashFiles('snap/snapcraft.yaml') }}
@ -294,7 +294,7 @@ jobs:
sudo tar -czf ~/lxd_cache.tar.gz /var/snap/lxd/common/lxd/storage-pools/default
sudo chown $USER:$USER ~/lxd_cache.tar.gz
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: snapcraft-build
path: onionshare_*.snap