-
Notifications
You must be signed in to change notification settings - Fork 0
/
Fastfile
106 lines (94 loc) · 2.24 KB
/
Fastfile
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
update_fastlane
default_platform :ios
platform :ios do
desc "Unit tests"
lane :test do
# iOS
scan(
project: "QminderAPI.xcodeproj",
scheme: "QminderAPI-iOS",
xcargs: "CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO",
clean: true,
devices: ["iPhone Xs"]
)
# tvOS
scan(
project: "QminderAPI.xcodeproj",
scheme: "QminderAPI-tvOS",
xcargs: "CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO",
clean: true,
devices: ["Apple TV 4K"]
)
# macos
xcodebuild(
archive: false,
project: "QminderAPI.xcodeproj",
scheme: "QminderAPI-macOS",
xcargs: "CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO",
clean: true,
build: true
)
# watchOS
xcodebuild(
archive: false,
project: "QminderAPI.xcodeproj",
scheme: "QminderAPI-watchOS",
xcargs: "CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO",
clean: true,
build: true
)
end
desc "Depoy new Swift API version"
lane :release do
ensure_git_branch
version = version_get_podspec(path: "QminderAPI.podspec")
changelog = prompt(text: "Changelog: ", multi_line_end_keyword: "END")
github_release = set_github_release(
repository_name: "Qminder/swift-api",
api_token: ENV['GITHUB_TOKEN'],
name: version,
tag_name: version,
description: changelog,
commitish: "master"
)
sh("git fetch --tags")
pod_push(allow_warnings: true, verbose: true)
if ENV["SLACK_URL"]
slack(
message: "QminderAPI successfully released!",
channel: "#apple-dev-ops",
payload: {
"Version": version,
"Changelog": changelog
}
)
end
end
desc "Generate documentation"
lane :generate_docs do
jazzy(
config: ".jazzy.yaml"
)
end
desc "Bump to patch"
lane :bump_patch do
version_bump_podspec(
path: "QminderAPI.podspec",
bump_type: "patch"
)
end
desc "Bump to patch"
lane :bump_minor do
version_bump_podspec(
path: "QminderAPI.podspec",
bump_type: "minor"
)
end
desc "Bump to patch"
lane :bump_major do
version_bump_podspec(
path: "QminderAPI.podspec",
bump_type: "major"
)
end
end