Skip to content

Commit 2301abe

Browse files
committed
refactor: Fastlane, GitHub Actions, targets and schemes for iOS, macOS and visionOS
Signed-off-by: Pierre-Yves Lapersonne <[email protected]>
1 parent 288b1eb commit 2301abe

File tree

13 files changed

+2087
-464
lines changed

13 files changed

+2087
-464
lines changed

.github/DEVELOP.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -612,7 +612,9 @@ This tool should be run locally, for example using *Fastlane*:
612612

613613
And run:
614614
```shell
615-
bundle exec fastlane check_dead_code
615+
bundle exec fastlane ios check_dead_code
616+
bundle exec fastlane mac check_dead_code
617+
bundle exec fastlane vision check_dead_code
616618
```
617619

618620
Because _Periphery_ has several issues about false positive, and needs to compile the project to look for symbols, this tool is not used anymore in CI/CD on GitHub Actions. Indeed we needed to allow errors and treat errors as warnings, so as manual check was still needed.

.github/workflows/build-and-test.yml

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,19 @@ jobs:
6262
- name: Install Fastlane
6363
run: |
6464
bundle install
65+
cd DesignToolbox
6566
66-
- name: Build demo app
67+
- name: Build demo app (iOS)
6768
run: |
68-
cd DesignToolbox
69-
bundle exec fastlane build_debug
69+
bundle exec fastlane ios build_debug
70+
71+
- name: Build demo app (macOS)
72+
run: |
73+
bundle exec fastlane mac build_debug
74+
75+
- name: Build demo app (visionOS)
76+
run: |
77+
bundle exec fastlane vision build_debug
7078
7179
# Test the app with unit tests
7280
unit-test:
@@ -92,7 +100,7 @@ jobs:
92100
run: |
93101
cd DesignToolbox
94102
bundle exec pod install
95-
bundle exec fastlane test_unit
103+
bundle exec fastlane ios test_unit
96104
97105
# Test the app / library with UI tests
98106
ui-test:
@@ -118,7 +126,7 @@ jobs:
118126
run: |
119127
cd DesignToolbox
120128
bundle exec pod install
121-
bundle exec fastlane test_ui
129+
bundle exec fastlane ios test_ui
122130
123131
# Test the app / library with snapshots tests
124132
snapshots-test:
@@ -145,4 +153,4 @@ jobs:
145153
cd DesignToolbox
146154
bundle exec pod install
147155
xcrun simctl list # List available simulators
148-
bundle exec fastlane test_snapshots
156+
bundle exec fastlane ios test_snapshots

DesignToolbox/DesignToolbox.xcodeproj/project.pbxproj

Lines changed: 1397 additions & 33 deletions
Large diffs are not rendered by default.

DesignToolbox/DesignToolbox.xcodeproj/xcshareddata/xcschemes/DesignToolbox.xcscheme

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
BuildableIdentifier = "primary"
1818
BlueprintIdentifier = "07FDCD902C296A500009AA13"
1919
BuildableName = "Design System Toolbox.app"
20-
BlueprintName = "DesignToolbox"
20+
BlueprintName = "DesignToolbox (iOS)"
2121
ReferencedContainer = "container:DesignToolbox.xcodeproj">
2222
</BuildableReference>
2323
</BuildActionEntry>
@@ -81,7 +81,7 @@
8181
BuildableIdentifier = "primary"
8282
BlueprintIdentifier = "07FDCD902C296A500009AA13"
8383
BuildableName = "Design System Toolbox.app"
84-
BlueprintName = "DesignToolbox"
84+
BlueprintName = "DesignToolbox (iOS)"
8585
ReferencedContainer = "container:DesignToolbox.xcodeproj">
8686
</BuildableReference>
8787
</BuildableProductRunnable>
@@ -98,7 +98,7 @@
9898
BuildableIdentifier = "primary"
9999
BlueprintIdentifier = "07FDCD902C296A500009AA13"
100100
BuildableName = "Design System Toolbox.app"
101-
BlueprintName = "DesignToolbox"
101+
BlueprintName = "DesignToolbox (iOS)"
102102
ReferencedContainer = "container:DesignToolbox.xcodeproj">
103103
</BuildableReference>
104104
</BuildableProductRunnable>

