Skip to content

Conversation

@tyagian
Copy link
Contributor

@tyagian tyagian commented May 4, 2025

Updates to .github/workflows/main.yml
The main workflow file has been enhanced with several significant improvements:

  1. Structured Multi-job Pipeline: Reorganized into three sequential jobs (test → build → release) with proper dependencies.
  2. Automated Version Tagging: Added automatic incremental versioning (v0.01, v0.02, etc.) on every merge to main.
  3. Testing Integration: Added Python testing setup with pytest before the build stage.
  4. Enhanced Docker Build: Replaced manual Docker commands with official Docker GitHub Actions for better caching and efficiency.
  5. Security Scanning: Added code scanning with Snyk and container scanning with Trivy.
  6. Release Automation: Added automatic GitHub release creation with:
  • Generated changelog from commit messages
  • Proper tagging
  • Links to Docker images
  1. Better Permissions Management: Explicitly defined GitHub token permissions for each job.

New File: .github/workflows/pr-checks.yml

This new workflow file runs whenever a pull request is opened or updated, with the following checks:

  1. Code Linting:
  • Uses Black for code formatting verification
  • Uses Flake8 for Python syntax and style checking
  1. Comprehensive Testing:
  • Runs all tests with pytest
  • Generates code coverage reports
  • Uploads coverage to Codecov for tracking
  1. Docker Build Verification:
  2. Ensures Dockerfile can build successfully
  3. Verifies the resulting image runs correctly

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.

2 participants