testing - run tests against amnon's cluster DO NOT MERGE #349
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Integration Test" | |
on: | |
workflow_dispatch: | |
pull_request: | |
push: | |
branches: | |
- main | |
# IMPORTANT NOTES: | |
# - Changes made to this file needs to replicated across other integration-test-*.yaml files. | |
# - The Fastlane lane name is duplicated in more than one place within this workflow. | |
jobs: | |
check: | |
runs-on: macos-13 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- platform: iOS | |
lane: test_iOS17_2 | |
- platform: tvOS | |
lane: test_tvOS17_2 | |
- platform: macOS | |
lane: test_macOS | |
env: | |
LC_CTYPE: en_US.UTF-8 | |
LANG: en_US.UTF-8 | |
ABLY_ENV: amnon-dev | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v2 | |
- name: Select Xcode (15.1) | |
run: | | |
sudo xcode-select -s /Applications/Xcode_15.1.app | |
echo "Selected Xcode version:" | |
xcodebuild -version | |
- name: Environment Info | |
run: ./Scripts/log-environment-information.sh | |
- name: Check out xcparse repo | |
uses: actions/checkout@v3 | |
with: | |
repository: ably-forks/xcparse | |
ref: emit-test-case-info | |
path: xcparse | |
- id: get-xcparse-commit-sha | |
name: Get xcparse commit SHA | |
run: | | |
cd xcparse | |
echo "::set-output name=sha::$(git rev-parse HEAD)" | |
- name: "actions/cache@v3 (xcparse binary)" | |
uses: actions/cache@v3 | |
with: | |
path: xcparse/.build/debug/xcparse | |
key: ${{ runner.os }}-xcparse-${{ steps.get-xcparse-commit-sha.outputs.sha }} | |
- name: Reset Simulators | |
run: xcrun simctl erase all | |
- name: Install Dependencies | |
run: | | |
brew install xcbeautify | |
make submodules | |
bundle install | |
carthage update --use-xcframeworks --platform ${{ matrix.platform }} --no-use-binaries | |
- name: Run Tests | |
run: bundle exec fastlane ${{ matrix.lane }} | |
- name: Check Static Analyzer Output | |
id: analyzer-output | |
run: | | |
if [[ -z $(find ./derived_data -name "report-*.html") ]]; then | |
echo "Static Analyzer found no issues." | |
else | |
echo "Static Analyzer found some issues. HTML report will be available in Artifacts section. Failing build." | |
exit 1 | |
fi | |
- name: Upload Static Analyzer Reports | |
if: ${{ failure() && steps.analyzer-output.outcome == 'failure' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: static-analyzer-reports-${{ matrix.lane }} | |
path: ./derived_data/**/report-*.html | |
- name: Upload Xcodebuild Logs | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: xcodebuild-logs-${{ matrix.lane }} | |
path: ~/Library/Developer/Xcode/DerivedData/*/Logs | |
- name: Upload Test Output | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: test-output-${{ matrix.lane }} | |
path: fastlane/test_output | |
- name: Upload Test Results | |
if: always() | |
env: | |
TEST_OBSERVABILITY_SERVER_AUTH_KEY: ${{ secrets.TEST_OBSERVABILITY_SERVER_AUTH_KEY }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
Scripts/upload_test_results.sh --job-name "check (${{ matrix.platform }}, ${{ matrix.lane }})" | |