Skip to content

Commit 59a4b92

Browse files
author
Zach Swanson
committed
Add a test for Rollout type in migrations
1 parent 083d831 commit 59a4b92

File tree

2 files changed

+50
-0
lines changed

2 files changed

+50
-0
lines changed

components/migrations_test.go

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import (
3030
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3131
"k8s.io/apimachinery/pkg/types"
3232

33+
"github.com/coderanger/migrations-operator/api/stubs/argoproj"
3334
migrationsv1beta1 "github.com/coderanger/migrations-operator/api/v1beta1"
3435
)
3536

@@ -258,4 +259,51 @@ var _ = Describe("Migrations component", func() {
258259
Expect(job.Spec.Template.ObjectMeta.Labels).To(HaveKeyWithValue("key1", "value1"))
259260
Expect(job.Spec.Template.ObjectMeta.Labels).To(HaveKeyWithValue("migrations", "testing"))
260261
})
262+
263+
It("follows owner references for an argoproj.io rollout", func() {
264+
truep := true
265+
rollout := &argoproj.Rollout{
266+
ObjectMeta: metav1.ObjectMeta{Name: "testing"},
267+
Spec: argoproj.RolloutSpec{
268+
Template: corev1.PodTemplateSpec{
269+
Spec: corev1.PodSpec{
270+
Containers: []corev1.Container{
271+
{
272+
Name: "main",
273+
Image: "myapp:v1",
274+
},
275+
},
276+
},
277+
},
278+
},
279+
}
280+
helper.TestClient.Create(rollout)
281+
rs := &appsv1.ReplicaSet{
282+
ObjectMeta: metav1.ObjectMeta{
283+
Name: "testing-1234",
284+
OwnerReferences: []metav1.OwnerReference{
285+
{
286+
APIVersion: "argoproj.io/v1alpha1",
287+
Kind: "Rollout",
288+
Name: "testing",
289+
Controller: &truep,
290+
},
291+
},
292+
},
293+
}
294+
helper.TestClient.Create(rs)
295+
pod.OwnerReferences = []metav1.OwnerReference{
296+
{
297+
APIVersion: "apps/v1",
298+
Kind: "ReplicaSet",
299+
Name: "testing-1234",
300+
Controller: &truep,
301+
},
302+
}
303+
helper.TestClient.Create(pod)
304+
305+
helper.MustReconcile()
306+
helper.TestClient.GetName("testing-migrations", job)
307+
Expect(job.Spec.Template.Spec.Containers[0].Image).To(Equal("myapp:v1"))
308+
})
261309
})

components/suite_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import (
2626
logf "sigs.k8s.io/controller-runtime/pkg/log"
2727
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2828

29+
"github.com/coderanger/migrations-operator/api/stubs/argoproj"
2930
migrationsv1beta1 "github.com/coderanger/migrations-operator/api/v1beta1"
3031
)
3132

@@ -44,5 +45,6 @@ var _ = BeforeSuite(func() {
4445

4546
suiteHelper = cu.Unit().
4647
API(migrationsv1beta1.AddToScheme).
48+
API(argoproj.AddToScheme).
4749
MustBuild()
4850
})

0 commit comments

Comments
 (0)