Skip to content

Commit e653e4f

Browse files
committed
fix: e2e test and codegen
Signed-off-by: Saravanan Balasubramanian <[email protected]>
1 parent 970bcc0 commit e653e4f

File tree

4 files changed

+126
-272
lines changed

4 files changed

+126
-272
lines changed

go.mod

Lines changed: 0 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -85,111 +85,7 @@ require (
8585
require github.com/go-git/go-git/v5 v5.3.0
8686

8787
require (
88-
cloud.google.com/go v0.81.0 // indirect
89-
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
90-
github.com/Azure/go-autorest/autorest v0.11.18 // indirect
91-
github.com/Azure/go-autorest/autorest/adal v0.9.13 // indirect
92-
github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
93-
github.com/Azure/go-autorest/logger v0.2.1 // indirect
94-
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
95-
github.com/Masterminds/goutils v1.1.1 // indirect
96-
github.com/Masterminds/semver/v3 v3.1.1 // indirect
97-
github.com/Microsoft/go-winio v0.4.16 // indirect
98-
github.com/PuerkitoBio/purell v1.1.1 // indirect
99-
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect
100-
github.com/ajg/form v1.5.1 // indirect
101-
github.com/andybalholm/brotli v1.0.1 // indirect
102-
github.com/awalterschulze/gographviz v0.0.0-20200901124122-0eecad45bd71 // indirect
103-
github.com/aws/aws-sdk-go v1.33.16 // indirect
104-
github.com/beorn7/perks v1.0.1 // indirect
105-
github.com/cespare/xxhash/v2 v2.1.1 // indirect
106-
github.com/cpuguy83/go-md2man/v2 v2.0.0 // indirect
107-
github.com/davecgh/go-spew v1.1.1 // indirect
108-
github.com/dustin/go-humanize v1.0.0 // indirect
109-
github.com/emirpasic/gods v1.12.0 // indirect
110-
github.com/felixge/httpsnoop v1.0.1 // indirect
111-
github.com/form3tech-oss/jwt-go v3.2.2+incompatible // indirect
112-
github.com/fsnotify/fsnotify v1.4.9 // indirect
113-
github.com/go-git/gcfg v1.5.0 // indirect
114-
github.com/go-git/go-billy/v5 v5.1.0 // indirect
115-
github.com/go-logr/logr v0.4.0 // indirect
116-
github.com/go-openapi/jsonpointer v0.19.5 // indirect
117-
github.com/go-openapi/swag v0.19.13 // indirect
118-
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e // indirect
119-
github.com/google/go-cmp v0.5.6 // indirect
120-
github.com/google/go-querystring v1.0.0 // indirect
121-
github.com/google/gofuzz v1.1.0 // indirect
122-
github.com/google/uuid v1.1.2 // indirect
123-
github.com/googleapis/gax-go/v2 v2.0.5 // indirect
124-
github.com/googleapis/gnostic v0.5.1 // indirect
125-
github.com/hashicorp/go-uuid v1.0.2 // indirect
126-
github.com/hashicorp/golang-lru v0.5.4 // indirect
127-
github.com/hashicorp/hcl v1.0.0 // indirect
128-
github.com/huandu/xstrings v1.3.2 // indirect
129-
github.com/imdario/mergo v0.3.12 // indirect
130-
github.com/inconshreveable/mousetrap v1.0.0 // indirect
131-
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
132-
github.com/jcmturner/gofork v1.0.0 // indirect
133-
github.com/jmespath/go-jmespath v0.4.0 // indirect
134-
github.com/josharian/intern v1.0.0 // indirect
135-
github.com/json-iterator/go v1.1.11 // indirect
136-
github.com/jstemmer/go-junit-report v0.9.1 // indirect
137-
github.com/kevinburke/ssh_config v0.0.0-20201106050909-4977a11b4351 // indirect
138-
github.com/klauspost/cpuid v1.2.3 // indirect
139-
github.com/lib/pq v1.9.0 // indirect
140-
github.com/magiconair/properties v1.8.5 // indirect
141-
github.com/mailru/easyjson v0.7.6 // indirect
142-
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
143-
github.com/minio/md5-simd v1.1.0 // indirect
144-
github.com/minio/sha256-simd v0.1.1 // indirect
145-
github.com/mitchellh/copystructure v1.2.0 // indirect
146-
github.com/mitchellh/go-homedir v1.1.0 // indirect
147-
github.com/mitchellh/mapstructure v1.4.1 // indirect
148-
github.com/mitchellh/reflectwalk v1.0.2 // indirect
149-
github.com/moby/spdystream v0.2.0 // indirect
150-
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
151-
github.com/modern-go/reflect2 v1.0.1 // indirect
152-
github.com/oliveagle/jsonpath v0.0.0-20180606110733-2e52cf6e6852 // indirect
15388
github.com/onsi/ginkgo v1.16.4 // indirect
15489
github.com/onsi/gomega v1.13.0 // indirect
155-
github.com/pelletier/go-toml v1.9.3 // indirect
156-
github.com/pmezard/go-difflib v1.0.0 // indirect
157-
github.com/prometheus/procfs v0.6.0 // indirect
158-
github.com/russross/blackfriday/v2 v2.0.1 // indirect
159-
github.com/sergi/go-diff v1.1.0 // indirect
160-
github.com/shopspring/decimal v1.2.0 // indirect
161-
github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
162-
github.com/spf13/afero v1.6.0 // indirect
163-
github.com/spf13/cast v1.3.1 // indirect
164-
github.com/spf13/jwalterweatherman v1.1.0 // indirect
165-
github.com/stretchr/objx v0.2.0 // indirect
166-
github.com/subosito/gotenv v1.2.0 // indirect
167-
github.com/tidwall/match v1.0.3 // indirect
168-
github.com/tidwall/pretty v1.1.0 // indirect
169-
github.com/valyala/bytebufferpool v1.0.0 // indirect
170-
github.com/xanzy/ssh-agent v0.3.0 // indirect
171-
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
172-
github.com/yalp/jsonpath v0.0.0-20180802001716-5cc68e5049a0 // indirect
173-
github.com/yudai/gojsondiff v1.0.0 // indirect
174-
github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 // indirect
175-
go.opencensus.io v0.23.0 // indirect
176-
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 // indirect
177-
golang.org/x/mod v0.4.2 // indirect
178-
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 // indirect
179-
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d // indirect
180-
golang.org/x/text v0.3.6 // indirect
181-
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
182-
google.golang.org/appengine v1.6.7 // indirect
18390
google.golang.org/protobuf v1.27.1 // indirect
184-
gopkg.in/inf.v0 v0.9.1 // indirect
185-
gopkg.in/ini.v1 v1.62.0 // indirect
186-
gopkg.in/jcmturner/aescts.v1 v1.0.1 // indirect
187-
gopkg.in/jcmturner/dnsutils.v1 v1.0.1 // indirect
188-
gopkg.in/jcmturner/rpc.v0 v0.0.2 // indirect
189-
gopkg.in/warnings.v0 v0.1.2 // indirect
190-
gopkg.in/yaml.v2 v2.4.0 // indirect
191-
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
192-
moul.io/http2curl v1.0.1-0.20190925090545-5cd742060b0e // indirect
193-
sigs.k8s.io/controller-runtime v0.7.0 // indirect
194-
sigs.k8s.io/structured-merge-diff/v4 v4.1.2 // indirect
19591
)

go.sum

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -888,8 +888,8 @@ github.com/nicksnyder/go-i18n v1.10.1-0.20190510212457-b280125b035a/go.mod h1:e4
888888
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
889889
github.com/nsf/termbox-go v0.0.0-20190121233118-02980233997d/go.mod h1:IuKpRQcYE1Tfu+oAQqaLisqDeXgjyyltCfsaoYN18NQ=
890890
github.com/nsqio/go-nsq v1.0.8/go.mod h1:vKq36oyeVXgsS5Q8YEO7WghqidAVXQlcFxzQbQTuDEY=
891-
github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78=
892891
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
892+
github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE=
893893
github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU=
894894
github.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtbWGs=
895895
github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA=
@@ -904,18 +904,18 @@ github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+
904904
github.com/onsi/ginkgo v1.10.2/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
905905
github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
906906
github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk=
907-
github.com/onsi/ginkgo v1.14.1 h1:jMU0WaQrP0a/YAEq8eJmJKjBoMs+pClEr1vDMlM/Do4=
908907
github.com/onsi/ginkgo v1.14.1/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY=
909908
github.com/onsi/ginkgo v1.16.2/go.mod h1:CObGmKUOKaSC0RjmoAK7tKyn4Azo5P2IWuoMnvwxz1E=
909+
github.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc=
910910
github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0=
911911
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
912912
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
913913
github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
914914
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
915915
github.com/onsi/gomega v1.8.1/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
916916
github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
917-
github.com/onsi/gomega v1.10.2 h1:aY/nuoWlKJud2J6U0E3NWsjlg+0GtwXxgEqthRdzlcs=
918917
github.com/onsi/gomega v1.10.2/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
918+
github.com/onsi/gomega v1.13.0 h1:7lLHu94wT9Ij0o6EWWclhu0aOh32VxhkwEJvzuWPeak=
919919
github.com/onsi/gomega v1.13.0/go.mod h1:lRk9szgn8TxENtWd0Tp4c3wjlRfMTMH27I+3Je41yGY=
920920
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=
921921
github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis=
@@ -1155,6 +1155,7 @@ github.com/yudai/gojsondiff v1.0.0 h1:27cbfqXLVEJ1o8I6v3y9lg8Ydm53EKqHXAOMxEGlCO
11551155
github.com/yudai/gojsondiff v1.0.0/go.mod h1:AY32+k2cwILAkW1fbgxQ5mUmMiZFgLIV+FBNExI05xg=
11561156
github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 h1:BHyfKlQyqbsFN5p3IfnEUduWvb9is428/nNb5L3U01M=
11571157
github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDfVJdfcVVdX+jpBxNmX4rDAzaS45IcYoM=
1158+
github.com/yudai/pp v2.0.1+incompatible h1:Q4//iY4pNF6yPLZIigmvcl7k/bPgrcTPIFIcmawg5bI=
11581159
github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc=
11591160
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
11601161
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
@@ -1671,6 +1672,7 @@ google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAG
16711672
google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU=
16721673
google.golang.org/grpc v1.38.0 h1:/9BgsAsa5nWe26HqOlvlgJnqBuktYOLCgjCPqsa56W0=
16731674
google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM=
1675+
google.golang.org/grpc/examples v0.0.0-20201226181154-53788aa5dcb4 h1:tfxAh8kBsG9GdCdaDiSCA1qqpd8lMOqgEebUyqTtnH8=
16741676
google.golang.org/grpc/examples v0.0.0-20201226181154-53788aa5dcb4/go.mod h1:Ly7ZA/ARzg8fnPU9TyZIxoz33sEUuWX7txiqs8lPTgE=
16751677
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
16761678
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
@@ -1692,6 +1694,7 @@ gopkg.in/check.v1 v1.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8
16921694
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
16931695
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
16941696
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
1697+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
16951698
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
16961699
gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
16971700
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
@@ -1710,6 +1713,7 @@ gopkg.in/jcmturner/aescts.v1 v1.0.1 h1:cVVZBK2b1zY26haWB4vbBiZrfFQnfbTVrE3xZq6hr
17101713
gopkg.in/jcmturner/aescts.v1 v1.0.1/go.mod h1:nsR8qBOg+OucoIW+WMhB3GspUQXq9XorLnQb9XtvcOo=
17111714
gopkg.in/jcmturner/dnsutils.v1 v1.0.1 h1:cIuC1OLRGZrld+16ZJvvZxVJeKPsvd5eUIvxfoN5hSM=
17121715
gopkg.in/jcmturner/dnsutils.v1 v1.0.1/go.mod h1:m3v+5svpVOhtFAP/wSz+yzh4Mc0Fg7eRhxkJMWSIz9Q=
1716+
gopkg.in/jcmturner/goidentity.v2 v2.0.0 h1:6Bmcdaxb0dD3HyHbo/MtJ2Q1wXLDuZJFwXZmuZvM+zw=
17131717
gopkg.in/jcmturner/goidentity.v2 v2.0.0/go.mod h1:vCwK9HeXksMeUmQ4SxDd1tRz4LejrKh3KRVjQWhjvZI=
17141718
gopkg.in/jcmturner/goidentity.v3 v3.0.0/go.mod h1:oG2kH0IvSYNIu80dVAyu/yoefjq1mNfM5bm88whjWx4=
17151719
gopkg.in/jcmturner/gokrb5.v5 v5.3.0 h1:RS1MYApX27Hx1Xw7NECs7XxGxxrm69/4OmaRuX9kwec=
@@ -1718,13 +1722,15 @@ gopkg.in/jcmturner/gokrb5.v7 v7.5.0/go.mod h1:l8VISx+WGYp+Fp7KRbsiUuXTTOnxIc3Tuv
17181722
gopkg.in/jcmturner/rpc.v0 v0.0.2 h1:wBTgrbL1qmLBUPsYVCqdJiI5aJgQhexmK+JkTHPUNJI=
17191723
gopkg.in/jcmturner/rpc.v0 v0.0.2/go.mod h1:NzMq6cRzR9lipgw7WxRBHNx5N8SifBuaCQsOT1kWY/E=
17201724
gopkg.in/jcmturner/rpc.v1 v1.1.0/go.mod h1:YIdkC4XfD6GXbzje11McwsDuOlZQSb9W4vfLvuNnlv8=
1725+
gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 h1:VpOs+IwYnYBaFnrNAeB8UUWtL3vEUnzSCL1nVjPhqrw=
17211726
gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA=
17221727
gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k=
17231728
gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=
17241729
gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
17251730
gopkg.in/square/go-jose.v2 v2.4.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
17261731
gopkg.in/square/go-jose.v2 v2.5.1 h1:7odma5RETjNHWJnR32wx8t+Io4djHE1PqxCFx3iiZ2w=
17271732
gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
1733+
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
17281734
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
17291735
gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME=
17301736
gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=

test/e2e/fixtures/when.go

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"k8s.io/apimachinery/pkg/api/resource"
1313
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1414
"k8s.io/client-go/kubernetes"
15+
"k8s.io/utils/pointer"
1516

1617
wfv1 "github.com/argoproj/argo-workflows/v3/pkg/apis/workflow/v1alpha1"
1718
"github.com/argoproj/argo-workflows/v3/pkg/client/clientset/versioned/typed/workflow/v1alpha1"
@@ -309,6 +310,47 @@ func (w *When) DeleteWorkflow() *When {
309310
return w
310311
}
311312

313+
type PodCondition func(p *corev1.Pod) bool
314+
315+
var (
316+
PodCompleted PodCondition = func(p *corev1.Pod) bool {
317+
return p.Labels[common.LabelKeyCompleted] == "true"
318+
}
319+
PodDeleted PodCondition = func(p *corev1.Pod) bool {
320+
return !p.DeletionTimestamp.IsZero()
321+
}
322+
)
323+
324+
func (w *When) WaitForPod(condition PodCondition) *When {
325+
w.t.Helper()
326+
ctx := context.Background()
327+
timeout := defaultTimeout
328+
watch, err := w.kubeClient.CoreV1().Pods(Namespace).Watch(
329+
ctx,
330+
metav1.ListOptions{LabelSelector: common.LabelKeyWorkflow + "=" + w.wf.Name, TimeoutSeconds: pointer.Int64Ptr(int64(timeout.Seconds()))},
331+
)
332+
if err != nil {
333+
w.t.Fatal(err)
334+
}
335+
defer watch.Stop()
336+
for event := range watch.ResultChan() {
337+
p := event.Object.(*corev1.Pod)
338+
state := p.Status.Phase
339+
if p.Labels[common.LabelKeyCompleted] == "true" {
340+
state = "Complete"
341+
}
342+
if !p.DeletionTimestamp.IsZero() {
343+
state = "Deleted"
344+
}
345+
_, _ = fmt.Printf("pod %s: %s\n", p.Name, state)
346+
if condition(p) {
347+
_, _ = fmt.Printf("Pod condition met\n")
348+
return w
349+
}
350+
}
351+
w.t.Fatal(fmt.Errorf("timeout after %v waiting for pod", timeout))
352+
return w
353+
}
312354
func (w *When) And(block func()) *When {
313355
w.t.Helper()
314356
block()

0 commit comments

Comments
 (0)