Skip to content

Commit ec59869

Browse files
authored
Merge branch 'main' into spannertest-changestreams
2 parents f8caefa + c387066 commit ec59869

31,157 files changed

Lines changed: 1537526 additions & 972745 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gemini/config.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,6 @@ code_review:
1111
summary: false
1212
code_review: true
1313
include_drafts: true
14+
ignore_patterns:
15+
- "*.pb.go"
16+
- "**/internal/version.go"

.github/CODEOWNERS

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
# Default owner for all directories not owned by others
22
# The cloud-sdk-go-team team are the effective repo maintainers, but automatic
33
# generation/releasing PRs are in the purview of the librarian team.
4-
* @googleapis/cloud-sdk-librarian-team @googleapis/cloud-sdk-go-team
4+
* @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
55

6+
/librarian.yaml @googleapis/cloud-sdk-librarian-team
67
/ai/ @googleapis/vertexai-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
78
/aiplatform/ @googleapis/vertexai-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
9+
/agentplatform/ @googleapis/vertexai-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
10+
/auth/ @googleapis/aion-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
811
/bigtable/ @googleapis/bigtable-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
912
/bigtable/cmd/cbt @googleapis/bigtable-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
1013
/bigtable/cmd/emulator @googleapis/bigtable-team @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
@@ -23,12 +26,5 @@
2326
/internal/protoveneer/ @googleapis/cloud-sdk-go-team @googleapis/cloud-sdk-librarian-team
2427

2528

26-
# We mark the librarian state file as unowned to avoid gatekeeping librarian operations on
27-
# a single owner. This allows multiple teams to interact with librarian operations that cause
28-
# changes to librarian state.
29-
/.librarian/state.yaml
30-
# Similarly, we mark the internal/generated/snippets directory unowned to avoid
31-
# tracking granular ownership in the snippets directories, and to avoid chasing
32-
# code owners approvals for things like snippet metadata versioning bumps which
33-
# happen naturally as part of release activities.
34-
/internal/generated/snippets/
29+
# We mark the release please individual manifest unowned as well to allow teams to release the individual modules without secondary approvals.
30+
/.release-please-individual-manifest.json

.github/blunderbuss.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
assign_issues_by:
22
- labels:
33
- 'api: bigtable'
4+
to:
5+
- sushanb
6+
- labels:
47
- 'api: datastore'
58
- 'api: firestore'
69
to:
7-
- bhshkh
10+
- hongalex
11+
- shollyman
812
- labels:
913
- 'api: storage'
1014
to:

.github/release-please.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
handleGHRelease: true
2+
manifest: true
3+
tagPullRequestNumber: true
4+
5+
branches:
6+
- branch: main
7+
handleGHRelease: true
8+
tagPullRequestNumber: true
9+
manifest: true
10+
manifestFile: .release-please-bulk-manifest.json
11+
manifestConfig: release-please-bulk-config.json
12+
- branch: main
13+
handleGHRelease: true
14+
tagPullRequestNumber: true
15+
manifest: true
16+
manifestFile: .release-please-individual-manifest.json
17+
manifestConfig: release-please-individual-config.json

.github/renovate.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"extends": [
3-
"config:base",
3+
"config:best-practices",
44
"schedule:weekly",
55
":disableDependencyDashboard",
66
"docker:disable"
@@ -19,6 +19,11 @@
1919
"**/snippets/**"
2020
],
2121
"packageRules": [
22+
{
23+
"description": "prevent go version upgrades",
24+
"matchManagers": ["gomod"],
25+
"constraintsFiltering": "strict"
26+
},
2227
{
2328
"matchPackagePatterns": [
2429
"^github.com/google/go-github/v",

.github/workflows/action_syntax.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,7 @@ jobs:
1414
permissions:
1515
pull-requests: write
1616
steps:
17-
- uses: actions/checkout@v6
18-
- uses: reviewdog/action-actionlint@v1
17+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
18+
with:
19+
persist-credentials: false
20+
- uses: reviewdog/action-actionlint@6fb7acc99f4a1008869fa8a0f09cfca740837d9d # v1

.github/workflows/apidiff.yml

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,17 @@ jobs:
1313
scan_changes:
1414
runs-on: ubuntu-latest
1515
steps:
16-
- uses: actions/checkout@v6
16+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
1717
with:
1818
ref: main
19+
persist-credentials: false
1920
- name: Get main commit
2021
id: main
2122
run: echo "hash=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"
22-
- uses: actions/checkout@v6
23-
- uses: actions/setup-go@v6
23+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
24+
with:
25+
persist-credentials: false
26+
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
2427
with:
2528
go-version: '1.26.x'
2629
- name: Get changed directories
@@ -52,14 +55,15 @@ jobs:
5255
strategy:
5356
matrix: ${{ fromJson(needs.scan_changes.outputs.changed_dirs) }}
5457
steps:
55-
- uses: actions/setup-go@v6
58+
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
5659
with:
5760
go-version: '1.26.x'
5861
- name: Install latest apidiff
5962
run: go install golang.org/x/exp/cmd/apidiff@latest
60-
- uses: actions/checkout@v6
63+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
6164
with:
6265
ref: main
66+
persist-credentials: false
6367
- name: Create baseline
6468
id: baseline
6569
run: |
@@ -73,14 +77,16 @@ jobs:
7377
MATRIX_CHANGED: ${{ matrix.changed }}
7478
STEPS_BASELINE_OUTPUTS_PKG: ${{ steps.baseline.outputs.pkg }}
7579
- name: Upload baseline package data
76-
uses: actions/upload-artifact@v7
80+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
7781
with:
7882
name: ${{ steps.baseline.outputs.pkg }}
7983
path: ${{ matrix.changed }}/${{ steps.baseline.outputs.pkg }}
8084
retention-days: 1
81-
- uses: actions/checkout@v6
85+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
86+
with:
87+
persist-credentials: false
8288
- name: Download baseline package data
83-
uses: actions/download-artifact@v8
89+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
8490
with:
8591
name: ${{ steps.baseline.outputs.pkg }}
8692
path: ${{ matrix.changed }}
@@ -134,7 +140,7 @@ jobs:
134140
# review, even if they don't block the PR.
135141
- name: Add breaking change label
136142
if: ${{ steps.detect.outputs.breaking_change_found == 'true' && !github.event.pull_request.head.repo.fork }}
137-
uses: actions/github-script@v8
143+
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
138144
with:
139145
script: |
140146
github.rest.issues.addLabels({
@@ -150,12 +156,14 @@ jobs:
150156
# the failed presubmit check is the primary signal.
151157
- name: Post breaking change details as a comment
152158
if: ${{ steps.ga_check.outcome == 'success' && !github.event.pull_request.head.repo.fork }}
153-
uses: actions/github-script@v8
159+
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
160+
env:
161+
CHANGED_MODULE: ${{ matrix.changed }}
154162
with:
155163
script: |
156164
const fs = require('fs');
157-
const diff = fs.readFileSync('${{ matrix.changed }}/diff.txt', 'utf8');
158-
const moduleName = '${{ matrix.changed }}';
165+
const diff = fs.readFileSync(`${process.env.CHANGED_MODULE}/diff.txt`, 'utf8');
166+
const moduleName = process.env.CHANGED_MODULE;
159167
const commentHeader = `### ⚠️ Breaking change detected in pre-GA module: \`${moduleName}\``;
160168
const body = `${commentHeader}\n\nThe apidiff check has detected one or more breaking changes in this module for pre-GA APIs.\n\nPre-GA breaking changes do not block the pull request, but are flagged here for review.\n\nFor any pre-GA breaking change that needs investigation, open a new issue containing a link to this comment, then you may proceed with reviewing and merging this PR.\n\n\`\`\`\n${diff}\n\`\`\``;
161169
const { data: comments } = await github.rest.issues.listComments({

.github/workflows/config_check.yml

Lines changed: 0 additions & 40 deletions
This file was deleted.

.github/workflows/conformance.yaml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,17 @@ jobs:
3939
go: [ '1.25', '1.26']
4040
folders: ['bigtable']
4141
steps:
42-
- uses: actions/checkout@v6
42+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
4343
with:
4444
path: google-cloud-go
45-
- uses: actions/checkout@v6
45+
persist-credentials: false
46+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
4647
with:
4748
repository: googleapis/cloud-bigtable-clients-test
4849
ref: v0.0.3
4950
path: cloud-bigtable-clients-test
50-
- uses: actions/setup-go@v6
51+
persist-credentials: false
52+
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
5153
with:
5254
go-version: ${{ matrix.go }}
5355
- run: go version
Lines changed: 38 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
22
name: generation-check
33
on:
4-
schedule:
5-
# Runs every day at 4:00 AM UTC
6-
- cron: '0 4 * * *'
4+
push:
5+
branches:
6+
- main
7+
pull_request:
78
# Allows manual triggering for debugging purpose.
89
workflow_dispatch:
910
permissions:
@@ -13,43 +14,45 @@ jobs:
1314
regeneration:
1415
runs-on: ubuntu-latest
1516
steps:
16-
- uses: actions/checkout@v6
17-
- uses: actions/setup-go@v6
17+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
1818
with:
19-
go-version: '1.26.x'
20-
- name: Install Protoc
21-
uses: arduino/setup-protoc@v3
19+
persist-credentials: false
20+
- uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4
21+
id: changes
2222
with:
23-
version: "25.7"
23+
filters: |
24+
librarian:
25+
- 'librarian.yaml'
26+
# Version of librarian is pulled from librarian.yaml,
27+
# main corresponds to the action's source definition.
28+
- uses: googleapis/librarian@main # zizmor: ignore[unpinned-uses]
29+
if: steps.changes.outputs.librarian == 'true' || (github.event_name == 'push' && github.ref == 'refs/heads/main')
30+
with:
31+
protoc-version: '33.2'
32+
protoc-checksum: '8c0a8577311720cc83488f813aeb5046d69cb9824cbf39cb7447e0c5132d677952d5bb7c1130d9df381835eee7352828878d409873ebb407d7a4649ea2a4aee5'
2433
- name: Install tools
25-
run: |
26-
version=$(sed -n 's/^version: *//p' librarian.yaml)
27-
go run "github.com/googleapis/librarian/cmd/librarian@${version}" install
34+
if: steps.changes.outputs.librarian == 'true' || (github.event_name == 'push' && github.ref == 'refs/heads/main')
35+
run: librarian install
2836
- name: Regenerate
37+
if: steps.changes.outputs.librarian == 'true' || (github.event_name == 'push' && github.ref == 'refs/heads/main')
2938
run: |
30-
version=$(sed -n 's/^version: *//p' librarian.yaml)
31-
go run "github.com/googleapis/librarian/cmd/librarian@${version}" generate -all
32-
- name: Create issue on diff
33-
if: failure()
34-
env:
35-
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36-
run: |
39+
librarian generate --all
3740
if [ -n "$(git status --porcelain)" ]; then
38-
TITLE="Daily regeneration check found diff"
39-
RUN_URL="${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
40-
DIFF_STAT=$(git diff --stat)
41-
BODY="The daily [regeneration check]($RUN_URL) found a diff.
41+
git status
42+
echo "==================== GIT DIFF ===================="
43+
git diff
44+
echo "=================================================="
45+
echo "Regeneration failed. Please run 'librarian generate --all' to update the generated files."
46+
exit 1
47+
fi
48+
- name: Create issue if previous step fails
49+
if: ${{ failure() && github.ref == 'refs/heads/main' }}
50+
uses: googleapis/librarian/.github/actions/create-issue-on-failure@main # zizmor: ignore[unpinned-uses]
51+
with:
52+
title: "Librarian generate diff check failed on main branch"
53+
body: |
54+
The librarian generate diff check failed on main branch.
4255
43-
Diff summary:
44-
\`\`\`
45-
$DIFF_STAT
46-
\`\`\`"
56+
To keep the `main` branch healthy, please consider **reverting the triggering change** first. Once the revert is merged, you can investigate the failure and submit a new PR with the fix.
4757
48-
EXISTING_ISSUE=$(gh issue list --state open --search "in:title \"$TITLE\"" --json number --jq '.[0].number')
49-
if [ -z "$EXISTING_ISSUE" ]; then
50-
gh issue create --title "$TITLE" --body "$BODY"
51-
else
52-
echo "Issue #$EXISTING_ISSUE already exists, adding a comment."
53-
gh issue comment "$EXISTING_ISSUE" --body "Another failure with diff occurred: $RUN_URL"
54-
fi
55-
fi
58+
Please check the logs: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

0 commit comments

Comments
 (0)