diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7f1139e0..64e11d62 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,335 +9,335 @@ on: - main jobs: - # build-win64: - # runs-on: windows-latest - # steps: - # - uses: actions/checkout@v3 + build-win64: + runs-on: windows-latest + steps: + - uses: actions/checkout@v3 - # - name: Install poetry - # run: C:\hostedtoolcache\windows\Python\3.9.13\x64\python -m pip install poetry + - name: Install poetry + run: C:\hostedtoolcache\windows\Python\3.9.13\x64\python -m pip install poetry - # - name: Restore cache - poetry - # uses: actions/cache@v3 - # with: - # path: ~\AppData\Local\pypoetry\Cache\virtualenvs - # key: ${{ runner.os }}-win64-poetry-${{ hashFiles('desktop/poetry.lock') }} + - name: Restore cache - poetry + uses: actions/cache@v3 + with: + path: ~\AppData\Local\pypoetry\Cache\virtualenvs + key: ${{ runner.os }}-win64-poetry-${{ hashFiles('desktop/poetry.lock') }} - # - name: Install poetry dependencies - # run: | - # cd desktop - # C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry install - # C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry env list --full-path + - name: Install poetry dependencies + run: | + cd desktop + C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry install + C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry env list --full-path - # - name: Restore cache - tor - # uses: actions/cache@v3 - # with: - # path: desktop\build\tor - # key: ${{ runner.os }}-win64-tor-${{ hashFiles('desktop/scripts/get-tor.py') }} + - name: Restore cache - tor + uses: actions/cache@v3 + 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.9.13\x64\Scripts\poetry run python .\scripts\get-tor.py win64 + - name: Get tor binaries from Tor Browser (64-bit) + run: cd desktop && C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry run python .\scripts\get-tor.py win64 - # - name: Restore cache - obfs4proxy - # uses: actions/cache@v3 - # with: - # path: desktop\onionshare\resources\tor\obfs4proxy.exe - # key: ${{ runner.os }}-win64-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.ps1') }} + - name: Restore cache - obfs4proxy + uses: actions/cache@v3 + with: + path: desktop\onionshare\resources\tor\obfs4proxy.exe + key: ${{ runner.os }}-win64-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.ps1') }} - # - name: Build obfs4proxy - # shell: pwsh - # run: | - # if ((Test-Path -Path 'desktop\onionshare\resources\tor\obfs4proxy.exe') -eq $True) { - # Write-Output "obfs4proxy already built" - # } else { - # cd desktop - # .\scripts\build-pt-obfs4proxy.ps1 - # } + - name: Build obfs4proxy + shell: pwsh + run: | + if ((Test-Path -Path 'desktop\onionshare\resources\tor\obfs4proxy.exe') -eq $True) { + Write-Output "obfs4proxy already built" + } else { + cd desktop + .\scripts\build-pt-obfs4proxy.ps1 + } - # - name: Restore cache - snowflake - # uses: actions/cache@v3 - # with: - # path: desktop\onionshare\resources\tor\snowflake-client.exe - # key: ${{ runner.os }}-win64-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.ps1') }} + - name: Restore cache - snowflake + uses: actions/cache@v3 + with: + path: desktop\onionshare\resources\tor\snowflake-client.exe + key: ${{ runner.os }}-win64-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.ps1') }} - # - name: Build snowflake - # shell: pwsh - # run: | - # if ((Test-Path -Path 'desktop\onionshare\resources\tor\snowflake-client.exe') -eq $True) { - # Write-Output "snowflake already built" - # } else { - # cd desktop - # .\scripts\build-pt-snowflake.ps1 - # } + - name: Build snowflake + shell: pwsh + run: | + if ((Test-Path -Path 'desktop\onionshare\resources\tor\snowflake-client.exe') -eq $True) { + Write-Output "snowflake already built" + } else { + cd desktop + .\scripts\build-pt-snowflake.ps1 + } - # - name: Restore cache - meek - # uses: actions/cache@v3 - # with: - # path: desktop\onionshare\resources\tor\meek-client.exe - # key: ${{ runner.os }}-win64-meek-${{ hashFiles('desktop/scripts/build-pt-meek.ps1') }} + - name: Restore cache - meek + uses: actions/cache@v3 + with: + path: desktop\onionshare\resources\tor\meek-client.exe + key: ${{ runner.os }}-win64-meek-${{ hashFiles('desktop/scripts/build-pt-meek.ps1') }} - # - name: Build meek - # shell: pwsh - # run: | - # if ((Test-Path -Path 'desktop\onionshare\resources\tor\meek-client.exe') -eq $True) { - # Write-Output "meek already built" - # } else { - # cd desktop - # .\scripts\build-pt-meek.ps1 - # } + - name: Build meek + shell: pwsh + run: | + if ((Test-Path -Path 'desktop\onionshare\resources\tor\meek-client.exe') -eq $True) { + Write-Output "meek already built" + } else { + cd desktop + .\scripts\build-pt-meek.ps1 + } - # - name: Build OnionShare - # run: | - # cd desktop - # C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry run python .\setup-freeze.py build - # C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry run python .\scripts\build-windows.py cleanup-build + - name: Build OnionShare + run: | + cd desktop + C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry run python .\setup-freeze.py build + C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\poetry run python .\scripts\build-windows.py cleanup-build - # - name: Compress - # shell: pwsh - # run: | - # mv desktop\build\exe.win-amd64-3.9\ ~\onionshare-win64 - # Compress-Archive -LiteralPath ~\onionshare-win64 -DestinationPath ~\onionshare-win64.zip + - name: Compress + shell: pwsh + run: | + mv desktop\build\exe.win-amd64-3.9\ ~\onionshare-win64 + Compress-Archive -LiteralPath ~\onionshare-win64 -DestinationPath ~\onionshare-win64.zip - # - uses: actions/upload-artifact@v3 - # with: - # name: win64-build - # path: ~\onionshare-win64.zip + - uses: actions/upload-artifact@v3 + with: + name: win64-build + path: ~\onionshare-win64.zip - # build-win32: - # runs-on: windows-latest - # steps: - # - uses: actions/checkout@v3 + build-win32: + runs-on: windows-latest + steps: + - uses: actions/checkout@v3 - # - name: Install poetry - # run: C:\hostedtoolcache\windows\Python\3.9.13\x86\python -m pip install poetry + - name: Install poetry + run: C:\hostedtoolcache\windows\Python\3.9.13\x86\python -m pip install poetry - # - name: Restore cache - poetry - # uses: actions/cache@v3 - # with: - # path: ~\AppData\Local\pypoetry\Cache\virtualenvs - # key: ${{ runner.os }}-win32-poetry-${{ hashFiles('desktop/poetry.lock') }} + - name: Restore cache - poetry + uses: actions/cache@v3 + with: + path: ~\AppData\Local\pypoetry\Cache\virtualenvs + key: ${{ runner.os }}-win32-poetry-${{ hashFiles('desktop/poetry.lock') }} - # - name: Install poetry dependencies - # run: | - # cd desktop - # C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry install - # C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry env list --full-path + - name: Install poetry dependencies + run: | + cd desktop + C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry install + C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry env list --full-path - # - name: Restore cache - tor - # uses: actions/cache@v3 - # with: - # path: desktop\build\tor - # key: ${{ runner.os }}-win32-tor-${{ hashFiles('desktop/scripts/get-tor.py') }} + - name: Restore cache - tor + uses: actions/cache@v3 + with: + path: desktop\build\tor + key: ${{ runner.os }}-win32-tor-${{ hashFiles('desktop/scripts/get-tor.py') }} - # - name: Get tor binaries from Tor Browser (32-bit) - # run: cd desktop && C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry run python .\scripts\get-tor.py win32 + - name: Get tor binaries from Tor Browser (32-bit) + run: cd desktop && C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry run python .\scripts\get-tor.py win32 - # - name: Install golang (32-bit) - # shell: pwsh - # run: | - # cd ~\Downloads - # Invoke-WebRequest -Uri https://go.dev/dl/go1.19.1.windows-386.msi -OutFile go1.19.1.windows-386.msi - # msiexec.exe /i go1.19.1.windows-386.msi /quiet /L*V go-install.log + - name: Install golang (32-bit) + shell: pwsh + run: | + cd ~\Downloads + Invoke-WebRequest -Uri https://go.dev/dl/go1.19.1.windows-386.msi -OutFile go1.19.1.windows-386.msi + msiexec.exe /i go1.19.1.windows-386.msi /quiet /L*V go-install.log - # - name: Restore cache - obfs4proxy - # uses: actions/cache@v3 - # with: - # path: desktop\onionshare\resources\tor\obfs4proxy.exe - # key: ${{ runner.os }}-win32-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.ps1') }} + - name: Restore cache - obfs4proxy + uses: actions/cache@v3 + with: + path: desktop\onionshare\resources\tor\obfs4proxy.exe + key: ${{ runner.os }}-win32-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.ps1') }} - # - name: Build obfs4proxy - # shell: pwsh - # run: | - # if ((Test-Path -Path 'desktop\onionshare\resources\tor\obfs4proxy.exe') -eq $True) { - # Write-Output "obfs4proxy already built" - # } else { - # $env:PATH = "C:\Program Files (x86)\Go\bin\go;$env:PATH" - # cd desktop - # .\scripts\build-pt-obfs4proxy.ps1 - # } + - name: Build obfs4proxy + shell: pwsh + run: | + if ((Test-Path -Path 'desktop\onionshare\resources\tor\obfs4proxy.exe') -eq $True) { + Write-Output "obfs4proxy already built" + } else { + $env:PATH = "C:\Program Files (x86)\Go\bin\go;$env:PATH" + cd desktop + .\scripts\build-pt-obfs4proxy.ps1 + } - # - name: Restore cache - snowflake - # uses: actions/cache@v3 - # with: - # path: desktop\onionshare\resources\tor\snowflake-client.exe - # key: ${{ runner.os }}-win32-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.ps1') }} + - name: Restore cache - snowflake + uses: actions/cache@v3 + with: + path: desktop\onionshare\resources\tor\snowflake-client.exe + key: ${{ runner.os }}-win32-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.ps1') }} - # - name: Build snowflake - # shell: pwsh - # run: | - # if ((Test-Path -Path 'desktop\onionshare\resources\tor\snowflake-client.exe') -eq $True) { - # Write-Output "snowflake already built" - # } else { - # $env:PATH = "C:\Program Files (x86)\Go\bin\go;$env:PATH" - # cd desktop - # .\scripts\build-pt-snowflake.ps1 - # } + - name: Build snowflake + shell: pwsh + run: | + if ((Test-Path -Path 'desktop\onionshare\resources\tor\snowflake-client.exe') -eq $True) { + Write-Output "snowflake already built" + } else { + $env:PATH = "C:\Program Files (x86)\Go\bin\go;$env:PATH" + cd desktop + .\scripts\build-pt-snowflake.ps1 + } - # - name: Restore cache - meek - # uses: actions/cache@v3 - # with: - # path: desktop\onionshare\resources\tor\meek-client.exe - # key: ${{ runner.os }}-win32-meek-${{ hashFiles('desktop/scripts/build-pt-meek.ps1') }} + - name: Restore cache - meek + uses: actions/cache@v3 + with: + path: desktop\onionshare\resources\tor\meek-client.exe + key: ${{ runner.os }}-win32-meek-${{ hashFiles('desktop/scripts/build-pt-meek.ps1') }} - # - name: Build meek - # shell: pwsh - # run: | - # if ((Test-Path -Path 'desktop\onionshare\resources\tor\meek-client.exe') -eq $True) { - # Write-Output "meek already built" - # } else { - # $env:PATH = "C:\Program Files (x86)\Go\bin\go;$env:PATH" - # cd desktop - # .\scripts\build-pt-meek.ps1 - # } + - name: Build meek + shell: pwsh + run: | + if ((Test-Path -Path 'desktop\onionshare\resources\tor\meek-client.exe') -eq $True) { + Write-Output "meek already built" + } else { + $env:PATH = "C:\Program Files (x86)\Go\bin\go;$env:PATH" + cd desktop + .\scripts\build-pt-meek.ps1 + } - # - name: Build OnionShare - # run: | - # cd desktop - # C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry run python .\setup-freeze.py build - # C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry run python .\scripts\build-windows.py cleanup-build + - name: Build OnionShare + run: | + cd desktop + C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry run python .\setup-freeze.py build + C:\hostedtoolcache\windows\Python\3.9.13\x86\Scripts\poetry run python .\scripts\build-windows.py cleanup-build - # - name: Compress - # shell: pwsh - # run: | - # mv desktop\build\exe.win32-3.9\ ~\onionshare-win32 - # Compress-Archive -LiteralPath ~\onionshare-win32 -DestinationPath ~\onionshare-win32.zip + - name: Compress + shell: pwsh + run: | + mv desktop\build\exe.win32-3.9\ ~\onionshare-win32 + Compress-Archive -LiteralPath ~\onionshare-win32 -DestinationPath ~\onionshare-win32.zip - # - uses: actions/upload-artifact@v3 - # with: - # name: win32-build - # path: ~\onionshare-win32.zip + - uses: actions/upload-artifact@v3 + with: + name: win32-build + path: ~\onionshare-win32.zip - # build-mac: - # runs-on: macos-latest - # steps: - # - uses: actions/checkout@v3 + build-mac: + runs-on: macos-latest + steps: + - uses: actions/checkout@v3 - # - name: Install Python 3.9.13 (Intel) - # run: | - # curl -L https://www.python.org/ftp/python/3.9.13/python-3.9.13-macosx10.9.pkg --output ~/Downloads/python.pkg - # sudo installer -pkg ~/Downloads/python.pkg -target / + - name: Install Python 3.9.13 (Intel) + run: | + curl -L https://www.python.org/ftp/python/3.9.13/python-3.9.13-macosx10.9.pkg --output ~/Downloads/python.pkg + sudo installer -pkg ~/Downloads/python.pkg -target / - # - name: Install poetry - # run: | - # python3 -m pip install poetry + - name: Install poetry + run: | + python3 -m pip install poetry - # - name: Restore cache - poetry - # uses: actions/cache@v3 - # with: - # path: ~/Library/Caches/pypoetry/virtualenvs - # key: ${{ runner.os }}-macos-poetry-${{ hashFiles('desktop/poetry.lock') }} + - name: Restore cache - poetry + uses: actions/cache@v3 + with: + path: ~/Library/Caches/pypoetry/virtualenvs + key: ${{ runner.os }}-macos-poetry-${{ hashFiles('desktop/poetry.lock') }} - # - name: Install poetry dependencies - # run: | - # cd desktop - # /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry install + - name: Install poetry dependencies + run: | + cd desktop + /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry install - # - name: Restore cache - tor - # uses: actions/cache@v3 - # with: - # path: desktop/build/tor - # key: ${{ runner.os }}-macos-tor-${{ hashFiles('desktop/scripts/get-tor.py') }} + - name: Restore cache - tor + uses: actions/cache@v3 + with: + path: desktop/build/tor + key: ${{ runner.os }}-macos-tor-${{ hashFiles('desktop/scripts/get-tor.py') }} - # - name: Get tor binaries from Tor Browser - # run: | - # cd desktop - # /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./scripts/get-tor.py macos + - name: Get tor binaries from Tor Browser + run: | + cd desktop + /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./scripts/get-tor.py macos - # - name: Restore cache - obfs4proxy - # uses: actions/cache@v3 - # with: - # path: desktop/onionshare/resources/tor/obfs4proxy - # key: ${{ runner.os }}-macos-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.sh') }} + - name: Restore cache - obfs4proxy + uses: actions/cache@v3 + with: + path: desktop/onionshare/resources/tor/obfs4proxy + key: ${{ runner.os }}-macos-obfs4proxy-${{ hashFiles('desktop/scripts/build-pt-obfs4proxy.sh') }} - # - name: Build obfs4proxy - # run: | - # if [[ -f "desktop/onionshare/resources/tor/obfs4proxy" ]]; then - # echo "obfs4proxy already built" - # else - # cd desktop - # ./scripts/build-pt-obfs4proxy.sh - # fi + - name: Build obfs4proxy + run: | + if [[ -f "desktop/onionshare/resources/tor/obfs4proxy" ]]; then + echo "obfs4proxy already built" + else + cd desktop + ./scripts/build-pt-obfs4proxy.sh + fi - # - name: Restore cache - snowflake - # uses: actions/cache@v3 - # with: - # path: desktop/onionshare/resources/tor/snowflake-client - # key: ${{ runner.os }}-macos-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.sh') }} + - name: Restore cache - snowflake + uses: actions/cache@v3 + with: + path: desktop/onionshare/resources/tor/snowflake-client + key: ${{ runner.os }}-macos-snowflake-${{ hashFiles('desktop/scripts/build-pt-snowflake.sh') }} - # - name: Build snowflake - # run: | - # if [[ -f "desktop/onionshare/resources/tor/snowflake-client" ]]; then - # echo "snowflake already built" - # else - # cd desktop - # ./scripts/build-pt-snowflake.sh - # fi + - name: Build snowflake + run: | + if [[ -f "desktop/onionshare/resources/tor/snowflake-client" ]]; then + echo "snowflake already built" + else + cd desktop + ./scripts/build-pt-snowflake.sh + fi - # - name: Restore cache - meek - # uses: actions/cache@v3 - # with: - # path: desktop/onionshare/resources/tor/meek-client - # key: ${{ runner.os }}-macos-meek-${{ hashFiles('desktop/scripts/build-pt-meek.sh') }} + - name: Restore cache - meek + uses: actions/cache@v3 + with: + path: desktop/onionshare/resources/tor/meek-client + key: ${{ runner.os }}-macos-meek-${{ hashFiles('desktop/scripts/build-pt-meek.sh') }} - # - name: Build meek - # run: | - # if [[ -f "desktop/onionshare/resources/tor/meek-client" ]]; then - # echo "meek already built" - # else - # cd desktop - # ./scripts/build-pt-meek.sh - # fi + - name: Build meek + run: | + if [[ -f "desktop/onionshare/resources/tor/meek-client" ]]; then + echo "meek already built" + else + cd desktop + ./scripts/build-pt-meek.sh + fi - # - name: Build OnionShare - # run: | - # cd desktop - # /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./setup-freeze.py build - # /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./setup-freeze.py bdist_mac - # /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./scripts/build-macos.py cleanup-build + - name: Build OnionShare + run: | + cd desktop + /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./setup-freeze.py build + /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./setup-freeze.py bdist_mac + /Library/Frameworks/Python.framework/Versions/3.9/bin/poetry run python ./scripts/build-macos.py cleanup-build - # - name: Compress - # run: | - # cd desktop/build - # tar -czvf ~/onionshare-macos.tar.gz OnionShare.app + - name: Compress + run: | + cd desktop/build + tar -czvf ~/onionshare-macos.tar.gz OnionShare.app - # - uses: actions/upload-artifact@v3 - # with: - # name: mac-build - # path: ~/onionshare-macos.tar.gz + - uses: actions/upload-artifact@v3 + with: + name: mac-build + path: ~/onionshare-macos.tar.gz - # build-flatpak: - # runs-on: ubuntu-latest - # steps: - # - uses: actions/checkout@v3 + build-flatpak: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 - # - name: Setup - # run: | - # sudo apt update - # sudo apt install -y flatpak flatpak-builder - # flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo + - name: Setup + run: | + sudo apt update + sudo apt install -y flatpak flatpak-builder + flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo - # - name: Restore cache - .flatpak-builder - # uses: actions/cache@v3 - # with: - # path: flatpak/.flatpak-builder - # key: flatpak-.flatpak-builder + - name: Restore cache - .flatpak-builder + uses: actions/cache@v3 + with: + path: flatpak/.flatpak-builder + key: flatpak-.flatpak-builder - # - name: Restore cache - build - # uses: actions/cache@v3 - # with: - # path: flatpak/build - # key: flatpak-build + - name: Restore cache - build + uses: actions/cache@v3 + with: + path: flatpak/build + key: flatpak-build - # - name: Flatpak build - # run: | - # cd flatpak - # 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 + - name: Flatpak build + run: | + cd flatpak + 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 - # with: - # name: flatpak-build - # path: ~/OnionShare.flatpak + - uses: actions/upload-artifact@v3 + with: + name: flatpak-build + path: ~/OnionShare.flatpak build-snap: runs-on: ubuntu-latest diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index f27d13b9..68ea4644 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,51 +1,51 @@ -# name: Run Tests -# run-name: Run tests -# on: [push] +name: Run Tests +run-name: Run tests +on: [push] -# jobs: -# test-cli: -# runs-on: ubuntu-latest -# steps: -# - uses: actions/checkout@v3 -# - uses: actions/setup-python@v4 -# with: -# python-version: '3.9' -# - name: Install dependencies -# run: | -# sudo apt-get update -# sudo apt-get -y install tor obfs4proxy -# pip install --upgrade pip poetry -# - uses: actions/cache@v3 -# with: -# path: ~/.cache/pypoetry/virtualenvs -# key: ${{ runner.os }}-cli-poetry-${{ hashFiles('cli/poetry.lock') }} -# - run: cd cli && poetry install -# - run: | -# cd cli -# poetry run pytest -v ./tests -# poetry run onionshare-cli --local-only ./tests --auto-stop-timer 2 -# poetry run onionshare-cli --local-only --receive --auto-stop-timer 2 -# poetry run onionshare-cli --local-only --website ../docs --auto-stop-timer 2 -# poetry run onionshare-cli --local-only --chat --auto-stop-timer 2 +jobs: + test-cli: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: "3.9" + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get -y install tor obfs4proxy + pip install --upgrade pip poetry + - uses: actions/cache@v3 + with: + path: ~/.cache/pypoetry/virtualenvs + key: ${{ runner.os }}-cli-poetry-${{ hashFiles('cli/poetry.lock') }} + - run: cd cli && poetry install + - run: | + cd cli + poetry run pytest -v ./tests + poetry run onionshare-cli --local-only ./tests --auto-stop-timer 2 + poetry run onionshare-cli --local-only --receive --auto-stop-timer 2 + poetry run onionshare-cli --local-only --website ../docs --auto-stop-timer 2 + poetry run onionshare-cli --local-only --chat --auto-stop-timer 2 -# test-desktop: -# runs-on: ubuntu-latest -# steps: -# - uses: actions/checkout@v3 -# - uses: actions/setup-python@v4 -# with: -# python-version: '3.9' -# - name: Install dependencies -# run: | -# sudo apt-get update -# sudo apt-get install -y tor obfs4proxy gcc python3-dev python3-pyside2.qtcore python3-pyside2.qtwidgets python3-pyside2.qtgui -# sudo apt-get install -y xvfb x11-utils libxkbcommon-x11-0 libxcb-randr0-dev libxcb-xtest0-dev libxcb-xinerama0-dev libxcb-shape0-dev libxcb-xkb-dev libxcb-render-util0 libxcb-icccm4 libxcb-keysyms1 libxcb-image0 -# pip install --upgrade pip poetry -# - uses: actions/cache@v3 -# with: -# path: ~/.cache/pypoetry/virtualenvs -# key: ${{ runner.os }}-desktop-poetry-${{ hashFiles('desktop/poetry.lock') }} -# - run: cd desktop && poetry install -# - run: | -# cd desktop -# QT_DEBUG_PLUGINS=1 xvfb-run poetry run pytest -v ./tests/test_gui_*.py + test-desktop: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: "3.9" + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y tor obfs4proxy gcc python3-dev python3-pyside2.qtcore python3-pyside2.qtwidgets python3-pyside2.qtgui + sudo apt-get install -y xvfb x11-utils libxkbcommon-x11-0 libxcb-randr0-dev libxcb-xtest0-dev libxcb-xinerama0-dev libxcb-shape0-dev libxcb-xkb-dev libxcb-render-util0 libxcb-icccm4 libxcb-keysyms1 libxcb-image0 + pip install --upgrade pip poetry + - uses: actions/cache@v3 + with: + path: ~/.cache/pypoetry/virtualenvs + key: ${{ runner.os }}-desktop-poetry-${{ hashFiles('desktop/poetry.lock') }} + - run: cd desktop && poetry install + - run: | + cd desktop + QT_DEBUG_PLUGINS=1 xvfb-run poetry run pytest -v ./tests/test_gui_*.py