Skip to content

chore(python): add pip lock file for reproducible builds#401

Open
nnadar12 wants to merge 1 commit intomicrosoft:mainfrom
nnadar12:chore/pip-lock-file
Open

chore(python): add pip lock file for reproducible builds#401
nnadar12 wants to merge 1 commit intomicrosoft:mainfrom
nnadar12:chore/pip-lock-file

Conversation

@nnadar12
Copy link
Copy Markdown

Description

This PR adds a hash-pinned requirements.lock file for reproducible Python dependency installation, satisfying the OSSF Silver Badge build_repeatable requirement.

Changes Made

  • Generate requirements.lock with uv pip compile --generate-hashes
  • Update CI/CD workflows to use lock file instead of requirements.txt:
    • .github/workflows/aio-version-checker.yml
    • .github/workflows/security-deployment.yml
    • .github/workflows/security-comprehensive.yml
    • .azdo/templates/aio-version-checker-template.yml
  • Update dev container configurations:
    • .devcontainer/devcontainer.json
    • .devcontainer/beads/devcontainer.json
  • Document lock file regeneration in CONTRIBUTING.md
  • Update troubleshooting guide in docs/build-cicd/troubleshooting-builds.md
  • Update scripts README for pip dependency installation

Validation Completed

✅ Markdown linting: 0 errors
✅ Spell checking: 0 issues (608 files)
✅ YAML validation: All workflows valid
✅ JSON validation: Dev containers valid
✅ Conventional Commits format verified

Issue Linkage

Fixes #167

Testing

To regenerate the lock file in future updates:

uv pip compile --generate-hashes requirements.txt -o requirements.lock

- Generate requirements.lock with uv pip compile --generate-hashes
- Update CI/CD workflows to use lock file for reproducible builds
- Update dev container configurations to use lock file
- Document lock file regeneration process in CONTRIBUTING.md
- Satisfies OSSF Silver Badge build_repeatable criterion

Fixes microsoft#167
@nnadar12 nnadar12 requested a review from a team as a code owner April 17, 2026 23:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(python): add pip lock files for reproducible builds

1 participant