Skip to content

Configure Dependabot, clean up test logging, and update CI workflow - #12

Merged
mercyblitz merged 10 commits into
microsphere-projects:dev-1.xfrom
mercyblitz:dev-1.x
Apr 6, 2026
Merged

Configure Dependabot, clean up test logging, and update CI workflow#12
mercyblitz merged 10 commits into
microsphere-projects:dev-1.xfrom
mercyblitz:dev-1.x

Conversation

@mercyblitz

@mercyblitz mercyblitz commented Apr 6, 2026

Copy link
Copy Markdown
Contributor

This pull request introduces several important updates to the build and release automation, dependency management, and project configuration. The changes modernize the Maven and GitHub Actions setup, streamline dependency management, and improve versioning and release workflows.

Build and Release Automation Improvements:

  • Added a new release job to .github/workflows/maven-publish.yml that automates tagging, GitHub release creation, version bumping, and merging release branches into development branches. Also enforces a stricter version format for releases. [1] [2]
  • Updated GitHub Actions (maven-build.yml and maven-publish.yml) to use the latest action versions (actions/checkout@v5, actions/setup-java@v5), switched to using ./mvnw for builds, and removed the Testcontainers Cloud setup.

Dependency and Project Configuration:

  • Added .github/dependabot.yml to enable automated dependency updates for Maven projects.
  • Updated Maven wrapper to version 3.9.9, switched to a new repository (aliyun), and simplified the wrapper configuration. [1] [2] [3]
  • Upgraded microsphere-spring-cloud.version to 0.1.8 and removed unused dependency management and profile sections from microsphere-gateway-parent/pom.xml. [1] [2]

Code and Test Cleanup:

  • Removed unused or redundant test configuration files (logback-test.xml and service-registry-servers.yml) from test resources. [1] [2]
  • Updated annotations and imports for consistency and to use project-specific types (e.g., replacing @NonNull with @Nonnull). [1] [2] [3] [4] [5] [6]

These changes collectively improve the maintainability, automation, and modernity of the project's build and release process.

Introduce .github/dependabot.yml to enable Dependabot version updates for the Maven ecosystem. It schedules daily checks at the repository root and limits open pull requests to 10. Includes pointer to GitHub documentation for configuration options.
Delete microsphere-spring-cloud-gateway-commons/src/test/resources/logback-test.xml which provided a console appender and test-specific logger levels. Cleans up an obsolete test logging configuration that is no longer required.
Delete microsphere-spring-cloud-gateway-server-webflux/src/test/resources/logback-test.xml which provided a console appender and TRACE root logging for tests. This removes the module-specific test logging config so tests will fall back to the default logging configuration, reducing custom test log setup and potential logging noise.
Delete the committed Maven wrapper binary at .mvn/wrapper/maven-wrapper.jar. This change removes the binary JAR from the repository (file deleted).
Bump GitHub Actions usage to v5 (actions/checkout and actions/setup-java), switch build invocation to the project's Maven wrapper (./mvnw) and remove the atomicjar/testcontainers-cloud-setup-action step. Also remove the explicit Maven cache setting and the testcontainers profile from the activated profiles, simplifying the CI configuration and relying on the project's wrapper and newer action versions.
Update GitHub Actions workflow to validate input version, upgrade action versions, and add an automated release flow. Changes:
- Update revision input description and default placeholder to reflect Spring Cloud 2022+/JDK17+ usage.
- Add a step to validate the revision matches major.minor.patch.
- Bump actions/checkout and actions/setup-java to v5.
- Add a new `release` job that creates a git tag, publishes a GitHub release (via gh), increments the patch to a -SNAPSHOT in pom.xml, commits and pushes the next snapshot, and attempts to merge the release into main with basic conflict/error handling.
Notes: This workflow expects appropriate repo permissions, GITHUB_TOKEN/secret values and the gh CLI available in the runner. Existing tags/releases are detected and skipped to avoid duplication.
Upgrade microsphere-spring-cloud.version to 0.1.8 and simplify the parent POM by removing imported BOMs for Testcontainers, Spring Boot, Spring Cloud and Spring Cloud Alibaba, as well as several legacy Spring Cloud profiles and the testcontainers profile. The microsphere Spring Cloud dependency import is retained. Also apply a small formatting change (blank line) in the WebFlux module's dependencies section.
Add @ConditionalOnMicrosphereGatewayEnabled to GatewayAutoConfiguration to gate auto-configuration. Switch logging in DisabledHeartbeatEventRouteRefreshListenerInterceptor to io.microsphere.logging.Logger and use its LoggerFactory. Replace Spring's @nonnull with io.microsphere.annotation.@nonnull in GatewayUtils and update imports, removing unused imports. These changes align the module with microsphere conventions for conditional enablement, logging, and nullability annotations.
@codecov

codecov Bot commented Apr 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Files with missing lines Coverage Δ Complexity Δ
...ebflux/autoconfigure/GatewayAutoConfiguration.java 100.00% <ø> (ø) 1.00 <0.00> (ø)
...HeartbeatEventRouteRefreshListenerInterceptor.java 100.00% <ø> (ø) 8.00 <0.00> (ø)
...loud/gateway/server/webflux/util/GatewayUtils.java 100.00% <ø> (ø) 11.00 <0.00> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Remove unused test resource file that defined Docker services for service registry integration tests. The deleted YAML included configurations for Zookeeper, Consul, Nacos and Eureka images and their exposed ports/environment used by the test setup.
Update Maven pom.xml revision property from 0.1.1-SNAPSHOT to 0.1.2-SNAPSHOT to mark the next development iteration.
@sonarqubecloud

sonarqubecloud Bot commented Apr 6, 2026

Copy link
Copy Markdown

@mercyblitz
mercyblitz merged commit 2e58533 into microsphere-projects:dev-1.x Apr 6, 2026
44 of 47 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