apply plugin: 'maven' Properties properties = new Properties() properties.load(project.rootProject.file('scripts/maven.properties').newDataInputStream()) properties.load(new FileInputStream("${projectDir}/pom.properties")) if (new File("local.properties").exists()) { 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 } apply plugin: 'maven' 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) { 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 }