Skip to content

Commit 3f86c6e

Browse files
authored
Merge branch 'main' into pr-title-lint
2 parents 6cf5303 + 76727db commit 3f86c6e

17 files changed

Lines changed: 416 additions & 20 deletions
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: 🐞 Bug Report
16+
description: File a report for unexpected or undesired behavior.
17+
title: "<brief summary of what bug or error was observed>"
18+
labels: ["type: bug"]
19+
type: "bug"
20+
21+
body:
22+
- type: markdown
23+
attributes:
24+
value: |
25+
Thanks for helping us improve! 🙏 Please answer these questions and provide as much information as possible about your problem.
26+
27+
- id: preamble
28+
type: checkboxes
29+
attributes:
30+
label: Pre-reqs
31+
description: |
32+
Please run through the following list and make sure you've tried the usual "quick fixes":
33+
- Search the [current open issues](https://github.com/gemini-cli-extensions/bigquery-data-analytics/issues)
34+
- Update to the latest version of the extension and [Gemini CLI](https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#stable)
35+
options:
36+
- label: "I've searched the current open issues"
37+
required: true
38+
- label: "I've updated to the latest versions"
39+
40+
- type: input
41+
id: version
42+
attributes:
43+
label: Extension Version
44+
description: |
45+
What version of the extension are you using (`gemini extensions list` or `/extensions list`)?
46+
placeholder: ex. version 0.1.0
47+
validations:
48+
required: true
49+
50+
- type: input
51+
id: version
52+
attributes:
53+
label: Gemini CLI Version
54+
description: |
55+
What version of the Gemini CLI are you using (`gemini --version`)?
56+
placeholder: ex. version 0.6.0
57+
validations:
58+
required: true
59+
60+
- type: input
61+
id: environment
62+
attributes:
63+
label: Environment
64+
description: "Let us know what OS type and version in which you are seeing the bug!"
65+
placeholder: output of `uname -a`
66+
validations:
67+
required: true
68+
69+
- id: current-behavior
70+
type: textarea
71+
attributes:
72+
label: Current Behavior
73+
description: "Please enter a detailed description of the behavior you encountered instead."
74+
validations:
75+
required: true
76+
77+
- id: expected-behavior
78+
type: textarea
79+
attributes:
80+
label: Expected Behavior
81+
description: |
82+
Please enter a detailed description of the behavior you expected, and any information about what behavior you
83+
noticed and why it is defective or unintentional.
84+
validations:
85+
required: true
86+
87+
- type: textarea
88+
id: repro
89+
attributes:
90+
label: Steps to reproduce?
91+
description: |
92+
How can we reproduce this bug? Please walk us through it step by step,
93+
with as much relevant detail as possible. A 'minimal' reproduction is
94+
preferred, which means removing as much of the examples as possible so
95+
only the minimum required to run and reproduce the bug is left.
96+
value: |
97+
1. ?
98+
2. ?
99+
3. ?
100+
...
101+
validations:
102+
required: true
103+
104+
- type: textarea
105+
id: additional-details
106+
attributes:
107+
label: Additional Details
108+
description: |
109+
Any other information you want us to know?

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Google Cloud Support
4+
url: https://cloud.google.com/support/
5+
about: If you have a support contract with Google, please both open an issue here and open Google Cloud Support portal with a link to the issue.
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: ✨ Feature Request
16+
description: Suggest an idea for new or improved behavior.
17+
title: "<brief summary of the proposed feature>"
18+
labels: ["type: feature request"]
19+
type: feature
20+
body:
21+
- type: markdown
22+
attributes:
23+
value: |
24+
Thanks for helping us improve! 🙏 Please answer these questions and provide as much information as possible about your feature request.
25+
26+
- id: preamble
27+
type: checkboxes
28+
attributes:
29+
label: Pre-reqs
30+
description: |
31+
Please run through the following list and make sure you've tried the usual "quick fixes":
32+
options:
33+
- label: "Search the [current open issues](https://github.com/gemini-cli-extensions/bigquery-data-analytics/issues)"
34+
required: true
35+
36+
- type: textarea
37+
id: use-case
38+
attributes:
39+
label: What are you trying to do that currently feels hard or impossible?
40+
description: "A clear and concise description of what the end goal for the feature should be -- avoid generalizing and try to provide a specific use-case."
41+
validations:
42+
required: true
43+
44+
- type: textarea
45+
id: suggested-solution
46+
attributes:
47+
label: Suggested Solution(s)
48+
description: "If you have a suggestion for how this use-case can be solved, please feel free to include it."
49+
50+
- type: textarea
51+
id: additional-details
52+
attributes:
53+
label: Additional Details
54+
description: "Any additional information we should know? Please reference it here (issues, PRs, descriptions, or screenshots)"
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: 💬 Question
16+
description: Questions on how something works or the best way to do something?
17+
title: "<brief summary of the question>"
18+
labels: ["type: question"]
19+
20+
body:
21+
- type: markdown
22+
attributes:
23+
value: |
24+
Thanks for helping us improve! 🙏 Please provide as much information as possible about your question.
25+
26+
- id: preamble
27+
type: checkboxes
28+
attributes:
29+
label: Prerequisites
30+
description: |
31+
Please run through the following list and make sure you've tried the usual "quick fixes":
32+
options:
33+
- label: "Search the [issues](https://github.com/gemini-cli-extensions/bigquery-data-analytics/issues)"
34+
required: true
35+
36+
- type: textarea
37+
id: question
38+
attributes:
39+
label: Question
40+
description: "What's your question? Please provide as much relevant information as possible to reduce turnaround time. Include information like what environment, language, or framework you are using."
41+
validations:
42+
required: true
43+
44+
- type: textarea
45+
id: code
46+
attributes:
47+
label: Code
48+
description: "Please paste any useful application code that might be relevant to your question. (if your code is in a public repo, feel free to paste a link!)"
49+
50+
- type: textarea
51+
id: additional-details
52+
attributes:
53+
label: Additional Details
54+
description: "Any other information you want us to know that might be helpful in answering your question? (link issues, PRs, descriptions, or screenshots)."

.github/renovate.json5

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
extends: [
3+
'config:recommended',
4+
':semanticCommitTypeAll(chore)',
5+
':ignoreUnstable',
6+
':separateMajorReleases',
7+
':prConcurrentLimitNone',
8+
':prHourlyLimitNone',
9+
':preserveSemverRanges',
10+
],
11+
rebaseWhen: 'conflicted',
12+
dependencyDashboardLabels: [
13+
'type: process',
14+
],
15+
packageRules: [
16+
{
17+
groupName: 'GitHub Actions',
18+
matchManagers: [
19+
'github-actions',
20+
],
21+
pinDigests: true,
22+
},
23+
],
24+
customManagers: [
25+
{
26+
customType: "regex",
27+
managerFilePatterns: ["/toolbox_version\\.txt$/"],
28+
matchStrings: ["(?<currentValue>[\\d\\.]+)"],
29+
datasourceTemplate: "github-releases",
30+
packageNameTemplate: "googleapis/genai-toolbox",
31+
extractVersionTemplate: "^v(?<version>.*)$",
32+
}
33+
]
34+
}

.github/workflows/json-lint.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: Lint JSON
16+
17+
on:
18+
pull_request:
19+
branches: [ main ]
20+
21+
jobs:
22+
json-lint:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Check out code
26+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
27+
28+
- name: Run JSON Lint
29+
run: jq . gemini-extension.json
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: Lint Markdown
16+
17+
on:
18+
pull_request:
19+
branches: [ main ]
20+
21+
jobs:
22+
link-check:
23+
name: Run link check
24+
runs-on: ubuntu-latest
25+
steps:
26+
- name: Check out code
27+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
28+
29+
- name: Link Checker
30+
uses: lycheeverse/lychee-action@885c65f3dc543b57c898c8099f4e08c8afd178a2 # v2.6.1
31+
with:
32+
# There is no security token. So, it would fail on any links which aren't public.
33+
args: "--verbose --no-progress **/*.md"

.github/workflows/package-and-upload-assets.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939

4040
steps:
4141
- name: Checkout code at the new tag
42-
uses: actions/checkout@v4
42+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
4343
with:
4444
ref: ${{ github.event.release.tag_name }}
4545

@@ -102,7 +102,7 @@ jobs:
102102
echo "ARCHIVE_PATH=${ARCHIVE_NAME}" >> $GITHUB_OUTPUT
103103
104104
- name: Upload archive as workflow artifact
105-
uses: actions/upload-artifact@v4
105+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
106106
with:
107107
name: ${{ steps.vars.outputs.archive_name }}
108108
path: ${{ steps.create_archive.outputs.ARCHIVE_PATH }}
@@ -116,10 +116,10 @@ jobs:
116116
contents: write
117117
steps:
118118
- name: Checkout code
119-
uses: actions/checkout@v4
119+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
120120

121121
- name: Download all archives from workflow artifacts
122-
uses: actions/download-artifact@v4
122+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5
123123
with:
124124
path: release-archives
125125

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
name: Presubmit Tests
15+
16+
on:
17+
pull_request:
18+
branches: [ main ]
19+
20+
jobs:
21+
run-presubmit-tests:
22+
runs-on: ubuntu-latest
23+
steps:
24+
- name: Check out code
25+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
26+
27+
- name: Install Gemini CLI
28+
run: npm install @google/gemini-cli
29+
30+
- name: Install toolbox binary
31+
run: |
32+
VERSION=$(cat toolbox_version.txt)
33+
curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
34+
chmod +x toolbox
35+
36+
- name: Install Extension
37+
run: yes | npx gemini extensions install .

.lycheeignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
https://github.com/gemini-cli-extensions/bigquery-data-analytics/compare/

0 commit comments

Comments
 (0)