82 Commits

Author SHA1 Message Date
jenkins
31c5eae5ae release(hermes): automate chat router image 2026-08-24 02:46:36 -03:00
jenkins
d254931a14 feat(hermes): ship full-duplex voice release 2026-08-23 22:13:52 -03:00
jenkins
1a3e7f39f5 fix(jenkins): keep voice concurrency in pipeline 2026-08-23 16:21:19 -03:00
jenkins
5c986eabaa fix(hermes-voice): unpack Jetson image capabilities 2026-08-23 16:05:09 -03:00
jenkins
79369c2357 release(hermes): automate private voice images 2026-08-23 15:54:56 -03:00
jenkins
41233f94a9 fix(jenkins): persist Hermes release parameters 2026-08-23 13:53:21 -03:00
jenkins
c0b806e5d2 release(hermes): automate validated image promotion 2026-08-23 13:41:58 -03:00
Hermes Agent
735a2b240d Add reviewed Hermes WebUI release lane 2026-08-23 03:52:03 +00:00
jenkins
2eeb4bb5e6 ci(jenkins): restore branch discovery on titan-iac-quality-gate
The titan-iac-quality-gate multibranch job's git branch source was
defined without a discovery trait, so JCasC created it with empty
traits and it indexed zero branches — no PR ever built, no status
check was ever reported, and auto-merge could never fire. Add
traits { gitBranchDiscovery() } to match every working multibranch
job (e.g. hermes-code-demo-branches).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-18 13:58:20 -03:00
jenkins
e8c26ecf85 hermes: add daemonless agent image release lane 2026-08-17 08:25:52 -03:00
jenkins
441977449e gitea: move Atlas repositories to organization 2026-08-14 23:55:28 -03:00
jenkins
1d32f22946 gitea: migrate canary repository consumers 2026-08-13 21:25:44 -03:00
Brad Stein
4e8edf9fac Add SCM poll trigger to cassandra Jenkins job
The cassandra pipelineJob had no trigger, so Gitea's notifyCommit
webhook found no matching job and pushes only built when started
manually. Poll every 5 minutes like lesavka/typhon so pushes build
within one poll cycle and the webhook race disappears.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-07 06:52:27 -03:00
jenkins
137ea77e95 fix(demo): read the container exit code, not the Job status
The fixture check waited on the Job's .status.succeeded/.status.failed. The
kubelet records a container's exit code the instant it stops, but the Job
controller reconciles those fields on its own schedule: observed at 2m24s,
4m27s and 34m on this cluster for identical work. During that window the pod
had already exited 1 and the build sat printing 'Will try again after 13 sec',
looking hung long after the test had finished, which is unusable in a demo.

