Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: googleapis/python-bigquery-dataframes
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.3.2
Choose a base ref
...
head repository: googleapis/python-bigquery-dataframes
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.4.0
Choose a head ref
  • 3 commits
  • 146 files changed
  • 3 contributors

Commits on Sep 7, 2023

  1. chore: enable owlbot (#23)

    * chore: enable owlbot
    
    Change-Id: Idb2a03ab01d414f136a846d18f90329a9a50e4aa
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * revert some owlbot changes
    
    Change-Id: Iabe654bf693d82f5f1afdef7e9663577ded96025
    
    * only exclude common.cfg
    
    Change-Id: I1199737edca971b648ec2cfddb82b4f378b3f97d
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * use correct path in build.sh
    
    Change-Id: I407dc0500f52c52ccd90e108ba821fd518a7fe1d
    
    * decrease coverage and use repo name in 'nightly' build
    
    Change-Id: I7d450364dd234c640d905c9ac2c2a96e7df08d02
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * restore pre-commit checks
    
    Change-Id: Iaf059d5b197d9cc9e87e3d17adf6c7c48ca41cb8
    
    ---------
    
    Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
    tswast and gcf-owl-bot[bot] authored Sep 7, 2023
    Copy the full SHA
    ffad464 View commit details

Commits on Sep 16, 2023

  1. feat: add DataFrame.combine and DataFrame.combine_first (#27)

    feat: add `DataFrame.skew` and `GroupBy.skew`
    test: remove unneeded mock
    perf: `bigframes-api` label to I/O query jobs
    fix: `remote_function` uses same credentials as other APIs
    test: BQML golden SQL unit tests
    feat: add `DataFrame.pct_change` and `Series.pct_change`
    test: disable `remote_function` reuse in tests
    test: fix flaky repr_cache tests
    test: add unit tests for private `ArrayValue` class
    feat: add `DataFrame.to_dict`, `to_excel`, `to_latex`, `to_records`, `to_string`, `to_markdown`, `to_pickle`, `to_orc`
    fix: use for literals `Int64Dtype` in `cut`
    feat: add `DataFrame.nlargest`, `nsmallest`
    chore: refactor PCA tests
    feat: add `bfill` and `ffill` to `DataFrame` and `Series`
    feat: add `reindex_like` to `DataFrame` and `Series`
    fix: use lowercase strings for parameter literals in `bigframes.ml` (**breaking change**)
    feat: support `DataFrame.loc[bool_series, column] = scalar`
    fix: support column joins with "None indexer"
    docs: document region logic in README
    feat: add partial support for `Sereies.replace`
    fix: add type hints to models
    test: add more unit tests for internal `ArrayValue`
    feat: add `filter` and `reindex` to `Series` and `DataFrame`
    docs: document possible parameter values for PaLM2TextGenerator
    test: mark generate_text test as flaky
    feat: support a persistent `name` in `remote_function`
    fix: raise error when ARIMAPlus is used with Pipeline
    feat: add `swaplevel` to `DataFrame` and `Series`
    feat: add `axis` parameter to `droplevel` and `reorder_levels`
    docs: fix OneHotEncoder sample
    fix: remove `transforms` parameter in `model.fit` (**breaking change**)
    feat: add `diff` method to `DataFrame` and `GroupBy`
    tswast authored Sep 16, 2023
    Copy the full SHA
    7c6b0dd View commit details

Commits on Sep 18, 2023

  1. chore(main): release 0.4.0 (#28)

    Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
    release-please[bot] authored Sep 18, 2023
    Copy the full SHA
    94779ed View commit details
Showing with 5,183 additions and 784 deletions.
  1. +39 −0 .coveragerc
  2. +1 −3 .flake8
  3. +17 −0 .github/.OwlBot.lock.yaml
  4. +18 −0 .github/.OwlBot.yaml
  5. +1 −0 .github/CODEOWNERS
  6. +7 −7 .github/header-checker-lint.yml
  7. +1 −1 .github/sync-repo-settings.yaml
  8. +1 −1 .github/workflows/lint.yml
  9. +2 −2 .github/workflows/unittest.yml
  10. +0 −7 .gitignore
  11. +3 −3 .kokoro/build.sh
  12. +1 −1 .kokoro/continuous/continuous.cfg
  13. +7 −0 .kokoro/continuous/prerelease-deps.cfg
  14. +1 −1 .kokoro/docker/docs/Dockerfile
  15. +10 −4 .kokoro/docs/common.cfg
  16. +23 −0 .kokoro/docs/docs-presubmit-gerrit.cfg
  17. +7 −2 .kokoro/docs/docs-presubmit.cfg
  18. +1 −1 .kokoro/docs/docs.cfg
  19. +43 −0 .kokoro/populate-secrets.sh
  20. +1 −1 .kokoro/presubmit/common.cfg
  21. +7 −0 .kokoro/presubmit/e2e-gerrit.cfg
  22. +7 −0 .kokoro/presubmit/prerelease-deps.cfg
  23. +1 −0 .kokoro/presubmit/presubmit-gerrit.cfg
  24. +1 −1 .kokoro/presubmit/presubmit.cfg
  25. +19 −0 .kokoro/publish-docs.sh
  26. +3 −46 .kokoro/release-nightly.sh
  27. +2 −2 .kokoro/release.sh
  28. +4 −4 .kokoro/release/common.cfg
  29. +0 −3 .kokoro/requirements.in
  30. +154 −230 .kokoro/requirements.txt
  31. +34 −0 .kokoro/samples/lint/common.cfg
  32. +6 −0 .kokoro/samples/lint/continuous.cfg
  33. +6 −0 .kokoro/samples/lint/periodic.cfg
  34. +6 −0 .kokoro/samples/lint/presubmit.cfg
  35. +40 −0 .kokoro/samples/python3.10/common.cfg
  36. +6 −0 .kokoro/samples/python3.10/continuous.cfg
  37. +11 −0 .kokoro/samples/python3.10/periodic-head.cfg
  38. +6 −0 .kokoro/samples/python3.10/periodic.cfg
  39. +6 −0 .kokoro/samples/python3.10/presubmit.cfg
  40. +40 −0 .kokoro/samples/python3.11/common.cfg
  41. +6 −0 .kokoro/samples/python3.11/continuous.cfg
  42. +11 −0 .kokoro/samples/python3.11/periodic-head.cfg
  43. +6 −0 .kokoro/samples/python3.11/periodic.cfg
  44. +6 −0 .kokoro/samples/python3.11/presubmit.cfg
  45. +40 −0 .kokoro/samples/python3.7/common.cfg
  46. +6 −0 .kokoro/samples/python3.7/continuous.cfg
  47. +11 −0 .kokoro/samples/python3.7/periodic-head.cfg
  48. +6 −0 .kokoro/samples/python3.7/periodic.cfg
  49. +6 −0 .kokoro/samples/python3.7/presubmit.cfg
  50. +40 −0 .kokoro/samples/python3.8/common.cfg
  51. +6 −0 .kokoro/samples/python3.8/continuous.cfg
  52. +11 −0 .kokoro/samples/python3.8/periodic-head.cfg
  53. +6 −0 .kokoro/samples/python3.8/periodic.cfg
  54. +6 −0 .kokoro/samples/python3.8/presubmit.cfg
  55. +40 −0 .kokoro/samples/python3.9/common.cfg
  56. +6 −0 .kokoro/samples/python3.9/continuous.cfg
  57. +11 −0 .kokoro/samples/python3.9/periodic-head.cfg
  58. +6 −0 .kokoro/samples/python3.9/periodic.cfg
  59. +6 −0 .kokoro/samples/python3.9/presubmit.cfg
  60. +26 −0 .kokoro/test-samples-against-head.sh
  61. +102 −0 .kokoro/test-samples-impl.sh
  62. +44 −0 .kokoro/test-samples.sh
  63. +28 −0 .kokoro/trampoline.sh
  64. 0 .kokoro/trampoline_v2.sh
  65. +4 −4 .pre-commit-config.yaml
  66. +3 −0 .trampolinerc
  67. +43 −0 CHANGELOG.md
  68. +2 −1 CODE_OF_CONDUCT.md
  69. +277 −0 CONTRIBUTING.rst
  70. +26 −0 MANIFEST.in
  71. +1 −0 OWNERS
  72. +10 −1 README.rst
  73. +1 −1 bigframes/core/__init__.py
  74. +176 −0 bigframes/core/block_transforms.py
  75. +10 −6 bigframes/core/blocks.py
  76. +40 −4 bigframes/core/groupby/__init__.py
  77. +30 −12 bigframes/core/indexers.py
  78. +20 −0 bigframes/core/indexes/index.py
  79. +2 −2 bigframes/core/utils.py
  80. +447 −25 bigframes/dataframe.py
  81. +1 −1 bigframes/dtypes.py
  82. +31 −1 bigframes/ml/base.py
  83. +3 −3 bigframes/ml/cluster.py
  84. +1 −1 bigframes/ml/compose.py
  85. +3 −3 bigframes/ml/decomposition.py
  86. +32 −32 bigframes/ml/ensemble.py
  87. +2 −2 bigframes/ml/forecasting.py
  88. +6 −5 bigframes/ml/linear_model.py
  89. +4 −4 bigframes/ml/llm.py
  90. +11 −5 bigframes/ml/pipeline.py
  91. +2 −2 bigframes/ml/preprocessing.py
  92. +65 −5 bigframes/operations/aggregations.py
  93. +2 −0 bigframes/pandas/__init__.py
  94. +108 −84 bigframes/remote_function.py
  95. +159 −59 bigframes/series.py
  96. +92 −15 bigframes/session.py
  97. +1 −1 bigframes/version.py
  98. +5 −0 docs/_static/custom.css
  99. +5 −0 docs/_templates/layout.html
  100. +24 −17 docs/conf.py
  101. +3 −1 noxfile.py
  102. +50 −4 owlbot.py
  103. +12 −0 renovate.json
  104. +17 −7 samples/snippets/remote_function.py
  105. +46 −0 scripts/decrypt-secrets.sh
  106. +69 −0 scripts/readme-gen/readme_gen.py
  107. +87 −0 scripts/readme-gen/templates/README.tmpl.rst
  108. +9 −0 scripts/readme-gen/templates/auth.tmpl.rst
  109. +14 −0 scripts/readme-gen/templates/auth_api_key.tmpl.rst
  110. +29 −0 scripts/readme-gen/templates/install_deps.tmpl.rst
  111. +35 −0 scripts/readme-gen/templates/install_portaudio.tmpl.rst
  112. +1 −4 scripts/upload_to_google_drive.py
  113. +1 −15 setup.cfg
  114. +2 −1 setup.py
  115. +3 −0 testing/.gitignore
  116. +3 −2 testing/constraints-3.9.txt
  117. +5 −5 tests/system/large/ml/test_ensemble.py
  118. +276 −20 tests/system/large/test_remote_function.py
  119. +2 −0 tests/system/small/ml/test_core.py
  120. +5 −24 tests/system/small/ml/test_decomposition.py
  121. +489 −0 tests/system/small/test_dataframe.py
  122. +26 −0 tests/system/small/test_groupby.py
  123. +3 −2 tests/system/small/test_ipython.py
  124. +160 −2 tests/system/small/test_multiindex.py
  125. +14 −0 tests/system/small/test_pandas.py
  126. +176 −3 tests/system/small/test_series.py
  127. +47 −0 tests/unit/ml/test_golden_sql.py
  128. +27 −17 tests/unit/ml/test_pipeline.py
  129. +169 −0 tests/unit/test_core.py
  130. +12 −0 third_party/bigframes_vendored/ibis/backends/bigquery/registry.py
  131. +1 −0 third_party/bigframes_vendored/ibis/expr/operations/__init__.py
  132. +26 −0 third_party/bigframes_vendored/ibis/expr/operations/analytic.py
  133. +474 −7 third_party/bigframes_vendored/pandas/core/frame.py
  134. +89 −0 third_party/bigframes_vendored/pandas/core/generic.py
  135. +20 −0 third_party/bigframes_vendored/pandas/core/groupby/__init__.py
  136. +10 −0 third_party/bigframes_vendored/pandas/core/indexes/base.py
  137. +122 −2 third_party/bigframes_vendored/pandas/core/series.py
  138. +1 −0 third_party/bigframes_vendored/sklearn/base.py
  139. +0 −5 third_party/bigframes_vendored/sklearn/cluster/_kmeans.py
  140. +0 −4 third_party/bigframes_vendored/sklearn/decomposition/_pca.py
  141. +0 −4 third_party/bigframes_vendored/sklearn/ensemble/_forest.py
  142. +0 −5 third_party/bigframes_vendored/sklearn/linear_model/_base.py
  143. +0 −5 third_party/bigframes_vendored/sklearn/linear_model/_logistic.py
  144. +12 −19 third_party/bigframes_vendored/sklearn/preprocessing/_data.py
  145. +8 −6 third_party/bigframes_vendored/sklearn/preprocessing/_encoder.py
  146. +0 −4 third_party/bigframes_vendored/xgboost/sklearn.py
39 changes: 39 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# -*- coding: utf-8 -*-
#
# Copyright 2023 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.

# Generated by synthtool. DO NOT EDIT!
[run]
branch = True
omit =
google/__init__.py
google/cloud/__init__.py

[report]
fail_under = 35
show_missing = True
exclude_lines =
# Re-enable the standard pragma
pragma: NO COVER
# Ignore debug-only repr
def __repr__
# Ignore abstract methods
raise NotImplementedError
omit =
*/gapic/*.py
*/proto/*.py
*/core/*.py
*/site-packages/*.py
google/cloud/__init__.py
4 changes: 1 addition & 3 deletions .flake8
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# Copyright 2020 Google LLC
# Copyright 2023 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,8 +18,6 @@
[flake8]
ignore = E203, E231, E266, E501, W503
exclude =
third_party/**

# Exclude generated code.
**/proto/**
**/gapic/**
17 changes: 17 additions & 0 deletions .github/.OwlBot.lock.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Copyright 2023 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.
docker:
image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest
digest: sha256:3e3800bb100af5d7f9e810d48212b37812c1856d20ffeafb99ebe66461b61fc7
# created: 2023-08-02T10:53:29.114535628Z
18 changes: 18 additions & 0 deletions .github/.OwlBot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright 2021 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.

docker:
image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest

begin-after-commit-hash: 92006bb3cdc84677aa93c7f5235424ec2b157146
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -4,6 +4,7 @@
# For syntax help see:
# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners#codeowners-syntax
# Note: This file is autogenerated. To make changes to the codeowner team, please update .repo-metadata.json.

# @googleapis/yoshi-python @googleapis/api-bigquery-dataframe are the default owners for changes in this repo
* @googleapis/yoshi-python @googleapis/api-bigquery-dataframe

14 changes: 7 additions & 7 deletions .github/header-checker-lint.yml
Original file line number Diff line number Diff line change
@@ -2,14 +2,14 @@
"allowedLicenses": ["Apache-2.0", "MIT", "BSD-3"],
"ignoreFiles": ["**/requirements.txt", "**/requirements-test.txt", "**/__init__.py", "samples/**/constraints.txt", "samples/**/constraints-test.txt"],
"sourceFileExtensions": [
"ts",
"js",
"java",
"sh",
"Dockerfile",
"yaml",
"ts",
"js",
"java",
"sh",
"Dockerfile",
"yaml",
"py",
"html",
"txt"
]
}
}
2 changes: 1 addition & 1 deletion .github/sync-repo-settings.yaml
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@ branchProtectionRules:
- 'unit (3.10)'
- 'unit (3.11)'
- 'cover'
# TODO(tswast): add Kokoro once we've enabled it
- 'Kokoro presubmit'
permissionRules:
- team: actools-python
permission: admin
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
python-version: "3.8"
- name: Install nox
run: |
python -m pip install --upgrade setuptools pip wheel
4 changes: 2 additions & 2 deletions .github/workflows/unittest.yml
Original file line number Diff line number Diff line change
@@ -41,7 +41,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
python-version: "3.8"
- name: Install coverage
run: |
python -m pip install --upgrade setuptools pip wheel
@@ -54,4 +54,4 @@ jobs:
- name: Report coverage results
run: |
coverage combine .coverage-results/.coverage*
coverage report --show-missing --fail-under=40
coverage report --show-missing --fail-under=35
7 changes: 0 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -26,12 +26,9 @@ pip-log.txt

# Unit test / coverage reports
.coverage
.coverage.*
.nox
.cache
.mypy_cache
.pytest_cache
.pytype


# Mac
@@ -53,7 +50,6 @@ docs.metadata

# Virtual environment
env/
venv/

# Test logs
coverage.xml
@@ -65,6 +61,3 @@ system_tests/local_test_setup
# Make sure a generated file isn't accidentally committed.
pylintrc
pylintrc.test

# Notebook scratch
.ipynb_checkpoints
6 changes: 3 additions & 3 deletions .kokoro/build.sh
Original file line number Diff line number Diff line change
@@ -16,13 +16,13 @@
set -eo pipefail

if [[ -z "${KOKORO_GOB_COMMIT}" ]]; then
PROJECT_SCM="github"
PROJECT_SCM="github/python-bigquery-dataframes"
else
PROJECT_SCM="git"
PROJECT_SCM="git/bigframes"
fi

if [[ -z "${PROJECT_ROOT:-}" ]]; then
PROJECT_ROOT="${KOKORO_ARTIFACTS_DIR}/${PROJECT_SCM}/bigframes"
PROJECT_ROOT="${KOKORO_ARTIFACTS_DIR}/${PROJECT_SCM}"
fi

cd "${PROJECT_ROOT}"
2 changes: 1 addition & 1 deletion .kokoro/continuous/continuous.cfg
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# Format: //devtools/kokoro/config/proto/build.proto
# Format: //devtools/kokoro/config/proto/build.proto
7 changes: 7 additions & 0 deletions .kokoro/continuous/prerelease-deps.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Only run this nox session.
env_vars: {
key: "NOX_SESSION"
value: "prerelease_deps"
}
2 changes: 1 addition & 1 deletion .kokoro/docker/docs/Dockerfile
Original file line number Diff line number Diff line change
@@ -80,4 +80,4 @@ RUN wget -O /tmp/get-pip.py 'https://bootstrap.pypa.io/get-pip.py' \
# Test pip
RUN python3 -m pip

CMD ["python3.9"]
CMD ["python3.8"]
14 changes: 10 additions & 4 deletions .kokoro/docs/common.cfg
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@ action {
gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline"

# Use the trampoline script to run in docker.
build_file: "bigframes/.kokoro/trampoline_v2.sh"
build_file: "python-bigquery-dataframes/.kokoro/trampoline_v2.sh"

# Configure the docker image for kokoro-trampoline.
env_vars: {
@@ -20,12 +20,18 @@ env_vars: {
}
env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: ".kokoro/publish-docs.sh"
value: "github/python-bigquery-dataframes/.kokoro/publish-docs.sh"
}

env_vars: {
key: "STAGING_BUCKET"
value: "docs-staging"
}

env_vars: {
key: "V2_STAGING_BUCKET"
# Push google cloud library docs to the Cloud RAD bucket `docs-staging-v2`
# Push non-cloud library docs to `docs-staging-v2-staging` instead of the
# Cloud RAD bucket `docs-staging-v2`
value: "docs-staging-v2"
}

@@ -58,4 +64,4 @@ before_action {
keyname: "docuploader_service_account"
}
}
}
}
23 changes: 23 additions & 0 deletions .kokoro/docs/docs-presubmit-gerrit.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Format: //devtools/kokoro/config/proto/build.proto

