• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

NVIDIA / holodeck / 29035530440
51%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 05:02PM UTC
Jobs 1
Files 80
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Jul 2026 05:00PM UTC coverage: 50.689% (+1.9%) from 48.745%
29035530440

push

github

web-flow
test(e2e): credential-free mock E2E suite + real-AWS CI cap (1 PR / 2 post-merge / weekly matrix) (#844)

* feat(awsfake): add stateful in-memory fake for EC2, ELBv2, and SSM interfaces

AWS ships no official mocks for aws-sdk-go-v2; its documented testing
guidance is consumer-defined interfaces + DI + own fakes. This fake
implements holodeck's internal/aws interfaces (39 EC2 + 12 ELBv2 + 1 SSM
methods) over a mutex-guarded in-memory store with realistic lifecycle
semantics: SDK-waiter-compatible instance states, exact *.NotFound error
codes the provider's retry branches string-match, create/describe/delete
consistency, error injection (FailNext) and a call/input recorder.
Compile-time interface assertions make SDK shape changes fail the build.

Signed-off-by: Carlos Eduardo Arango Gutierrez <eduardoa@nvidia.com>

* refactor(aws): migrate provider unit tests to awsfake, drop hand-written mocks

Replaces the 494-line per-method-closure MockEC2Client (and the local
MockELBv2Client in nlb_delete_test.go) with the shared stateful fake.
Coverage envelope preserved 1:1 (155 subtests + 84 ginkgo specs before
and after); one previously vacuous owner-id assertion made real; adds
mutation-verified pinning tests for SG cross-reference revocation and
NLB listener->target-group->LB teardown order. Shared helpers move to
helpers_test.go.

Signed-off-by: Carlos Eduardo Arango Gutierrez <eduardoa@nvidia.com>

* feat(tests): add credential-free mock E2E suite behind provider option seam

11 specs (label 'mock') drive the real Provider.Create/Delete/DryRun
code against awsfake in ~2.4s with no AWS credentials or SSH key:
lifecycle for 4 topologies (single-node, minimal, dedicated-CP, HA+NLB),
rollback-on-injected-failure at 5 create phases asserting zero orphaned
resources, cluster partial-failure cleanup via Delete, idempotent
delete. newProvider gains an aws.Option passthrough; the suite-wide
E2E_SSH_KEY requirement moves to a per-spec requireRealAWSEnv guard;
the gi... (continued)

826 of 1220 new or added lines in 4 files covered. (67.7%)

10 existing lines in 2 files now uncovered.

6477 of 12778 relevant lines covered (50.69%)

0.56 hits per line

Uncovered Changes

Lines Coverage ∆ File
283
61.29
internal/aws/awsfake/ec2.go
102
58.54
internal/aws/awsfake/elbv2.go
7
96.89
internal/aws/awsfake/store.go
2
88.89
internal/aws/awsfake/ssm.go

Coverage Regressions

Lines Coverage ∆ File
8
56.5
0.0% pkg/provider/aws/delete.go
2
87.69
-0.31% pkg/provider/aws/create.go
Jobs
ID Job ID Ran Files Coverage
1 29035530440.1 09 Jul 2026 05:02PM UTC 80
50.69
GitHub Action Run
Source Files on build 29035530440
  • Tree
  • List 80
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29035530440
  • eb415e5a on github
  • Prev Build on main (#29010272589)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc