diff --git a/.kokoro/install_dependencies.sh b/.kokoro/install_dependencies.sh
new file mode 100755
index 000000000..a0439dd7d
--- /dev/null
+++ b/.kokoro/install_dependencies.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Copyright 2018 Google Inc.
+#
+# 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.
+
+set -eo pipefail
+
+# Install the android SDK
+mvn dependency:get -Dartifact=com.google.android:android:4.1.1.4
+
+# Install the appengine SDK
+mvn dependency:get -Dartifact=com.google.appengine:appengine-api-1.0-sdk:1.9.65
+
+# Install play services
+mvn dependency:get -Dartifact=com.google.android.google-play-services:google-play-services:1 -o -DremoteRepositories=file:~/.m2 || \
+ (wget https://dl.google.com/dl/android/maven2/com/google/android/gms/play-services-basement/8.3.0/play-services-basement-8.3.0.aar && \
+ unzip play-services-basement-8.3.0.aar && \
+ mvn install:install-file \
+ -Dfile=classes.jar \
+ -DgroupId=com.google.android.google-play-services \
+ -DartifactId=google-play-services \
+ -Dversion=1 \
+ -Dpackaging=jar)
diff --git a/.kokoro/release/common.cfg b/.kokoro/release/common.cfg
new file mode 100644
index 000000000..73e295f10
--- /dev/null
+++ b/.kokoro/release/common.cfg
@@ -0,0 +1,56 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Build logs will be here
+action {
+ define_artifacts {
+ regex: "**/*sponge_log.xml"
+ }
+}
+
+# Download trampoline resources.
+gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline"
+
+# Use the trampoline script to run in docker.
+build_file: "google-api-java-client/.kokoro/trampoline.sh"
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/java8"
+}
+
+before_action {
+ fetch_keystore {
+ keystore_resource {
+ keystore_config_id: 70247
+ keyname: "maven-gpg-keyring"
+ }
+ }
+}
+
+before_action {
+ fetch_keystore {
+ keystore_resource {
+ keystore_config_id: 70247
+ keyname: "maven-gpg-passphrase"
+ }
+ }
+}
+
+before_action {
+ fetch_keystore {
+ keystore_resource {
+ keystore_config_id: 70247
+ keyname: "maven-gpg-pubkeyring"
+ }
+ }
+}
+
+before_action {
+ fetch_keystore {
+ keystore_resource {
+ keystore_config_id: 70247
+ keyname: "sonatype-credentials"
+ }
+ }
+}
diff --git a/.kokoro/release/common.sh b/.kokoro/release/common.sh
new file mode 100644
index 000000000..f7d538b3a
--- /dev/null
+++ b/.kokoro/release/common.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+# Copyright 2018 Google Inc.
+#
+# 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.
+
+set -eo pipefail
+
+# Get secrets from keystore and set and environment variables
+setup_environment_secrets() {
+ export GPG_PASSPHRASE=$(cat ${KOKORO_KEYSTORE_DIR}/70247_maven-gpg-passphrase)
+ export GPG_TTY=$(tty)
+ export GPG_HOMEDIR=/gpg
+ mkdir $GPG_HOMEDIR
+ mv ${KOKORO_KEYSTORE_DIR}/70247_maven-gpg-pubkeyring $GPG_HOMEDIR/pubring.gpg
+ mv ${KOKORO_KEYSTORE_DIR}/70247_maven-gpg-keyring $GPG_HOMEDIR/secring.gpg
+ export SONATYPE_USERNAME=$(cat ${KOKORO_KEYSTORE_DIR}/70247_sonatype-credentials | cut -f1 -d'|')
+ export SONATYPE_PASSWORD=$(cat ${KOKORO_KEYSTORE_DIR}/70247_sonatype-credentials | cut -f2 -d'|')
+}
+
+create_settings_xml_file() {
+ echo "
+
+
+ ossrh
+ ${SONATYPE_USERNAME}
+ ${SONATYPE_PASSWORD}
+
+
+ sonatype-nexus-staging
+ ${SONATYPE_USERNAME}
+ ${SONATYPE_PASSWORD}
+
+
+ sonatype-nexus-snapshots
+ ${SONATYPE_USERNAME}
+ ${SONATYPE_PASSWORD}
+
+
+" > $1
+}
diff --git a/.kokoro/release/drop.cfg b/.kokoro/release/drop.cfg
new file mode 100644
index 000000000..395a94c00
--- /dev/null
+++ b/.kokoro/release/drop.cfg
@@ -0,0 +1,7 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Tell the trampoline which build file to use.
+env_vars: {
+ key: "TRAMPOLINE_BUILD_FILE"
+ value: "github/google-api-java-client/.kokoro/release/drop.sh"
+}
diff --git a/.kokoro/release/drop.sh b/.kokoro/release/drop.sh
new file mode 100755
index 000000000..abc381e5d
--- /dev/null
+++ b/.kokoro/release/drop.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Copyright 2018 Google Inc.
+#
+# 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.
+
+set -eo pipefail
+
+source $(dirname "$0")/common.sh
+
+pushd $(dirname "$0")/../../
+
+setup_environment_secrets
+create_settings_xml_file "settings.xml"
+
+mvn nexus-staging:drop --settings=settings.xml
diff --git a/.kokoro/release/promote.cfg b/.kokoro/release/promote.cfg
new file mode 100644
index 000000000..8703880cd
--- /dev/null
+++ b/.kokoro/release/promote.cfg
@@ -0,0 +1,7 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Tell the trampoline which build file to use.
+env_vars: {
+ key: "TRAMPOLINE_BUILD_FILE"
+ value: "github/google-api-java-client/.kokoro/release/promote.sh"
+}
diff --git a/.kokoro/release/promote.sh b/.kokoro/release/promote.sh
new file mode 100755
index 000000000..439e0fc3e
--- /dev/null
+++ b/.kokoro/release/promote.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Copyright 2018 Google Inc.
+#
+# 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.
+
+set -eo pipefail
+
+source $(dirname "$0")/common.sh
+
+pushd $(dirname "$0")/../../
+
+setup_environment_secrets
+create_settings_xml_file "settings.xml"
+
+mvn nexus-staging:release -DperformRelease=true --settings=settings.xml
diff --git a/.kokoro/release/stage.cfg b/.kokoro/release/stage.cfg
new file mode 100644
index 000000000..dcf8f7364
--- /dev/null
+++ b/.kokoro/release/stage.cfg
@@ -0,0 +1,7 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Tell the trampoline which build file to use.
+env_vars: {
+ key: "TRAMPOLINE_BUILD_FILE"
+ value: "github/google-api-java-client/.kokoro/release/stage.sh"
+}
diff --git a/.kokoro/release/stage.sh b/.kokoro/release/stage.sh
new file mode 100755
index 000000000..118c44ccd
--- /dev/null
+++ b/.kokoro/release/stage.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Copyright 2018 Google Inc.
+#
+# 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.
+
+set -eo pipefail
+
+source $(dirname "$0")/common.sh
+source $(dirname "$0")/../install_dependencies.sh
+
+pushd $(dirname "$0")/../../
+
+setup_environment_secrets
+create_settings_xml_file "settings.xml"
+
+mvn clean install deploy \
+ --settings settings.xml \
+ -DperformRelease=true \
+ -Dgpg.executable=gpg \
+ -Dgpg.passphrase=${GPG_PASSPHRASE} \
+ -Dgpg.homedir=${GPG_HOMEDIR}
+
+
diff --git a/google-api-client-android/pom.xml b/google-api-client-android/pom.xml
index ae08ec9ec..d05fa0c12 100644
--- a/google-api-client-android/pom.xml
+++ b/google-api-client-android/pom.xml
@@ -16,7 +16,7 @@
maven-javadoc-plugin
- http://download.oracle.com/javase/1.5.0/docs/api/
+ http://download.oracle.com/javase/6/docs/api/
${project.name} ${project.version}
${project.artifactId} ${project.version}
diff --git a/google-api-client-appengine/pom.xml b/google-api-client-appengine/pom.xml
index 96ac3b6bd..f501ea8c6 100644
--- a/google-api-client-appengine/pom.xml
+++ b/google-api-client-appengine/pom.xml
@@ -17,8 +17,8 @@
http://download.oracle.com/javase/6/docs/api/
https://cloud.google.com/appengine/docs/standard/java/javadoc/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
- http://javadoc.google-oauth-java-client.googlecode.com/hg/${project.oauth.version}
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
+ https://googleapis.github.io/google-oauth-java-client/releases/${project.oauth.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -33,15 +33,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
maven-source-plugin
diff --git a/google-api-client-gson/pom.xml b/google-api-client-gson/pom.xml
index fea316f79..b329a5296 100644
--- a/google-api-client-gson/pom.xml
+++ b/google-api-client-gson/pom.xml
@@ -15,8 +15,8 @@
maven-javadoc-plugin
- http://download.oracle.com/javase/1.5.0/docs/api/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
+ http://download.oracle.com/javase/6/docs/api/
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -31,15 +31,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
maven-source-plugin
diff --git a/google-api-client-jackson2/pom.xml b/google-api-client-jackson2/pom.xml
index e2be54ecd..495e76285 100644
--- a/google-api-client-jackson2/pom.xml
+++ b/google-api-client-jackson2/pom.xml
@@ -15,8 +15,8 @@
maven-javadoc-plugin
- http://download.oracle.com/javase/1.5.0/docs/api/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
+ http://download.oracle.com/javase/6/docs/api/
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -31,15 +31,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
org.apache.felix
diff --git a/google-api-client-java6/pom.xml b/google-api-client-java6/pom.xml
index 1a21db064..a06cf74b3 100644
--- a/google-api-client-java6/pom.xml
+++ b/google-api-client-java6/pom.xml
@@ -16,7 +16,7 @@
http://download.oracle.com/javase/6/docs/api/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -31,15 +31,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
maven-source-plugin
diff --git a/google-api-client-protobuf/pom.xml b/google-api-client-protobuf/pom.xml
index f436b752d..e5c80c677 100644
--- a/google-api-client-protobuf/pom.xml
+++ b/google-api-client-protobuf/pom.xml
@@ -22,8 +22,8 @@
maven-javadoc-plugin
- http://download.oracle.com/javase/1.5.0/docs/api/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
+ http://download.oracle.com/javase/6/docs/api/
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -38,15 +38,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
maven-source-plugin
diff --git a/google-api-client-servlet/pom.xml b/google-api-client-servlet/pom.xml
index 51888a642..c504eff58 100644
--- a/google-api-client-servlet/pom.xml
+++ b/google-api-client-servlet/pom.xml
@@ -15,9 +15,9 @@
maven-javadoc-plugin
- http://download.oracle.com/javase/1.5.0/docs/api/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
- http://javadoc.google-oauth-java-client.googlecode.com/hg/${project.oauth.version}
+ http://download.oracle.com/javase/6/docs/api/
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
+ https://googleapis.github.io/google-oauth-java-client/releases/${project.oauth.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -32,15 +32,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
maven-source-plugin
@@ -56,11 +47,32 @@
org.datanucleus
- maven-datanucleus-plugin
- 2.2.1
+ datanucleus-maven-plugin
+ ${project.datanucleus-maven-plugin.version}
+ JDO
true
+
+
+ org.datanucleus
+ datanucleus-core
+ ${project.datanucleus-core.version}
+ runtime
+
+
+ org.datanucleus
+ datanucleus-api-jdo
+ ${project.datanucleus-api-jdo.version}
+ runtime
+
+
+ javax.jdo
+ jdo2-api
+ ${project.jdo2-api.version}
+ runtime
+
+
process-classes
diff --git a/google-api-client-xml/pom.xml b/google-api-client-xml/pom.xml
index ca0096645..23a48ee9b 100644
--- a/google-api-client-xml/pom.xml
+++ b/google-api-client-xml/pom.xml
@@ -15,8 +15,8 @@
maven-javadoc-plugin
- http://download.oracle.com/javase/1.5.0/docs/api/
- http://javadoc.google-http-java-client.googlecode.com/hg/${project.http.version}
+ http://download.oracle.com/javase/6/docs/api/
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
@@ -31,15 +31,6 @@
-
-
- jar
- compile
-
- jar
-
-
-
maven-source-plugin
diff --git a/google-api-client/pom.xml b/google-api-client/pom.xml
index 92e0fff68..19def4ed6 100644
--- a/google-api-client/pom.xml
+++ b/google-api-client/pom.xml
@@ -24,8 +24,8 @@
https://docs.oracle.com/javase/6/docs/api/
https://cloud.google.com/appengine/docs/standard/java/javadoc/
- https://googleapis.github.io/google-http-java-client/releases/1.25.0/javadoc/
- https://googleapis.github.io/google-oauth-java-client/releases/1.25.0/javadoc/
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
+ https://googleapis.github.io/google-oauth-java-client/releases/${project.oauth.version}/javadoc/
${project.name} ${project.version}
${project.artifactId} ${project.version}
diff --git a/pom.xml b/pom.xml
index 656f6b913..d1bd1271b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,9 +27,9 @@
- scm:git:https://github.com/google/google-api-java-client.git
- scm:git:ssh:git@github.com:google/google-api-java-client.git
- https://github.com/google/google-api-java-client
+ scm:git:https://github.com/googleapis/google-api-java-client.git
+ scm:git:ssh:git@github.com:googleapis/google-api-java-client.git
+ https://github.com/googleapis/google-api-java-client
@@ -147,7 +147,7 @@
javax.servlet
servlet-api
- 2.5
+ ${project.servlet-api.version}
com.google.http-client
@@ -286,12 +286,19 @@
- maven-assembly-plugin
- 2.2
+ org.sonatype.plugins
+ nexus-staging-maven-plugin
+ 1.6.6
+ true
+
+ ossrh
+ https://oss.sonatype.org/
+ false
+
- maven-clean-plugin
- 2.4.1
+ maven-assembly-plugin
+ 2.2
maven-compiler-plugin
@@ -301,74 +308,53 @@
1.6
+
- maven-dependency-plugin
- 2.1
-
-
- maven-deploy-plugin
- 2.5
-
-
- maven-ear-plugin
- 2.4.2
-
-
- maven-ejb-plugin
- 2.3
-
-
- maven-install-plugin
- 2.3.1
-
-
- maven-jar-plugin
- 2.3.1
-
-
- false
-
-
+ org.apache.maven.plugins
+ maven-source-plugin
+ 2.2.1
+
+
+ attach-sources
+
+ jar-no-fork
+
+
+
+ org.apache.maven.plugins
maven-javadoc-plugin
- 2.7
-
-
- maven-plugin-plugin
- 2.6
+ 2.9.1
+
+
+ attach-javadocs
+
+ jar
+
+
+
- maven-rar-plugin
- 2.2
-
-
- maven-release-plugin
- 2.1
-
-
- maven-resources-plugin
- 2.4.3
-
-
- maven-site-plugin
- 2.1.1
-
-
- maven-source-plugin
- 2.1.2
+ org.apache.maven.plugins
+ maven-jar-plugin
+ 3.0.2
+
+
+
+ test-jar
+
+
+
maven-surefire-plugin
- 2.12.4
+ 2.19.1
-Xmx1024m
+ sponge_log
-
- maven-war-plugin
- 2.1
-
maven-checkstyle-plugin
2.6
@@ -381,7 +367,7 @@
org.codehaus.mojo
clirr-maven-plugin
- 2.6
+ 2.8
org.codehaus.mojo
@@ -412,8 +398,8 @@
http://download.oracle.com/javase/6/docs/api/
http://cloud.google.com/appengine/docs/java/javadoc
- https://developers.google.com/api-client-library/java/google-http-java-client/reference/${project.http.version}
- https://developers.google.com/api-client-library/java/google-http-java-client/reference/${project.oauth.version}
+ https://googleapis.github.io/google-http-java-client/releases/${project.http.version}/javadoc/
+ https://googleapis.github.io/google-oauth-java-client/releases/${project.oauth.version}/javadoc/
Google API Client Library for Java ${project.version}
${basedir}/overview.html
@@ -461,6 +447,7 @@
+ org.apache.maven.plugins
maven-checkstyle-plugin
checkstyle.xml
@@ -511,7 +498,7 @@
org.codehaus.mojo.signature
- java15
+ java16
1.0
@@ -550,6 +537,46 @@
4.5.5
4.4.10
2.3-eb
+ 3.2.2
+ 3.2.1
+ 4.0.3
+ 2.5
1.1
+
+
+
+ release-sign-artifacts
+
+
+ performRelease
+ true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-gpg-plugin
+ 1.6
+
+
+ sign-artifacts
+ verify
+
+ sign
+
+
+
+ --pinentry-mode
+ loopback
+
+
+
+
+
+
+
+
+