Skip to content

Commit 9753d25

Browse files
authored
ci: publish a nuget for internal use (#2336)
1 parent 332e62b commit 9753d25

11 files changed

+729
-170
lines changed

.ado/ReactApple.nuspec

Lines changed: 356 additions & 0 deletions
Large diffs are not rendered by default.

.ado/jobs/build-test-rntester.yml

Lines changed: 28 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -2,90 +2,54 @@ parameters:
22
- name: appleBuildMatrix
33
type: object
44
default:
5-
- name: macos_oldarch_jsc
5+
- name: macos_debug_oldarch_jsc
66
friendly_name: 'macOS, Old Arch, JSC'
77
sdk: macosx
8+
configuration: Debug
89
scheme: RNTester-macOS
910
packager_platform: 'macos'
1011
new_arch_enabled: '0'
1112
use_hermes: '0'
12-
- name: macos_newarch_jsc
13+
- name: macos_debug_newarch_jsc
1314
friendly_name: 'macOS, New Arch, JSC'
1415
sdk: macosx
16+
configuration: Debug
1517
scheme: RNTester-macOS
1618
packager_platform: 'macos'
1719
new_arch_enabled: '1'
1820
use_hermes: '0'
19-
# - name: macos_oldarch_hermes
20-
# friendly_name: 'macOS, Old Arch, Hermes'
21-
# sdk: macosx
22-
# scheme: RNTester-macOS
23-
# packager_platform: 'macos'
24-
# new_arch_enabled: '1'
25-
# use_hermes: '1'
26-
# - name: macos_newarch_hermes
27-
# friendly_name: 'macOS, New Arch, Hermes'
28-
# sdk: macosx
29-
# scheme: RNTester-macOS
30-
# packager_platform: 'macos'
31-
# new_arch_enabled: '1'
32-
# use_hermes: '1'
33-
- name: ios_oldarch_jsc
21+
- name: ios_debug_oldarch_jsc
3422
friendly_name: 'iOS, Old Arch, JSC'
3523
sdk: iphonesimulator
24+
configuration: Debug
3625
scheme: RNTester
3726
packager_platform: 'ios'
3827
new_arch_enabled: '0'
3928
use_hermes: '0'
40-
- name: ios_newarch_jsc
29+
- name: ios_debug_newarch_jsc
4130
friendly_name: 'iOS, New Arch, JSC'
4231
sdk: iphonesimulator
32+
configuration: Debug
4333
scheme: RNTester
4434
packager_platform: 'ios'
4535
new_arch_enabled: '1'
4636
use_hermes: '0'
47-
# - name: ios_oldarch_hermes
48-
# friendly_name: 'iOS, Old Arch, Hermes'
49-
# sdk: iphonesimulator
50-
# scheme: RNTester
51-
# packager_platform: 'ios'
52-
# new_arch_enabled: '1'
53-
# use_hermes: '1'
54-
# - name: ios_newarch_hermes
55-
# friendly_name: 'iOS, New Arch, Hermes'
56-
# sdk: iphonesimulator
57-
# scheme: RNTester
58-
# packager_platform: 'ios'
59-
# new_arch_enabled: '1'
60-
# use_hermes: '1'
61-
- name: xros_oldarch_jsc
37+
- name: xros_debug_oldarch_jsc
6238
friendly_name: 'xrOS, Old Arch, JSC'
6339
sdk: xrsimulator
40+
configuration: Debug
6441
scheme: RNTester-visionOS
6542
packager_platform: 'ios'
6643
new_arch_enabled: '0'
6744
use_hermes: '0'
68-
- name: xros_newarch_jsc
45+
- name: xros_debug_newarch_jsc
6946
friendly_name: 'xrOS, New Arch, JSC'
7047
sdk: xrsimulator
48+
configuration: Debug
7149
scheme: RNTester-visionOS
7250
packager_platform: 'ios'
7351
new_arch_enabled: '1'
7452
use_hermes: '0'
75-
# - name: xros_oldarch_hermes
76-
# friendly_name: 'xrOS, Old Arch, Hermes'
77-
# sdk: xrsimulator
78-
# scheme: RNTester-visionOS
79-
# packager_platform: 'ios'
80-
# new_arch_enabled: '1'
81-
# use_hermes: '1'
82-
# - name: xros_newarch_hermes
83-
# friendly_name: 'xrOS, New Arch, Hermes'
84-
# sdk: xrsimulator
85-
# scheme: RNTester-visionOS
86-
# packager_platform: 'ios'
87-
# new_arch_enabled: '1'
88-
# use_hermes: '1'
8953

9054
jobs:
9155
- ${{ each slice in parameters.appleBuildMatrix }}:
@@ -100,58 +64,21 @@ jobs:
10064

10165
- script: |
10266
yarn install
103-
displayName: Install npm dependencies
104-
105-
- script: |
106-
set -eox pipefail
107-
bundle install
108-
bundle exec pod install --verbose
109-
env:
110-
RCT_NEW_ARCH_ENABLED: ${{ slice.new_arch_enabled }}
111-
USE_HERMES: ${{ slice.use_hermes }}
112-
workingDirectory: packages/rn-tester
113-
displayName: Install Pods
114-
115-
- script: |
116-
set -eox pipefail
117-
.ado/scripts/xcodebuild.sh packages/rn-tester/RNTesterPods.xcworkspace ${{ slice.sdk }} ${{ slice.scheme }} build
118-
env:
119-
CCACHE_DISABLE: 1
120-
displayName: Build ${{ slice.scheme }}
121-
122-
67+
displayName: yarn install
68+
69+
- template: /.ado/templates/build-rntester-steps.yml@self
70+
parameters:
71+
sdk: ${{ slice.sdk }}
72+
configuration: ${{ slice.configuration }}
73+
scheme: ${{ slice.scheme }}
74+
new_arch_enabled: ${{ slice.new_arch_enabled }}
75+
use_hermes: ${{ slice.use_hermes }}
76+
12377
# https://github.com/microsoft/react-native-macos/issues/2297
12478
# Skip native tests as they tend to be flaky
125-
126-
# - ${{ if ne(slice.scheme, 'RNTester-visionOS') }}:
127-
# - task: ShellScript@2
128-
# displayName: Setup packager and WebSocket test server
129-
# inputs:
130-
# scriptPath: .ado/scripts/ado-test-setup.sh
131-
# disableAutoCwd: true
132-
# cwd: ''
133-
134-
# - script: |
135-
# echo Preparing the packager for platform $PLATFORM
136-
# curl --retry-connrefused --connect-timeout 5 --max-time 10 --retry 10 --retry-delay 5 --retry-max-time 120 "http://localhost:8081/packages/rn-tester/js/RNTesterApp.${PLATFORM}.bundle?platform=${PLATFORM}&dev=true" -o /dev/null
137-
# curl --retry-connrefused --connect-timeout 5 --max-time 10 --retry 10 --retry-delay 5 --retry-max-time 120 "http://localhost:8081/packages/rn-tester/js/RNTesterApp.${PLATFORM}.bundle?platform=${PLATFORM}&dev=true&minify=false" -o /dev/null
138-
# curl --retry-connrefused --connect-timeout 5 --max-time 10 --retry 10 --retry-delay 5 --retry-max-time 120 "http://localhost:8081/IntegrationTests/IntegrationTestsApp.bundle?platform=${PLATFORM}&dev=true" -o /dev/null
139-
# curl --retry-connrefused --connect-timeout 5 --max-time 10 --retry 10 --retry-delay 5 --retry-max-time 120 "http://localhost:8081/IntegrationTests/RCTRootViewIntegrationTestApp.bundle?platform=${PLATFORM}&dev=true" -o /dev/null
140-
# env:
141-
# PLATFORM: ${{ slice.packager_platform }}
142-
# displayName: Fetch JS bundles from dev server
143-
144-
# - script: |
145-
# set -eox pipefail
146-
# .ado/scripts/xcodebuild.sh packages/rn-tester/RNTesterPods.xcworkspace ${{ slice.sdk }} ${{ slice.scheme }} test
147-
# env:
148-
# CCACHE_DISABLE: 1
149-
# displayName: Test ${{ slice.scheme }}
150-
151-
# - task: ShellScript@2
152-
# displayName: Cleanup packager and WebSocket test server
153-
# inputs:
154-
# scriptPath: .ado/scripts/ado-test-cleanup.sh
155-
# disableAutoCwd: true
156-
# cwd: ''
157-
# condition: always()
79+
# - template: /.ado/templates/test-rntester-steps.yml@self
80+
# parameters:
81+
# sdk: ${{ slice.sdk }}
82+
# configuration: ${{ slice.configuration }}
83+
# scheme: ${{ slice.scheme }}
84+
# packager_platform: ${{ slice.packager_platform }}

.ado/jobs/npm-publish-dry-run.yml

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,8 @@ jobs:
33
displayName: NPM Publish Dry Run
44
pool:
55
vmImage: $(VmImageApple)
6-
timeoutInMinutes: 60 # how long to run the job before automatically cancelling
7-
cancelTimeoutInMinutes: 5 # how much time to give 'run always even if cancelled tasks' before killing them
6+
timeoutInMinutes: 60
7+
cancelTimeoutInMinutes: 5
88
steps:
9-
- checkout: self # self represents the repo where the initial Pipelines YAML file was found
10-
clean: true # whether to fetch clean each time
11-
fetchFilter: blob:none # partial clone for faster clones while maintaining history
12-
persistCredentials: true # set to 'true' to leave the OAuth token in the Git config after the initial fetch
13-
149
- template: /.ado/templates/npm-publish-steps.yml@self
1510

.ado/jobs/npm-publish.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
jobs:
2+
- job: NPMPublish
3+
displayName: NPM Publish
4+
pool:
5+
name: cxeiss-ubuntu-20-04-large
6+
image: cxe-ubuntu-20-04-1es-pt
7+
os: linux
8+
variables:
9+
- name: BUILDSECMON_OPT_IN
10+
value: true
11+
timeoutInMinutes: 90
12+
cancelTimeoutInMinutes: 5
13+
templateContext:
14+
outputs:
15+
- output: pipelineArtifact
16+
targetPath: $(System.DefaultWorkingDirectory)
17+
artifactName: github-npm-js-publish
18+
steps:
19+
- template: /.ado/templates/npm-publish-steps.yml@self

0 commit comments

Comments
 (0)