Skip to content
Permalink
Browse files
feat: feat: make repo releasable (#1)
  • Loading branch information
codyoss committed Nov 4, 2019
1 parent 40daf2d commit fe722f8668fb0047e90bdafe995e4244edfbbc42
Showing with 1,727 additions and 58 deletions.
  1. +51 −0 .github/ISSUE_TEMPLATE/bug_report.md
  2. +21 −0 .github/ISSUE_TEMPLATE/feature_request.md
  3. +7 −0 .github/ISSUE_TEMPLATE/support_request.md
  4. +1 −0 .github/PULL_REQUEST_TEMPLATE.md
  5. +1 −0 .github/release-please.yml
  6. +44 −0 .gitignore
  7. +3 −0 .kokoro/build.bat
  8. +60 −0 .kokoro/build.sh
  9. +38 −0 .kokoro/coerce_logs.sh
  10. +13 −0 .kokoro/common.cfg
  11. +25 −0 .kokoro/continuous/common.cfg
  12. +12 −0 .kokoro/continuous/dependencies.cfg
  13. +7 −0 .kokoro/continuous/integration.cfg
  14. +7 −0 .kokoro/continuous/java11.cfg
  15. +7 −0 .kokoro/continuous/java7.cfg
  16. +3 −0 .kokoro/continuous/java8-osx.cfg
  17. +3 −0 .kokoro/continuous/java8-win.cfg
  18. +7 −0 .kokoro/continuous/java8.cfg
  19. +13 −0 .kokoro/continuous/lint.cfg
  20. +53 −0 .kokoro/continuous/propose_release.cfg
  21. +29 −0 .kokoro/continuous/propose_release.sh
  22. +27 −0 .kokoro/dependencies.sh
  23. +33 −0 .kokoro/linkage-monitor.sh
  24. +25 −0 .kokoro/nightly/common.cfg
  25. +12 −0 .kokoro/nightly/dependencies.cfg
  26. +7 −0 .kokoro/nightly/integration.cfg
  27. +7 −0 .kokoro/nightly/java11.cfg
  28. +7 −0 .kokoro/nightly/java7.cfg
  29. +3 −0 .kokoro/nightly/java8-osx.cfg
  30. +3 −0 .kokoro/nightly/java8-win.cfg
  31. +7 −0 .kokoro/nightly/java8.cfg
  32. +13 −0 .kokoro/nightly/lint.cfg
  33. +13 −0 .kokoro/presubmit/clirr.cfg
  34. +34 −0 .kokoro/presubmit/common.cfg
  35. +12 −0 .kokoro/presubmit/dependencies.cfg
  36. +31 −0 .kokoro/presubmit/integration.cfg
  37. +7 −0 .kokoro/presubmit/java11.cfg
  38. +7 −0 .kokoro/presubmit/java7.cfg
  39. +3 −0 .kokoro/presubmit/java8-osx.cfg
  40. +3 −0 .kokoro/presubmit/java8-win.cfg
  41. +7 −0 .kokoro/presubmit/java8.cfg
  42. +12 −0 .kokoro/presubmit/linkage-monitor.cfg
  43. +13 −0 .kokoro/presubmit/lint.cfg
  44. +53 −0 .kokoro/release/bump_snapshot.cfg
  45. +30 −0 .kokoro/release/bump_snapshot.sh
  46. +49 −0 .kokoro/release/common.cfg
  47. +50 −0 .kokoro/release/common.sh
  48. +9 −0 .kokoro/release/drop.cfg
  49. +32 −0 .kokoro/release/drop.sh
  50. +10 −0 .kokoro/release/promote.cfg
  51. +34 −0 .kokoro/release/promote.sh
  52. +19 −0 .kokoro/release/publish_javadoc.cfg
  53. +55 −0 .kokoro/release/publish_javadoc.sh
  54. +6 −0 .kokoro/release/snapshot.cfg
  55. +33 −0 .kokoro/release/snapshot.sh
  56. +44 −0 .kokoro/release/stage.cfg
  57. +42 −0 .kokoro/release/stage.sh
  58. +24 −0 .kokoro/trampoline.sh
  59. +2 −2 {google-cloud-resourcemanager → }/.repo-metadata.json
  60. +93 −0 CODE_OF_CONDUCT.md
  61. +28 −0 CONTRIBUTING.md
  62. +3 −2 LICENSE
  63. 0 {google-cloud-resourcemanager → }/README.md
  64. +4 −0 codecov.yaml
  65. +0 −54 google-cloud-resourcemanager/pom.xml
  66. +15 −0 java.header
  67. +10 −0 license-checks.xml
  68. +335 −0 pom.xml
  69. +27 −0 renovate.json
  70. 0 {google-cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/Option.java
  71. 0 ...le-cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/PolicyMarshaller.java
  72. 0 {google-cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/Project.java
  73. 0 {google-cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/ProjectInfo.java
  74. 0 ...gle-cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/ResourceManager.java
  75. 0 ...-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/ResourceManagerException.java
  76. 0 ...ud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/ResourceManagerFactory.java
  77. 0 ...cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/ResourceManagerImpl.java
  78. 0 ...ud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/ResourceManagerOptions.java
  79. 0 {google-cloud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/package-info.java
  80. 0 ...urcemanager → }/src/main/java/com/google/cloud/resourcemanager/spi/ResourceManagerRpcFactory.java
  81. 0 ...anager → }/src/main/java/com/google/cloud/resourcemanager/spi/v1beta1/HttpResourceManagerRpc.java
  82. 0 ...rcemanager → }/src/main/java/com/google/cloud/resourcemanager/spi/v1beta1/ResourceManagerRpc.java
  83. 0 ...anager → }/src/main/java/com/google/cloud/resourcemanager/testing/LocalResourceManagerHelper.java
  84. 0 ...loud-resourcemanager → }/src/main/java/com/google/cloud/resourcemanager/testing/package-info.java
  85. 0 {google-cloud-resourcemanager → }/src/test/java/com/google/cloud/resourcemanager/OptionTest.java
  86. 0 ...loud-resourcemanager → }/src/test/java/com/google/cloud/resourcemanager/PolicyMarshallerTest.java
  87. 0 ...gle-cloud-resourcemanager → }/src/test/java/com/google/cloud/resourcemanager/ProjectInfoTest.java
  88. 0 {google-cloud-resourcemanager → }/src/test/java/com/google/cloud/resourcemanager/ProjectTest.java
  89. 0 ...ourcemanager → }/src/test/java/com/google/cloud/resourcemanager/ResourceManagerExceptionTest.java
  90. 0 ...d-resourcemanager → }/src/test/java/com/google/cloud/resourcemanager/ResourceManagerImplTest.java
  91. 0 ...esourcemanager → }/src/test/java/com/google/cloud/resourcemanager/ResourceManagerOptionsTest.java
  92. 0 ...e-cloud-resourcemanager → }/src/test/java/com/google/cloud/resourcemanager/SerializationTest.java
  93. 0 ...er → }/src/test/java/com/google/cloud/resourcemanager/testing/LocalResourceManagerHelperTest.java
  94. +25 −0 synth.py
  95. +4 −0 versions.txt
