Commit Graph

14 Commits

Author SHA1 Message Date
c4e634c7c6 chore: remove outdated code coverage reports
Deleted all generated code coverage reports and associated files for the tictactoe project to clean up the repository. This includes the lcov.info, HTML reports, CSS, JavaScript, and image files related to coverage visualization.
2026-05-02 16:15:03 +07:00
e5aa003b25 feat: add code coverage reports for tictactoe project
New coverage reports generated for the tictactoe project, including detailed HTML reports for each file and overall coverage statistics. The reports include coverage for statements, branches, functions, and lines, with a focus on improving code quality and visibility.
2026-05-02 16:13:42 +07:00
4d5657f259 feat: split Install/UnitTest stages, add game.js tests with 100% coverage
21 tests covering win/loss/draw/score/reset. lcov report fed to SonarQube.
Pipeline: Install → Unit Test → Scan Code Quality → Build & Push.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-02 16:10:27 +07:00
93dea76004 fix: run sonar scan in sonar container with Java
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-02 15:25:59 +07:00
f78fe82a71 feat: add SonarQube code quality scan stage to pipeline
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-02 14:51:39 +07:00
474545b24e feat: add session score display and refactor Jenkinsfile
Score tracks X wins, O wins, draws in-memory for current session.
Jenkinsfile rewritten as scripted pipeline with named execute functions
and per-branch strategy closures (mirrors BasePipeline pattern).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 14:53:42 +07:00
9c5243290d fix: use internal Harbor service for image pull
Switch from external harbor.fireflylab.local (no K8s DNS) to
harbor-core.harbor.svc.cluster.local which resolves via NodeLocalDNS.
Also reset tag to latest.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 13:10:49 +07:00
901f5d8076 update image tag 2026-04-26 15:05:05 +07:00
0d0ccf0e6e feat: add branch strategy via BranchStrategy class
Stages now gated by branch:
- PR-*: test only
- feature/*: test + build/push + helm bump + git push
- develop/main/release/hotfix: test + build/push only
2026-04-26 13:56:15 +07:00
547c435694 refactor: slim pipeline to test + build/push only
Remove Checkout stage (multibranch auto-checks out), Bump Helm Chart,
and Commit & Push stages. Drop tools container and chart env vars.
Image tag is now branch-random8 (e.g. main-a1b2c3d4).
2026-04-25 16:31:05 +07:00
1e5093536f fix: use harbor-core internal K8s service for docker push
Replace harbor.fireflylab.local (external DNS, not resolvable from pods)
with harbor-core.harbor.svc.cluster.local (internal ClusterIP, always resolvable).
DinD insecure-registry flag allows HTTP to the internal service.
values.yaml image.repository stays as harbor.fireflylab.local so kubelet
pulls via the external hostname (same image, different access path).
2026-04-23 16:46:31 +07:00
02d902bc52 fix: remove post cleanup block
K8s pod is ephemeral — workspace dies with pod. deleteDir/cleanWs
not needed and fails on node_modules permission errors.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 16:01:33 +07:00
9f452577ba refactor: replace cleanWs() with deleteDir() in Jenkinsfile for workspace cleanup
Some checks failed
homelab-k8s-services/tictactoe/pipeline/head There was a failure building this commit
2026-04-22 13:40:27 +07:00
b8783f8ee6 feat: initial tictactoe web app with CI/CD pipeline
Some checks failed
homelab-k8s-services/tictactoe/pipeline/head There was a failure building this commit
- Express app serving vanilla JS 2-player TicTacToe game
- Dockerfile (multi-stage node:18-slim)
- Jenkinsfile (K8s pod: test → Harbor push → Helm bump → Gitea push)
- Helm chart v1.0.0 with HTTPRoute for tictactoe.fireflylab.local

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 13:27:31 +07:00