Fix permission issues with release workflow #11
Workflow file for this run
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: CI (iOS & tvOS) | |
on: | |
pull_request: | |
paths: | |
- '.github/workflows/ci-ios-tvos.yml' | |
- 'package.json' | |
- 'yarn.lock' | |
- 'ios/**' | |
- 'RNBitmovinPlayer.podspec' | |
- '.swiftlint.yml' | |
- 'Brewfile.lock.json' | |
- 'example/ios/**' | |
- 'example/package.json' | |
- 'example/yarn.lock' | |
push: | |
branches: [development] | |
paths: | |
- '.github/workflows/ci-ios-tvos.yml' | |
- 'package.json' | |
- 'yarn.lock' | |
- 'ios/**' | |
- 'RNBitmovinPlayer.podspec' | |
- '.swiftlint.yml' | |
- 'Brewfile.lock.json' | |
- 'example/ios/**' | |
- 'example/package.json' | |
- 'example/yarn.lock' | |
concurrency: | |
group: ci-ios-tvos-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
NO_FLIPPER: 1 | |
jobs: | |
code-style-ios: | |
name: Code style iOS | |
runs-on: macOS-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: maxim-lobanov/setup-xcode@v1 | |
with: | |
xcode-version: '14.2' | |
- name: Install dependencies | |
run: brew bundle install | |
- name: Check code style | |
run: swiftlint --strict | |
test-build-ios: | |
name: Build iOS | |
runs-on: macOS-12 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node and npm registry | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '16' | |
registry-url: 'https://registry.npmjs.org/' | |
cache: 'yarn' | |
- uses: maxim-lobanov/setup-xcode@v1 | |
with: | |
xcode-version: '14.2' | |
- name: Install node_modules | |
run: yarn install --frozen-lockfile | |
- name: Install node_modules (example/) | |
run: yarn install --frozen-lockfile --cwd example | |
- name: Install node_modules (integration_test/) | |
run: yarn install --frozen-lockfile --cwd integration_test | |
- name: Install dependencies | |
run: brew bundle install | |
- name: Restore Pods cache | |
id: pods-cache-restore | |
uses: actions/cache/restore@v3 | |
with: | |
path: | | |
.cocoapods-cache | |
example/ios/Pods | |
integration_test/ios/Pods | |
key: pods-${{ hashFiles('example/ios/Podfile.lock') }}-${{ hashFiles('integration_test/ios/Podfile.lock') }} | |
restore-keys: pods- | |
- name: Install pods | |
run: | | |
pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git || pod repo update bitmovin | |
yarn pods | |
env: | |
CP_HOME_DIR: ${{ github.workspace }}/.cocoapods-cache | |
- name: Save Pods cache | |
if: steps.pods-cache-restore.outputs.cache-hit != 'true' | |
uses: actions/cache/save@v3 | |
with: | |
path: | | |
.cocoapods-cache | |
example/ios/Pods | |
integration_test/ios/Pods | |
key: ${{ steps.pods-cache-restore.outputs.cache-primary-key }} | |
- name: Build iOS example | |
run: set -o pipefail && xcodebuild -workspace BitmovinPlayerReactNativeExample.xcworkspace -scheme BitmovinPlayerReactNativeExample -configuration Debug build CODE_SIGNING_ALLOWED='NO' | xcpretty | |
working-directory: example/ios | |
env: | |
NSUnbufferedIO: YES | |
- name: Build iOS integration test host app | |
run: set -o pipefail && xcodebuild -workspace IntegrationTest.xcworkspace -scheme IntegrationTest -configuration Debug build CODE_SIGNING_ALLOWED='NO' | xcpretty | |
working-directory: integration_test/ios | |
env: | |
NSUnbufferedIO: YES | |
test-build-tvos: | |
name: Build tvOS | |
runs-on: macOS-12 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup node and npm registry | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '16' | |
registry-url: 'https://registry.npmjs.org/' | |
cache: 'yarn' | |
- uses: maxim-lobanov/setup-xcode@v1 | |
with: | |
xcode-version: '14.2' | |
- name: Install node_modules | |
run: yarn install --frozen-lockfile | |
- name: Install node_modules (example/) | |
run: yarn install --frozen-lockfile --cwd example | |
- name: Install dependencies | |
run: brew bundle install | |
- name: Restore Pods cache | |
id: pods-cache-restore | |
uses: actions/cache/restore@v3 | |
with: | |
path: | | |
.cocoapods-cache | |
example/ios/Pods | |
integration_test/ios/Pods | |
key: pods-${{ hashFiles('example/ios/Podfile.lock') }}-${{ hashFiles('integration_test/ios/Podfile.lock') }} | |
restore-keys: pods- | |
- name: Install pods | |
run: | | |
pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git || pod repo update bitmovin | |
yarn example pods | |
env: | |
CP_HOME_DIR: ${{ github.workspace }}/.cocoapods-cache | |
- name: Save Pods cache | |
if: steps.pods-cache-restore.outputs.cache-hit != 'true' | |
uses: actions/cache/save@v3 | |
with: | |
path: | | |
.cocoapods-cache | |
example/ios/Pods | |
integration_test/ios/Pods | |
key: ${{ steps.pods-cache-restore.outputs.cache-primary-key }} | |
- name: Build tvOS example | |
run: set -o pipefail && xcodebuild -workspace BitmovinPlayerReactNativeExample.xcworkspace -scheme BitmovinPlayerReactNativeExample-tvOS -configuration Debug build CODE_SIGNING_ALLOWED='NO' | xcpretty | |
working-directory: example/ios | |
env: | |
NSUnbufferedIO: YES |