Skip to content
Permalink
Browse files
feat: migrate bigquery from google-cloud-java, add bom (#3)
1. add synth.py
2. update pom.xml files to have correct names and descriptions
3. update .repo-metadata.json for new urls
4. add .gitignore
5. generate common templates
  • Loading branch information
stephaniewang526 committed Dec 6, 2019
1 parent 084fd8a commit 91b79f608ad4743f895c3f9324153cb70065a28c
Showing with 1,876 additions and 26 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. +2 −0 .github/release-please.yml
  6. +5 −0 .gitignore
  7. +3 −0 .kokoro/build.bat
  8. +66 −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. +31 −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. +6 −0 .kokoro/release/drop.cfg
  49. +32 −0 .kokoro/release/drop.sh
  50. +6 −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. +3 −3 {google-cloud-bigquery → }/.repo-metadata.json
  60. +93 −0 CODE_OF_CONDUCT.md
  61. +28 −0 CONTRIBUTING.md
  62. +3 −2 LICENSE
  63. 0 {google-cloud-bigquery → }/README.md
  64. +4 −0 codecov.yaml
  65. +83 −0 google-cloud-bigquery-bom/pom.xml
  66. +69 −21 google-cloud-bigquery/pom.xml
  67. +15 −0 java.header
  68. +10 −0 license-checks.xml
  69. +346 −0 pom.xml
  70. +27 −0 renovate.json
  71. +19 −0 synth.metadata
  72. +26 −0 synth.py
  73. +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-bigquery/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. bigquery 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,2 @@
releaseType: java-yoshi
bumpMinorPreMajor: true
@@ -0,0 +1,5 @@
.idea
*.iml
target/
__pycache__

@@ -0,0 +1,3 @@
:: See documentation in type-shell-output.bat

"C:\Program Files\Git\bin\bash.exe" github/java-bigquery/.kokoro/build.sh
@@ -0,0 +1,66 @@
#!/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 \
-Denforcer.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 -Denforcer.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 \
-Denforcer.skip=true \
-fae \
verify
bash .kokoro/coerce_logs.sh
;;
clirr)
mvn -B -Denforcer.skip=true 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-bigquery/.kokoro/trampoline.sh"

# Tell the trampoline which build file to use.
env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: "github/java-bigquery/.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-bigquery/.kokoro/trampoline.sh"

env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: "github/java-bigquery/.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-bigquery/.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-bigquery/.kokoro/build.sh"
@@ -0,0 +1,3 @@
# Format: //devtools/kokoro/config/proto/build.proto

build_file: "java-bigquery/.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-bigquery/.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-bigquery/.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,0 +1,29 @@
#!/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
#
# https://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

export NPM_CONFIG_PREFIX=/home/node/.npm-global

if [ -f ${KOKORO_KEYSTORE_DIR}/73713_github-magic-proxy-url-release-please ]; then
# Groom the release PR as new commits are merged.
npx release-please release-pr --token=${KOKORO_KEYSTORE_DIR}/73713_github-magic-proxy-token-release-please \
--repo-url=googleapis/java-bigquery \
--package-name="bigquery" \
--api-url=${KOKORO_KEYSTORE_DIR}/73713_github-magic-proxy-url-release-please \
--proxy-key=${KOKORO_KEYSTORE_DIR}/73713_github-magic-proxy-key-release-please \
--release-type=java-yoshi
fi

0 comments on commit 91b79f6

Please sign in to comment.