Replace .gitea/workflows/docker.yml with .drone.yml using the Drone Docker plugin with auto_tag enabled. On Git tag pushes (v0.2.0), Drone automatically creates Docker image tags: full version (0.2.0), minor version (0.2), and latest. Updated docs/DEVELOPMENT.md to document Drone CI/CD setup instead of Gitea Actions. Updated CHANGELOG.md to reflect the Drone migration. Co-authored-by: Junie <junie@jetbrains.com>
2.4 KiB
2.4 KiB
Changelog
All notable project changes should be documented here.
This project follows Semantic Versioning. For more details, see docs/DEVELOPMENT.md.
Unreleased
- CI/CD migrated to Drone — replaced Gitea Actions with Drone CI/CD (
.drone.yml). The Docker pluginauto_tagfeature automatically creates Semantic Versioning tags (0.2.0,0.2) on Git tag pushes. ConfigureREGISTRY_USERNAMEandREGISTRY_PASSWORDsecrets in the Gitea repository settings.
v0.2.0
- CI/CD with Drone — automated Docker image build and push on Git tags using Drone CI/CD. Each release produces three tags: full version (
0.2.0), minor version (0.2), andlatest. ConfigureREGISTRY_USERNAMEandREGISTRY_PASSWORDsecrets in Gitea repository settings. - Docker build optimization — added
.dockerignoreto exclude unnecessary files from the build context, reducing build time and image size. - Release documentation — added detailed release process guide in
docs/DEVELOPMENT.mdwith Semantic Versioning workflow.
v0.1.0
- Multi-stage Docker build — the Dockerfile now compiles both the Angular frontend and Spring Boot backend inside Docker using three stages (Node.js → Gradle → JRE). Build the entire application with a single
docker buildcommand — no local Java or Node.js required. - Security hardening — replaced full host root mount (
/:/host/root:ro) with specific directory mounts (/proc,/sys,/etc/hostname,/etc/os-release,/var,/home,/opt,/tmp,/srv,/usr) to minimize the attack surface. - Host metrics consistency —
LinuxMemoryServiceandCpuDetailsServicenow read host metrics from/host/procinstead of container metrics from OSHI. - Concurrency improvements — replaced
synchronizedmethods withAtomicReferenceinSystemMetricsService,SystemProcessesService, andCpuDetailsServiceto eliminate lock contention. - Global error handling — added
@RestControllerAdvicefor structured JSON error responses. - Unit tests — added 32 tests covering
/procfile parsers, CPU usage calculations, and process uptime logic. - Docker security — added non-root user (
appuser), read-only filesystem,no-new-privileges, and healthcheck to the container. - Debug logging — added
log.debug()calls in silent catch blocks across all services. - Documentation structure established.