apply plugin: 'maven'
Properties properties = new Properties()
properties.load(project.rootProject.file('scripts/maven.properties').newDataInputStream())
properties.load(new FileInputStream("${projectDir}/pom.properties"))
properties.load(project.rootProject.file('local.properties').newDataInputStream())
def user = System.getenv("BINTARY_USER")
def apiKey = System.getenv("BINTARY_APIKEY")
def repo = System.getenv("BINTARY_REPO")
if (user == null || user.length() == 0) {
user = properties.user
}
if (apiKey == null || apiKey.length() == 0) {
apiKey = properties.apiKey
if (repo == null || repo.length() == 0) {
repo = properties.releasesRepository
uploadArchives {
repositories {
mavenDeployer {
pom.groupId = properties.groupId
pom.artifactId = properties.artifactId
pom.version = rootProject.ext.Version
pom.project {
description 'git rev-parse HEAD'.execute([], projectDir).text.trim()
repository(url: repo + properties.name) {
authentication(userName: user, password: apiKey)
task uploadAar {
dependsOn clean, uploadArchives
task androidSourcesJar(type: Jar) {
classifier = "sources"
from android.sourceSets.main.java.sourceFiles
artifacts {
archives androidSourcesJar