Skip to content

Code Improvement for Docker and k8s#16

Open
lkevenson wants to merge 34 commits intofeat/ci-cdfrom
main
Open

Code Improvement for Docker and k8s#16
lkevenson wants to merge 34 commits intofeat/ci-cdfrom
main

Conversation

@lkevenson
Copy link
Copy Markdown
Owner

PR Checklist

Please check if your PR fulfills the following requirements:

  • The commit message follows our guidelines: Spring Petclinic Commit Message Guidelines
  • All tests are passing (unit, integration, and end-to-end tests where applicable).
  • Tests for the changes have been added (for bug fixes / features).
  • Docs have been added / updated (for bug fixes / features).
  • Code coverage is sufficient, or additional tests have been added to cover new changes.
  • No linting or formatting issues.
  • Code adheres to the project's style guide and best practices.
  • Any necessary dependencies have been updated.

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no API changes)
  • Build related changes
  • CI related changes
  • Other... Please describe:

What is the current behavior?

Issue Number: N/A


What is the new behavior?


Does this PR introduce a breaking change?

  • Yes
  • No

Other information

@lkevenson lkevenson added the enhancement New feature or request label Apr 3, 2025
@lkevenson lkevenson self-assigned this Apr 3, 2025
lkevenson added 14 commits April 3, 2025 03:45
- Migrate from deprecated actions/upload-artifact@v3 to @v4
- Update actions/setup-java and actions/cache to v4
- Add explicit Minikube and MySQL client installation
- Fix output setting syntax for GITHUB_OUTPUT
- Specify ubuntu-24.04 runner explicitly
- Fix 'source' command syntax for minikube docker-env
- Add explicit Docker installation before Minikube
- Include proper environment setup for Minikube context
- Add error handling for Minikube initialization
- Update Minikube version to 1.35.0

Error resolved:
* Fixed 'source: usage: source filename [arguments]' error
* Ensures proper Docker environment configuration
* Prevents exit code 2 during Minikube setup
- Remove existing containerd before installing docker.io
- Add explicit containerd.io installation
- Clean up package cache before installation
- Add error handling for package installation
- Remove problematic docker-buildx-plugin installation
- Simplify to only essential packages (docker.io, conntrack, curl)
- Clean up redundant dependency cleanup steps
- Maintain core Minikube deployment functionality
- Add || true for non-critical usermod command

The buildx plugin isn't required for basic Minikube deployments.
This change resolves the package installation errors while keeping
all necessary functionality for the Spring PetClinic deployment.
- Keep docker.io, conntrack, and curl installation (critical for Minikube)
- Add containerd conflict resolution
- Add Docker version check for validation
- Skip usermod errors safely in CI

These packages are required because:
- docker.io: Container runtime for Minikube
- conntrack: Kubernetes networking requirement
- curl: Needed to fetch Minikube binary
- Keep docker.io, conntrack, and curl installation (critical for Minikube)
- Add containerd conflict resolution
- Add Docker version check for validation
- Skip usermod errors safely in CI

These packages are required because:
- docker.io: Container runtime for Minikube
- conntrack: Kubernetes networking requirement
- curl: Needed to fetch Minikube binary
…tion

- Add comprehensive containerd/docker conflict handling
- Implement fallback installation paths
- Include verification steps for all tools
- Suppress non-critical errors in CI environment
- Ensure Docker is properly configured and running

The improved installation process now:
1. Handles package conflicts gracefully
2. Works across different Ubuntu/Docker versions
3. Provides verification of successful setup
4. Prevents CI failures from benign issues
…tion

- Add comprehensive containerd/docker conflict handling
- Implement fallback installation paths
- Include verification steps for all tools
- Suppress non-critical errors in CI environment
- Ensure Docker is properly configured and running

The improved installation process now:
1. Handles package conflicts gracefully
2. Works across different Ubuntu/Docker versions
3. Provides verification of successful setup
4. Prevents CI failures from benign issues
Initial commit for dev branch: Setup basic app structure and Minikube config
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant