Upgraded and created dockerfiles #68
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This update modernizes and enhances the build and runtime environments, improves test reliability, and introduces better flexibility for deployment. Key changes include:
Updated Base Images & Dependencies
Migrated from Debian Buster to Bullseye in Dockerfiles for improved security and support.
Upgraded Erlang, Ruby, and Rebar versions in .tool-versions (Erlang 23.3.4.20, Ruby 3.2.2, Rebar 3.15.2).
Updated package sources in docker/apt/sources.list to match Bullseye.
CI/CD Workflow Improvements
Switched GitHub Actions runners to Ubuntu 22.04.
Updated actions/checkout to v3.
Ensured environment variables are properly loaded for test commands.
Improved test job steps to correctly source ASDF environments.
Docker Enhancements
Refactored main Dockerfile to install all dependencies in a single step for efficiency.
Added multi-stage build for Kubernetes (Dockerfile.k8s) and legacy/AMD64 support (Dockerfile.amd64.legacy).
Improved build environment variables for more reproducible builds.
Switched to runtime-only dependencies for release images.
Added clearer structure and comments.
Configuration Improvements
Made paths and endpoints in config/sys.config configurable via environment variables for easier deployment and containerization.
Cleaned up and clarified structure in config/test.config.
Test and Code Quality
Fixed bugs in test helpers to properly extract EPP data.
Added more robust pattern-matching with better error output in test suites.
Updated Ruby test backend to Ruby 3.2.2 and improved Gemfile.
Enhanced error handling and logging in TLS worker for more robust connection handling.
Documentation
Updated README.md to reflect new Ruby version and provide Docker-based test instructions.