forked from delphix/virtualization-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.gradle
More file actions
85 lines (72 loc) · 2.33 KB
/
build.gradle
File metadata and controls
85 lines (72 loc) · 2.33 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
/*
* Copyright (c) 2019 by Delphix. All rights reserved.
*/
plugins {
id "com.google.protobuf" version "0.8.7" apply false
id "delphix.python" version "0.0.7" apply false
}
subprojects {
version = "1.0.0"
}
def binDir = "${rootProject.projectDir}/bin"
/*
* The commands below are all temporary commands to help abstract the ad-hoc release process we have today. They
* are only intended to help abstract away this logic until we roll these into the actual build system.
*/
/*
* The jar that is shipped with the Delphix Engine to support the Virtualization Platform is created by a shell script.
* This task wraps that shell script.
*/
task jar(type: Exec) {
commandLine "${binDir}/build.sh"
}
/*
* This task wraps a shell script that checks if the version of the SDK has been bumped. Bumping the SDK version is
* currently a manual step that is easy to forget.
*/
task checkVersionBump(type: Exec) {
commandLine "${binDir}/check_version_bump.sh"
}
// 'check' is ran as part of the pre-checkin checklist. It should validate that the version has been bumped.
task check {
dependsOn 'checkVersionBump'
}
task buildPython {
dependsOn ':common:sdist'
dependsOn ':common:wheel'
dependsOn ':platform:sdist'
dependsOn ':platform:wheel'
dependsOn ':libs:sdist'
dependsOn ':libs:wheel'
dependsOn ':tools:sdist'
dependsOn ':tools:wheel'
dependsOn ':dvp:sdist'
dependsOn ':dvp:wheel'
}
task build {
dependsOn 'buildPython'
}
/*
* This task publishes the final version of the jar and all Python distributions to our internal production PyPI
* repository. This should be executed immediately before a change is pushed.
*
* NOTE: This DOES NOT publish to pypi.org. The external release process is done outside of the build system.
*/
task publishProd(type: Exec) {
dependsOn 'check'
dependsOn 'build'
executable "${binDir}/upload.sh"
args "--prod"
}
/*
* This task is similar to the above, but instead of publishing to the internal production PyPI repository, it publishes
* to the internal dvp development repository.
*
* This also does not run the full 'check' command. However, it does validate that the version has been bumped.
*/
task publishDebug(type: Exec) {
dependsOn 'checkVersionBump'
dependsOn 'jar'
dependsOn 'buildPython'
executable "${binDir}/upload.sh"
}