-
Notifications
You must be signed in to change notification settings - Fork 9
/
project.yml
226 lines (224 loc) · 7.13 KB
/
project.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
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
name: Authenticator
fileGroups:
- Configs
configs:
Debug: debug
Release: release
options:
createIntermediateGroups: true
deploymentTarget:
iOS: 15.0
watchOS: 8.0
groupSortPosition: top
usesTabs: false
indentWidth: 4
tabWidth: 4
settings:
MARKETING_VERSION: 2024.6.1
CURRENT_PROJECT_VERSION: 1
packages:
BitwardenSdk:
url: https://github.com/bitwarden/sdk-swift
revision: 93ce71195a729f30b3edd48caeb7af9a39f35403
BitwardenShared:
url: https://github.com/bitwarden/ios
branch: main
Firebase:
url: https://github.com/firebase/firebase-ios-sdk
exactVersion: 10.19.0
Networking:
path: Networking
SnapshotTesting:
url: https://github.com/pointfreeco/swift-snapshot-testing
exactVersion: 1.15.2
SwiftProtobuf:
url: https://github.com/apple/swift-protobuf
exactVersion: 1.26.0
ViewInspector:
url: https://github.com/nalexn/ViewInspector
exactVersion: 0.10.0
schemes:
Authenticator:
build:
targets:
Authenticator: all
AuthenticatorTests: [test]
test:
commandLineArguments:
"-testing": true
environmentVariables:
TZ: UTC
gatherCoverageData: true
coverageTargets:
- Authenticator
- AuthenticatorShared
targets:
- AuthenticatorTests
- AuthenticatorSharedTests
- package: Networking/NetworkingTests
AuthenticatorShared:
build:
targets:
AuthenticatorShared: all
AuthenticatorSharedTests: [test]
test:
commandLineArguments:
"-testing": true
environmentVariables:
TZ: UTC
gatherCoverageData: true
targets:
- AuthenticatorSharedTests
targets:
Authenticator:
type: application
platform: iOS
configFiles:
Debug: Configs/Authenticator-Debug.xcconfig
Release: Configs/Authenticator-Release.xcconfig
settings:
base:
INFOPLIST_FILE: Authenticator/Application/Support/Info.plist
sources:
- path: Authenticator
excludes:
- "**/*Tests.*"
- "**/TestHelpers/*"
- "**/swiftgen.yml"
- "**/GoogleService-Info.*.plist"
- "**/__Snapshots__/*"
- path: Authenticator
includes:
- "**/__Snapshots__/*"
- "**/GoogleService-Info.*.plist"
buildPhase: none
- path: README.md
buildPhase: none
- path: swiftgen.yml
buildPhase: none
dependencies:
- target: AuthenticatorShared
- package: Firebase
product: FirebaseCrashlytics
preBuildScripts:
- path: Scripts/update_acknowledgements.sh
name: "Settings.bundle: Update Acknowledgements"
outputFiles:
- $(SRCROOT)/Authenticator/Application/Support/Settings.bundle/Acknowledgements.plist
- $(SRCROOT)/Authenticator/Application/Support/Settings.bundle/Acknowledgements.latest_results.txt
- $(SRCROOT)/Authenticator/Application/Support/Settings.bundle/Acknowledgements
postCompileScripts:
- script: |
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
PATH="/opt/homebrew/bin:$PATH"
fi
mint run swiftlint
name: Swiftlint
basedOnDependencyAnalysis: false
- script: |
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
PATH="/opt/homebrew/bin:$PATH"
fi
mint run swiftformat --lint --lenient .
name: SwiftFormat Lint
basedOnDependencyAnalysis: false
postBuildScripts:
- path: Scripts/update_settings_version_number.sh
name: "Settings.bundle: Update Version Number"
basedOnDependencyAnalysis: false
AuthenticatorTests:
type: bundle.unit-test
platform: iOS
settings:
base:
INFOPLIST_FILE: Authenticator/Application/TestHelpers/Support/Info.plist
sources:
- path: Authenticator
includes:
- "**/*Tests.*"
- "**/TestHelpers/*"
- path: GlobalTestHelpers
dependencies:
- target: Authenticator
- package: BitwardenShared
product: AuthenticatorBridgeKit
- package: SnapshotTesting
- package: ViewInspector
randomExecutionOrder: true
AuthenticatorShared:
type: framework
platform: iOS
configFiles:
Debug: Configs/AuthenticatorShared-Debug.xcconfig
Release: Configs/AuthenticatorShared-Release.xcconfig
settings:
base:
APPLICATION_EXTENSION_API_ONLY: true
INFOPLIST_FILE: AuthenticatorShared/UI/Platform/Application/Support/Info.plist
sources:
- path: AuthenticatorShared
excludes:
- "**/*Tests.*"
- "**/TestHelpers/*"
- "**/Fixtures/*"
- "**/__Snapshots__/*"
- path: AuthenticatorShared
includes:
- "**/__Snapshots__/*"
buildPhase: none
- path: AuthenticatorShared/UI/Platform/Application/Support/Generated/Assets.swift
optional: true
- path: AuthenticatorShared/UI/Platform/Application/Support/Generated/Localizations.swift
optional: true
- path: AuthenticatorShared/Core/Vault/Services/Importers/Support/Generated/GoogleAuth.pb.swift
optional: true
dependencies:
- package: BitwardenShared
product: AuthenticatorBridgeKit
- package: BitwardenSdk
- package: Networking
- package: SwiftProtobuf
preBuildScripts:
- name: SwiftGen
script: |
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
PATH="/opt/homebrew/bin:$PATH"
fi
mint run swiftgen config run --config "swiftgen.yml"
basedOnDependencyAnalysis: false
outputFiles:
- $(SRCROOT)/AuthenticatorShared/UI/Platform/Application/Support/Generated/Assets.swift
- $(SRCROOT)/AuthenticatorShared/UI/Platform/Application/Support/Generated/Localizations.swift
- name: Protobuf
script: |
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
PATH="/opt/homebrew/bin:$PATH"
fi
protoc --proto_path=$SRCROOT/AuthenticatorShared/Core/Vault/Services/Importers/Support \
--swift_out=$SRCROOT/AuthenticatorShared/Core/Vault/Services/Importers/Support/Generated \
$SRCROOT/AuthenticatorShared/Core/Vault/Services/Importers/Support/GoogleAuth.proto
outputFiles:
- $(SRCROOT)/AuthenticatorShared/Core/Vault/Services/Importers/Support/Generated/GoogleAuth.pb.swift
AuthenticatorSharedTests:
type: bundle.unit-test
platform: iOS
settings:
base:
BUNDLE_LOADER: "$(TEST_HOST)"
TEST_HOST: "$(BUILT_PRODUCTS_DIR)/Authenticator.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Authenticator"
INFOPLIST_FILE: AuthenticatorShared/UI/Platform/Application/TestHelpers/Support/Info.plist
sources:
- path: AuthenticatorShared
includes:
- "**/*Tests.*"
- "**/TestHelpers/*"
- "**/Fixtures/*"
- path: GlobalTestHelpers
dependencies:
- target: Authenticator
- target: AuthenticatorShared
- package: SnapshotTesting
- package: SnapshotTesting
product: InlineSnapshotTesting
- package: ViewInspector
randomExecutionOrder: true