Skip to content

Commit 5a404a8

Browse files
authored
fix: update owlbot configs to copy generated samples (#8790)
* fix: update owlbot configs to copy generated samples * manual fix for accesscontextmanager * merge owlbot config scripts * update exceptional grafeas config * invert grep in script * fix: update owlbot configs to copy generated samples * manual fix for accesscontextmanager * merge owlbot config scripts * update exceptional grafeas config * invert grep in script * edits to script and new routing yaml * update three more Owlbot yaml files * remove .bak generated files * adding test to run templated owlbot yaml check * add check script * update set_owlbot_config.sh to loop directly in itself * update merge_repository.sh for updated set_owlbot_config
1 parent 5791465 commit 5a404a8

64 files changed

Lines changed: 236 additions & 14 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.

.github/workflows/generated_files_sync.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,17 @@ jobs:
5959
- name: Fail if there's any difference
6060
run: git --no-pager diff --exit-code
6161

62+
owlbot-yaml:
63+
# Each module's .Owlbot.yaml config is configured according to set_owlbot_config.sh
64+
runs-on: ubuntu-latest
65+
steps:
66+
- uses: actions/checkout@v3
67+
- name: Check if .Owlbot.yaml files are correctly configured
68+
run: |
69+
bash generation/set_owlbot_config.sh
70+
- name: Fail if there's any difference
71+
run: git --no-pager diff --exit-code
72+
6273
gitignore_correctness:
6374
# Generated files should not match .gitignore
6475
runs-on: ubuntu-latest

generation/merge_repository.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,8 @@ git add --all
118118
git commit -am 'chore: remove and disable owlbot postprocessor templates' \
119119
--allow-empty
120120

121-
for F in `find . -maxdepth 2 -name '.OwlBot.yaml'`; do sh ../../set_owlbot_config.sh $F; done
121+
../../set_owlbot_config.sh
122+
122123
git commit -am 'chore: set owlbot copy config' --allow-empty
123124

124125
# create a monorepo/diff repo

generation/new_client/templates/owlbot.yaml.monorepo.j2

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ deep-remove-regex:
1717
- "/{{ module_name }}/grpc-google-.*/src"
1818
- "/{{ module_name }}/proto-google-.*/src"
1919
- "/{{ module_name }}/google-.*/src"
20+
- "/{{ module_name }}/samples/snippets/generated"
2021

2122
deep-preserve-regex:
2223
- "/{{ module_name }}/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
@@ -28,6 +29,8 @@ deep-copy-regex:
2829
dest: "/owl-bot-staging/{{ module_name }}/$1/grpc-{{ artifact_name }}-$1/src"
2930
- source: "/{{ proto_path }}/(v.*)/.*-java/gapic-google-.*/src"
3031
dest: "/owl-bot-staging/{{ module_name }}/$1/{{ artifact_name }}/src"
32+
- source: "/{{ proto_path }}/(v.*)/.*-java/samples/snippets/generated"
33+
dest: "/owl-bot-staging/{{ module_name }}/$1/samples/snippets/generated"
3134
{% endif %}
3235

3336
api-name: {{ module_name }}

generation/set_owlbot_config.sh

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,11 @@
1010
#
1111
# To apply the change to all OwlBot configuration files in all modules:
1212
# $ for F in `find . -maxdepth 2 -name '.OwlBot.yaml'`; do sh generation/set_owlbot_config.sh $F; done
13-
OWLBOT_FILE=$1
13+
14+
for F in `find . -maxdepth 2 -name '.OwlBot.yaml'`;
15+
do
16+
17+
OWLBOT_FILE=$F
1418

1519
if [ -z "${OWLBOT_FILE}" ]; then
1620
echo "Please specify file name"
@@ -42,3 +46,34 @@ sed -i.bak "s|\"/samples|\"/${module_name}/samples|" "${OWLBOT_FILE}" && rm "${O
4246
if grep --quiet 'owl-bot-staging/$1' "${OWLBOT_FILE}"; then
4347
sed -i.bak "s|owl-bot-staging|owl-bot-staging/${module_name}|" "${OWLBOT_FILE}" && rm "${OWLBOT_FILE}".bak
4448
fi
49+
50+
# This section is specifically around the generated snippet directories
51+
# If snippets are already being copied, skip
52+
if ! grep -q samples/snippets/generated ${OWLBOT_FILE}; then
53+
# Insert into `deep-remove-regex:` section
54+
deep_remove_regex="- \"\/${module_name}\/samples\/snippets\/generated\""
55+
entry_before_deep_remove_regex="${module_name}\/google-.*\/src"
56+
sed -i.bak "/${entry_before_deep_remove_regex}/a ${deep_remove_regex}" ${OWLBOT_FILE} && rm "${OWLBOT_FILE}".bak
57+
58+
59+
# Insert into `deep-copy-regex:` section
60+
proto_path=$(grep -oPm1 '(?<=source: ").*(?=\(v.*\))' "${OWLBOT_FILE}")
61+
deep_copy_regex="- source: \"${proto_path}(v.*)/.*-java/samples/snippets/generated\"\n dest: \"/owl-bot-staging/${module_name}/\$1/samples/snippets/generated\""
62+
63+
entry_before_deep_copy_regex="dest: \"\/owl-bot-staging\/${module_name}\/\$1\/google-"
64+
65+
# echo ${proto_path}
66+
sed -i.bak "/${entry_before_deep_copy_regex}/a ${deep_copy_regex}" ${OWLBOT_FILE} && rm "${OWLBOT_FILE}".bak
67+
68+
# Remove duplicate lines
69+
perl -i -ne 'if ( /^\s*#/ ) { print } else { print if ! $SEEN{$_}++}' ${OWLBOT_FILE}
70+
71+
# Add back new lines between sections
72+
sed -i.bak 's/deep-copy-regex/\n&/g' ${OWLBOT_FILE} && rm "${OWLBOT_FILE}".bak
73+
sed -i.bak 's/deep-remove-regex/\n&/g' ${OWLBOT_FILE} && rm "${OWLBOT_FILE}".bak
74+
sed -i.bak 's/deep-preserve-regex/\n&/g' ${OWLBOT_FILE} && rm "${OWLBOT_FILE}".bak
75+
sed -i.bak 's/api-name/\n&/g' ${OWLBOT_FILE} && rm "${OWLBOT_FILE}".bak
76+
77+
fi
78+
79+
done

java-accesscontextmanager/.OwlBot.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
deep-remove-regex:
1717
- "/java-accesscontextmanager/proto-google-.*/src"
18+
- "/java-accesscontextmanager/samples/snippets/generated"
1819

1920
deep-preserve-regex:
2021
- "/java-accesscontextmanager/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
@@ -26,6 +27,8 @@ deep-copy-regex:
2627
dest: "/owl-bot-staging/java-accesscontextmanager/$1/grpc-google-identity-accesscontextmanager-$1/src"
2728
- source: "/google/identity/accesscontextmanager/(v\\d)/.*-java/gapic-google-.*/src"
2829
dest: "/owl-bot-staging/java-accesscontextmanager/$1/google-identity-accesscontextmanager/src"
30+
- source: "/google/identity/accesscontextmanager/(v.*)/.*-java/samples/snippets/generated"
31+
dest: "/owl-bot-staging/java-accesscontextmanager/$1/samples/snippets/generated"
2932
- source: "/google/identity/accesscontextmanager/type/.*-java/proto-google-.*/src"
3033
dest: "/owl-bot-staging/java-accesscontextmanager/type/proto-google-identity-accesscontextmanager-type/src"
3134

java-aiplatform/.OwlBot.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ deep-remove-regex:
1717
- "/java-aiplatform/grpc-google-.*/src"
1818
- "/java-aiplatform/proto-google-.*/src"
1919
- "/java-aiplatform/google-.*/src/main/java/com/google/cloud/aiplatform/v1"
20+
- "/java-aiplatform/samples/snippets/generated"
2021
- "/java-aiplatform/google-.*/src/main/java/com/google/cloud/aiplatform/v1beta1"
2122

2223
deep-copy-regex:
@@ -26,5 +27,7 @@ deep-copy-regex:
2627
dest: "/owl-bot-staging/java-aiplatform/$1/grpc-google-cloud-aiplatform-$1/src"
2728
- source: "/google/cloud/aiplatform/(v.*)/.*-java/gapic-google-.*/src"
2829
dest: "/owl-bot-staging/java-aiplatform/$1/google-cloud-aiplatform/src"
30+
- source: "/google/cloud/aiplatform/(v.*)/.*-java/samples/snippets/generated"
31+
dest: "/owl-bot-staging/java-aiplatform/$1/samples/snippets/generated"
2932

3033
api-name: aiplatform

java-analytics-admin/.OwlBot.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ deep-remove-regex:
1717
- "/java-analytics-admin/grpc-google-.*/src"
1818
- "/java-analytics-admin/proto-google-.*/src"
1919
- "/java-analytics-admin/google-.*/src"
20+
- "/java-analytics-admin/samples/snippets/generated"
2021

2122
deep-copy-regex:
2223
- source: "/google/analytics/admin/(v.*)/.*-java/proto-google-.*/src"
@@ -25,5 +26,7 @@ deep-copy-regex:
2526
dest: "/owl-bot-staging/java-analytics-admin/$1/grpc-google-analytics-admin-$1/src"
2627
- source: "/google/analytics/admin/(v.*)/.*-java/gapic-google-.*/src"
2728
dest: "/owl-bot-staging/java-analytics-admin/$1/google-analytics-admin/src"
29+
- source: "/google/analytics/admin/(v.*)/.*-java/samples/snippets/generated"
30+
dest: "/owl-bot-staging/java-analytics-admin/$1/samples/snippets/generated"
2831

2932
api-name: analyticsadmin

java-analytics-data/.OwlBot.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ deep-remove-regex:
1717
- "/java-analytics-data/grpc-google-.*/src"
1818
- "/java-analytics-data/proto-google-.*/src"
1919
- "/java-analytics-data/google-.*/src"
20+
- "/java-analytics-data/samples/snippets/generated"
2021

2122
deep-copy-regex:
2223
- source: "/google/analytics/data/(v.*)/.*-java/proto-google-.*/src"
@@ -25,5 +26,7 @@ deep-copy-regex:
2526
dest: "/owl-bot-staging/java-analytics-data/$1/grpc-google-analytics-data-$1/src"
2627
- source: "/google/analytics/data/(v.*)/.*-java/gapic-google-.*/src"
2728
dest: "/owl-bot-staging/java-analytics-data/$1/google-analytics-data/src"
29+
- source: "/google/analytics/data/(v.*)/.*-java/samples/snippets/generated"
30+
dest: "/owl-bot-staging/java-analytics-data/$1/samples/snippets/generated"
2831

2932
api-name: analyticsdata

java-analyticshub/.OwlBot.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515

16-
1716
deep-remove-regex:
1817
- "/java-analyticshub/grpc-google-.*/src"
1918
- "/java-analyticshub/proto-google-.*/src"
2019
- "/java-analyticshub/google-.*/src"
20+
- "/java-analyticshub/samples/snippets/generated"
2121

2222
deep-preserve-regex:
2323
- "/java-analyticshub/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
@@ -29,5 +29,7 @@ deep-copy-regex:
2929
dest: "/owl-bot-staging/java-analyticshub/$1/grpc-google-cloud-analyticshub-$1/src"
3030
- source: "/google/cloud/bigquery/analyticshub/(v.*)/.*-java/gapic-google-.*/src"
3131
dest: "/owl-bot-staging/java-analyticshub/$1/google-cloud-analyticshub/src"
32+
- source: "/google/cloud/bigquery/analyticshub/(v.*)/.*-java/samples/snippets/generated"
33+
dest: "/owl-bot-staging/java-analyticshub/$1/samples/snippets/generated"
3234

3335
api-name: analyticshub

java-apikeys/.OwlBot.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ deep-remove-regex:
1717
- "/java-apikeys/grpc-google-.*/src"
1818
- "/java-apikeys/proto-google-.*/src"
1919
- "/java-apikeys/google-.*/src"
20+
- "/java-apikeys/samples/snippets/generated"
2021

2122
deep-preserve-regex:
2223
- "/java-apikeys/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
@@ -28,5 +29,7 @@ deep-copy-regex:
2829
dest: "/owl-bot-staging/java-apikeys/$1/grpc-google-cloud-apikeys-$1/src"
2930
- source: "/google/api/apikeys/(v.*)/.*-java/gapic-google-.*/src"
3031
dest: "/owl-bot-staging/java-apikeys/$1/google-cloud-apikeys/src"
32+
- source: "/google/api/apikeys/(v.*)/.*-java/samples/snippets/generated"
33+
dest: "/owl-bot-staging/java-apikeys/$1/samples/snippets/generated"
3134

3235
api-name: apikeys

0 commit comments

Comments
 (0)