-
Notifications
You must be signed in to change notification settings - Fork 44
/
build.gradle
101 lines (87 loc) · 2.68 KB
/
build.gradle
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
/*
* Copyright (c) 2021, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
import org.apache.tools.ant.taskdefs.condition.Os
plugins {
id 'com.github.spotbugs-base'
id 'com.github.johnrengelman.shadow'
id 'de.undercouch.download'
id 'net.researchgate.release'
}
description = 'Ballerina - Salesforce'
allprojects {
group = project.group
version = project.version
apply plugin: 'jacoco'
apply plugin: 'maven-publish'
repositories {
mavenLocal()
maven {
url = 'https://maven.wso2.org/nexus/content/repositories/releases/'
}
maven {
url = 'https://mvnrepository.com/artifact/org.testng/testng'
}
maven {
url = 'https://maven.wso2.org/nexus/content/groups/wso2-public/'
}
maven {
url = 'https://repo.maven.apache.org/maven2'
}
maven {
url = 'https://maven.pkg.github.com/ballerina-platform/*'
credentials {
username System.getenv("packageUser")
password System.getenv("packagePAT")
}
}
}
ext {
snapshotVersion= '-SNAPSHOT'
timestampedVersionRegex = '.*-\\d{8}-\\d{6}-\\w.*\$'
packageName = "salesforce"
}
}
def moduleVersion = project.version.replace("-SNAPSHOT", "")
def executeBalCommand(String command, String dir) {
try {
exec {
workingDir dir
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
commandLine 'cmd', '/c', "bal.bat ${command} && exit %%ERRORLEVEL%%"
} else {
commandLine 'sh', '-c', "bal ${command}"
}
}
} catch (Exception e) {
println("bal command failed. " + e.message)
throw e
}
}
task build {
dependsOn("${project.packageName}-native:build")
dependsOn("${project.packageName}-ballerina:build")
}
release {
buildTasks = ['build']
failOnSnapshotDependencies = true
versionPropertyFile = 'gradle.properties'
tagTemplate = 'v${version}'
git {
requireBranch = "release-${moduleVersion}"
pushToRemote = 'origin'
}
}