Skip to content

Conversation

@mercyblitz
Copy link
Contributor

This pull request updates the .github/workflows/maven-publish.yml workflow to improve the publishing process for Spring Data Redis 3.x projects and to integrate Docker Compose for managing test services during the build. The main changes focus on updating workflow descriptions and adding steps to set up, run, and clean up Docker Compose services.

Workflow improvements and Docker Compose integration:

  • Updated the workflow input description to clarify that it targets Spring Data Redis 3.x and JDK 17+ instead of Spring Boot 3+.
  • Added a step to set up Docker Compose using the docker/setup-compose-action@v1.2.0 GitHub Action.
  • Added a step to start test services using Docker Compose before publishing the package (docker compose -f "docker/test-services.yml" up -d).
  • Added a cleanup step to always stop Docker Compose services after the workflow completes (docker compose -f "docker/test-services.yml" down).

Introduces Docker Compose setup, startup, and teardown steps to the maven-publish GitHub Actions workflow. This allows test services defined in docker/test-services.yml to be started before publishing and stopped after, improving the workflow's environment setup.
@codecov
Copy link

codecov bot commented Dec 26, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sonarqubecloud
Copy link

@mercyblitz mercyblitz merged commit e3ce445 into release Dec 26, 2025
38 checks passed
@augmentcode
Copy link

augmentcode bot commented Dec 26, 2025

🤖 Augment PR Summary

Summary: Updates the Maven publish workflow to reflect Spring Data Redis 3.x/JDK 17 publishing and to manage required test services via Docker Compose.
Changes: Adds Compose setup plus start/stop of docker/test-services.yml around the Maven deploy step.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 3 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

- name: Docker Setup Compose
uses: docker/setup-compose-action@v1.2.0
with:
version: latest
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using version: latest for Docker Compose can make the workflow non-reproducible (a future Compose release could break this job). Consider pinning to a known-good Compose version to reduce CI flakiness.

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎

cache: maven

- name: Run Docker Compose
run: docker compose -f "docker/test-services.yml" up -d
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

docker compose up -d returns once containers are started, not necessarily when services are ready; if Maven runs integration tests immediately after, this can introduce flaky failures. Consider ensuring the test services are healthy/ready before mvn deploy proceeds.

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎


- name: Stop Docker Compose
if: always()
run: docker compose -f "docker/test-services.yml" down
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because this step runs with if: always(), a failure in docker compose ... down would fail the whole job even if publishing succeeded, which can be surprising. Consider making teardown best-effort so cleanup issues don’t mask the real outcome.

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎

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