Skip to content

Commit 623703a

Browse files
committed
Updated GitHub Workflow
1 parent 7415906 commit 623703a

5 files changed

Lines changed: 451 additions & 10 deletions

File tree

.github/workflows/docs.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Documentation
2+
3+
on:
4+
workflow_dispatch:
5+
release:
6+
7+
jobs:
8+
# Create documentation
9+
docs:
10+
name: Documentation
11+
runs-on: macOS-latest
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v1
15+
- name: Xcode Version
16+
run: |
17+
sudo xcode-select -s /Applications/Xcode_12.app
18+
xcodebuild -version
19+
swift --version
20+
- name: Swift Version
21+
run: swift --version
22+
- name: Generate documentation
23+
uses: sersoft-gmbh/swifty-docs-action@v1
24+
- name: Upload docs
25+
uses: actions/upload-artifact@v1
26+
if: always()
27+
with:
28+
name: docs
29+
path: docs

.github/workflows/release.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: Release
2+
3+
on:
4+
release:
5+
6+
jobs:
7+
# Build XCFramework
8+
xcframework:
9+
name: XCFramework
10+
runs-on: macos-latest
11+
steps:
12+
- name: Checkout
13+
uses: actions/checkout@v2
14+
- name: Xcode Version
15+
run: |
16+
sudo xcode-select -s /Applications/Xcode_12.app
17+
xcodebuild -version
18+
swift --version
19+
- name: Swift Version
20+
run: swift --version
21+
# Create a release
22+
- name: Install Mint
23+
run: brew install mint
24+
- name: Install swift-create-xcframework
25+
run: mint install unsignedapps/swift-create-xcframework
26+
- name: Build XCFramework
27+
run: swift-create-xcframework
28+
# Upload build artifacts
29+
- name: Upload xcframework
30+
uses: actions/upload-artifact@v2
31+
with:
32+
name: xcframework
33+
path: "./*.xcframework"
34+
35+
linux-swift-armv7:
36+
name: Linux ARMv7
37+
runs-on: [self-hosted, linux, arm]
38+
steps:
39+
- name: Checkout
40+
uses: actions/checkout@v1
41+
- name: Swift Version
42+
run: swift --version
43+
- name: Build (Release)
44+
run: swift build -j 1 -c release
45+
# Upload build artifacts
46+
- name: Upload build artifacts
47+
uses: actions/upload-artifact@v2
48+
with:
49+
name: build-linux-armv7
50+
path: "./.build/armv7*/release/*.so"

.github/workflows/swift-arm.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Swift ARM
2+
3+
on:
4+
push:
5+
branches: [ master ]
6+
7+
jobs:
8+
9+
linux-swift-armv7:
10+
name: Linux ARMv7
11+
runs-on: [self-hosted, linux, arm]
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v1
15+
- name: Swift Version
16+
run: swift --version
17+
- name: Build (Debug)
18+
run: swift build -j 1 -c debug
19+
- name: Test (Debug)
20+
run: swift test -j 1 --configuration debug --enable-test-discovery
21+
- name: Test (Release)
22+
run: swift test -j 1 --configuration release -Xswiftc -enable-testing --enable-test-discovery
23+
- name: Clean
24+
run: rm -rf .build
25+
- name: Build (Release)
26+
run: swift build -j 1 -c release
27+
- name: Upload build artifacts
28+
uses: actions/upload-artifact@v2
29+
with:
30+
name: build-linux-armv7
31+
path: "./.build/armv7*/release/*.so"

.github/workflows/swift.yml

Lines changed: 122 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,128 @@
11
name: Swift
22

3-
on:
4-
push:
3+
on: [push]
54

65
jobs:
7-
build:
86

9-
runs-on: macos-latest
7+
macOS-swift-51:
8+
name: macOS (Swift 5.1)
9+
runs-on: macOS-latest
10+
steps:
11+
- name: Checkout
12+
uses: actions/checkout@v1
13+
- name: Xcode Version
14+
run: |
15+
sudo xcode-select -s /Applications/Xcode_11.3.1.app
16+
xcodebuild -version
17+
swift --version
18+
- name: Swift Version
19+
run: swift --version
20+
- name: Build (Debug)
21+
run: swift build -c debug
22+
- name: Build (Release)
23+
run: swift build -c release
24+
- name: Test (Debug)
25+
run: swift test --configuration debug --enable-test-discovery
26+
- name: Test (Release)
27+
run: swift test --configuration release -Xswiftc -enable-testing
1028