DesignToolbox/DesignToolbox.xcodeproj/xcshareddata/xcschemes/DesignToolboxUITests.xcscheme

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@
66
parallelizeBuildables = "YES"
77
buildImplicitDependencies = "YES"
88
buildArchitectures = "Automatic">
9+
<BuildActionEntries>
10+
<BuildActionEntry
11+
buildForTesting = "YES"
12+
buildForRunning = "YES"
13+
buildForProfiling = "YES"
14+
buildForArchiving = "YES"
15+
buildForAnalyzing = "YES">
16+
<BuildableReference
17+
BuildableIdentifier = "primary"
18+
BlueprintIdentifier = "07FDCD902C296A500009AA13"
19+
BuildableName = "Design System Toolbox.app"
20+
BlueprintName = "DesignToolbox (iOS)"
21+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
22+
</BuildableReference>
23+
</BuildActionEntry>
24+
</BuildActionEntries>
925
</BuildAction>
1026
<TestAction
1127
buildConfiguration = "Debug"
@@ -18,30 +34,6 @@
1834
default = "YES">
1935
</TestPlanReference>
2036
</TestPlans>
21-
<Testables>
22-
<TestableReference
23-
skipped = "NO"
24-
parallelizable = "YES">
25-
<BuildableReference
26-
BuildableIdentifier = "primary"
27-
BlueprintIdentifier = "0740A98E2C9873500069D24A"
28-
BuildableName = "DesignToolboxSnapshotsTests.xctest"
29-
BlueprintName = "DesignToolboxSnapshotsTests"
30-
ReferencedContainer = "container:DesignToolbox.xcodeproj">
31-
</BuildableReference>
32-
</TestableReference>
33-
<TestableReference
34-
skipped = "NO"
35-
parallelizable = "YES">
36-
<BuildableReference
37-
BuildableIdentifier = "primary"
38-
BlueprintIdentifier = "51E599A62E27ED5F002BCB27"
39-
BuildableName = "DesignToolboxUnitTests.xctest"
40-
BlueprintName = "DesignToolboxUnitTests"
41-
ReferencedContainer = "container:DesignToolbox.xcodeproj">
42-
</BuildableReference>
43-
</TestableReference>
44-
</Testables>
4537
</TestAction>
4638
<LaunchAction
4739
buildConfiguration = "Debug"
@@ -60,6 +52,15 @@
6052
savedToolIdentifier = ""
6153
useCustomWorkingDirectory = "NO"
6254
debugDocumentVersioning = "YES">
55+
<MacroExpansion>
56+
<BuildableReference
57+
BuildableIdentifier = "primary"
58+
BlueprintIdentifier = "07FDCD902C296A500009AA13"
59+
BuildableName = "Design System Toolbox.app"
60+
BlueprintName = "DesignToolbox (iOS)"
61+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
62+
</BuildableReference>
63+
</MacroExpansion>
6364
</ProfileAction>
6465
<AnalyzeAction
6566
buildConfiguration = "Debug">
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "2600"
4+
version = "1.7">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES"
8+
buildArchitectures = "Automatic">
9+
<BuildActionEntries>
10+
<BuildActionEntry
11+
buildForTesting = "YES"
12+
buildForRunning = "YES"
13+
buildForProfiling = "YES"
14+
buildForArchiving = "YES"
15+
buildForAnalyzing = "YES">
16+
<BuildableReference
17+
BuildableIdentifier = "primary"
18+
BlueprintIdentifier = "9589F00A2EB7D67B00134487"
19+
BuildableName = "DesignToolbox (macOS).app"
20+
BlueprintName = "DesignToolbox (macOS)"
21+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
22+
</BuildableReference>
23+
</BuildActionEntry>
24+
</BuildActionEntries>
25+
</BuildAction>
26+
<TestAction
27+
buildConfiguration = "Debug"
28+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
29+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
30+
shouldUseLaunchSchemeArgsEnv = "YES"
31+
shouldAutocreateTestPlan = "YES">
32+
</TestAction>
33+
<LaunchAction
34+
buildConfiguration = "Debug"
35+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
36+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
37+
launchStyle = "0"
38+
useCustomWorkingDirectory = "NO"
39+
ignoresPersistentStateOnLaunch = "NO"
40+
debugDocumentVersioning = "YES"
41+
debugServiceExtension = "internal"
42+
allowLocationSimulation = "YES">
43+
<BuildableProductRunnable
44+
runnableDebuggingMode = "0">
45+
<BuildableReference
46+
BuildableIdentifier = "primary"
47+
BlueprintIdentifier = "9589F00A2EB7D67B00134487"
48+
BuildableName = "DesignToolbox (macOS).app"
49+
BlueprintName = "DesignToolbox (macOS)"
50+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
51+
</BuildableReference>
52+
</BuildableProductRunnable>
53+
</LaunchAction>
54+
<ProfileAction
55+
buildConfiguration = "Release"
56+
shouldUseLaunchSchemeArgsEnv = "YES"
57+
savedToolIdentifier = ""
58+
useCustomWorkingDirectory = "NO"
59+
debugDocumentVersioning = "YES">
60+
<BuildableProductRunnable
61+
runnableDebuggingMode = "0">
62+
<BuildableReference
63+
BuildableIdentifier = "primary"
64+
BlueprintIdentifier = "9589F00A2EB7D67B00134487"
65+
BuildableName = "DesignToolbox (macOS).app"
66+
BlueprintName = "DesignToolbox (macOS)"
67+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
68+
</BuildableReference>
69+
</BuildableProductRunnable>
70+
</ProfileAction>
71+
<AnalyzeAction
72+
buildConfiguration = "Debug">
73+
</AnalyzeAction>
74+
<ArchiveAction
75+
buildConfiguration = "Release"
76+
revealArchiveInOrganizer = "YES">
77+
</ArchiveAction>
78+
</Scheme>
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "2600"
4+
version = "1.7">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES"
8+
buildArchitectures = "Automatic">
9+
<BuildActionEntries>
10+
<BuildActionEntry
11+
buildForTesting = "YES"
12+
buildForRunning = "YES"
13+
buildForProfiling = "YES"
14+
buildForArchiving = "YES"
15+
buildForAnalyzing = "YES">
16+
<BuildableReference
17+
BuildableIdentifier = "primary"
18+
BlueprintIdentifier = "9589F0E42EB7D67E00134487"
19+
BuildableName = "DesignToolbox (visionOS).app"
20+
BlueprintName = "DesignToolbox (visionOS)"
21+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
22+
</BuildableReference>
23+
</BuildActionEntry>
24+
</BuildActionEntries>
25+
</BuildAction>
26+
<TestAction
27+
buildConfiguration = "Debug"
28+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
29+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
30+
shouldUseLaunchSchemeArgsEnv = "YES"
31+
shouldAutocreateTestPlan = "YES">
32+
</TestAction>
33+
<LaunchAction
34+
buildConfiguration = "Debug"
35+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
36+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
37+
launchStyle = "0"
38+
useCustomWorkingDirectory = "NO"
39+
ignoresPersistentStateOnLaunch = "NO"
40+
debugDocumentVersioning = "YES"
41+
debugServiceExtension = "internal"
42+
allowLocationSimulation = "YES">
43+
<BuildableProductRunnable
44+
runnableDebuggingMode = "0">
45+
<BuildableReference
46+
BuildableIdentifier = "primary"
47+
BlueprintIdentifier = "9589F0E42EB7D67E00134487"
48+
BuildableName = "DesignToolbox (visionOS).app"
49+
BlueprintName = "DesignToolbox (visionOS)"
50+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
51+
</BuildableReference>
52+
</BuildableProductRunnable>
53+
</LaunchAction>
54+
<ProfileAction
55+
buildConfiguration = "Release"
56+
shouldUseLaunchSchemeArgsEnv = "YES"
57+
savedToolIdentifier = ""
58+
useCustomWorkingDirectory = "NO"
59+
debugDocumentVersioning = "YES">
60+
<BuildableProductRunnable
61+
runnableDebuggingMode = "0">
62+
<BuildableReference
63+
BuildableIdentifier = "primary"
64+
BlueprintIdentifier = "9589F0E42EB7D67E00134487"
65+
BuildableName = "DesignToolbox (visionOS).app"
66+
BlueprintName = "DesignToolbox (visionOS)"
67+
ReferencedContainer = "container:DesignToolbox.xcodeproj">
68+
</BuildableReference>
69+
</BuildableProductRunnable>
70+
</ProfileAction>
71+
<AnalyzeAction
72+
buildConfiguration = "Debug">
73+
</AnalyzeAction>
74+
<ArchiveAction
75+
buildConfiguration = "Release"
76+
revealArchiveInOrganizer = "YES">
77+
</ArchiveAction>
78+
</Scheme>

