Skip to content

Commit 8b956d8

Browse files
authored
Restore ability to run adhoc maestro cloud release tests for hotfixes (duckduckgo#7917)
Task/Issue URL: https://app.asana.com/1/137249556945/project/1211760946270935/task/1213422200354215?focus=true ### Description Restores `release_tests.yml` to allow it to trigger release tests to run on Maestro Cloud from CI from an arbitrary commit hash ### Changes: - Add initial `develop` checkout so composite actions resolve correctly for hotfix refs - Remove `test-tag` input — always run `releaseTest` - Rename `app-version` input to `commit-ref` (accepts branches, tags, or SHAs) - Rename workflow to "Ad-hoc Release Tests - Maestro Cloud" - Remove Asana task creation on failure ### Steps to test this PR - QA optional - Tested in runs https://github.com/duckduckgo/Android/actions/runs/22862027726 and https://github.com/duckduckgo/Android/actions/runs/22861749518 to run against a tag and a branch <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk: changes are limited to a manually-triggered CI workflow, though it affects how release-test runs are checked out and could break ad-hoc testing if refs/actions resolution is wrong. > > **Overview** > Restores/streamlines the ad-hoc Maestro Cloud release testing workflow so it can be run against an arbitrary branch/tag/SHA via a renamed `commit-ref` input. > > The workflow now checks out `develop` first to ensure local composite actions resolve, always runs the `releaseTest` Maestro tag (removing the configurable `test-tag` input), and removes the Asana task creation and related env vars on failure. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 76c5545. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Craig Russell <1336281+CDRussell@users.noreply.github.com>
1 parent 27bc177 commit 8b956d8

1 file changed

Lines changed: 11 additions & 28 deletions

File tree

Lines changed: 11 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,30 @@
1-
name: Release - Run E2E Maestro Tests
1+
name: Ad-hoc Release Tests - Maestro Cloud
22

33
on:
44
workflow_dispatch:
55
inputs:
6-
app-version:
7-
description: 'App Version for Testing'
6+
commit-ref:
7+
description: 'Branch name, tag, or commit SHA to build and test'
88
required: true
99
default: 'PLACEHOLDER'
1010
type: string
11-
test-tag:
12-
description: 'Maestro Tests tag to include'
13-
required: true
14-
default: 'releaseTest'
15-
type: string
16-
17-
env:
18-
ASANA_PAT: ${{ secrets.ASANA_ACCESS_TOKEN }}
19-
emoji_info: ":information_source:" # ℹ️
20-
emoji_success: ":white_check_mark:" #
21-
emoji_failure: ":x:" #
2211

2312
jobs:
2413
run-release-tests:
2514
name: Create release APK and run E2E Maestro tests
2615
runs-on: ubuntu-latest
2716
steps:
17+
- name: Checkout develop
18+
uses: actions/checkout@v4
19+
with:
20+
ref: develop
21+
submodules: recursive
22+
2823
- name: Checkout and Assemble
2924
id: assemble
3025
uses: ./.github/actions/checkout-and-assemble
3126
with:
32-
commit: ${{ inputs.app-version }}
27+
commit: ${{ inputs.commit-ref }}
3328
flavours: 'play'
3429
release_properties: ${{ secrets.FAKE_RELEASE_PROPERTIES }}
3530
release_key: ${{ secrets.FAKE_RELEASE_KEY }}
@@ -47,7 +42,7 @@ jobs:
4742
app-file: ${{ steps.assemble.outputs.play_apk_path }}
4843
android-api-level: 30
4944
workspace: .maestro
50-
include-tags: ${{ inputs.test-tag }}
45+
include-tags: releaseTest
5146

5247
- name: Analyze Maestro Flow Results
5348
if: always()
@@ -67,15 +62,3 @@ jobs:
6762
echo "Release Tests Step Conclusion: ${{ steps.release-tests.conclusion }}" # From Maestro action itself
6863
echo "Analyzed Flow Summary Status: ${{ steps.analyze-flow-results.outputs.flow_summary_status }}" # From analyzer action
6964
printf "Analyzed Flow Summary Message:\n%s\n" "${{ steps.analyze-flow-results.outputs.flow_summary_message }}"
70-
71-
- name: Create Asana task when workflow failed
72-
if: ${{ failure() }}
73-
id: create-failure-task
74-
uses: duckduckgo/native-github-asana-sync@v2.0
75-
with:
76-
asana-pat: ${{ secrets.ASANA_ACCESS_TOKEN }}
77-
asana-project: ${{ vars.GH_ANDROID_APP_PROJECT_ID }}
78-
asana-section: ${{ vars.GH_ANDROID_APP_INCOMING_SECTION_ID }}
79-
asana-task-name: GH Workflow Failure - Tag Android Release (Robin)
80-
asana-task-description: Run Release Tests in Maestro has failed. See https://github.com/duckduckgo/Android/actions/runs/${{ github.run_id }}
81-
action: 'create-asana-task'

0 commit comments

Comments
 (0)