Skip to content

Commit 4e96aff

Browse files
zkoppertCopilot
andauthored
fix: harden pip install against supply chain attacks (#490)
- Expand requirements.txt via pip-compile to pin all transitive dependencies - Add --no-deps to Dockerfile pip install to prevent runtime dep resolution Resolves pip-install-no-hash-check security alert. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent e35c3f4 commit 4e96aff

2 files changed

Lines changed: 32 additions & 4 deletions

File tree

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ LABEL org.opencontainers.image.source https://github.com/github-community-projec
77
WORKDIR /action/workspace
88
COPY requirements.txt *.py /action/workspace/
99

10-
RUN python3 -m pip install --no-cache-dir -r requirements.txt \
10+
RUN python3 -m pip install --no-cache-dir --no-deps -r requirements.txt \
1111
&& apt-get -y update \
1212
&& apt-get -y install --no-install-recommends git=1:2.47.3-0+deb13u1 \
1313
&& rm -rf /var/lib/apt/lists/*

requirements.txt

Lines changed: 31 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,32 @@
1-
github3.py==4.0.1
2-
requests==2.32.5
1+
certifi==2026.2.25
2+
# via requests
3+
cffi==2.0.0
4+
# via cryptography
5+
charset-normalizer==3.4.4
6+
# via requests
7+
cryptography==46.0.5
8+
# via pyjwt
9+
github3-py==4.0.1
10+
# via -r requirements.txt
11+
idna==3.11
12+
# via requests
13+
pycparser==3.0
14+
# via cffi
15+
pyjwt==2.11.0
16+
# via github3-py
17+
python-dateutil==2.9.0.post0
18+
# via github3-py
319
python-dotenv==1.2.1
4-
ruamel.yaml==0.19.1
20+
# via -r requirements.txt
21+
requests==2.32.5
22+
# via
23+
# -r requirements.txt
24+
# github3-py
25+
ruamel-yaml==0.19.1
26+
# via -r requirements.txt
27+
six==1.17.0
28+
# via python-dateutil
29+
uritemplate==4.2.0
30+
# via github3-py
31+
urllib3==2.6.3
32+
# via requests

0 commit comments

Comments
 (0)