-
Notifications
You must be signed in to change notification settings - Fork 314
72 lines (70 loc) · 2.21 KB
/
cocoapods.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
name: CocoaPods
on:
push:
branches: [ main ]
paths:
- 'Sources/**'
- 'UnitTests/**'
- '*.podspec'
- '.github/workflows/cocoapods.yml'
pull_request:
branches: [ main ]
paths:
- 'Sources/**'
- 'UnitTests/**'
- '*.podspec'
- '.github/workflows/cocoapods.yml'
schedule:
# Run the first and fifteenth of every month at 6:12 UTC
- cron: '12 6 1,15 * *'
jobs:
# Test with --no-subspecs because there are so many it takes a really long
# time, so this covers the Core spec and tests.
pod-lib-lint-core:
name: CocoaPods lib lint Core
runs-on: macos-14
strategy:
fail-fast: false
matrix:
pod_configuration: ["Debug", "Release"]
extra_flags: ["", "--use-static-frameworks"]
steps:
- uses: actions/checkout@v4
- name: "iOS, macOS, and tvOS"
# GitHub runners dropped visionOS. https://github.com/actions/runner-images/issues/10559
run: |
pod lib lint --verbose ${{ matrix.extra_flags }} \
--configuration=${{ matrix.pod_configuration }} \
--platforms=ios,macos,tvos \
--no-subspecs \
--test-specs=Tests \
GoogleAPIClientForREST.podspec
# No test specs, that still fails on CI.
- name: "watchOS"
run: |
pod lib lint --verbose ${{ matrix.extra_flags }} \
--configuration=${{ matrix.pod_configuration }} \
--platforms=watchos \
--no-subspecs \
--skip-tests \
GoogleAPIClientForREST.podspec
# Repeat the validation just for macOS but allow all the subspecs to be
# validated also. Uses --skip-tests since they were done in Core. This is the
# longest validation be far, and adding other platforms would just use more
# resources without any real gain.
pod-lib-lint-subspecs:
name: CocoaPods lib lint SubSpecs
runs-on: macos-14
strategy:
fail-fast: false
matrix:
pod_configuration: ["Debug", "Release"]
steps:
- uses: actions/checkout@v4
- name: "macOS"
run: |
pod lib lint --verbose \
--configuration=${{ matrix.pod_configuration }} \
--platforms=macos \
--skip-tests \
GoogleAPIClientForREST.podspec