161 Commits

Author SHA1 Message Date
jenkins
51338921b6 fix(demo): read the container exit code, not the Job status
Some checks failed
Tests / Declarative: Post Actions testing.tests.test_repo_structure.test_knowledge_service_mirror_matches_source failed
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
162c59047d feat(jenkins): install junit and pipeline-stage-view
Without the junit plugin the pipeline's junit step throws NoSuchMethodError,
jenkins.failed_tests is always empty, and auto-triage has only raw console
text to reason from. That was the root of two separate diagnosis failures:
the enforced failure being crowded out of the evidence budget, and the
patcher being unable to locate the defective source file.

Pinned to junit 1369.v15da_00283f06, the newest release that runs on core
2.528.3 - the current 1418 requires 2.533. scm-api moves 724 -> 728 because
the workflow-cps these pull in requires it; verified the whole 30-plugin
dependency closure needs no core newer than 2.528.3, and rehearsed the exact
jenkins-plugin-cli install in a throwaway pod before committing.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 06:08:17 -03:00
jenkins
511e92ca60 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
a555fc0c96 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
b4a45f1382 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
4048ed1de5 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
167ab91b60 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
3e6783e44d 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
3787095d3c 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
8a5c93ac2f 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
3833e89545 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
b166f22830 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
2bf90fa102 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
7c6d9282f6 feat(cassandra): formalize registry and Jenkins cutover 2026-07-25 00:52:21 -03:00
jenkins
ad920ef9c9 jenkins: lengthen k8s exec websocket timeouts 2026-06-10 05:35:34 -03:00
jenkins
05e147d5d8 jenkins: trust ephemeral agent workspaces 2026-06-10 05:14:41 -03:00
jenkins
a34e72aa7f jenkins: enable veles pipeline 2026-06-10 04:55:58 -03:00
jenkins
1a75277373 jenkins: make default agents writable 2026-06-10 04:49:10 -03:00
jenkins
654900b8a2 veles: stage atlas infrastructure 2026-06-09 00:46:46 -03:00
jenkins
09e64c8ca4 ci(jenkins): refresh suite jobs twice daily 2026-06-04 20:38:02 -03:00
jenkins
b261834537 ci(jenkins): soften agent spread constraints 2026-05-20 06:53:29 -03:00
jenkins
777f4abe69 fix(jenkins): remove deprecated cloud cap field 2026-05-20 06:40:44 -03:00
jenkins
3cb3a39b49 ops: restart jenkins for spread policy 2026-05-20 06:34:43 -03:00
jenkins
26629205fb ci: tighten agent spread and sweeper limits 2026-05-20 06:33:12 -03:00
jenkins
974dd84938 ci(jenkins): keep recovery agents schedulable 2026-05-20 05:53:42 -03:00
jenkins
3676fe058f ops: keep jenkins controller on rpi5 2026-05-20 04:42:12 -03:00
jenkins
75cd2eb39f ops: restart jenkins for placement policy 2026-05-20 04:29:40 -03:00
jenkins
48e434a028 ops: harden ci placement and gpu idle reporting 2026-05-20 04:27:26 -03:00
jenkins
b648a66f9a jenkins: allow agents to fall back to rpi4 2026-05-19 23:30:34 -03:00
jenkins
07a2dfbb92 jenkins: lower controller scheduling requests 2026-05-19 20:37:07 -03:00
jenkins
1776a3266c jenkins: avoid HDD storage nodes for controller 2026-05-19 20:29:12 -03:00
jenkins
c982b86136 ci(jenkins): roll controller for plugin refresh 2026-05-19 14:07:34 -03:00
jenkins
399efa46e4 ci(jenkins): bump kubernetes plugin 2026-05-19 13:45:26 -03:00
jenkins
a3e14ce0f2 ops: add resource guardrails for rpi workers 2026-05-19 12:48:40 -03:00
jenkins
ad86195436 monitoring: add typhon and category test telemetry 2026-05-16 15:38:26 -03:00
jenkins
df429a57f2 jenkins: reload casc for lesavka schedule 2026-05-16 13:51:55 -03:00
jenkins
c43f7d84e8 monitoring: polish testing dashboard telemetry 2026-05-16 13:48:01 -03:00
jenkins
e96e8943c9 jenkins: keep ci agents on rpi5 workers 2026-05-10 03:25:09 -03:00
jenkins
7fb0be3487 jenkins: spread ci agents and cap concurrency 2026-05-10 03:17:50 -03:00
jenkins
a64d4cee56 jenkins: tolerate slow kubernetes agent exec 2026-05-10 02:17:30 -03:00
jenkins
ba3e24548a jenkins: schedule daily quality jobs 2026-05-09 23:18:32 -03:00
jenkins
e2cbbd6963 scheduling: keep singleton apps off storage nodes 2026-05-05 13:37:04 -03:00
fb0dd60954 jenkins: allow slow controller startup 2026-04-21 20:54:42 -03:00
jenkins
4401c26496 jenkins: de-prefer spillover longhorn nodes for controller and agents 2026-04-21 20:48:02 -03:00
9682a17a82 jenkins: avoid recursive volume ownership resets 2026-04-21 20:34:02 -03:00
379f20efc5 jenkins: prefer rpi5 without hard pin 2026-04-21 19:51:09 -03:00
7883593166 ci(jenkins): inject sonarqube token from vault 2026-04-21 19:43:08 -03:00
e811c0cabf ci(jenkins): require rpi5 controller placement 2026-04-21 14:12:14 -03:00
codex
71cfdce862 jenkins: source streaming harbor creds from dedicated vault path 2026-04-19 23:02:30 -03:00
codex
6d2c72ff98 jenkins: keep streaming creds optional without vault hard dependency 2026-04-19 22:45:25 -03:00