Polling the pod's terminated exitCode removes the controller from the path
entirely. The Job is still used, so the evidence shape is unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 17:11:45 -03:00
jenkins
1dc2872ebb fix(hermes-code): add branch discovery trait to multibranch source
Indexing succeeded but discovered no branches without an explicit
gitBranchDiscovery trait, so hermes-repair/* never got a validation build.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 20:14:01 -03:00
jenkins
0731ab5d9d feat(hermes-code): multibranch validation for hermes-repair/* proposal branches
Adds demo driver script and branch-level test gate so a Hermes-proposed
pull request carries a green build before human merge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 19:46:30 -03:00
jenkins
71e6357887 feat(hermes-code): demo repo Jenkins job + Ariadne code-path configuration
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 19:19:05 -03:00
jenkins
9a264f981a fix(hermes-triage-demo): restore groovy escape depths lost in ConfigMap rewrite
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:45:40 -03:00
jenkins
6462561d02 refactor(hermes-triage-demo): ConfigMap fixture replaces Longhorn PVC
- Pipeline ensures the fixture ConfigMap and seeds unhealthy via patch-file
- Test-runner mounts the ConfigMap read-only; no storage attach involved
- New hermes-demo-repair SA + Role scoped to patching only the fixture CM
- Removes the fixture PVC (Flux prunes it)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:42:10 -03:00
jenkins
78d173126a fix(hermes-triage-demo): archive junit xml as artifact; junit plugin absent
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:32:32 -03:00
jenkins
561edf41ef fix(hermes-triage-demo): pin test-runner to Longhorn-ready workers; add demo runbook
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:18:17 -03:00
jenkins
158c12317d fix(hermes-triage-demo): correct groovy escape depth for newline join and shell JSON quotes
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:59:32 -03:00
jenkins
3aeb172477 fix(hermes-triage-demo): JCasC substitutes ${} at load; use concatenation-only pipeline
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:56:06 -03:00
jenkins
d8fec759b2 fix(hermes-triage-demo): agent pod securityContext must match jnlp uid 1000
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:47:48 -03:00
jenkins
11063daaaa feat(hermes-triage-demo): isolated demo surface + Jenkins job + Hermes key seeding
- New hermes-triage-demo namespace with fixture PVC and RBAC scoped to
  Jenkins agent Job creation only
- JCasC pipelineJob hermes-triage-demo: SEED_FAILURE-parameterized fixture
  check running as a Kubernetes Job in the demo namespace, emitting the
  incident ID to pod stdout (Fluent Bit -> OpenSearch kube-*) and JUnit to
  Jenkins
- Hermes init container can seed API_SERVER_KEY in the persistent .env
  from an optional hermes-api-server-key Secret (no-op until it exists)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:42:37 -03:00
jenkins
d24ef38f7a feat(cassandra): formalize registry and Jenkins cutover 2026-07-25 00:52:21 -03:00
jenkins
a9396dcf80 jenkins: trust ephemeral agent workspaces 2026-06-10 05:14:41 -03:00
jenkins
da25483804 jenkins: enable veles pipeline 2026-06-10 04:55:58 -03:00
jenkins
00058aaf37 jenkins: make default agents writable 2026-06-10 04:49:10 -03:00
jenkins
1d20fb35d2 veles: stage atlas infrastructure 2026-06-09 00:46:46 -03:00
jenkins
990eec43b4 ci(jenkins): refresh suite jobs twice daily 2026-06-04 20:38:02 -03:00
jenkins
ec8fd65030 ci(jenkins): soften agent spread constraints 2026-05-20 06:53:29 -03:00
jenkins
c8e4abb2e0 fix(jenkins): remove deprecated cloud cap field 2026-05-20 06:40:44 -03:00
jenkins
cd7006c7be ci: tighten agent spread and sweeper limits 2026-05-20 06:33:12 -03:00
jenkins
399555d5f1 ci(jenkins): keep recovery agents schedulable 2026-05-20 05:53:42 -03:00
jenkins
8da1bb6d53 ops: harden ci placement and gpu idle reporting 2026-05-20 04:27:26 -03:00
jenkins
db2ea2b1dc jenkins: allow agents to fall back to rpi4 2026-05-19 23:30:34 -03:00
jenkins
281cc058d8 ops: add resource guardrails for rpi workers 2026-05-19 12:48:40 -03:00
jenkins
fab0000c9c monitoring: add typhon and category test telemetry 2026-05-16 15:38:26 -03:00
jenkins
c22a78d5b4 monitoring: polish testing dashboard telemetry 2026-05-16 13:48:01 -03:00
jenkins
8e4ecab9a5 jenkins: keep ci agents on rpi5 workers 2026-05-10 03:25:09 -03:00
jenkins
87f5fa0c6f jenkins: spread ci agents and cap concurrency 2026-05-10 03:17:50 -03:00
jenkins
7f586525f6 jenkins: tolerate slow kubernetes agent exec 2026-05-10 02:17:30 -03:00
jenkins
3c728f09d9 jenkins: schedule daily quality jobs 2026-05-09 23:18:32 -03:00
jenkins
93fa63f809 jenkins: de-prefer spillover longhorn nodes for controller and agents 2026-04-21 20:48:02 -03:00
7b2cea7637 ci(jenkins): inject sonarqube token from vault 2026-04-21 19:43:08 -03:00
codex
baea38a126 jenkins(logging): split streaming harbor credentials 2026-04-19 22:40:56 -03:00
45fde5e2bc quality: standardize suite checks and add SonarQube stack 2026-04-19 14:18:58 -03:00
73fd799025 monitoring: split climate and ups current panels 2026-04-13 03:35:50 -03:00
ec6c068ed7 jenkins: use emptyDir workspace for default agents 2026-04-12 05:54:26 -03:00