-
Notifications
You must be signed in to change notification settings - Fork 1.7k
105 lines (101 loc) · 4.98 KB
/
infra.ftl.nightly.yml
File metadata and controls
105 lines (101 loc) · 4.98 KB
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
name: infra.ftl.nightly
permissions:
contents: read
on:
schedule:
# Every day at 6 AM UTC
- cron: '0 6 * * *'
workflow_dispatch:
pull_request:
paths:
- '.github/workflows/infra.ftl.nightly.yml'
- 'Gemfile*'
env:
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
jobs:
ftl_test:
# TODO(ncooke3): Enable FTL nightly testing. See #16031.
if: github.repository == 'Firebase/firebase-ios-sdk' && false
runs-on: macos-15
name: ${{ matrix.product }}
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
strategy:
fail-fast: false
matrix:
include:
- product: Messaging
setup_command: scripts/setup_quickstart.sh messaging
plist_src_path: scripts/gha-encrypted/qs-messaging.plist.gpg
plist_dst_path: quickstart-ios/messaging/GoogleService-Info.plist
build_command: scripts/test_quickstart_ftl.sh Messaging
- product: Storage
setup_command: scripts/setup_quickstart.sh storage
plist_src_path: scripts/gha-encrypted/qs-storage.plist.gpg
plist_dst_path: quickstart-ios/storage/GoogleService-Info.plist
build_command: scripts/test_quickstart_ftl.sh Storage swift
- product: Crashlytics
setup_command: scripts/setup_quickstart.sh crashlytics
plist_src_path: scripts/gha-encrypted/qs-crashlytics.plist.gpg
plist_dst_path: quickstart-ios/crashlytics/GoogleService-Info.plist
build_command: scripts/test_quickstart_ftl.sh Crashlytics swift
- product: ABTesting
setup_command: scripts/setup_quickstart.sh abtesting
plist_src_path: scripts/gha-encrypted/qs-abtesting.plist.gpg
plist_dst_path: quickstart-ios/abtesting/GoogleService-Info.plist
build_command: scripts/test_quickstart_ftl.sh ABTesting
- product: Performance
setup_command: scripts/setup_quickstart.sh performance
plist_src_path: scripts/gha-encrypted/qs-performance.plist.gpg
plist_dst_path: quickstart-ios/performance/GoogleService-Info.plist
build_command: scripts/test_quickstart_ftl.sh Performance swift
- product: Installations
setup_command: scripts/setup_quickstart.sh installations
plist_src_path: scripts/gha-encrypted/Installations/GoogleService-Info.plist.gpg
plist_dst_path: quickstart-ios/installations/GoogleService-Info.plist
build_command: scripts/test_quickstart_ftl.sh Installations
# TODO(ncooke3): Get these samples building.
# - product: Authentication
# setup_command: scripts/setup_quickstart.sh authentication
# plist_src_path: scripts/gha-encrypted/qs-authentication.plist.gpg
# plist_dst_path: quickstart-ios/authentication/GoogleService-Info.plist
# build_command: scripts/test_quickstart_ftl.sh Authentication
# This is probably dated: sed -i '' 's/REVERSED_CLIENT_ID/com.googleusercontent.apps.1025801074639-6p6ebi8amuklcjrto20gvpe295smm8u6/' quickstart-ios/functions/LegacyFunctionsQuickstart/FunctionsExample/Info.plist
# - product: Functions
# setup_command: scripts/setup_quickstart.sh functions
# plist_src_path: scripts/gha-encrypted/qs-functions.plist.gpg
# plist_dst_path: quickstart-ios/functions/GoogleService-Info.plist
# build_command: scripts/test_quickstart_ftl.sh Functions
# - product: RemoteConfig
# setup_command: scripts/setup_quickstart.sh remoteConfig
# plist_src_path: scripts/gha-encrypted/qs-functions.plist.gpg
# plist_dst_path: quickstart-ios/functions/GoogleService-Info.plist
# build_command: scripts/test_quickstart_ftl.sh RemoteConfig
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
- name: Setup Bundler
run: scripts/setup_bundler.sh
- name: Install xcpretty
run: gem install xcpretty
- uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: '3.11'
- name: Xcode
run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer
- name: Setup quickstart
run: ${{ matrix.setup_command }}
- name: Install Secret GoogleService-Info.plist
run: |
scripts/decrypt_gha_secret.sh \
${{ matrix.plist_src_path }} \
${{ matrix.plist_dst_path }} \
"$plist_secret"
- name: Build swift quickstart
run: ([ -z "$plist_secret" ] || scripts/third_party/travis/retry.sh ${{ matrix.build_command }})
- id: ftl_test
uses: FirebaseExtended/github-actions/firebase-test-lab@57091ac526b308ae005c6d6d59aab83d5ab2aa71 # v1.5.0
with:
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
testapp_dir: quickstart-ios/build-for-testing
test_type: "xctest"