Skip to content

Commit

Permalink
Merge branch 'release'
Browse files Browse the repository at this point in the history
  • Loading branch information
live-github-bot[bot] committed Jul 19, 2024
2 parents 63e2a8d + 3cbf749 commit afbcfcd
Show file tree
Hide file tree
Showing 1,166 changed files with 231,003 additions and 119,212 deletions.
5 changes: 3 additions & 2 deletions .github/workflows/account-migration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,17 +40,18 @@ jobs:
- name: Generate target output filename
id: target-output-file
# we get TARGET_SYNC_FILE_BASENAME from the same command later run in account-migration.ts to get the same basename
run: |
TARGET_SYNC_FILE_BASENAME=$(git rev-parse --short HEAD)
echo "TARGET_SYNC_FILE_BASENAME=$(echo ${TARGET_SYNC_FILE_BASENAME})" >> $GITHUB_OUTPUT
- name: Run synchronisation on target branch
- name: Run synchronisation on target branch for currencies ${{ inputs.currencies }}
if: ${{ inputs.currencies }}
# TARGET_SYNC_FILE_BASENAME is based on https://github.com/LedgerHQ/ledger-live/blob/feat/live-11055-migration-account-test/libs/ledger-live-common/src/__tests__/migration/account-migration.ts#L267
run: |
pnpm common test-account-migration --currencies ${{ inputs.currencies }} --outputFolderPath /home/runner/work/ledger-live
- name: Run synchronisation on target branch
- name: Run synchronisation on target branch on all currencies
if: ${{ !inputs.currencies }}
run: |
pnpm common test-account-migration --outputFolderPath /home/runner/work/ledger-live
Expand Down
80 changes: 37 additions & 43 deletions .github/workflows/test-ui-e2e-only-desktop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,6 @@ on:
description: Ignore test having name pattern (entered in the previous field)
type: boolean
default: false
speculos_tests:
description: Run the speculos tests (if false, mocked tests will be run instead)
type: boolean
default: true
enable_broadcast:
description: Enable transaction broadcast
type: boolean
default: false

report_path:
description: Path where you want to store this execution's results
Expand Down Expand Up @@ -60,9 +52,15 @@ jobs:
FORCE_COLOR: 3
CI_OS: "ubuntu-latest"
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
SPECULOS_IMAGE_TAG: ghcr.io/ledgerhq/speculos:0.9.5
# DEBUG: "pw:browser*"
# DEBUG_LOGS: 1
runs-on: [ledger-live-4xlarge]
strategy:
fail-fast: false
matrix:
shardIndex: [1, 2, 3]
shardTotal: [3]
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -91,66 +89,62 @@ jobs:
- name: Retrieving coin apps
uses: actions/checkout@v4
with:
ref: generated/ledger-live-bot
ref: master
repository: LedgerHQ/coin-apps
token: ${{ steps.generate-token.outputs.token }}
path: coin-apps
- name: pull docker image
run: docker pull ghcr.io/ledgerhq/speculos:sha-e262a0c
run: docker pull ${{ env.SPECULOS_IMAGE_TAG }}
shell: bash
- name: Run playwright tests [Linux => xvfb-run]
id: tests
run: |
export SPECULOS_IMAGE_TAG=${{ env.SPECULOS_IMAGE_TAG }}
export COINAPPS=$PWD/coin-apps
if [ "$ENABLE_BROADCAST" = true ]; then export ENABLE_TRANSACTION_BROADCAST=1; fi
if [ "$SPECULOS_TESTS" = true ]; then export MOCK=0 && speculos_tests=":speculos"; fi
export ENABLE_TRANSACTION_BROADCAST=1
export MOCK=0
if [ "${{ inputs.invert_filter }}" = true ]; then invert_filter="-invert"; fi
xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- pnpm desktop test:playwright$speculos_tests ${INPUTS_TEST_FILTER:+--grep$invert_filter} "${{ inputs.test_filter }}"
xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- pnpm desktop test:playwright:speculos ${INPUTS_TEST_FILTER:+--grep$invert_filter} "${{ inputs.test_filter }}" --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
env:
INPUTS_TEST_FILTER: ${{ inputs.test_filter }}
SEED: ${{ secrets.SEED_QAA_B2C }}
ENABLE_BROADCAST: ${{ contains(inputs.enable_broadcast, 'true') }}
SPECULOS_TESTS: ${{ !contains(inputs.speculos_tests, 'false') }}

