Merge branch 'develop' of https://github.com/vector-im/element-desktop into t3chguy/safeStorage

# Conflicts:
#	.github/workflows/build_and_test.yaml
#	.github/workflows/build_linux.yaml
#	.github/workflows/build_macos.yaml
#	.github/workflows/build_test.yaml
#	.github/workflows/build_windows.yaml
This commit is contained in:
Michael Telatynski 2025-04-15 10:43:24 +01:00
commit c023ec6f69
No known key found for this signature in database
GPG Key ID: A2B008A5F49F5D0D
5 changed files with 18 additions and 8 deletions

View File

@ -43,7 +43,7 @@ jobs:
name: macOS
uses: ./.github/workflows/build_macos.yaml
complete:
tests-done:
needs: [windows, linux, macos]
runs-on: ubuntu-22.04
steps:

View File

@ -190,7 +190,7 @@ jobs:
with:
artifact: linux-${{ inputs.arch }}-sqlcipher-${{ inputs.sqlcipher }}
runs-on: ${{ inputs.arch == 'arm64' && 'ubuntu-22.04-arm' || 'ubuntu-22.04' }}
executable: /opt/Element/element-desktop
executable: /opt/Element/element-desktop*
prepare_cmd: |
sudo apt-get -qq update
sudo apt install ./dist/*.deb

View File

@ -152,10 +152,10 @@ jobs:
with:
artifact: macos
runs-on: macos-14
executable: /Users/runner/Applications/Element.app/Contents/MacOS/Element
executable: /Users/runner/Applications/Element*.app/Contents/MacOS/Element*
# We need to mount the DMG and copy the app to the Applications folder as a mounted DMG is
# read-only and thus would not allow us to override the fuses as is required for Playwright.
prepare_cmd: |
hdiutil attach ./dist/*.dmg -mountpoint /Volumes/Element &&
rsync -a /Volumes/Element/Element.app ~/Applications/ &&
rsync -a /Volumes/Element/Element*.app ~/Applications/ &&
hdiutil detach /Volumes/Element

View File

@ -42,22 +42,32 @@ jobs:
run: ${{ inputs.prepare_cmd }}
if: inputs.prepare_cmd
- name: Expand executable path
id: executable
shell: bash
env:
EXECUTABLE: ${{ inputs.executable }}
run: |
FILES=($EXECUTABLE)
echo "path=${FILES[0]}" >> $GITHUB_OUTPUT
# We previously disabled the `EnableNodeCliInspectArguments` fuse, but Playwright requires
# it to be enabled to test Electron apps, so turn it back on.
- name: Set EnableNodeCliInspectArguments fuse enabled
run: $RUN_AS npx @electron/fuses write --app ${{ inputs.executable }} EnableNodeCliInspectArguments=on
run: $RUN_AS npx @electron/fuses write --app "$EXECUTABLE" EnableNodeCliInspectArguments=on
shell: bash
env:
# We need sudo on Linux as it is installed in /opt/
RUN_AS: ${{ runner.os == 'Linux' && 'sudo' || '' }}
EXECUTABLE: ${{ steps.executable.outputs.path }}
- name: Run tests
uses: coactions/setup-xvfb@6b00cf1889f4e1d5a48635647013c0508128ee1a
timeout-minutes: 10
timeout-minutes: 5
with:
run: "yarn test ${{ runner.os != 'Linux' && '--ignore-snapshots' || '' }}"
env:
ELEMENT_DESKTOP_EXECUTABLE: ${{ inputs.executable }}
ELEMENT_DESKTOP_EXECUTABLE: ${{ steps.executable.outputs.path }}
- name: Upload HTML report
if: always()

View File

@ -225,4 +225,4 @@ jobs:
with:
artifact: win-${{ inputs.arch }}
runs-on: windows-2022
executable: ${{ inputs.arch == 'ia32' && './dist/win-ia32-unpacked/Element.exe' || './dist/win-unpacked/Element.exe' }}
executable: ./dist/win*-unpacked/Element*.exe