Restore async public API for 3.9 #1869
This file contains hidden or 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: CI Pipeline | |
| on: | |
| push: | |
| branches: ['main'] | |
| pull_request: | |
| types: [opened, synchronize] | |
| env: | |
| JAVA_VERSION: '22' | |
| jobs: | |
| license: | |
| name: Verify license headers | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - run: ./scripts/copy_license --check | |
| check-packed-files: | |
| name: Check package files | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| env: | |
| TERM: xterm | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - run: | | |
| pnpm module clean | |
| pnpm module build | |
| pnpm compare-snapshot | |
| lint: | |
| name: Lint module + sample | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Run SwiftLint | |
| uses: norio-nomura/action-swiftlint@9f4dcd7fd46b4e75d7935cf2f4df406d5cae3684 # 3.2.1 | |
| with: | |
| args: --strict | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - run: | | |
| pnpm module build | |
| pnpm module lint | |
| pnpm sample lint | |
| test: | |
| name: Run jest tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - run: | |
| pnpm test --coverage | |
| --testPathPatterns="modules/@shopify/checkout-sheet-kit/tests" | |
| --coverageReporters=json-summary | |
| - name: Coverage comment | |
| if: github.event_name == 'pull_request' | |
| uses: MishaKav/jest-coverage-comment@fb83bcbaeb5ca467936175796f862a2992938833 # main | |
| with: | |
| coverage-summary-path: ./coverage/coverage-summary.json | |
| title: 'Coverage Report' | |
| create-new-comment: false | |
| test-android: | |
| name: Run Android Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| needs: [lint, test] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - name: Install JDK | |
| uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| id: setup-java | |
| with: | |
| distribution: 'zulu' | |
| java-version: ${{ env.JAVA_VERSION }} | |
| - name: Run Android tests | |
| timeout-minutes: 20 | |
| env: | |
| GRADLE_OPTS: -Xmx4g -XX:MaxMetaspaceSize=768m | |
| JAVA_HOME: ${{ steps.setup-java.outputs.path }} | |
| run: | | |
| echo "JAVA_HOME: $JAVA_HOME" | |
| java -version | |
| javac -version | |
| echo "STOREFRONT_DOMAIN=myshopify.com" > sample/.env | |
| pnpm module build | |
| pnpm sample test:android --no-daemon | |
| test-ios: | |
| name: Run Swift Tests | |
| runs-on: macos-26-xlarge | |
| timeout-minutes: 20 | |
| needs: [lint, test] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Display Current Xcode Information | |
| run: | | |
| echo "Xcode Path: $(xcode-select -p)" | |
| echo "Xcode Version: $(xcrun xcodebuild -version)" | |
| - name: Setup iOS Simulator | |
| uses: ./.github/actions/setup-simulator | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - name: Install cocoapods | |
| uses: ./.github/actions/install-cocoapods | |
| - name: Run Swift tests | |
| run: | | |
| pnpm sample test:ios |