Skip to content

Commit fdd741f

Browse files
Merge branch 'master' into release-v0.1.18
Signed-off-by: Matt Richerson <matthew.richerson@hpe.com>
2 parents 367162a + c5ce062 commit fdd741f

8 files changed

Lines changed: 103 additions & 105 deletions

File tree

go.mod

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
module github.com/NearNodeFlash/nnf-integration-test
22

3-
go 1.22.0
4-
5-
toolchain go1.22.5
3+
go 1.23.9
64

75
require (
8-
github.com/DataWorkflowServices/dws v0.0.1-0.20250610194327-bc91fef8e840
9-
github.com/NearNodeFlash/lustre-fs-operator v0.0.1-0.20250708135942-4a4d148d7772
10-
github.com/NearNodeFlash/nnf-ec v0.0.1-0.20250702200322-db4e4089d5e0 // indirect
11-
github.com/NearNodeFlash/nnf-sos v0.0.1-0.20250708141732-79259d489832
6+
github.com/DataWorkflowServices/dws v0.0.1-0.20250826235427-3ba3755ecbb4
7+
github.com/NearNodeFlash/lustre-fs-operator v0.0.1-0.20250827135601-4d150db05d08
8+
github.com/NearNodeFlash/nnf-ec v0.0.1-0.20250829141301-67f617d97f7b // indirect
9+
github.com/NearNodeFlash/nnf-sos v0.0.1-0.20250829145954-af98382abcac
1210
github.com/onsi/ginkgo/v2 v2.22.2
1311
github.com/onsi/gomega v1.36.2
1412
go.openly.dev/pointy v1.3.0

go.sum

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
github.com/DataWorkflowServices/dws v0.0.1-0.20250610194327-bc91fef8e840 h1:2Jh7al4IH9R+d2kFX/pBE8A63TM4nGOwBSZcL1FBFzo=
2-
github.com/DataWorkflowServices/dws v0.0.1-0.20250610194327-bc91fef8e840/go.mod h1:i9v4K2d64a9uyd9ZazOJ85RWzVQjIgHWXkLo895KDAE=
3-
github.com/NearNodeFlash/lustre-fs-operator v0.0.1-0.20250708135942-4a4d148d7772 h1:7yokdQ0uKl1OJLSNL0x6dMmpFpbvcwJS3/aX7xVcTdg=
4-
github.com/NearNodeFlash/lustre-fs-operator v0.0.1-0.20250708135942-4a4d148d7772/go.mod h1:Hzd47Ti0pzNB44yeWgDDdNuRqfWFDkJNbMLEXwtjEyE=
5-
github.com/NearNodeFlash/nnf-ec v0.0.1-0.20250702200322-db4e4089d5e0 h1:meUKolZ546eXAfReA4ZxS+s1D9Rek4IuKfyT00mr1dw=
6-
github.com/NearNodeFlash/nnf-ec v0.0.1-0.20250702200322-db4e4089d5e0/go.mod h1:lx13ustzE/+39fLECky+CFKkAV8GYlX9eaI6IGmHQkY=
7-
github.com/NearNodeFlash/nnf-sos v0.0.1-0.20250708141732-79259d489832 h1:eAvmmB/FkzGwdaLxOBONC2WJ9VSYz2cHsfOK8QuAzh0=
8-
github.com/NearNodeFlash/nnf-sos v0.0.1-0.20250708141732-79259d489832/go.mod h1:f5duBSZaTrkf3fIksVxLXXTAW9rpziK6aMBn7RNFm/M=
1+
github.com/DataWorkflowServices/dws v0.0.1-0.20250826235427-3ba3755ecbb4 h1:c5bKT/hZUHzgx4HxiFMGoxEFDXPv/qlFmLwDTbJAA00=
2+
github.com/DataWorkflowServices/dws v0.0.1-0.20250826235427-3ba3755ecbb4/go.mod h1:NbNOIG2ybY2XHVSJn0KF7edPlX3I1ji7je6MGzuPeaA=
3+
github.com/NearNodeFlash/lustre-fs-operator v0.0.1-0.20250827135601-4d150db05d08 h1:1IYv2gDH/+hxBo6TZenIRs30PSpzO49USDkj/aBo/g4=
4+
github.com/NearNodeFlash/lustre-fs-operator v0.0.1-0.20250827135601-4d150db05d08/go.mod h1:1lpNL1ZYtVwDU6Fuju5u/xiza6Z2Ua8KWZeaGBKpn5o=
5+
github.com/NearNodeFlash/nnf-ec v0.0.1-0.20250829141301-67f617d97f7b h1:jkegsuJ6p7yaTcg+jK4sHy5xzR7z4qlQRR7euy8TSZ0=
6+
github.com/NearNodeFlash/nnf-ec v0.0.1-0.20250829141301-67f617d97f7b/go.mod h1:slDsqUJtN2uZ5Z7z4J6wWrtKksQAaH4JqRzUonDXNKo=
7+
github.com/NearNodeFlash/nnf-sos v0.0.1-0.20250829145954-af98382abcac h1:VrYaMmjYt89dzPsDQI2Hcu22HBPAV1SkcVfxHo8Hh9g=
8+
github.com/NearNodeFlash/nnf-sos v0.0.1-0.20250829145954-af98382abcac/go.mod h1:XMK6ByWuISN7DghUxYm4jdSEfA/+5LVrkZy4jpRHlqA=
99
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
1010
github.com/benbjohnson/clock v1.3.0 h1:ip6w0uFQkncKQ979AypyG0ER7mqUSBdKLOgAle/AT8A=
1111
github.com/benbjohnson/clock v1.3.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=

int_test.go

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import (
2828
. "github.com/onsi/gomega"
2929
"go.openly.dev/pointy"
3030

31-
dwsv1alpha4 "github.com/DataWorkflowServices/dws/api/v1alpha4"
31+
dwsv1alpha6 "github.com/DataWorkflowServices/dws/api/v1alpha6"
3232
)
3333

3434
var (
@@ -41,9 +41,9 @@ var (
4141
highTimeout = "5m"
4242

4343
// Which states use the high timeout
44-
highTimeoutStates = []dwsv1alpha4.WorkflowState{
45-
dwsv1alpha4.StateSetup,
46-
dwsv1alpha4.StateTeardown,
44+
highTimeoutStates = []dwsv1alpha6.WorkflowState{
45+
dwsv1alpha6.StateSetup,
46+
dwsv1alpha6.StateTeardown,
4747
}
4848
)
4949

@@ -143,17 +143,17 @@ var tests = []*T{
143143
"#DW container name=prerun-timeout-mpi profile=example-mpi-prerun-timeout").
144144
WithPermissions(1050, 1051).WithLabels("mpi", "timeout").
145145
WithContainerProfile("example-mpi", &ContainerProfileOptions{PrerunTimeoutSeconds: pointy.Int(1), NoStorage: true}).
146-
ExpectError(dwsv1alpha4.StatePreRun),
146+
ExpectError(dwsv1alpha6.StatePreRun),
147147
MakeTest("PostRun timeout on MPI containers",
148148
"#DW container name=postrun-timeout-mpi profile=example-mpi-postrun-timeout").
149149
WithPermissions(1050, 1051).WithLabels("mpi", "timeout").
150150
WithContainerProfile("example-mpi-webserver", &ContainerProfileOptions{PostrunTimeoutSeconds: pointy.Int(1), NoStorage: true}).
151-
ExpectError(dwsv1alpha4.StatePostRun),
151+
ExpectError(dwsv1alpha6.StatePostRun),
152152
MakeTest("Non-zero exit on MPI containers",
153153
"#DW container name=mpi-container-fail profile=example-mpi-fail-noretry").
154154
WithPermissions(1050, 1051).WithLabels("mpi", "fail").
155155
WithContainerProfile("example-mpi-fail", &ContainerProfileOptions{RetryLimit: pointy.Int(0)}).
156-
ExpectError(dwsv1alpha4.StatePostRun),
156+
ExpectError(dwsv1alpha6.StatePostRun),
157157

158158
// Containers - Non-MPI
159159
MakeTest("GFS2 with Containers",
@@ -175,27 +175,27 @@ var tests = []*T{
175175
"#DW container name=prerun-timeout profile=example-prerun-timeout").
176176
WithPermissions(1050, 1051).WithLabels("non-mpi", "timeout").
177177
WithContainerProfile("example-forever", &ContainerProfileOptions{PrerunTimeoutSeconds: pointy.Int(1), NoStorage: true}).
178-
ExpectError(dwsv1alpha4.StatePreRun),
178+
ExpectError(dwsv1alpha6.StatePreRun),
179179
MakeTest("PostRun timeout on non-MPI containers",
180180
"#DW container name=postrun-timeout profile=example-postrun-timeout").
181181
WithPermissions(1050, 1051).WithLabels("non-mpi", "timeout").
182182
WithContainerProfile("example-forever", &ContainerProfileOptions{PostrunTimeoutSeconds: pointy.Int(1), NoStorage: true}).
183-
ExpectError(dwsv1alpha4.StatePostRun),
183+
ExpectError(dwsv1alpha6.StatePostRun),
184184
MakeTest("Non-zero exit on non-MPI containers",
185185
"#DW container name=container-fail profile=example-fail-noretry").
186186
WithPermissions(1050, 1051).WithLabels("non-mpi", "fail").
187187
WithContainerProfile("example-fail", &ContainerProfileOptions{RetryLimit: pointy.Int(0)}).
188-
ExpectError(dwsv1alpha4.StatePostRun),
188+
ExpectError(dwsv1alpha6.StatePostRun),
189189

190190
// Containers - Unsupported Filesystems. These should fail as xfs/raw filesystems are not supported for containers.
191191
MakeTest("XFS with Containers",
192192
"#DW jobdw type=xfs name=xfs-with-containers capacity=100GB",
193193
"#DW container name=xfs-with-containers profile=example-success DW_JOB_foo_local_storage=xfs-with-containers").
194-
ExpectError(dwsv1alpha4.StateProposal).WithLabels("unsupported-fs"),
194+
ExpectError(dwsv1alpha6.StateProposal).WithLabels("unsupported-fs"),
195195
MakeTest("Raw with Containers",
196196
"#DW jobdw type=raw name=raw-with-containers capacity=100GB",
197197
"#DW container name=raw-with-containers profile=example-success DW_JOB_foo_local_storage=raw-with-containers").
198-
ExpectError(dwsv1alpha4.StateProposal).WithLabels("unsupported-fs"),
198+
ExpectError(dwsv1alpha6.StateProposal).WithLabels("unsupported-fs"),
199199

200200
// Containers - Multiple Storages
201201
MakeTest("GFS2 and Lustre with Containers",
@@ -250,7 +250,7 @@ var _ = Describe("NNF Integration Test", func() {
250250
// TODO: Ginkgo's `--fail-fast` option still seems to execute DeferCleanup() calls
251251
// See if this is by design or if we might need to move this to an AfterEach()
252252
if !context.SpecReport().Failed() {
253-
t.AdvanceStateAndWaitForReady(ctx, k8sClient, workflow, dwsv1alpha4.StateTeardown)
253+
t.AdvanceStateAndWaitForReady(ctx, k8sClient, workflow, dwsv1alpha6.StateTeardown)
254254

255255
Expect(k8sClient.Delete(ctx, workflow)).To(Succeed())
256256
}

internal/internal.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import (
2929
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3030
"k8s.io/apimachinery/pkg/util/intstr"
3131

32-
dwsv1alpha4 "github.com/DataWorkflowServices/dws/api/v1alpha4"
32+
dwsv1alpha6 "github.com/DataWorkflowServices/dws/api/v1alpha6"
3333
"github.com/DataWorkflowServices/dws/utils/dwdparse"
3434
)
3535

@@ -68,7 +68,7 @@ type T struct {
6868
decorators []interface{}
6969

7070
// Workflow defines the DWS Workflow resource that is the target of the test.
71-
workflow *dwsv1alpha4.Workflow
71+
workflow *dwsv1alpha6.Workflow
7272

7373
// User Id to use for the workflow
7474
userId int
@@ -84,7 +84,7 @@ type T struct {
8484
helperPods []*corev1.Pod
8585

8686
// Compute nodes that were assigned to the test. This is determined at test runtime.
87-
computes *dwsv1alpha4.Computes
87+
computes *dwsv1alpha6.Computes
8888
}
8989

9090
func MakeTest(name string, directives ...string) *T {
@@ -118,13 +118,13 @@ func MakeTest(name string, directives ...string) *T {
118118
t.directives = []string{}
119119
}
120120

121-
t.workflow = &dwsv1alpha4.Workflow{
121+
t.workflow = &dwsv1alpha6.Workflow{
122122
ObjectMeta: metav1.ObjectMeta{
123123
Name: t.WorkflowName(),
124124
Namespace: corev1.NamespaceDefault,
125125
},
126-
Spec: dwsv1alpha4.WorkflowSpec{
127-
DesiredState: dwsv1alpha4.StateProposal,
126+
Spec: dwsv1alpha6.WorkflowSpec{
127+
DesiredState: dwsv1alpha6.StateProposal,
128128
DWDirectives: t.WorkflowDirectives(),
129129
JobID: intstr.FromInt(GinkgoParallelProcess()),
130130
WLMID: strconv.Itoa(GinkgoParallelProcess()),
@@ -145,7 +145,7 @@ func (t *T) WorkflowDirectives() []string {
145145
return t.directives
146146
}
147147

148-
func (t *T) Workflow() *dwsv1alpha4.Workflow {
148+
func (t *T) Workflow() *dwsv1alpha6.Workflow {
149149
return t.workflow
150150
}
151151

internal/options.go

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ import (
3535
corev1 "k8s.io/api/core/v1"
3636
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3737

38-
dwsv1alpha4 "github.com/DataWorkflowServices/dws/api/v1alpha4"
38+
dwsv1alpha6 "github.com/DataWorkflowServices/dws/api/v1alpha6"
3939
lusv1alpha1 "github.com/NearNodeFlash/lustre-fs-operator/api/v1alpha1"
40-
nnfv1alpha7 "github.com/NearNodeFlash/nnf-sos/api/v1alpha7"
40+
nnfv1alpha8 "github.com/NearNodeFlash/nnf-sos/api/v1alpha8"
4141

4242
"github.com/DataWorkflowServices/dws/utils/dwdparse"
4343
)
@@ -57,7 +57,7 @@ type TOptions struct {
5757
hardwareRequired bool
5858
lowTimeout time.Duration
5959
highTimeout time.Duration
60-
highTimeoutStates []dwsv1alpha4.WorkflowState
60+
highTimeoutStates []dwsv1alpha6.WorkflowState
6161
useExternalComputes bool
6262
}
6363

@@ -67,21 +67,21 @@ func (o *TOptions) hasComplexOptions() bool {
6767
}
6868

6969
type TStopAfter struct {
70-
state dwsv1alpha4.WorkflowState
70+
state dwsv1alpha6.WorkflowState
7171
}
7272

7373
// Stop after lets you stop a test after a given state is reached
74-
func (t *T) StopAfter(state dwsv1alpha4.WorkflowState) *T {
74+
func (t *T) StopAfter(state dwsv1alpha6.WorkflowState) *T {
7575
t.options.stopAfter = &TStopAfter{state: state}
7676
return t
7777
}
7878

7979
type TExpectError struct {
80-
state dwsv1alpha4.WorkflowState
80+
state dwsv1alpha6.WorkflowState
8181
}
8282

8383
// Expect an error at the designed state; Proceed to teardown
84-
func (t *T) ExpectError(state dwsv1alpha4.WorkflowState) *T {
84+
func (t *T) ExpectError(state dwsv1alpha6.WorkflowState) *T {
8585
t.options.expectError = &TExpectError{state: state}
8686
t.options.stopAfter = &TStopAfter{state: state}
8787
return t.WithLabels("error")
@@ -312,7 +312,7 @@ func (t *T) Prepare(ctx context.Context, k8sClient client.Client) error {
312312
By(fmt.Sprintf("Creating storage profile '%s'", o.storageProfile.name))
313313

314314
// Clone the default profile.
315-
defaultProf := &nnfv1alpha7.NnfStorageProfile{
315+
defaultProf := &nnfv1alpha8.NnfStorageProfile{
316316
ObjectMeta: metav1.ObjectMeta{
317317
Name: "default",
318318
Namespace: "nnf-system",
@@ -321,7 +321,7 @@ func (t *T) Prepare(ctx context.Context, k8sClient client.Client) error {
321321

322322
Expect(k8sClient.Get(ctx, client.ObjectKeyFromObject(defaultProf), defaultProf)).To(Succeed())
323323

324-
profile := &nnfv1alpha7.NnfStorageProfile{
324+
profile := &nnfv1alpha8.NnfStorageProfile{
325325
ObjectMeta: metav1.ObjectMeta{
326326
Name: o.storageProfile.name,
327327
Namespace: "nnf-system",
@@ -345,7 +345,7 @@ func (t *T) Prepare(ctx context.Context, k8sClient client.Client) error {
345345

346346
if o.containerProfile != nil {
347347
// Clone the provided base profile
348-
baseProfile := &nnfv1alpha7.NnfContainerProfile{
348+
baseProfile := &nnfv1alpha8.NnfContainerProfile{
349349
ObjectMeta: metav1.ObjectMeta{
350350
Name: o.containerProfile.base,
351351
Namespace: "nnf-system",
@@ -354,7 +354,7 @@ func (t *T) Prepare(ctx context.Context, k8sClient client.Client) error {
354354

355355
Expect(k8sClient.Get(ctx, client.ObjectKeyFromObject(baseProfile), baseProfile)).To(Succeed())
356356

357-
profile := &nnfv1alpha7.NnfContainerProfile{
357+
profile := &nnfv1alpha8.NnfContainerProfile{
358358
ObjectMeta: metav1.ObjectMeta{
359359
Name: o.containerProfile.name,
360360
Namespace: "nnf-system",
@@ -408,7 +408,7 @@ func (t *T) Prepare(ctx context.Context, k8sClient client.Client) error {
408408

409409
// Extract the File System Name and MGSNids from the persistent lustre instance. This
410410
// assumes an NNF Storage resource is created in the same name as the persistent instance
411-
storage := &nnfv1alpha7.NnfStorage{
411+
storage := &nnfv1alpha8.NnfStorage{
412412
ObjectMeta: metav1.ObjectMeta{
413413
Name: name,
414414
Namespace: corev1.NamespaceDefault,
@@ -545,7 +545,7 @@ func (t *T) Cleanup(ctx context.Context, k8sClient client.Client) error {
545545
if t.options.storageProfile != nil {
546546
By(fmt.Sprintf("Deleting storage profile '%s'", o.storageProfile.name))
547547

548-
profile := &nnfv1alpha7.NnfStorageProfile{
548+
profile := &nnfv1alpha8.NnfStorageProfile{
549549
ObjectMeta: metav1.ObjectMeta{
550550
Name: o.storageProfile.name,
551551
Namespace: "nnf-system",
@@ -559,7 +559,7 @@ func (t *T) Cleanup(ctx context.Context, k8sClient client.Client) error {
559559
if t.options.containerProfile != nil {
560560
By(fmt.Sprintf("Deleting container profile '%s'", o.containerProfile.name))
561561

562-
profile := &nnfv1alpha7.NnfContainerProfile{
562+
profile := &nnfv1alpha8.NnfContainerProfile{
563563
ObjectMeta: metav1.ObjectMeta{
564564
Name: o.containerProfile.name,
565565
Namespace: "nnf-system",

0 commit comments

Comments
 (0)