Skip to content

Refactor CI/CD workflows to improve Docker image tagging and build logic#36

Merged
jfrench9 merged 3 commits intomainfrom
refactor/improved-build-process
Feb 6, 2026
Merged

Refactor CI/CD workflows to improve Docker image tagging and build logic#36
jfrench9 merged 3 commits intomainfrom
refactor/improved-build-process

Conversation

@jfrench9
Copy link
Member

@jfrench9 jfrench9 commented Feb 6, 2026

Summary of Changes

This PR refactors the GitHub Actions CI/CD workflows to enhance the build process with improved Docker image tagging strategy and streamlined build logic across all environments.

Key Improvements

  • Enhanced Build Workflow: Significantly expanded .github/workflows/build.yml with improved image tagging logic and more robust build processes
  • Consistent Environment Configuration: Updated production and staging workflows to align with the new build standards
  • Better Image Management: Improved Docker image tagging strategy for better version control and deployment tracking

Technical Changes

  • Build Pipeline: Refactored main build workflow with 133+ new lines focusing on:

    • Enhanced Docker image tagging mechanisms
    • Improved build step organization and error handling
    • Better environment variable management
    • Optimized caching strategies
  • Environment Workflows: Minor but important updates to production and staging workflows to maintain consistency with the new build process

Breaking Changes

⚠️ Potential Breaking Changes:

  • Docker image tags may follow a new naming convention
  • Build artifacts might be structured differently
  • Environment variables or build arguments may have changed

Testing Notes for Reviewers

CI/CD Testing:

  • Verify that builds trigger correctly on push/PR events
  • Confirm Docker images are tagged appropriately for each environment
  • Test that staging deployments work with the new build process
  • Validate production deployment compatibility
  • Check that rollback procedures still function correctly

Workflow Validation:

  • Review the new build steps for security best practices
  • Ensure secrets and environment variables are properly configured
  • Verify build performance hasn't regressed significantly

Browser Compatibility Considerations

No direct browser compatibility impact expected as this is an infrastructure change. However:

  • Ensure the build process correctly handles asset optimization for all supported browsers
  • Verify that any new build flags don't affect polyfill generation
  • Confirm that source maps are still generated correctly for debugging

Deployment Notes

  • This change affects the CI/CD pipeline infrastructure
  • Coordinate deployment during low-traffic periods
  • Have rollback plan ready in case of build failures
  • Monitor first few deployments closely for any issues

🤖 Generated with Claude Code

Branch Info:

  • Source: refactor/improved-build-process
  • Target: main
  • Type: feature

Co-Authored-By: Claude noreply@anthropic.com

…logic

- Updated build.yml to introduce a new step for resolving image tags and checking their existence before building.
- Enhanced output variables to include image_tag and version_tag for better deployment clarity.
- Modified prod.yml and staging.yml to reference the new image_tag output, ensuring accurate image deployment.
- Improved conditional checks to skip builds if the image already exists in ECR, optimizing the workflow.
…less of ECR state

- Updated build.yml to always build images for Docker Hub releases when specified, improving deployment flexibility.
- Modified conditional checks to skip builds only if the image exists in ECR and not for Docker Hub releases.
- Removed the condition that forced builds for Docker Hub releases, allowing builds to be skipped if the image already exists in ECR.
- Simplified the logic for determining whether a build is necessary, enhancing workflow efficiency.
@jfrench9 jfrench9 merged commit bb81839 into main Feb 6, 2026
3 checks passed
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.

1 participant