hashgraph / hashgraph/solo-weaver

Epic 6: E2E & Integration Tests for Phase-scoped K8s Jobs

Open
#865 0 comments 0 reactions 0 assignees View on GitHub
Epic New Feature
Dominant language
Go
Stars
3
Forks
0
Avg merge
3d 5h
Merged PRs (30d)
47

Description

## Overview

End-to-end and integration tests validating the full `jobs/` feature across both solo-operator (UC) and solo-weaver (daemon). Tests must cover golden paths, failure policies, sequence ordering, and crash recovery idempotency.

Depends on all prior epics being complete.

## Test matrix

| Test | Repo | Phase | Failure policy | Expected outcome |
|---|---|---|---|---|
| 6.1 | solo-operator | `prepare` | Abort | Upgrade halts; FreezeAbort CR created |
| 6.2 | solo-weaver | `frozen` | Ignore | Upgrade continues; warning logged |
| 6.3 | solo-weaver | `pre-install` | Abort | Install halts; DaemonResult=Failed |
| 6.4 | both | any | — | Crash recovery; succeeded jobs skipped |
| 6.5 | both | any | — | 3 jobs sequence 30,10,20 → run 10→20→30 |

## Stories
_To be linked below once created_

## Acceptance Criteria
- [ ] All 5 test scenarios pass in CI
- [ ] Tests are deterministic (no flakiness on 10 consecutive runs)
- [ ] `infrastructure-catalog.yaml` version docs updated to reflect Go+Helm sync requirement

Contributor guide

Open the contributing guide

Research direction

Start by reading the jobs/ feature and the test matrix for solo-operator and solo-weaver. Check the existing CI setup before planning deterministic end-to-end and integration coverage for failure policies, ordering, and crash recovery. Done means all five scenarios pass in CI for 10 consecutive runs and infrastructure-catalog.yaml documents the Go+Helm sync requirement.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, helm, kubernetes
Domain
infrastructure, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.