CI / CI (pull_request) Canceled after 0s
Create proper Tekton Pipeline that orchestrates multiple Tasks:
k8s/tekton/poimen-pipeline.yaml:
- Pipeline: poimen-ci
- Orchestrates integration tests → gate → promote
- Tasks:
1. integration-tests (poimen-integration-test Task)
2. gate-on-tests (verify results)
3. promote-image (promote to :latest)
4. cleanup (final step)
- Parameters: image SHA, registry creds
- Results: test summary, promotion status
.gitea/workflows/build.yaml:
- Changed from TaskRun to PipelineRun
- Trigger: kubectl create PipelineRun
- Pass image SHA + registry credentials
- Wait for Pipeline completion (10m timeout)
- Gate: Only promote if tests pass
- Print: Full pipeline status + test logs
Pipeline Flow:
CI (build.yaml) → PipelineRun
↓
Pipeline: poimen-ci
├─ Task 1: integration-tests
│ ├─ Run migrations
│ ├─ Run integration test suites
│ └─ Return summary
├─ Task 2: gate-on-tests (runAfter Task 1)
│ └─ Check results
├─ Task 3: promote-image (runAfter Task 2)
│ └─ Promote to :latest
└─ Task 4: cleanup (finally)
Benefits:
✓ Full pipeline orchestration
✓ Proper Tekton pattern
✓ Easy to add more Tasks
✓ Clear dependency flow
✓ Results propagation
✓ Gates and conditions
Next: Add more Tasks to Pipeline as needed
- Docker build task
- SCA task
- Performance test task
- Deployment task