mirror of
https://github.com/zoriya/react-native-svg.git
synced 2025-12-06 07:06:11 +00:00
fix: add new macos examples (#2372)
# Summary We want to avoid problems with GitHub workflows. Create a new Macos example for new and old architecture. ## Test Plan Run GitHub workflows ## Compatibility | OS | Implemented | | ------- | :---------: | | macOS | ✅ | --------- Co-authored-by: Jakub Grzywacz <jakub.grzywacz@swmansion.com>
This commit is contained in:
21
.github/workflows/macos-build-fabric-test.yml
vendored
21
.github/workflows/macos-build-fabric-test.yml
vendored
@@ -1,21 +0,0 @@
|
||||
name: Test new architecture macOS build
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/macos-fabric-test.yml'
|
||||
- 'RNSVG.podspec'
|
||||
- 'apple/**'
|
||||
- 'macos-example/package.json'
|
||||
- 'macos-example/macos/**'
|
||||
- 'src/fabric/**'
|
||||
- 'package.json'
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
reusable-macos-build:
|
||||
if: github.repository == 'software-mansion/react-native-svg'
|
||||
uses: ./.github/workflows/reusable-macos-build.yml
|
||||
with:
|
||||
new_arch_enabled: '1'
|
||||
73
.github/workflows/macos-build-test-fabric.yml
vendored
Normal file
73
.github/workflows/macos-build-test-fabric.yml
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
name: Test fabric macOS build
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- .github/workflows/macos-build-test.yml
|
||||
- RNSVG.podspec
|
||||
- apple/**
|
||||
- macos-example/package.json
|
||||
- macos-example/macos/**
|
||||
- src/fabric/**
|
||||
- package.json
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build:
|
||||
if: github.repository == 'software-mansion/react-native-svg'
|
||||
runs-on: macos-14
|
||||
strategy:
|
||||
matrix:
|
||||
working-directory: [fabric-macos-example]
|
||||
fail-fast: false
|
||||
concurrency:
|
||||
group: macos-${{ matrix.working-directory }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- name: Check out Git repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Restore react-native-svg node_modules from cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: node_modules
|
||||
key: ${{ runner.os }}-node-modules-svg-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: ${{ runner.os }}-node-modules-svg-
|
||||
|
||||
- name: Install react-native-svg node_modules
|
||||
run: yarn install
|
||||
|
||||
- name: Restore app node_modules from cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ${{ matrix.working-directory }}/node_modules
|
||||
key: ${{ runner.os }}-node-modules-${{ matrix.working-directory }}-${{ hashFiles(format('{0}/yarn.lock', matrix.working-directory)) }}
|
||||
restore-keys: ${{ runner.os }}-node-modules-${{ matrix.working-directory }}-
|
||||
|
||||
- name: Install app node_modules
|
||||
working-directory: ${{ matrix.working-directory }}
|
||||
run: yarn install
|
||||
|
||||
- name: Restore Pods from cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
${{ matrix.working-directory }}/macos/Pods
|
||||
~/Library/Caches/CocoaPods
|
||||
~/.cocoapods
|
||||
key: ${{ runner.os }}-pods-${{ matrix.working-directory }}-${{ hashFiles(format('{0}/macos/Podfile.lock', matrix.working-directory)) }}
|
||||
|
||||
- name: Install Pods
|
||||
working-directory: ${{ matrix.working-directory }}/macos
|
||||
run: RCT_NEW_ARCH_ENABLED=1 pod install
|
||||
|
||||
- name: Restore build artifacts from cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/Library/Developer/Xcode/DerivedData
|
||||
key: ${{ runner.os }}-macos-derived-data-${{ matrix.working-directory }}-${{ hashFiles(format('{0}/macos/Podfile.lock', matrix.working-directory)) }}
|
||||
|
||||
- name: Build app
|
||||
working-directory: ${{ matrix.working-directory }}
|
||||
run: yarn macos
|
||||
@@ -1,21 +1,28 @@
|
||||
name: Reusable macOS Build
|
||||
|
||||
name: Test paper macOS build
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
new_arch_enabled:
|
||||
required: true
|
||||
type: string
|
||||
pull_request:
|
||||
paths:
|
||||
- .github/workflows/macos-build-test.yml
|
||||
- RNSVG.podspec
|
||||
- apple/**
|
||||
- macos-example/package.json
|
||||
- macos-example/macos/**
|
||||
- src/fabric/**
|
||||
- package.json
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build:
|
||||
if: github.repository == 'software-mansion/react-native-svg'
|
||||
runs-on: macos-14
|
||||
strategy:
|
||||
matrix:
|
||||
working-directory: [macos-example]
|
||||
working-directory: [paper-macos-example]
|
||||
fail-fast: false
|
||||
concurrency:
|
||||
group: macos-${{ matrix.working-directory }}-${{ github.ref }}-${{ inputs.new_arch_enabled }}
|
||||
group: macos-${{ matrix.working-directory }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- name: Check out Git repository
|
||||
@@ -28,7 +35,7 @@ jobs:
|
||||
key: ${{ runner.os }}-node-modules-svg-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: ${{ runner.os }}-node-modules-svg-
|
||||
|
||||
- name: Install react-native-svg node modules
|
||||
- name: Install react-native-svg node_modules
|
||||
run: yarn install
|
||||
|
||||
- name: Restore app node_modules from cache
|
||||
@@ -38,7 +45,7 @@ jobs:
|
||||
key: ${{ runner.os }}-node-modules-${{ matrix.working-directory }}-${{ hashFiles(format('{0}/yarn.lock', matrix.working-directory)) }}
|
||||
restore-keys: ${{ runner.os }}-node-modules-${{ matrix.working-directory }}-
|
||||
|
||||
- name: Install app node modules
|
||||
- name: Install app node_modules
|
||||
working-directory: ${{ matrix.working-directory }}
|
||||
run: yarn install
|
||||
|
||||
21
.github/workflows/macos-build-test.yml
vendored
21
.github/workflows/macos-build-test.yml
vendored
@@ -1,21 +0,0 @@
|
||||
name: Test paper macOS build
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/macos-build-test.yml'
|
||||
- 'RNSVG.podspec'
|
||||
- 'apple/**'
|
||||
- 'macos-example/package.json'
|
||||
- 'macos-example/macos/**'
|
||||
- 'src/fabric/**'
|
||||
- 'package.json'
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
reusable-macos-build:
|
||||
if: github.repository == 'software-mansion/react-native-svg'
|
||||
uses: ./.github/workflows/reusable-macos-build.yml
|
||||
with:
|
||||
new_arch_enabled: '0'
|
||||
Reference in New Issue
Block a user