Skip to content

Commit

Permalink
feat!: add owlbot automated updates (#54)
Browse files Browse the repository at this point in the history
  • Loading branch information
bshaffer authored Apr 28, 2023
1 parent cba3fd2 commit 6d9134d
Show file tree
Hide file tree
Showing 107 changed files with 105 additions and 983 deletions.
3 changes: 3 additions & 0 deletions .github/.OwlBot.lock.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
docker:
image: gcr.io/cloud-devrel-public-resources/owlbot-php:latest
digest: sha256:1ab73a7e74a718382e9f13cbd8e90db24fad736b5fbbd1ab7e5139f163f08118
19 changes: 19 additions & 0 deletions .github/.OwlBot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
docker:
image: gcr.io/cloud-devrel-public-resources/owlbot-php:latest
deep-copy-regex:
- source: /google/api/google-api-php/(.*)
dest: /owl-bot-staging/api/$1
- source: /google/cloud/extended-operations-php/(.*)
dest: /owl-bot-staging/extendedoperations/$1
- source: /google/cloud/location/.*-php/(.*)
dest: /owl-bot-staging/location/$1
- source: /google/iam/v1/.*-php/(.*)
dest: /owl-bot-staging/iam/$1
- source: /google/iam/v1/logging/.*-php/(.*)
dest: /owl-bot-staging/iamlogging/$1
- source: /google/logging/type/.*-php/(.*)
dest: /owl-bot-staging/logging/$1
- source: /google/rpc/.*-php/(.*)
dest: /owl-bot-staging/rpc/$1
- source: /google/type/.*-php/(.*)
dest: /owl-bot-staging/type/$1
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

This repository is a home for the [protocol buffer][protobuf] types which are
common dependencies throughout the Google API ecosystem, generated for PHP.
The protobuf definitions for these generated PHP classes are provided in the
[API Common Protos][api-common-protos] repository.
The protobuf definitions for these generated PHP classes are provided by the
[Common Components AIP][common-components-aip] repository.

## Using these generated classes

Expand Down Expand Up @@ -41,6 +41,6 @@ provided the license terms are honored.

[api-style]: https://cloud.google.com/apis/design/
[protobuf]: https://developers.google.com/protocol-buffers/
[api-common-protos]: https://github.com/googleapis/api-common-protos/
[common-components-aip]: https://google.aip.dev/213
[packagist-common-protos]: https://packagist.org/packages/google/common-protos/
[packagist]: https://packagist.org/
62 changes: 0 additions & 62 deletions dev/regenerate.sh

This file was deleted.

80 changes: 80 additions & 0 deletions owlbot.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# Copyright 2022 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.

"""This script is used to synthesize generated parts of this library."""

import logging
from pathlib import Path
import shutil
import subprocess

import os
import synthtool as s
from synthtool.languages import php
from synthtool import _tracked_paths

logging.basicConfig(level=logging.DEBUG)

# (dirname, version)
protos = [
("api", "api"),
("extendedoperations", "cloud"),
("location", "cloud"),
("logging", "google"), # for the metadata
("logging", "cloud"),
("iam", "google"), # for the metadata
("iam", "cloud"),
("iamlogging", "iam"),
("rpc", "rpc"),
("type", "type"),
]

dest = Path().resolve()
for proto in protos:
src = Path(f"{php.STAGING_DIR}/{proto[0]}").resolve()

# Added so that we can pass copy_excludes in the owlbot_main() call
_tracked_paths.add(src)

# use owlbot_copy_version instead of owlbot_main and set "version_string"
# manually because common protos do not have a version
php.owlbot_copy_version(
src=src,
dest=dest,
version_string=proto[1],
copy_excludes=[
src / "**/[A-Z]*_*.php"
],
)

# move metadata to more specific directories (owlbot isnt smart enough to do this)
s.move("metadata/Google/Iam/V1", "metadata/Iam/V1")
s.move("metadata/Google/Logging/Type", "metadata/Logging/Type")

# remove owl-bot-staging dir
if os.path.exists(php.STAGING_DIR):
shutil.rmtree(Path(php.STAGING_DIR))

# remove the metadata/Google files that we copied
if os.path.exists("metadata/Google"):
shutil.rmtree(Path("metadata/Google"))

s.replace(
"src/**/*.php",
r"^// Adding a class alias for backwards compatibility with the previous class name.$"
+ "\n"
+ r"^class_alias\(.*\);$"
+ "\n",
'')

2 changes: 0 additions & 2 deletions src/Api/BackendRule/PathTranslation.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 0 additions & 16 deletions src/Api/BackendRule_PathTranslation.php

This file was deleted.

2 changes: 0 additions & 2 deletions src/Api/Billing/BillingDestination.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 0 additions & 16 deletions src/Api/Billing_BillingDestination.php

This file was deleted.

2 changes: 0 additions & 2 deletions src/Api/Distribution/BucketOptions.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Distribution/BucketOptions/Explicit.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Distribution/BucketOptions/Exponential.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Distribution/BucketOptions/Linear.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Distribution/Exemplar.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Distribution/Range.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 0 additions & 16 deletions src/Api/Distribution_BucketOptions.php

This file was deleted.

16 changes: 0 additions & 16 deletions src/Api/Distribution_BucketOptions_Explicit.php

This file was deleted.

16 changes: 0 additions & 16 deletions src/Api/Distribution_BucketOptions_Exponential.php

This file was deleted.

16 changes: 0 additions & 16 deletions src/Api/Distribution_BucketOptions_Linear.php

This file was deleted.

16 changes: 0 additions & 16 deletions src/Api/Distribution_Exemplar.php

This file was deleted.

16 changes: 0 additions & 16 deletions src/Api/Distribution_Range.php

This file was deleted.

2 changes: 0 additions & 2 deletions src/Api/Expr/V1alpha1/Decl/FunctionDecl.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Expr/V1alpha1/Decl/FunctionDecl/Overload.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions src/Api/Expr/V1alpha1/Decl/IdentDecl.php

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 6d9134d

Please sign in to comment.