@@ -0,0 +1,51 @@
---
name: Bug report
about: Create a report to help us improve

---

Thanks for stopping by to let us know something could be better!

**PLEASE READ**: If you have a support contract with Google, please create an issue in the [support console](https://cloud.google.com/support/) instead of filing on GitHub. This will ensure a timely response.

Please run down the following list and make sure you've tried the usual "quick fixes":

- Search the issues already opened: https://github.com/googleapis/java-resourcemanager/issues
- Check for answers on StackOverflow: http://stackoverflow.com/questions/tagged/google-cloud-platform

If you are still having issues, please include as much information as possible:

#### Environment details

1. Specify the API at the beginning of the title. For example, "BigQuery: ...").
General, Core, and Other are also allowed as types
2. OS type and version:
3. Java version:
4. cloudresourcemanager version(s):

#### Steps to reproduce

1. ?
2. ?

#### Code example

```java
// example
```

#### Stack trace
```
Any relevant stacktrace here.
```

#### External references such as API reference guides

- ?

#### Any additional information below


Following these steps guarantees the quickest resolution possible.

Thanks!
@@ -0,0 +1,21 @@
---
name: Feature request
about: Suggest an idea for this library

---

Thanks for stopping by to let us know something could be better!

**PLEASE READ**: If you have a support contract with Google, please create an issue in the [support console](https://cloud.google.com/support/) instead of filing on GitHub. This will ensure a timely response.

**Is your feature request related to a problem? Please describe.**
What the problem is. Example: I'm always frustrated when [...]

**Describe the solution you'd like**
What you want to happen.

**Describe alternatives you've considered**
Any alternative solutions or features you've considered.

**Additional context**
Any other context or screenshots about the feature request.
@@ -0,0 +1,7 @@
---
name: Support request
about: If you have a support contract with Google, please create an issue in the Google Cloud Support console.

---

**PLEASE READ**: If you have a support contract with Google, please create an issue in the [support console](https://cloud.google.com/support/) instead of filing on GitHub. This will ensure a timely response.
@@ -0,0 +1 @@
Fixes #<issue_number_goes_here> (it's a good idea to open an issue first for context and/or discussion)
@@ -0,0 +1 @@
releaseType: java-yoshi
@@ -0,0 +1,44 @@
.gitignore

# Packages
dist
bin
var
sdist
target

# Unit test / coverage reports
.coverage
.tox
nosetests.xml

# Translations
*.mo

# Mr Developer
.mr.developer.cfg

.metadata
.project
.pydevproject
*.iml
.idea
.settings
.DS_Store
.classpath

# Built documentation
docs/


# Wheel directory used in Travis builds.
gcloud-java-wheels/
src/test/resources/gcd-head.zip
src/test/resources/gcd-v1beta2-rev1-2.1.1.zip

# API key file containing value of GOOGLE_API_KEY for integration tests
api_key

# Python utilities
*.pyc
artman-genfiles
@@ -0,0 +1,3 @@
:: See documentation in type-shell-output.bat

"C:\Program Files\Git\bin\bash.exe" github/java-resourcemanager/.kokoro/build.sh
@@ -0,0 +1,60 @@
#!/bin/bash
# Copyright 2019 Google LLC
#
# 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 the directory of the build script
scriptDir=$(realpath $(dirname "${BASH_SOURCE[0]}"))
## cd to the parent directory, i.e. the root of the git repo
cd ${scriptDir}/..

# Print out Java version
java -version
echo ${JOB_TYPE}

mvn install -B -V \
-DskipTests=true \
-Dclirr.skip=true \
-Dmaven.javadoc.skip=true \
-Dgcloud.download.skip=true \
-T 1C

# if GOOGLE_APPLICATION_CREDIENTIALS is specified as a relative path prepend Kokoro root directory onto it
if [[ ! -z "${GOOGLE_APPLICATION_CREDENTIALS}" && "${GOOGLE_APPLICATION_CREDENTIALS}" != /* ]]; then
export GOOGLE_APPLICATION_CREDENTIALS=$(realpath ${KOKORO_ROOT}/src/${GOOGLE_APPLICATION_CREDENTIALS})
fi

case ${JOB_TYPE} in
test)
mvn test -B -Dclirr.skip=true
bash ${KOKORO_GFILE_DIR}/codecov.sh
bash .kokoro/coerce_logs.sh
;;
lint)
mvn com.coveo:fmt-maven-plugin:check
;;
javadoc)
mvn javadoc:javadoc javadoc:test-javadoc
;;
integration)
mvn -B ${INTEGRATION_TEST_ARGS} -DtrimStackTrace=false -Dclirr.skip=true -fae verify
bash .kokoro/coerce_logs.sh
;;
clirr)
mvn -B clirr:check
;;
*)
;;
esac
@@ -0,0 +1,38 @@
#!/bin/bash
# Copyright 2019 Google LLC
#
# 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.

# This script finds and moves sponge logs so that they can be found by placer
# and are not flagged as flaky by sponge.

set -eo pipefail

## Get the directory of the build script
scriptDir=$(realpath $(dirname "${BASH_SOURCE[0]}"))
## cd to the parent directory, i.e. the root of the git repo
cd ${scriptDir}/..

job=$(basename ${KOKORO_JOB_NAME})

echo "coercing sponge logs..."
for xml in `find . -name *-sponge_log.xml`
do
echo "processing ${xml}"
class=$(basename ${xml} | cut -d- -f2)
dir=$(dirname ${xml})/${job}/${class}
text=$(dirname ${xml})/${class}-sponge_log.txt
mkdir -p ${dir}
mv ${xml} ${dir}/sponge_log.xml
mv ${text} ${dir}/sponge_log.txt
done
@@ -0,0 +1,13 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Download trampoline resources. These will be in ${KOKORO_GFILE_DIR}
gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline"

# All builds use the trampoline script to run in docker.
build_file: "java-resourcemanager/.kokoro/trampoline.sh"

# Tell the trampoline which build file to use.
env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: "github/java-resourcemanager/.kokoro/build.sh"
}
@@ -0,0 +1,25 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Build logs will be here
action {
define_artifacts {
regex: "**/*sponge_log.xml"
regex: "**/*sponge_log.txt"
}
}

# Download trampoline resources.
gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline"

# Use the trampoline script to run in docker.
build_file: "java-resourcemanager/.kokoro/trampoline.sh"

env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: "github/java-resourcemanager/.kokoro/build.sh"
}

env_vars: {
key: "JOB_TYPE"
value: "test"
}
@@ -0,0 +1,12 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/java8"
}

