Bumps the github-actions-updates group with 3 updates in the /.github/workflows directory: [actions/upload-artifact](https://github.com/actions/upload-artifact), [mattermost/actions](https://github.com/mattermost/actions) and [ruby/setup-ruby](https://github.com/ruby/setup-ruby). Updates `actions/upload-artifact` from 4.6.0 to 4.6.2 - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](65c4c4a1dd...ea165f8d65) Updates `mattermost/actions` from 746563b58e737a17a8ceb00b84a813b9e6e1b236 to d5174b860704729f4c14ef8489ae075742bfa08a - [Commits](746563b58e...d5174b8607) Updates `ruby/setup-ruby` from 1.221.0 to 1.230.0 - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](32110d4e31...e5ac7b085f) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: 4.6.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions-updates - dependency-name: mattermost/actions dependency-version: d5174b860704729f4c14ef8489ae075742bfa08a dependency-type: direct:production dependency-group: github-actions-updates - dependency-name: ruby/setup-ruby dependency-version: 1.230.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
129 lines
4.2 KiB
YAML
129 lines
4.2 KiB
YAML
name: Compatibility Matrix Testing
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
CMT_MATRIX:
|
|
description: "A JSON object representing the testing matrix"
|
|
required: true
|
|
type: string
|
|
MOBILE_VERSION:
|
|
description: "The mattermost mobile version to test"
|
|
required: true
|
|
|
|
jobs:
|
|
## This is picked up after the finish for cleanup
|
|
upload-cmt-server-detals:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- name: cmt/generate-instance-details-file
|
|
run: echo '${{ inputs.CMT_MATRIX }}' > instance-details.json
|
|
|
|
- name: cmt/upload-instance-details
|
|
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
|
with:
|
|
name: instance-details.json
|
|
path: instance-details.json
|
|
retention-days: 1
|
|
|
|
calculate-commit-hash:
|
|
runs-on: ubuntu-22.04
|
|
outputs:
|
|
MOBILE_SHA: ${{ steps.repo.outputs.MOBILE_SHA }}
|
|
steps:
|
|
- name: cmt/checkout-mobile
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
with:
|
|
ref: ${{ inputs.MOBILE_VERSION }}
|
|
|
|
- name: cmt/calculate-mattermost-sha
|
|
id: repo
|
|
run: echo "MOBILE_SHA=$(git rev-parse HEAD)" >> ${GITHUB_OUTPUT}
|
|
|
|
update-initial-status:
|
|
runs-on: ubuntu-22.04
|
|
needs:
|
|
- calculate-commit-hash
|
|
steps:
|
|
- uses: mattermost/actions/delivery/update-commit-status@d5174b860704729f4c14ef8489ae075742bfa08a
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
repository_full_name: ${{ github.repository }}
|
|
commit_sha: ${{ needs.calculate-commit-hash.outputs.MOBILE_SHA }}
|
|
context: e2e/compatibility-matrix-testing
|
|
description: "Compatibility Matrix Testing for ${{ inputs.MOBILE_VERSION }} version"
|
|
status: pending
|
|
|
|
# Input follows the below schema
|
|
# {
|
|
# "server": [
|
|
# {
|
|
# "version": "9.6.1",
|
|
# "url": "https://delivery-cmt-8467830017-9-6-1.test.mattermost.cloud/"
|
|
# },
|
|
# {
|
|
# "version": "9.5.2",
|
|
# "url": "https://delivery-cmt-8467830017-9-5-2.test.mattermost.cloud/"
|
|
# }
|
|
# ]
|
|
# }
|
|
build-ios-simulator:
|
|
runs-on: macos-14
|
|
needs:
|
|
- update-initial-status
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
with:
|
|
ref: ${{ inputs.MOBILE_VERSION }}
|
|
|
|
- name: Prepare iOS Build
|
|
uses: ./.github/actions/prepare-ios-build
|
|
|
|
- name: Build iOS Simulator
|
|
env:
|
|
TAG: "${{ inputs.MOBILE_VERSION }}"
|
|
AWS_ACCESS_KEY_ID: "${{ secrets.MM_MOBILE_BETA_AWS_ACCESS_KEY_ID }}"
|
|
AWS_SECRET_ACCESS_KEY: "${{ secrets.MM_MOBILE_BETA_AWS_SECRET_ACCESS_KEY }}"
|
|
GITHUB_TOKEN: "${{ secrets.MM_MOBILE_GITHUB_TOKEN }}"
|
|
run: bundle exec fastlane ios simulator --env ios.simulator
|
|
working-directory: ./fastlane
|
|
|
|
- name: Upload iOS Simulator Build
|
|
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
|
with:
|
|
name: ios-build-simulator-${{ github.run_id }}
|
|
path: Mattermost-simulator-x86_64.app.zip
|
|
|
|
detox-e2e:
|
|
name: mobile-cmt-${{ matrix.server.version }}
|
|
uses: ./.github/workflows/e2e-detox-template.yml
|
|
needs:
|
|
- build-ios-simulator
|
|
strategy:
|
|
fail-fast: false
|
|
matrix: ${{ fromJson(inputs.CMT_MATRIX) }}
|
|
secrets: inherit
|
|
with:
|
|
run-ios-tests: true
|
|
run-type: "RELEASE"
|
|
MM_TEST_SERVER_URL: ${{ matrix.server.url }}
|
|
MOBILE_VERSION: ${{ inputs.MOBILE_VERSION }}
|
|
|
|
update-final-status:
|
|
runs-on: ubuntu-22.04
|
|
needs:
|
|
- calculate-commit-hash
|
|
- detox-e2e
|
|
steps:
|
|
- uses: mattermost/actions/delivery/update-commit-status@main
|
|
env:
|
|
GITHUB_TOKEN: ${{ github.token }}
|
|
with:
|
|
repository_full_name: ${{ github.repository }}
|
|
commit_sha: ${{ needs.calculate-commit-hash.outputs.MOBILE_SHA }}
|
|
context: e2e/compatibility-matrix-testing
|
|
description: Compatibility Matrix Testing for ${{ inputs.MOBILE_VERSION }} version
|
|
status: ${{ needs.detox-e2e.outputs.STATUS }}
|
|
target_url: ${{ needs.detox-e2e.outputs.TARGET_URL }}
|