feat: proper CI/CD workflow with integration testing
BREAKING CHANGE: CI now requires kubeconfig to run integration tests Changes: - Build image with commit SHA tag (NOT latest yet) - Deploy dedicated test pod from new image - Run full integration test suite against test pod - Only promote to latest tag AFTER tests pass - Cleanup test pod after run CI/CD Flow: 1. go vet + go test (unit tests) 2. Build image: api-gateway:<sha> 3. Push to registry 4. Deploy test pod with <sha> image 5. Run integration tests (memory, S3, SQS, workflow, IAM, health) 6. If tests pass: tag as latest and push 7. If tests fail: keep <sha> tag, don't promote to latest 8. Cleanup test pod This ensures: - New code is tested in cluster before production deployment - ArgoCD only pulls latest after tests pass - Failed builds don't get promoted to production - Full test coverage of all adapters Requires: KUBECONFIG_B64 secret in Gitea for cluster access
This commit is contained in:
@@ -247,7 +247,7 @@ func TestIntegrationIAMService(t *testing.T) {
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
|
||||
body, _ := io.ReadAll(resp.Body)
|
||||
_, _ = io.ReadAll(resp.Body)
|
||||
t.Logf("IAM list users response: %d", resp.StatusCode)
|
||||
|
||||
// IAM (Authentik) should respond - 200, 404, or auth error all prove routing works
|
||||
|
||||
Reference in New Issue
Block a user