@@ -2,24 +2,18 @@ package dependencies
22
33import (
44 "context"
5- "fmt"
65 "os"
76 "path/filepath"
8- "time"
97
108 "github.com/loft-sh/devspace/cmd"
119 "github.com/loft-sh/devspace/cmd/flags"
1210 "github.com/loft-sh/devspace/pkg/devspace/dependency"
13- "github.com/loft-sh/devspace/pkg/devspace/kubectl/selector"
14- "github.com/loft-sh/devspace/pkg/devspace/services/podreplace"
15- "k8s.io/apimachinery/pkg/util/wait"
1611
1712 "github.com/loft-sh/devspace/e2e/framework"
1813 "github.com/loft-sh/devspace/e2e/kube"
1914 "github.com/loft-sh/devspace/pkg/devspace/config/loader"
2015 "github.com/loft-sh/devspace/pkg/util/survey"
2116 "github.com/onsi/ginkgo"
22- corev1 "k8s.io/api/core/v1"
2317 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2418)
2519
@@ -207,81 +201,81 @@ var _ = DevSpaceDescribe("dependencies", func() {
207201 framework .ExpectErrorMatch (err , "dependencies[nested].profiles and dependencies[nested].profile & dependencies[nested].profileParents cannot be used together" )
208202 })
209203
210- ginkgo .It ("should resolve dependencies with dependencies.dev.replacePods" , func () {
211- ginkgo .Skip (" couldn't find pipeline" )
212- fmt .Println ("dependencies[*].dev.replacePods,dependencies[*].dev.sync and dependencies[*].dev.ports is not supported anymore in v6" )
213- tempDir , err := framework .CopyToTempDir ("tests/dependencies/testdata/dev-replacepods" )
214- framework .ExpectNoError (err )
215- defer framework .CleanupTempDir (initialDir , tempDir )
216-
217- // load it from the regular path first
218- _ , dependencies , err := framework .LoadConfig (f , kubeClient .Client (), filepath .Join (tempDir , "devspace.yaml" ))
219- framework .ExpectNoError (err )
220-
221- // check if dependencies were loaded correctly
222- framework .ExpectEqual (len (dependencies ), 1 )
223- framework .ExpectEqual (dependencies [0 ].Name (), "dep" )
224-
225- ns , err := kubeClient .CreateNamespace ("dep-replacepods" )
226- framework .ExpectNoError (err )
227- defer framework .ExpectDeleteNamespace (kubeClient , ns )
228-
229- // create a new dev command
230- devCmd := & cmd.DevCmd {
231- GlobalFlags : & flags.GlobalFlags {
232- NoWarn : true ,
233- Namespace : ns ,
234- },
235- Portforwarding : true ,
236- Sync : true ,
237- }
238- err = devCmd .Run (f , []string {"sh" , "-c" , "exit" })
239- framework .ExpectNoError (err )
240-
241- // check if replica set exists & pod got replaced correctly
242- list , err := kubeClient .Client ().KubeClient ().AppsV1 ().ReplicaSets (ns ).List (context .TODO (), metav1.ListOptions {LabelSelector : podreplace .ReplicaSetLabel + "=true" })
243- framework .ExpectNoError (err )
244- framework .ExpectEqual (len (list .Items ), 1 )
245-
246- // wait until a pod has started
247- var pods * corev1.PodList
248- err = wait .Poll (time .Second , time .Minute , func () (done bool , err error ) {
249- pods , err = kubeClient .RawClient ().CoreV1 ().Pods (ns ).List (context .TODO (), metav1.ListOptions {LabelSelector : selector .ReplacedLabel })
250- if err != nil {
251- return false , err
252- }
253-
254- return len (pods .Items ) == 1 , nil
255- })
256- framework .ExpectNoError (err )
257- framework .ExpectEqual (pods .Items [0 ].Spec .Containers [0 ].Image , "alpine:latest" )
258-
259- // now purge the deployment, dependency and make sure the replica set is deleted as well
260- purgeCmd := & cmd.PurgeCmd {
261- GlobalFlags : & flags.GlobalFlags {
262- NoWarn : true ,
263- Namespace : ns ,
264- },
265- All : true ,
266- }
267- err = purgeCmd .Run (f )
268- framework .ExpectNoError (err )
269-
270- // wait until all pods are killed
271- err = wait .Poll (time .Second , time .Minute , func () (done bool , err error ) {
272- pods , err = kubeClient .RawClient ().CoreV1 ().Pods (ns ).List (context .TODO (), metav1.ListOptions {LabelSelector : selector .ReplacedLabel })
273- if err != nil {
274- return false , err
275- }
276- return len (pods .Items ) == 0 , nil
277- })
278- framework .ExpectNoError (err )
279-
280- // make sure no replaced replica set exists anymore
281- list , err = kubeClient .Client ().KubeClient ().AppsV1 ().ReplicaSets (ns ).List (context .TODO (), metav1.ListOptions {LabelSelector : podreplace .ReplicaSetLabel + "=true" })
282- framework .ExpectNoError (err )
283- framework .ExpectEqual (len (list .Items ), 0 )
284- })
204+ // ginkgo.It("should resolve dependencies with dependencies.dev.replacePods", func() {
205+ // ginkgo.Skip(" couldn't find pipeline")
206+ // fmt.Println("dependencies[*].dev.replacePods,dependencies[*].dev.sync and dependencies[*].dev.ports is not supported anymore in v6")
207+ // tempDir, err := framework.CopyToTempDir("tests/dependencies/testdata/dev-replacepods")
208+ // framework.ExpectNoError(err)
209+ // defer framework.CleanupTempDir(initialDir, tempDir)
210+
211+ // // load it from the regular path first
212+ // _, dependencies, err := framework.LoadConfig(f, kubeClient.Client(), filepath.Join(tempDir, "devspace.yaml"))
213+ // framework.ExpectNoError(err)
214+
215+ // // check if dependencies were loaded correctly
216+ // framework.ExpectEqual(len(dependencies), 1)
217+ // framework.ExpectEqual(dependencies[0].Name(), "dep")
218+
219+ // ns, err := kubeClient.CreateNamespace("dep-replacepods")
220+ // framework.ExpectNoError(err)
221+ // defer framework.ExpectDeleteNamespace(kubeClient, ns)
222+
223+ // // create a new dev command
224+ // devCmd := &cmd.DevCmd{
225+ // GlobalFlags: &flags.GlobalFlags{
226+ // NoWarn: true,
227+ // Namespace: ns,
228+ // },
229+ // Portforwarding: true,
230+ // Sync: true,
231+ // }
232+ // err = devCmd.Run(f, []string{"sh", "-c", "exit"})
233+ // framework.ExpectNoError(err)
234+
235+ // // check if replica set exists & pod got replaced correctly
236+ // list, err := kubeClient.Client().KubeClient().AppsV1().ReplicaSets(ns).List(context.TODO(), metav1.ListOptions{LabelSelector: podreplace.ReplicaSetLabel + "=true"})
237+ // framework.ExpectNoError(err)
238+ // framework.ExpectEqual(len(list.Items), 1)
239+
240+ // // wait until a pod has started
241+ // var pods *corev1.PodList
242+ // err = wait.Poll(time.Second, time.Minute, func() (done bool, err error) {
243+ // pods, err = kubeClient.RawClient().CoreV1().Pods(ns).List(context.TODO(), metav1.ListOptions{LabelSelector: selector.ReplacedLabel})
244+ // if err != nil {
245+ // return false, err
246+ // }
247+
248+ // return len(pods.Items) == 1, nil
249+ // })
250+ // framework.ExpectNoError(err)
251+ // framework.ExpectEqual(pods.Items[0].Spec.Containers[0].Image, "alpine:latest")
252+
253+ // // now purge the deployment, dependency and make sure the replica set is deleted as well
254+ // purgeCmd := &cmd.PurgeCmd{
255+ // GlobalFlags: &flags.GlobalFlags{
256+ // NoWarn: true,
257+ // Namespace: ns,
258+ // },
259+ // All: true,
260+ // }
261+ // err = purgeCmd.Run(f)
262+ // framework.ExpectNoError(err)
263+
264+ // // wait until all pods are killed
265+ // err = wait.Poll(time.Second, time.Minute, func() (done bool, err error) {
266+ // pods, err = kubeClient.RawClient().CoreV1().Pods(ns).List(context.TODO(), metav1.ListOptions{LabelSelector: selector.ReplacedLabel})
267+ // if err != nil {
268+ // return false, err
269+ // }
270+ // return len(pods.Items) == 0, nil
271+ // })
272+ // framework.ExpectNoError(err)
273+
274+ // // make sure no replaced replica set exists anymore
275+ // list, err = kubeClient.Client().KubeClient().AppsV1().ReplicaSets(ns).List(context.TODO(), metav1.ListOptions{LabelSelector: podreplace.ReplicaSetLabel + "=true"})
276+ // framework.ExpectNoError(err)
277+ // framework.ExpectEqual(len(list.Items), 0)
278+ // })
285279
286280 ginkgo .It ("should resolve cyclic dependencies" , func () {
287281 ginkgo .Skip (" dependencies[*].dev.replacePods,dependencies[*].dev.sync and dependencies[*].dev.ports is not supported anymore in v6" )
0 commit comments