env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: "github/java-resourcemanager/.kokoro/dependencies.sh"
}
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/java8"
}
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/java11"
}
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/java7"
}
@@ -0,0 +1,3 @@
# Format: //devtools/kokoro/config/proto/build.proto

build_file: "java-resourcemanager/.kokoro/build.sh"
@@ -0,0 +1,3 @@
# Format: //devtools/kokoro/config/proto/build.proto

build_file: "java-resourcemanager/.kokoro/build.bat"
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/java8"
}
@@ -0,0 +1,13 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Configure the docker image for kokoro-trampoline.

env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/java8"
}

env_vars: {
key: "JOB_TYPE"
value: "lint"
}
@@ -0,0 +1,53 @@
# 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: "java-resourcemanager/.kokoro/trampoline.sh"

# Configure the docker image for kokoro-trampoline.
env_vars: {
key: "TRAMPOLINE_IMAGE"
value: "gcr.io/cloud-devrel-kokoro-resources/node:10-user"
}

env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: "github/java-resourcemanager/.kokoro/continuous/propose_release.sh"
}

# tokens used by release-please to keep an up-to-date release PR.
before_action {
fetch_keystore {
keystore_resource {
keystore_config_id: 73713
keyname: "github-magic-proxy-key-release-please"
}
}
}

before_action {
fetch_keystore {
keystore_resource {
keystore_config_id: 73713
keyname: "github-magic-proxy-token-release-please"
}
}
}

before_action {
fetch_keystore {
keystore_resource {
keystore_config_id: 73713
keyname: "github-magic-proxy-url-release-please"
}
}
}

0 comments on commit fe722f8

Please sign in to comment.