Skip to content
This repository has been archived by the owner on Dec 31, 2023. It is now read-only.

Commit

Permalink
chore: migrate to owl bot (#80)
Browse files Browse the repository at this point in the history
This PR migrates from autosynth to owl bot. owl bot will save time for maintainers as it will automatically open PRs when there are updates in googleapis-gen without requiring maintainers to run synthtool to build the client from protos. Additionally, similar to autosynth, PRs will be automatically opened when there are template updates.

fix: add async client

chore: add autogenerated snippets

chore: remove auth, policy, and options from the reserved names list

feat: support self-signed JWT flow for service accounts

chore: enable GAPIC metadata generation
  • Loading branch information
parthea committed May 21, 2021
1 parent b444934 commit 1055668
Show file tree
Hide file tree
Showing 51 changed files with 1,200 additions and 723 deletions.
4 changes: 4 additions & 0 deletions .github/.OwlBot.lock.yaml
@@ -0,0 +1,4 @@
docker:
digest: sha256:457583330eec64daa02aeb7a72a04d33e7be2428f646671ce4045dcbc0191b1e
image: gcr.io/repo-automation-bots/owlbot-python:latest

26 changes: 26 additions & 0 deletions .github/.OwlBot.yaml
@@ -0,0 +1,26 @@
# 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/repo-automation-bots/owlbot-python:latest

deep-remove-regex:
- /owl-bot-staging

deep-copy-regex:
- source: /google/devtools/cloudtrace/(v.*)/.*-py/(.*)
dest: /owl-bot-staging/$1/$2

begin-after-commit-hash: 6acf4a0a797f1082027985c55c4b14b60f673dd7

2 changes: 1 addition & 1 deletion .github/header-checker-lint.yml
@@ -1,6 +1,6 @@
{"allowedCopyrightHolders": ["Google LLC"],
"allowedLicenses": ["Apache-2.0", "MIT", "BSD-3"],
"ignoreFiles": ["**/requirements.txt", "**/requirements-test.txt"],
"ignoreFiles": ["**/requirements.txt", "**/requirements-test.txt", "**/__init__.py", "samples/**/constraints.txt", "samples/**/constraints-test.txt"],
"sourceFileExtensions": [
"ts",
"js",
Expand Down
4 changes: 2 additions & 2 deletions .kokoro/release.sh
Expand Up @@ -26,7 +26,7 @@ python3 -m pip install --upgrade twine wheel setuptools
export PYTHONUNBUFFERED=1

# Move into the package, build the distribution and upload.
TWINE_PASSWORD=$(cat "${KOKORO_KEYSTORE_DIR}/73713_google_cloud_pypi_password")
TWINE_PASSWORD=$(cat "${KOKORO_GFILE_DIR}/secret_manager/google-cloud-pypi-token")
cd github/python-trace
python3 setup.py sdist bdist_wheel
twine upload --username gcloudpypi --password "${TWINE_PASSWORD}" dist/*
twine upload --username __token__ --password "${TWINE_PASSWORD}" dist/*
14 changes: 2 additions & 12 deletions .kokoro/release/common.cfg
Expand Up @@ -23,18 +23,8 @@ env_vars: {
value: "github/python-trace/.kokoro/release.sh"
}

# Fetch PyPI password
before_action {
fetch_keystore {
keystore_resource {
keystore_config_id: 73713
keyname: "google_cloud_pypi_password"
}
}
}

# Tokens needed to report release status back to GitHub
env_vars: {
key: "SECRET_MANAGER_KEYS"
value: "releasetool-publish-reporter-app,releasetool-publish-reporter-googleapis-installation,releasetool-publish-reporter-pem"
}
value: "releasetool-publish-reporter-app,releasetool-publish-reporter-googleapis-installation,releasetool-publish-reporter-pem,google-cloud-pypi-token"
}
16 changes: 15 additions & 1 deletion .pre-commit-config.yaml
@@ -1,3 +1,17 @@
# 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.
#
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
Expand All @@ -12,6 +26,6 @@ repos:
hooks:
- id: black
- repo: https://gitlab.com/pycqa/flake8
rev: 3.9.0
rev: 3.9.1
hooks:
- id: flake8
16 changes: 1 addition & 15 deletions CONTRIBUTING.rst
Expand Up @@ -160,21 +160,7 @@ Running System Tests
auth settings and change some configuration in your project to
run all the tests.

- System tests will be run against an actual project and
so you'll need to provide some environment variables to facilitate
authentication to your project:

- ``GOOGLE_APPLICATION_CREDENTIALS``: The path to a JSON key file;
Such a file can be downloaded directly from the developer's console by clicking
"Generate new JSON key". See private key
`docs <https://cloud.google.com/storage/docs/authentication#generating-a-private-key>`__
for more details.

- Once you have downloaded your json keys, set the environment variable
``GOOGLE_APPLICATION_CREDENTIALS`` to the absolute path of the json file::

$ export GOOGLE_APPLICATION_CREDENTIALS="/Users/<your_username>/path/to/app_credentials.json"

- System tests will be run against an actual project. You should use local credentials from gcloud when possible. See `Best practices for application authentication <https://cloud.google.com/docs/authentication/best-practices-applications#local_development_and_testing_with_the>`__. Some tests require a service account. For those tests see `Authenticating as a service account <https://cloud.google.com/docs/authentication/production>`__.

*************
Test Coverage
Expand Down
13 changes: 12 additions & 1 deletion docs/_static/custom.css
@@ -1,9 +1,20 @@
div#python2-eol {
border-color: red;
border-width: medium;
}
}

/* Ensure minimum width for 'Parameters' / 'Returns' column */
dl.field-list > dt {
min-width: 100px
}

/* Insert space between methods for readability */
dl.method {
padding-top: 10px;
padding-bottom: 10px
}

/* Insert empty space between classes */
dl.class {
padding-bottom: 50px
}
13 changes: 13 additions & 0 deletions docs/conf.py
@@ -1,4 +1,17 @@
# -*- coding: utf-8 -*-
# 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.
#
# google-cloud-trace documentation build configuration file
#
Expand Down
1 change: 0 additions & 1 deletion docs/trace_v1/trace_service.rst
Expand Up @@ -5,7 +5,6 @@ TraceService
:members:
:inherited-members:


.. automodule:: google.cloud.trace_v1.services.trace_service.pagers
:members:
:inherited-members:
10 changes: 5 additions & 5 deletions google/cloud/trace/__init__.py
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
Expand All @@ -15,10 +14,11 @@
# limitations under the License.
#

from google.cloud.trace_v2.services.trace_service.client import TraceServiceClient
from google.cloud.trace_v2.services.trace_service.async_client import (
TraceServiceAsyncClient,
)
from google.cloud.trace_v2.services.trace_service.client import TraceServiceClient

from google.cloud.trace_v2.types.trace import AttributeValue
from google.cloud.trace_v2.types.trace import Module
from google.cloud.trace_v2.types.trace import Span
Expand All @@ -27,12 +27,12 @@
from google.cloud.trace_v2.types.tracing import BatchWriteSpansRequest

__all__ = (
"TraceServiceClient",
"TraceServiceAsyncClient",
"AttributeValue",
"BatchWriteSpansRequest",
"Module",
"Span",
"StackTrace",
"TraceServiceAsyncClient",
"TraceServiceClient",
"TruncatableString",
"BatchWriteSpansRequest",
)
9 changes: 5 additions & 4 deletions google/cloud/trace_v1/__init__.py
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
Expand All @@ -16,22 +15,24 @@
#

from .services.trace_service import TraceServiceClient
from .services.trace_service import TraceServiceAsyncClient

from .types.trace import GetTraceRequest
from .types.trace import ListTracesRequest
from .types.trace import ListTracesResponse
from .types.trace import PatchTracesRequest
from .types.trace import Trace
from .types.trace import TraceSpan
from .types.trace import Traces

from .types.trace import TraceSpan

__all__ = (
"TraceServiceAsyncClient",
"GetTraceRequest",
"ListTracesRequest",
"ListTracesResponse",
"PatchTracesRequest",
"Trace",
"TraceServiceClient",
"TraceSpan",
"Traces",
"TraceServiceClient",
)
53 changes: 53 additions & 0 deletions google/cloud/trace_v1/gapic_metadata.json
@@ -0,0 +1,53 @@
{
"comment": "This file maps proto services/RPCs to the corresponding library clients/methods",
"language": "python",
"libraryPackage": "google.cloud.trace_v1",
"protoPackage": "google.devtools.cloudtrace.v1",
"schema": "1.0",
"services": {
"TraceService": {
"clients": {
"grpc": {
"libraryClient": "TraceServiceClient",
"rpcs": {
"GetTrace": {
"methods": [
"get_trace"
]
},
"ListTraces": {
"methods": [
"list_traces"
]
},
"PatchTraces": {
"methods": [
"patch_traces"
]
}
}
},
"grpc-async": {
"libraryClient": "TraceServiceAsyncClient",
"rpcs": {
"GetTrace": {
"methods": [
"get_trace"
]
},
"ListTraces": {
"methods": [
"list_traces"
]
},
"PatchTraces": {
"methods": [
"patch_traces"
]
}
}
}
}
}
}
}
1 change: 0 additions & 1 deletion google/cloud/trace_v1/services/__init__.py
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
Expand Down
2 changes: 0 additions & 2 deletions google/cloud/trace_v1/services/trace_service/__init__.py
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
Expand All @@ -14,7 +13,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#

from .client import TraceServiceClient
from .async_client import TraceServiceAsyncClient

Expand Down

0 comments on commit 1055668

Please sign in to comment.