env_vars: {
key: "V2_STAGING_BUCKET"
value: "gcloud-python-test"
}

# We only upload the image in the main `docs` build.
env_vars: {
key: "TRAMPOLINE_IMAGE_UPLOAD"
value: "false"
}

env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: ".kokoro/build.sh"
}

# Only run this nox session.
env_vars: {
key: "NOX_SESSION"
value: "docfx"
}
9 changes: 7 additions & 2 deletions .kokoro/docs/docs-presubmit.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Format: //devtools/kokoro/config/proto/build.proto

env_vars: {
key: "STAGING_BUCKET"
value: "gcloud-python-test"
}

env_vars: {
key: "V2_STAGING_BUCKET"
value: "gcloud-python-test"
@@ -13,11 +18,11 @@ env_vars: {

env_vars: {
key: "TRAMPOLINE_BUILD_FILE"
value: ".kokoro/build.sh"
value: "github/python-bigquery-dataframes/.kokoro/build.sh"
}

# Only run this nox session.
env_vars: {
key: "NOX_SESSION"
value: "docfx"
value: "docs docfx"
}
2 changes: 1 addition & 1 deletion .kokoro/docs/docs.cfg
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# Format: //devtools/kokoro/config/proto/build.proto
# Format: //devtools/kokoro/config/proto/build.proto
43 changes: 43 additions & 0 deletions .kokoro/populate-secrets.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#!/bin/bash
# Copyright 2023 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

function now { date +"%Y-%m-%d %H:%M:%S" | tr -d '\n' ;}
function msg { println "$*" >&2 ;}
function println { printf '%s\n' "$(now) $*" ;}


# Populates requested secrets set in SECRET_MANAGER_KEYS from service account:
# kokoro-trampoline@cloud-devrel-kokoro-resources.iam.gserviceaccount.com
SECRET_LOCATION="${KOKORO_GFILE_DIR}/secret_manager"
msg "Creating folder on disk for secrets: ${SECRET_LOCATION}"
mkdir -p ${SECRET_LOCATION}
for key in $(echo ${SECRET_MANAGER_KEYS} | sed "s/,/ /g")
do
msg "Retrieving secret ${key}"
docker run --entrypoint=gcloud \
--volume=${KOKORO_GFILE_DIR}:${KOKORO_GFILE_DIR} \
gcr.io/google.com/cloudsdktool/cloud-sdk \
secrets versions access latest \
--project cloud-devrel-kokoro-resources \
--secret ${key} > \
"${SECRET_LOCATION}/${key}"
if [[ $? == 0 ]]; then
msg "Secret written to ${SECRET_LOCATION}/${key}"
else
msg "Error retrieving secret ${key}"
fi
done
2 changes: 1 addition & 1 deletion .kokoro/presubmit/common.cfg
Original file line number Diff line number Diff line change
@@ -7,4 +7,4 @@ action {
}
}

build_file: "bigframes/.kokoro/build.sh"
build_file: "python-bigquery-dataframes/.kokoro/build.sh"
7 changes: 7 additions & 0 deletions .kokoro/presubmit/e2e-gerrit.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Only run this nox session.
env_vars: {
key: "NOX_SESSION"
value: "system_noextras e2e notebook samples"
}
7 changes: 7 additions & 0 deletions .kokoro/presubmit/prerelease-deps.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Format: //devtools/kokoro/config/proto/build.proto

# Only run this nox session.
env_vars: {
key: "NOX_SESSION"
value: "prerelease_deps"
}
1 change: 1 addition & 0 deletions .kokoro/presubmit/presubmit-gerrit.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Format: //devtools/kokoro/config/proto/build.proto
2 changes: 1 addition & 1 deletion .kokoro/presubmit/presubmit.cfg
Original file line number Diff line number Diff line change
@@ -1 +1 @@
# Format: //devtools/kokoro/config/proto/build.proto
# Format: //devtools/kokoro/config/proto/build.proto
Loading