Skip to content

Test Feature Flags #161

Test Feature Flags

Test Feature Flags #161

Workflow file for this run

name: Test Feature Flags
on:
# Run at 5 AM UTC daily
schedule:
- cron: "0 5 * * *"
# Allow manual triggering
workflow_dispatch:
inputs:
environment:
description: "Environment to run tests against"
type: choice
options:
- prod
- dev
default: "prod"
required: true
jobs:
test-feature-flags:
name: Run Feature Flags Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run Async Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
name: Run Async Test
async: true
- name: Run json-file Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
name: Run Json File Flag Test
json-file: true
- name: Extract and Log Console URL
run: |
jq -r '.consoleUrl' '/home/runner/work/infra-tests/infra-tests/Run Json File Flag Test_dcd.json'
- name: Run Android Locale Test
continue-on-error: true
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow-german.yaml
device-locale: "de_DE"
name: Run Android Locale Test
- name: Run iOS Locale Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.zip
workspace: ./flows/ios-flow-german.yaml
device-locale: "de_DE"
name: Run iOS Locale Test
- name: Run iOS M4 Runner Type Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.zip
workspace: ./flows/ios-flow.yaml
runner-type: m4
name: Run iOS M4 Runner Type Test
- name: Run Android Orientation Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
orientation: 90
name: Run Android Orientation Test
- name: Run Download Artifacts Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
download-artifacts: ALL
name: Run Download Artifacts Test
- name: Assert Download Artifacts ZIP File
run: |
# Check if any download zip files were created
if ls artifacts.zip 1> /dev/null 2>&1; then
echo "✅ Download artifacts ZIP file found:"
ls -la artifacts.zip
else
echo "❌ No download artifacts ZIP file found"
echo "Files in current directory:"
ls -la
exit 1
fi
- name: Run Android Additional App Binary IDs Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow.yaml
additional-app-binary-ids: |
${{ github.event.inputs.environment == 'dev' && '6a958ab7-b028-4f33-9cb2-1e1063dea9a9' || '90dda1a7-366a-4573-915a-c5818a1f1206' }}
name: Run Android Additional App Binary IDs Test
- name: Run iOS Additional App Binary IDs Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.zip
workspace: ./flows/ios-flow.yaml
additional-app-binary-ids: |
${{ github.event.inputs.environment == 'dev' && '6953f2ed-a26e-43aa-9cd4-af5ad84c377e' || '7e155646-d554-497e-a53b-87d8f0f198e9' }}
name: Run iOS Additional App Binary IDs Test
- name: Run Android Environment Variables Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.apk
workspace: ./flows/android-flow-env.yaml
env: |
BUNDLEID=org.wikipedia
name: Run Android Environment Variables Test
- name: Run iOS Environment Variables Test
uses: devicecloud-dev/device-cloud-for-maestro@v1
with:
api-key: ${{ github.event.inputs.environment == 'dev' && secrets.DCD_DEV_API_KEY || secrets.DCD_API_KEY }}
api-url: ${{ github.event.inputs.environment == 'dev' && 'https://api.dev.devicecloud.dev' || '' }}
app-file: ./binaries/sample.zip
workspace: ./flows/ios-flow-env.yaml
env: |
BUNDLEID=org.wikimedia.wikipedia
name: Run iOS Environment Variables Test