11-
steps:
12-
- uses: actions/checkout@v2
13-
- name: Build
14-
run: swift build -v
15-
- name: Run tests
16-
run: swift test -v
29+
macOS-swift-52:
30+
name: macOS (Swift 5.2)
31+
runs-on: macOS-latest
32+
steps:
33+
- name: Checkout
34+
uses: actions/checkout@v1
35+
- name: Xcode Version
36+
run: |
37+
sudo xcode-select -s /Applications/Xcode_11.4.app
38+
xcodebuild -version
39+
swift --version
40+
- name: Swift Version
41+
run: swift --version
42+
- name: Build (Debug)
43+
run: swift build -c debug
44+
- name: Build (Release)
45+
run: swift build -c release
46+
- name: Test (Debug)
47+
run: swift test --configuration debug --enable-test-discovery
48+
- name: Test (Release)
49+
run: swift test --configuration release -Xswiftc -enable-testing --enable-test-discovery
50+
51+
52+
macOS-swift-53:
53+
name: macOS (Swift 5.3)
54+
runs-on: macOS-latest
55+
steps:
56+
- name: Checkout
57+
uses: actions/checkout@v1
58+
- name: Xcode Version
59+
run: |
60+
sudo xcode-select -s /Applications/Xcode_12.app
61+
xcodebuild -version
62+
swift --version
63+
- name: Swift Version
64+
run: swift --version
65+
- name: Build (Debug)
66+
run: swift build -c debug
67+
- name: Build (Release)
68+
run: swift build -c release
69+
- name: Test (Debug)
70+
run: swift test --configuration debug --enable-test-discovery
71+
- name: Test (Release)
72+
run: swift test --configuration release -Xswiftc -enable-testing --enable-test-discovery
73+
74+
75+
linux-swift-51:
76+
name: Linux x86_64 (Swift 5.1)
77+
runs-on: ubuntu-18.04
78+
container: swift:5.1
79+
steps:
80+
- name: Checkout
81+
uses: actions/checkout@v1
82+
- name: Swift Version
83+
run: swift --version
84+
- name: Build (Debug)
85+
run: swift build -c debug
86+
- name: Build (Release)
87+
run: swift build -c release
88+
- name: Test (Debug)
89+
run: swift test --configuration debug --enable-test-discovery
90+
- name: Test (Release)
91+
run: swift test --configuration release -Xswiftc -enable-testing
92+
93+
94+
linux-swift-52:
95+
name: Linux x86_64 (Swift 5.2)
96+
runs-on: ubuntu-18.04
97+
container: swift:5.2.3-bionic
98+
steps:
99+
- name: Checkout
100+
uses: actions/checkout@v1
101+
- name: Swift Version
102+
run: swift --version
103+
- name: Build (Debug)
104+
run: swift build -c debug
105+
- name: Build (Release)
106+
run: swift build -c release
107+
- name: Test (Debug)
108+
run: swift test --configuration debug --enable-test-discovery
109+
- name: Test (Release)
110+
run: swift test --configuration release -Xswiftc -enable-testing --enable-test-discovery
111+
112+
linux-swift-53:
113+
name: Linux x86_64 (Swift 5.3)
114+
runs-on: ubuntu-20.04
115+
container: swift:5.3-focal
116+
steps:
117+
- name: Checkout
118+
uses: actions/checkout@v1
119+
- name: Swift Version
120+
run: swift --version
121+
- name: Build (Debug)
122+
run: swift build -c debug
123+
- name: Build (Release)
124+
run: swift build -c release
125+
- name: Test (Debug)
126+
run: swift test --configuration debug --enable-test-discovery
127+
- name: Test (Release)
128+
run: swift test --configuration release -Xswiftc -enable-testing --enable-test-discovery

0 commit comments

Comments
 (0)