Name Date Size #Lines LOC

..--

synthtool/H25-Apr-2025-9,8297,320

DockerfileH A D25-Apr-20252 KiB6050

README.mdH A D25-Apr-20251.4 KiB4028

cloudbuild.yamlH A D25-Apr-2025789 1814

main.shH A D25-Apr-2025122 126

requirements.inH A D25-Apr-2025165 1211

requirements.txtH A D25-Apr-202521.5 KiB288287

README.md

1# Docker container for Owl Bot Postprocessor
2
3This container runs when Owl Bot Postprocessor runs on this google-cloud-java
4monorepo. The Cloud Build in the repo-automation-bots GCP project publishes
5`gcr.io/cloud-devrel-public-resources/owlbot-java-monorepo` image.
6
7Note that the split repositories (such as [googleapis/java-bigquery](
8https://github.com/googleapis/java-bigquery)) continue to use the
9`gcr.io/cloud-devrel-public-resources/owlbot-java` image, maintained in
10[googleapis/synthtool](
11https://github.com/googleapis/synthtool/tree/master/docker/owlbot/java)
12repository.
13
14This separation allows us to focus on monorepo-specific postprocessor logic in
15this `owlbot-java-monorepo` image, without interfering the split repositories.
16
17# Principles
18
19## Thin Container
20This docker container is "thin", meaning that we do not install the
21postprocessor logic into the container. Rather, the container executes scripts
22that live in the repository.
23
24This design allows us the template logic changes and affected file changes
25within one pull request. No need to rebuild the postprocessor image.
26
27## Secure by Cloud Build
28
29Executing the scripts within the container in Owl Bot's Cloud Build environment
30ensures the secure runtime that only allows access to the repository
31(no access to credentials).
32
33# How to Build
34
35You can build the container locally:
36
37```
38~/google-cloud-java$ docker build -f owl-bot-postprocessor/Dockerfile owl-bot-postprocessor
39```
40