Skip to content

Commit 7d6d66a

Browse files
authored
feat: Move release note generation to a sub module (#3299)
In this PR: - Separate projects to three modules: common, library_generation and release_note_generation - Add `generate_release_note.py` to separate PR description generation from `entrypoint.py`. - Only install common and library_generation module in image. - Remove PR description comparison in integration test. Example generation workflow in downstream library: https://github.com/googleapis/java-bigtable/actions/runs/11442581326/job/31833887512 Note that `release_note_generation` module still depends on `library_generation` module because we didn't separate config change functions into `common` module. This will be in a follow up PR.
1 parent d5e74d9 commit 7d6d66a

File tree

251 files changed

+961
-824
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

251 files changed

+961
-824
lines changed

.cloudbuild/library_generation/library_generation.Dockerfile

+13-10
Original file line numberDiff line numberDiff line change
@@ -45,19 +45,20 @@ RUN apt-get update && apt-get install -y \
4545
&& apt-get clean
4646

4747
# copy source code
48-
COPY library_generation /src
48+
COPY hermetic_build/common /src/common
49+
COPY hermetic_build/library_generation /src/library_generation
4950

5051
# install protoc
5152
WORKDIR /protoc
52-
RUN source /src/utils/utilities.sh \
53+
RUN source /src/library_generation/utils/utilities.sh \
5354
&& download_protoc "${PROTOC_VERSION}" "${OS_ARCHITECTURE}"
5455
# we indicate protoc is available in the container via env vars
5556
ENV DOCKER_PROTOC_LOCATION=/protoc
5657
ENV DOCKER_PROTOC_VERSION="${PROTOC_VERSION}"
5758

5859
# install grpc
5960
WORKDIR /grpc
60-
RUN source /src/utils/utilities.sh \
61+
RUN source /src/library_generation/utils/utilities.sh \
6162
&& download_grpc_plugin "${GRPC_VERSION}" "${OS_ARCHITECTURE}"
6263
# similar to protoc, we indicate grpc is available in the container via env vars
6364
ENV DOCKER_GRPC_LOCATION="/grpc/protoc-gen-grpc-java-${GRPC_VERSION}-${OS_ARCHITECTURE}.exe"
@@ -71,16 +72,18 @@ ENV DOCKER_GRPC_VERSION="${GRPC_VERSION}"
7172
COPY --from=ggj-build "/sdk-platform-java/gapic-generator-java.jar" "${HOME}/.library_generation/gapic-generator-java.jar"
7273
RUN chmod 755 "${HOME}/.library_generation/gapic-generator-java.jar"
7374

74-
# use python 3.11 (the base image has several python versions; here we define the default one)
75+
# use python 3.12 (the base image has several python versions; here we define the default one)
7576
RUN rm $(which python3)
76-
RUN ln -s $(which python3.11) /usr/local/bin/python
77-
RUN ln -s $(which python3.11) /usr/local/bin/python3
77+
RUN ln -s $(which python3.12) /usr/local/bin/python
78+
RUN ln -s $(which python3.12) /usr/local/bin/python3
7879
RUN python -m pip install --upgrade pip
7980

8081
# install main scripts as a python package
81-
WORKDIR /src
82-
RUN python -m pip install -r requirements.txt
83-
RUN python -m pip install .
82+
WORKDIR /
83+
RUN python -m pip install --require-hashes -r src/common/requirements.txt
84+
RUN python -m pip install src/common
85+
RUN python -m pip install --require-hashes -r src/library_generation/requirements.txt
86+
RUN python -m pip install src/library_generation
8487

8588
# Install nvm with node and npm
8689
ENV NODE_VERSION 20.12.0
@@ -120,4 +123,4 @@ RUN chmod -R a+rw /home
120123
RUN chmod -R a+rx /home/.nvm
121124

122125
WORKDIR /workspace
123-
ENTRYPOINT [ "python", "/src/cli/entry_point.py", "generate" ]
126+
ENTRYPOINT [ "python", "/src/library_generation/cli/entry_point.py", "generate" ]

.github/scripts/action.yaml

+23-1
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,33 @@ inputs:
3737
runs:
3838
using: "composite"
3939
steps:
40+
- uses: actions/setup-python@v5
41+
with:
42+
python-version: 3.12
43+
- name: Copy python script
44+
shell: bash
45+
run: |
46+
set -x
47+
# repository root
48+
cd ${{ github.action_path }}/../../
49+
rsync -rv \
50+
--exclude=tests \
51+
hermetic_build "${GITHUB_WORKSPACE}"
4052
- name: Copy shell script
4153
shell: bash
4254
run: |
4355
cd ${{ github.action_path }}
44-
cp hermetic_library_generation.sh $GITHUB_WORKSPACE
56+
cp hermetic_library_generation.sh "${GITHUB_WORKSPACE}"
57+
- name: Install python packages
58+
shell: bash
59+
run: |
60+
cd "${GITHUB_WORKSPACE}"
61+
pip install --require-hashes -r hermetic_build/common/requirements.txt
62+
pip install hermetic_build/common
63+
pip install --require-hashes -r hermetic_build/library_generation/requirements.txt
64+
pip install hermetic_build/library_generation
65+
pip install --require-hashes -r hermetic_build/release_note_generation/requirements.txt
66+
pip install hermetic_build/release_note_generation
4567
- name: Generate changed libraries
4668
shell: bash
4769
run: |

.github/scripts/hermetic_library_generation.sh

+5-1
Original file line numberDiff line numberDiff line change
@@ -106,12 +106,16 @@ docker run \
106106
--current-generation-config-path="${workspace_name}/${generation_config}" \
107107
--api-definitions-path="${workspace_name}/googleapis"
108108

109+
python hermetic_build/release_note_generation/cli/generate_release_note.py generate \
110+
--baseline-generation-config-path="${baseline_generation_config}" \
111+
--current-generation-config-path="${generation_config}"
112+
109113
# remove api definitions after generation
110114
rm -rf "${api_def_dir}"
111115

112116
# commit the change to the pull request.
113117
rm -rdf output googleapis "${baseline_generation_config}"
114-
git add --all -- ':!pr_description.txt' ':!hermetic_library_generation.sh'
118+
git add --all -- ':!pr_description.txt' ':!hermetic_library_generation.sh' ':!hermetic_build'
115119
changed_files=$(git diff --cached --name-only)
116120
if [[ "${changed_files}" != "" ]]; then
117121
echo "Commit changes..."

.github/workflows/verify_library_generation.yaml

+32-33
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
git checkout -b "${head_ref}" fork/${head_ref}
2828
changed_directories="$(git diff --name-only "fork/${head_ref}" "origin/${base_ref}")"
2929
fi
30-
if [[ ${changed_directories} =~ "library_generation/" ]]; then
30+
if [[ ${changed_directories} =~ "hermetic_build/" ]]; then
3131
echo "should_run=true" >> $GITHUB_OUTPUT
3232
else
3333
echo "should_run=false" >> $GITHUB_OUTPUT
@@ -46,32 +46,21 @@ jobs:
4646
- uses: actions/checkout@v4
4747
- uses: actions/setup-python@v5
4848
with:
49-
python-version: 3.11
50-
- name: install pyenv
49+
python-version: 3.12
50+
- name: install python modules and dependencies
5151
shell: bash
5252
run: |
5353
set -ex
54-
curl https://pyenv.run | bash
55-
# setup environment
56-
export PYENV_ROOT="$HOME/.pyenv"
57-
export PATH="$PYENV_ROOT/bin:$PATH"
58-
echo "PYENV_ROOT=${PYENV_ROOT}" >> $GITHUB_ENV
59-
echo "PATH=${PATH}" >> $GITHUB_ENV
60-
61-
set +ex
62-
- name: install python dependencies
63-
shell: bash
64-
run: |
65-
set -ex
66-
pushd library_generation
67-
pip install -r requirements.txt
68-
pip install .
69-
popd
54+
pip install --upgrade pip
55+
pip install --require-hashes -r hermetic_build/common/requirements.txt
56+
pip install hermetic_build/common
57+
pip install --require-hashes -r hermetic_build/library_generation/requirements.txt
58+
pip install hermetic_build/library_generation
7059
- name: Run integration tests
7160
shell: bash
7261
run: |
7362
set -x
74-
python -m unittest library_generation/test/integration_tests.py
63+
python -m unittest hermetic_build/library_generation/tests/integration_tests.py
7564
library-generation-unit-tests:
7665
runs-on: ubuntu-22.04
7766
needs: should-run-library-generation-tests
@@ -80,23 +69,26 @@ jobs:
8069
- uses: actions/checkout@v4
8170
- uses: actions/setup-python@v5
8271
with:
83-
python-version: 3.11
84-
- name: install python dependencies
72+
python-version: 3.12
73+
- name: install python modules and dependencies
8574
shell: bash
8675
run: |
8776
set -ex
88-
pushd library_generation
89-
pip install -r requirements.txt
90-
pip install .
91-
popd
77+
pip install --upgrade pip
78+
pip install --require-hashes -r hermetic_build/common/requirements.txt
79+
pip install hermetic_build/common
80+
pip install --require-hashes -r hermetic_build/library_generation/requirements.txt
81+
pip install hermetic_build/library_generation
82+
pip install --require-hashes -r hermetic_build/release_note_generation/requirements.txt
83+
pip install hermetic_build/release_note_generation
9284
- name: Run shell unit tests
9385
run: |
9486
set -x
95-
library_generation/test/generate_library_unit_tests.sh
87+
hermetic_build/library_generation/tests/generate_library_unit_tests.sh
9688
- name: Run python unit tests
9789
run: |
9890
set -x
99-
python -m unittest discover -s library_generation/test/ -p "*unit_tests.py"
91+
python -m unittest discover -s hermetic_build -p "*unit_tests.py"
10092
library-generation-lint-shell:
10193
runs-on: ubuntu-22.04
10294
needs: should-run-library-generation-tests
@@ -106,7 +98,7 @@ jobs:
10698
- name: Run ShellCheck
10799
uses: ludeeus/[email protected]
108100
with:
109-
scandir: 'library_generation'
101+
scandir: 'hermetic_build'
110102
format: tty
111103
severity: error
112104
library-generation-lint-python:
@@ -115,16 +107,23 @@ jobs:
115107
if: needs.should-run-library-generation-tests.outputs.should_run == 'true'
116108
steps:
117109
- uses: actions/checkout@v4
110+
- uses: actions/setup-python@v5
111+
with:
112+
python-version: 3.12
118113
- name: install python dependencies
119114
shell: bash
120115
run: |
121116
set -ex
122-
pushd library_generation
123-
pip install -r requirements.txt
124-
popd
117+
pip install --upgrade pip
118+
pip install --require-hashes -r hermetic_build/common/requirements.txt
119+
pip install hermetic_build/common
120+
pip install --require-hashes -r hermetic_build/library_generation/requirements.txt
121+
pip install hermetic_build/library_generation
122+
pip install --require-hashes -r hermetic_build/release_note_generation/requirements.txt
123+
pip install hermetic_build/release_note_generation
125124
- name: Lint
126125
shell: bash
127126
run: |
128127
# exclude generated golden files
129128
# exclude owlbot until further refaction
130-
black --check library_generation --exclude "(library_generation/test/resources/goldens)"
129+
black --check hermetic_build --exclude "(library_generation/tests/resources/goldens)"
File renamed without changes.

library_generation/model/generation_config.py hermetic_build/common/model/generation_config.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
import yaml
1818
from typing import Optional
19-
from library_generation.model.library_config import LibraryConfig
20-
from library_generation.model.gapic_config import GapicConfig
19+
from common.model.library_config import LibraryConfig
20+
from common.model.gapic_config import GapicConfig
2121

2222
REPO_LEVEL_PARAMETER = "Repo level parameter"
2323
LIBRARY_LEVEL_PARAMETER = "Library level parameter"

library_generation/model/library_config.py hermetic_build/common/model/library_config.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
# limitations under the License.
1515
from hashlib import sha256
1616
from typing import Optional
17-
from library_generation.model.gapic_config import GapicConfig
18-
from library_generation.model.gapic_inputs import GapicInputs
17+
from common.model.gapic_config import GapicConfig
18+
from common.model.gapic_inputs import GapicInputs
1919

2020

2121
MAVEN_COORDINATE_SEPARATOR = ":"

hermetic_build/common/requirements.in

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
black==24.8.0
2+
parameterized==0.9.0
3+
PyYAML==6.0.2
+109
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
#
2+
# This file is autogenerated by pip-compile with Python 3.12
3+
# by the following command:
4+
#
5+
# pip-compile --generate-hashes hermetic_build/common/requirements.in
6+
#
7+
black==24.8.0 \
8+
--hash=sha256:09cdeb74d494ec023ded657f7092ba518e8cf78fa8386155e4a03fdcc44679e6 \
9+
--hash=sha256:1f13f7f386f86f8121d76599114bb8c17b69d962137fc70efe56137727c7047e \
10+
--hash=sha256:2500945420b6784c38b9ee885af039f5e7471ef284ab03fa35ecdde4688cd83f \
11+
--hash=sha256:2b59b250fdba5f9a9cd9d0ece6e6d993d91ce877d121d161e4698af3eb9c1018 \
12+
--hash=sha256:3c4285573d4897a7610054af5a890bde7c65cb466040c5f0c8b732812d7f0e5e \
13+
--hash=sha256:505289f17ceda596658ae81b61ebbe2d9b25aa78067035184ed0a9d855d18afd \
14+
--hash=sha256:62e8730977f0b77998029da7971fa896ceefa2c4c4933fcd593fa599ecbf97a4 \
15+
--hash=sha256:649f6d84ccbae73ab767e206772cc2d7a393a001070a4c814a546afd0d423aed \
16+
--hash=sha256:6e55d30d44bed36593c3163b9bc63bf58b3b30e4611e4d88a0c3c239930ed5b2 \
17+
--hash=sha256:707a1ca89221bc8a1a64fb5e15ef39cd755633daa672a9db7498d1c19de66a42 \
18+
--hash=sha256:72901b4913cbac8972ad911dc4098d5753704d1f3c56e44ae8dce99eecb0e3af \
19+
--hash=sha256:73bbf84ed136e45d451a260c6b73ed674652f90a2b3211d6a35e78054563a9bb \
20+
--hash=sha256:7c046c1d1eeb7aea9335da62472481d3bbf3fd986e093cffd35f4385c94ae368 \
21+
--hash=sha256:81c6742da39f33b08e791da38410f32e27d632260e599df7245cccee2064afeb \
22+
--hash=sha256:837fd281f1908d0076844bc2b801ad2d369c78c45cf800cad7b61686051041af \
23+
--hash=sha256:972085c618ee94f402da1af548a4f218c754ea7e5dc70acb168bfaca4c2542ed \
24+
--hash=sha256:9e84e33b37be070ba135176c123ae52a51f82306def9f7d063ee302ecab2cf47 \
25+
--hash=sha256:b19c9ad992c7883ad84c9b22aaa73562a16b819c1d8db7a1a1a49fb7ec13c7d2 \
26+
--hash=sha256:d6417535d99c37cee4091a2f24eb2b6d5ec42b144d50f1f2e436d9fe1916fe1a \
27+
--hash=sha256:eab4dd44ce80dea27dc69db40dab62d4ca96112f87996bca68cd75639aeb2e4c \
28+
--hash=sha256:f490dbd59680d809ca31efdae20e634f3fae27fba3ce0ba3208333b713bc3920 \
29+
--hash=sha256:fb6e2c0b86bbd43dee042e48059c9ad7830abd5c94b0bc518c0eeec57c3eddc1
30+
# via -r hermetic_build/common/requirements.in
31+
click==8.1.7 \
32+
--hash=sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28 \
33+
--hash=sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de
34+
# via black
35+
mypy-extensions==1.0.0 \
36+
--hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d \
37+
--hash=sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782
38+
# via black
39+
packaging==24.1 \
40+
--hash=sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002 \
41+
--hash=sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124
42+
# via black
43+
parameterized==0.9.0 \
44+
--hash=sha256:4e0758e3d41bea3bbd05ec14fc2c24736723f243b28d702081aef438c9372b1b \
45+
--hash=sha256:7fc905272cefa4f364c1a3429cbbe9c0f98b793988efb5bf90aac80f08db09b1
46+
# via -r hermetic_build/common/requirements.in
47+
pathspec==0.12.1 \
48+
--hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 \
49+
--hash=sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712
50+
# via black
51+
platformdirs==4.3.6 \
52+
--hash=sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907 \
53+
--hash=sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb
54+
# via black
55+
pyyaml==6.0.2 \
56+
--hash=sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff \
57+
--hash=sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48 \
58+
--hash=sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086 \
59+
--hash=sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e \
60+
--hash=sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133 \
61+
--hash=sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5 \
62+
--hash=sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484 \
63+
--hash=sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee \
64+
--hash=sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5 \
65+
--hash=sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68 \
66+
--hash=sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a \
67+
--hash=sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf \
68+
--hash=sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99 \
69+
--hash=sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8 \
70+
--hash=sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85 \
71+
--hash=sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19 \
72+
--hash=sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc \
73+
--hash=sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a \
74+
--hash=sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1 \
75+
--hash=sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317 \
76+
--hash=sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c \
77+
--hash=sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631 \
78+
--hash=sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d \
79+
--hash=sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652 \
80+
--hash=sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5 \
81+
--hash=sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e \
82+
--hash=sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b \
83+
--hash=sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8 \
84+
--hash=sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476 \
85+
--hash=sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706 \
86+
--hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 \
87+
--hash=sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237 \
88+
--hash=sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b \
89+
--hash=sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083 \
90+
--hash=sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180 \
91+
--hash=sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425 \
92+
--hash=sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e \
93+
--hash=sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f \
94+
--hash=sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725 \
95+
--hash=sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183 \
96+
--hash=sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab \
97+
--hash=sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774 \
98+
--hash=sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725 \
99+
--hash=sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e \
100+
--hash=sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5 \
101+
--hash=sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d \
102+
--hash=sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290 \
103+
--hash=sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44 \
104+
--hash=sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed \
105+
--hash=sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4 \
106+
--hash=sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba \
107+
--hash=sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12 \
108+
--hash=sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4
109+
# via -r hermetic_build/common/requirements.in

hermetic_build/common/setup.py

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
"""
2+
Package information of library_generation python scripts
3+
"""
4+
5+
from setuptools import setup
6+
7+
setup(
8+
name="common",
9+
version="0.1",
10+
python_requires=">=3.12",
11+
package_dir={
12+
"common": ".",
13+
},
14+
)
File renamed without changes.

library_generation/test/model/gapic_config_unit_tests.py hermetic_build/common/tests/model/gapic_config_unit_tests.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
# limitations under the License.
1414
import unittest
1515

16-
from library_generation.model.gapic_config import GapicConfig
16+
from common.model.gapic_config import GapicConfig
1717

1818

1919
class GapicConfigTest(unittest.TestCase):

library_generation/test/model/gapic_inputs_unit_tests.py hermetic_build/common/tests/model/gapic_inputs_unit_tests.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from pathlib import Path
44

55
from parameterized import parameterized
6-
from library_generation.model.gapic_inputs import parse
6+
from common.model.gapic_inputs import parse
77

88
script_dir = os.path.dirname(os.path.realpath(__file__))
99
resources_dir = os.path.join(script_dir, "..", "resources")

0 commit comments

Comments
 (0)