DesignToolbox/DesignToolbox/Info.plist

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,14 @@
4040
<key>UILaunchScreen</key>
4141
<dict/>
4242
</dict>
43-
<key>UISupportedInterfaceOrientations~ipad</key>
43+
<key>UIStatusBarStyle</key>
44+
<string></string>
45+
<key>UISupportedInterfaceOrientations</key>
4446
<array>
45-
<string>UIInterfaceOrientationPortrait</string>
46-
<string>UIInterfaceOrientationPortraitUpsideDown</string>
4747
<string>UIInterfaceOrientationLandscapeLeft</string>
4848
<string>UIInterfaceOrientationLandscapeRight</string>
49-
</array>
50-
<key>UISupportedInterfaceOrientations~iphone</key>
51-
<array>
5249
<string>UIInterfaceOrientationPortrait</string>
53-
<string>UIInterfaceOrientationLandscapeLeft</string>
54-
<string>UIInterfaceOrientationLandscapeRight</string>
50+
<string>UIInterfaceOrientationPortraitUpsideDown</string>
5551
</array>
5652
</dict>
5753
</plist>

DesignToolbox/Podfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ use_frameworks!
1515

1616
platform :ios, '15.0'
1717

18-
target 'DesignToolbox' do
18+
target 'DesignToolbox (iOS)' do
1919
pod 'SwiftLint', '0.62.1'
2020
pod 'SwiftFormat/CLI', '0.58.3'
2121
end

DesignToolbox/Podfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ SPEC CHECKSUMS:
1515
SwiftFormat: 6f8d2d6c8c0e9539d1f4ec56b2132c9b72f8ee03
1616
SwiftLint: 6a9eb020853558a7eaf00f655636b5d6ad15bd02
1717

18-
PODFILE CHECKSUM: 76c35d2bac2bbe692dd7cdfde01bc774a9134068
18+
PODFILE CHECKSUM: 0245a78760163ebd7781381a0567cf15a23901e9
1919

2020
COCOAPODS: 1.16.2

0 commit comments

Comments
 (0)