- name: upload diffs to s3
if: ${{ !cancelled() }}
uses: LedgerHQ/ledger-live/tools/actions/upload-images@develop
id: s3
with:
path: apps/ledger-live-desktop/tests/artifacts/test-results
workspace: ${{ github.workspace }}
os: linux
group-name: ${{ github.ref_name }}-${{ github.run_id }}-${{ github.run_number }}
- name: upload ci suggested screenshots
- name: Upload Allure Results
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v4.3.0
with:
name: images
path: images-linux.json
name: allure-results-${{ matrix.shardIndex }}
path: "apps/ledger-live-desktop/allure-results"

- name: Upload playwright test results [On Failure]
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v4.3.0
if: failure() && !cancelled()
with:
name: playwright-results-linux
name: playwright-results-${{ matrix.shardIndex }}
path: |
apps/ledger-live-desktop/tests/artifacts/test-results
apps/ledger-live-desktop/tests/artifacts/html-report
apps/ledger-live-desktop/tests/artifacts/coverage
apps/ledger-live-desktop/tests/artifacts/videos
apps/ledger-live-desktop/tests/artifacts/logs
apps/ledger-live-desktop/tests/artifacts/*.log
- name: Upload Allure Report
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v4
report-and-notify:
name: "Report and Notify"
runs-on: [ledger-live-medium]
needs: e2e-tests-linux
if: always()
steps:
- uses: actions/checkout@v4
with:
name: allure-results-linux
path: apps/ledger-live-desktop/allure-results
ref: ${{ inputs.ref || github.sha }}

- name: Upload Allure Results
uses: actions/upload-artifact@v4.3.0
- name: Download Allure Results
uses: actions/download-artifact@v4.1.1
with:
name: "allure-results"
path: "apps/ledger-live-desktop/allure-results"
pattern: allure-results-*
merge-multiple: true

- name: Publish report on Allure Server
id: allure-server
Expand Down Expand Up @@ -188,9 +182,9 @@ jobs:
if: ${{ !cancelled() }}
shell: bash
run: >
if ${{ steps.tests.outcome == 'success' }};
if ${{ needs.e2e-tests-linux.outputs.status == 'success' }};
then echo "STATUS_COLOR=#33FF39" >> $GITHUB_ENV;
elif ${{ steps.tests.outcome == 'failure' }};
elif ${{ needs.e2e-tests-linux.outputs.status == 'failure' }};
then echo "STATUS_COLOR=#FF333C" >> $GITHUB_ENV;
else echo "STATUS_COLOR=#F3FF33" >> $GITHUB_ENV;
fi
Expand Down Expand Up @@ -226,8 +220,8 @@ jobs:
const report = {
linux: {
pass: ${{ steps.tests.outcome == 'success' }},
status: "${{ steps.tests.outcome }}",
pass: ${{ needs.e2e-tests-linux.outputs.status == 'success' }},
status: "${{ needs.e2e-tests-linux.outputs.status }}",
}
};
Expand Down Expand Up @@ -279,7 +273,7 @@ jobs:
description: "Run the full e2e test suite for LLD",
}],
};
if (${{ !inputs.slack_notif && github.event_name == 'workflow_dispatch' }}) return;
const slackPayload = {
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ tsconfig.tsbuildinfo
rce
.env
coverage
db.sqlite*
5 changes: 5 additions & 0 deletions .pnpmfile.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ function readPackage(pkg, context) {

/* Storybook packages */
addDependencies("@storybook/webpack-config", { "resolve-from": "*" }),
addDependencies("jest-allure2-reporter", { tslib: "*" }),
addDependencies("@storybook/addon-knobs", {
// Match the major version of the package
"@storybook/client-api": major ? "" + major : "*",
Expand Down Expand Up @@ -84,6 +85,10 @@ function readPackage(pkg, context) {
addDependencies("@cosmjs/tendermint-rpc", {
"@cosmjs/utils": pkg.version,
}),

removeDependencies("@zondax/ledger-cosmos-js", ["crypto"], {
kind: "dependencies",
}),
/* React Native and Metro bundler packages */
// Crashes ios build if removed /!\
addDependencies("@react-native/codegen", {
Expand Down
2 changes: 1 addition & 1 deletion .prototools
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
node = "20.11.0"
npm = "10.3.0"
pnpm = "8.14.1"
pnpm = "9.4.0"
45 changes: 22 additions & 23 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -96,29 +96,28 @@ libs/ledger-live-common/src/wallet-api/ @ledgerhq/wallet-api
libs/test-utils/ @ledgerhq/wallet-api

# Devices team
apps/cli/src/commands/devices @ledgerhq/live-devices
**/src/renderer/screens/manager/ @ledgerhq/live-devices
**/screens/CustomImage @ledgerhq/live-devices
**/components/CustomImage @ledgerhq/live-devices
**/SyncOnboarding/** @ledgerhq/live-devices
apps/**/components/DeviceAction/ @ledgerhq/live-devices
apps/ledger-live-mobile/src/screens/MyLedger*/ @ledgerhq/live-devices
apps/ledger-live-mobile/src/newArch/features/FirmwareUpdate/ @ledgerhq/live-devices
apps/web-tools/repl/ @ledgerhq/live-devices
libs/**/devices/ @ledgerhq/live-devices
libs/**/hw-transport-*/ @ledgerhq/live-devices
libs/**/react-native-*/ @ledgerhq/live-devices
libs/**/swift-*/ @ledgerhq/live-devices
libs/**/types-devices/ @ledgerhq/live-devices
libs/ledger-live-common/src/apps/ @ledgerhq/live-devices
libs/ledger-live-common/src/hw/ @ledgerhq/live-devices
libs/ledger-live-common/src/manager/ @ledgerhq/live-devices
libs/ledger-live-common/src/device/ @ledgerhq/live-devices
libs/ledger-live-common/src/device-react/ @ledgerhq/live-devices
libs/ledger-live-common/src/device-core/ @ledgerhq/live-devices
libs/device-core/ @ledgerhq/live-devices
libs/device-react/ @ledgerhq/live-devices
libs/speculos-transport/ @ledgerhq/live-devices
apps/cli/src/commands/devices @ledgerhq/live-devices
**/src/renderer/screens/manager/ @ledgerhq/live-devices
**/screens/CustomImage @ledgerhq/live-devices
**/components/CustomImage @ledgerhq/live-devices
**/SyncOnboarding/** @ledgerhq/live-devices
apps/**/components/DeviceAction/ @ledgerhq/live-devices
apps/ledger-live-mobile/src/screens/MyLedger*/ @ledgerhq/live-devices
apps/ledger-live-mobile/src/newArch/features/FirmwareUpdate/ @ledgerhq/live-devices
apps/web-tools/repl/ @ledgerhq/live-devices
libs/**/devices/ @ledgerhq/live-devices
libs/**/hw-transport-*/ @ledgerhq/live-devices
libs/**/react-native-*/ @ledgerhq/live-devices
libs/**/swift-*/ @ledgerhq/live-devices
libs/**/types-devices/ @ledgerhq/live-devices
libs/ledger-live-common/src/apps/ @ledgerhq/live-devices
libs/ledger-live-common/src/hw/ @ledgerhq/live-devices
libs/ledger-live-common/src/manager/ @ledgerhq/live-devices
libs/ledger-live-common/src/device/ @ledgerhq/live-devices
libs/ledger-live-common/src/deviceSDK/ @ledgerhq/live-devices
libs/device-core/ @ledgerhq/live-devices
libs/device-react/ @ledgerhq/live-devices
libs/speculos-transport/ @ledgerhq/live-devices

# Recover team
apps/ledger-live-desktop/src/renderer/components/RecoverBanner/ @ledgerhq/recover-software
Expand Down
Loading

0 comments on commit afbcfcd

Please sign in to comment.