diff --git a/.github/workflows/auto-release.yaml b/.github/workflows/auto-release.yaml new file mode 100644 index 00000000..d26427e4 --- /dev/null +++ b/.github/workflows/auto-release.yaml @@ -0,0 +1,69 @@ +on: + pull_request: +name: auto-release +jobs: + approve: + runs-on: ubuntu-latest + steps: + - uses: actions/github-script@v3.0.0 + with: + github-token: ${{secrets.GITHUB_TOKEN}} + debug: true + script: | + // only approve PRs from release-please[bot] + if (context.payload.pull_request.user.login !== "release-please[bot]") { + return; + } + + // only approve PRs like "chore: release " + if ( !context.payload.pull_request.title.startsWith("chore: release") ) { + return; + } + + // trigger auto-release when + // 1) it is a SNAPSHOT release (auto-generated post regular release) + // 2) there are dependency updates only + // 3) there are no open dependency update PRs in this repo (to avoid multiple releases) + if ( + context.payload.pull_request.body.includes("Fix") || + context.payload.pull_request.body.includes("Build") || + context.payload.pull_request.body.includes("Documentation") || + context.payload.pull_request.body.includes("BREAKING CHANGES") || + context.payload.pull_request.body.includes("Features") + ) { + console.log( "Not auto-releasing since it is not a dependency-update-only release." ); + return; + } + + const promise = github.pulls.list.endpoint({ + owner: context.repo.owner, + repo: context.repo.repo, + state: 'open' + }); + const open_pulls = await github.paginate(promise) + + if ( open_pulls.length > 1 && !context.payload.pull_request.title.includes("SNAPSHOT") ) { + for ( const pull of open_pulls ) { + if ( pull.title.startsWith("deps: update dependency") ) { + console.log( "Not auto-releasing yet since there are dependency update PRs open in this repo." ); + return; + } + } + } + + // approve release PR + await github.pulls.createReview({ + owner: context.repo.owner, + repo: context.repo.repo, + body: 'Rubber stamped release!', + pull_number: context.payload.pull_request.number, + event: 'APPROVE' + }); + + // attach kokoro:force-run and automerge labels + await github.issues.addLabels({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.payload.pull_request.number, + labels: ['kokoro:force-run', 'automerge'] + }); \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index fc3875d2..6e128817 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [0.1.1](https://www.github.com/googleapis/java-analytics-data/compare/v0.1.0...v0.1.1) (2020-09-21) + + +### Dependencies + +* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.9.0 ([#15](https://www.github.com/googleapis/java-analytics-data/issues/15)) ([8b8ff79](https://www.github.com/googleapis/java-analytics-data/commit/8b8ff792dc4a683f5dd76a8567e22d0a58c6c485)) + ## 0.1.0 (2020-08-28) diff --git a/README.md b/README.md index 77e50609..c379b024 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ If you are using Maven, add this to your pom.xml file: com.google.analytics google-analytics-data - 0.0.0 + 0.1.0 ``` @@ -28,11 +28,11 @@ If you are using Maven, add this to your pom.xml file: If you are using Gradle, add this to your dependencies ```Groovy -compile 'com.google.analytics:google-analytics-data:0.1.0' +compile 'com.google.analytics:google-analytics-data:0.1.1' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.analytics" % "google-analytics-data" % "0.1.0" +libraryDependencies += "com.google.analytics" % "google-analytics-data" % "0.1.1" ``` [//]: # ({x-version-update-end}) diff --git a/google-analytics-data-bom/pom.xml b/google-analytics-data-bom/pom.xml index 5b5ebd92..02c8bcc0 100644 --- a/google-analytics-data-bom/pom.xml +++ b/google-analytics-data-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.analytics google-analytics-data-bom - 0.0.1-SNAPSHOT + 0.1.1 pom com.google.cloud @@ -68,17 +68,17 @@ com.google.analytics google-analytics-data - 0.1.0 + 0.1.1 com.google.api.grpc proto-google-analytics-data-v1alpha - 0.1.0 + 0.1.1 com.google.api.grpc grpc-google-analytics-data-v1alpha - 0.1.0 + 0.1.1 @@ -94,4 +94,4 @@ - \ No newline at end of file + diff --git a/google-analytics-data/pom.xml b/google-analytics-data/pom.xml index 185954c1..c6cc6823 100644 --- a/google-analytics-data/pom.xml +++ b/google-analytics-data/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.analytics google-analytics-data - 0.1.0 + 0.1.1 jar Google Analytics Data https://github.com/googleapis/java-analytics-data @@ -11,7 +11,7 @@ com.google.analytics google-analytics-data-parent - 0.1.0 + 0.1.1 google-analytics-data diff --git a/grpc-google-analytics-data-v1alpha/pom.xml b/grpc-google-analytics-data-v1alpha/pom.xml index 0cc62a08..b037953f 100644 --- a/grpc-google-analytics-data-v1alpha/pom.xml +++ b/grpc-google-analytics-data-v1alpha/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-analytics-data-v1alpha - 0.1.0 + 0.1.1 grpc-google-analytics-data-v1alpha GRPC library for grpc-google-analytics-data-v1alpha com.google.analytics google-analytics-data-parent - 0.1.0 + 0.1.1 diff --git a/pom.xml b/pom.xml index cb44f339..9fe8563d 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.analytics google-analytics-data-parent pom - 0.1.0 + 0.1.1 Google Analytics Data Parent https://github.com/googleapis/java-analytics-data @@ -70,23 +70,23 @@ com.google.analytics google-analytics-data - 0.1.0 + 0.1.1 com.google.api.grpc proto-google-analytics-data-v1alpha - 0.1.0 + 0.1.1 com.google.api.grpc grpc-google-analytics-data-v1alpha - 0.1.0 + 0.1.1 com.google.cloud google-cloud-shared-dependencies - 0.8.6 + 0.9.0 pom import diff --git a/proto-google-analytics-data-v1alpha/pom.xml b/proto-google-analytics-data-v1alpha/pom.xml index 252f1a32..07b49322 100644 --- a/proto-google-analytics-data-v1alpha/pom.xml +++ b/proto-google-analytics-data-v1alpha/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-analytics-data-v1alpha - 0.1.0 + 0.1.1 proto-google-analytics-data-v1alpha PROTO library for proto-google-analytics-data-v1alpha com.google.analytics google-analytics-data-parent - 0.1.0 + 0.1.1 diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 970f06f9..3fcd8750 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -29,7 +29,7 @@ com.google.analytics google-analytics-data - 0.0.0 + 0.1.0 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index c5d9ef0f..a54955f8 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.analytics google-analytics-data - 0.1.0 + 0.1.1 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 181ffe7e..2686ea3d 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -28,7 +28,7 @@ com.google.analytics google-analytics-data - 0.0.0 + 0.1.0 diff --git a/synth.metadata b/synth.metadata index ecdc000f..7d8524c8 100644 --- a/synth.metadata +++ b/synth.metadata @@ -4,7 +4,7 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/java-analytics-data.git", - "sha": "cb23ca124518849d0c5767b3b3ce028a3e2b0f20" + "sha": "8b8ff792dc4a683f5dd76a8567e22d0a58c6c485" } }, { @@ -19,7 +19,7 @@ "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "019c7168faa0e56619f792693a8acdb30d6de19b" + "sha": "538a68019eb4a36a0cdfa4021f324dd01b784395" } } ], @@ -42,6 +42,7 @@ ".github/PULL_REQUEST_TEMPLATE.md", ".github/release-please.yml", ".github/trusted-contribution.yml", + ".github/workflows/auto-release.yaml", ".github/workflows/ci.yaml", ".github/workflows/samples.yaml", ".kokoro/build.bat", diff --git a/versions.txt b/versions.txt index c712f5af..52ae71e9 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-analytics-data:0.1.0:0.1.0 -proto-google-analytics-data-v1alpha:0.1.0:0.1.0 -grpc-google-analytics-data-v1alpha:0.1.0:0.1.0 \ No newline at end of file +google-analytics-data:0.1.1:0.1.1 +proto-google-analytics-data-v1alpha:0.1.1:0.1.1 +grpc-google-analytics-data-v1alpha:0.1.1:0.1.1 \ No newline at end of file