From 93d0087bce182fa5381ccf356d1a692aa680c1d0 Mon Sep 17 00:00:00 2001 From: pollfly <75068813+pollfly@users.noreply.github.com> Date: Tue, 28 Jan 2025 15:19:06 +0200 Subject: [PATCH] Add pipeline step grouping by stage (#1021) --- docs/img/webapp_pipeline_DAG_collapsed.png | Bin 0 -> 38796 bytes docs/img/webapp_pipeline_stage_card.png | Bin 0 -> 7275 bytes docs/img/webapp_pipeline_stage_info.png | Bin 0 -> 19048 bytes .../pipelines/webapp_pipeline_viewing.md | 38 +++++++++++++++++- static/icons/ico-zoom-to-fit.svg | 3 ++ 5 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 docs/img/webapp_pipeline_DAG_collapsed.png create mode 100644 docs/img/webapp_pipeline_stage_card.png create mode 100644 docs/img/webapp_pipeline_stage_info.png create mode 100644 static/icons/ico-zoom-to-fit.svg diff --git a/docs/img/webapp_pipeline_DAG_collapsed.png b/docs/img/webapp_pipeline_DAG_collapsed.png new file mode 100644 index 0000000000000000000000000000000000000000..502e03ef65d5bf37107e63672c6f6bdde2b367e2 GIT binary patch literal 38796 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 literal 0 HcmV?d00001 diff --git a/docs/img/webapp_pipeline_stage_card.png b/docs/img/webapp_pipeline_stage_card.png new file mode 100644 index 0000000000000000000000000000000000000000..f215fec317827583ae08fdaa2f8a452b95eca514 GIT binary patch literal 7275 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 IDq4T~U(Hw>g8%>k literal 0 HcmV?d00001 diff --git a/docs/img/webapp_pipeline_stage_info.png b/docs/img/webapp_pipeline_stage_info.png new file mode 100644 index 0000000000000000000000000000000000000000..14aba241b7a0b8d178fba0a8246b185d1db510e7 GIT binary patch literal 19048 zcmeIaXH-*Nv@RSAC@7#JApKQT1O!9~y$J%+Av9@0MY{A}qoN`p@QU=_5(ohzy%XsQ zgqF}t=p~fUTS#*Ao-^(k_xrx{d01)%u{7z9%u~ zmLaRqU(Qy_&)(d`zATn#ewjm0Pt!`{h~X?B&iiOJVO)}DkkkW`FlMm2-IP{$<8nL6 z$mmfd4G2y#pRK$v^Wk#a-b38LexLVjs<=achRlc4O#f6FsHW9E;W7a5Dw2?@K^0Eu z1{eT%Z*rA-OTPp^u~9Fuv|R%Le$vlVMSuBu=OO@5q7rZc05HAVL>-R!cMt#9f6_Tk zxq6vn{Q#5xXmCve_-;_SFvBYYrB;3Q2^yIcAkXEKO`ZzK|hoX2=D#Zi<;Ijxo z$D%KVw70KH9IYG^a7ZMIoNiX8+g&gaZMnEWn+%~4bI7M?CF2@O_GRjg;-!zR2wD3x z-l+5o(~sxuKTeu%%y$wN7o=FWaAsPL7XUd~o&zK|T95kFUufED_-K3dl+4(&B+E@J z0H7$l$>I+GwYrZJIW^cYv^F0qJ9?^{sxz!j>*E`JwAE1Ra5=6?wNk1!4=tZuyIlFq z6@IwW=1cvta=~OjZ8Z;7^MKd~|1s+R-&~#ldxrN2=q{u|9D1tniIrC$zig--50)3G z+CY}K6E~ukE_Zfc?o)x6RK2v6YRawG9~j)@w$HWQJVyyO$E3n*RD|_7i~iV)yj{~N z?cMx~V14X5`VAot>&2s~U4SHxP`C4DwRa>^T znT`0qzSjvW0)=B9XkeuwLq?gB15|J{9e%>z?fBZQ;UmGc3V&hd+@mZN@s}5>MtIb& zR%s;}_(C7~8|3^gRiWV4^0HMvku7B+$8Vh@QRan$?DG)RmCQwBtD>d{-ihMg^-5RsXV0re=j?UmXIlp(uJT9u4$Ux2CDP>S`4M9?TfmdrM%hyOVt=hY3 zCkq#Kn;y14F10qF(e>~IZs+ir!$KZKh9{6FD>;H)(&8K*~ba_S>01e1|0I5o;9v_VAAEvuid%DkNsK7odo5dhY2O z8)_f+>MLB7BV)4Y4^pSzw4*a~ULlEld{rUKAUSrZlIh5x4Q}6pJ$*nvYMjiV)GJb^ z6oF1hp`8t@jkLPH;8pKx_d}5DtPoHRQGK-KGkW^?jqIS#YPI8ndtpFj62;EwbX938 zPuFEXfqEDTmaUlwgkLnT`8@9WX z1zJO<7vhp!X1X2`@wya*E@9Pq-;CVgRyx>56fwfQs+(F2LDiFw8$;byf$l@bF&VbF zzeF@MMO|}4Rux=Ck1zd-WWFx)Z2P>7JKK5eNFN>lLnG%qWP7@COr~`-UUudkHn``O z?k3*M%xRS)X6-nq2k3mCaTqfYk^VT!lyMBbxPP7+Rs8O#$O8Y#?9d0wk$F#;GGHmO ztsrjstax8h{|c_K#Gsd7DaTW&SL1_(LneQwZ_|EgC#>i67LC6<4vC<{pG4gR#9(GfqO zh0>zH{J)y_o`0TO2qKEb1Sm|4K3d;!DSBKYT24ymep4vokI=rz27dQ^R zJzd-IF`rx}`#8j!TU;ySEWpmug>>7aLmy1b|M2i+;UDUdc<_18^!py0+0dy;G;s0H zE{D`m=EIFs54nCiV^}=M=-u=)5--ru;Img!rxi zeyBU)!mpHj-u;DL-`VTwLDP>Qsy53uS*{&){5)73{sU}wi25i~u(l|ba6C&$ ztVKWmO30bLq$>j&3&6-PJ`x^Y5ll<6I&~Kv+p{Al5F^b4RJaYu8!jprgpcBLIXJh( zN281%WU_w~0qyn&!fxxfL>;H(?Z@2rkx&Etd|}es>H5&CFbW^^9*&t;)8-j0c<@)h_@|qQ=mrL{<*Sso}J)Ab|eq%tmP(%C>hp!YBU~w zK~jcu3{M{xhIM~3aVEC*%=4^J z*<>%dZ!p|{8eX4$*+uT6mL{itkA?_P9JtWHzl*;yv^lTKrm?B{<_a|8%u{++gx>#& zTSiX8@9$y+GzR;1ryN*uv{qnLP_O@Z*xoy{?Uzib1pcGPm8tyX!ZuWd3;b3*<6$%O zk)jVv^BWe|r)mIcO>QR-x?-jauL1{k$0T5v|pEYSG-6aAEHLNUrwsd&8NzTgE2uBWqkaM`m{Rz-9ERBX{VuqJw6> zOXxO9Tj_&L&-{&KRmKiYwK_gy?A2V!9(O$dQ)SwP%p{)=v;cLun{H~_P0H^J&M-H$Kt5Jv+2nllo3~Gj zcMa?z){Qd(x5I4GiVMDmaea;!9edB;r?V8+!0k7-Viw8^g{-*jRt4(4mHp(5gX|258iWdeZ9fr5PVv1Lc=!puGwf#?WTq@cY_9Fnh2=hnhBq%e@~XVRsaX#=d$W)vb_3@Y7?S3 z_yvSd8XS#~Rko1UmSY|a`^4x6-_~j;-o~ z<~0~E-ZEa*;9Rz68jX9(iz%t55fov_S`M)zY8fB2a-cbs22ZOYK7}=(ZYt>NM%mi5 z%+ie%JeS&N_Q+<){84PUeD-e18E-x2=yCLBIn>a~>9Vi6Q#rkqh-v@MhlW6(4uj1f z#@iiE7R{JGY{j`bQxV~3_d!pP|J9I=53(;|@zyjJ3NB5w2f@nTh`La!$E4`nFmV+C z$apEic>(Y~DDMB}iSSq`8GCcZ?B}4%(1SoY1JbSU79;&p9WkTPkYI_7Yki0FV|u zyw@}xcG$V+ZNt#%Kf09)+w5sFoQZQ(EysIpT{WUQ+8X)bPst}K?*>mCJ>7hDPp< zntQ#y_~DL`%HiSAjstk8ge`M@w-NpHlV=D3tM4=3saaAV-|vc8^3D(tXnm}Dr~8UB z>G}T>1i(h;4!5tm4{o{k=`gT7UN6Y~f$keOJLvayMe8uQ2J4zllZ#T}4!4MF{Wp)- z&KOG*Zfrt)e(FFwEvxPSa47)2Q?*FYEHGxw@%({F+?wD_O6hF7jfD4Wv9WK1DRM}Y z!j6E?4Kj&|MULGOLHnQi58HZ>eQkn1&6Z3vK;@YMe=zQsjd6_wVpKHPG;Y~v)Tmxc zV8YyV+dc1Nipw@;zzwB2GeAdB{g*eKqKT=jtbQGV+H^FgoO~N3jLqa8^*aa<57Z9p z#HVcTs(jm*YMv&h&laE79*!Mo5!uRP;gqM`bJ-6$Wku3)nBi2 zte1ko#nrVvE_wXW_6w_0Saz8^8>2{>GNuME=~2Pjj5UwgFc}W(kQYw#s71wm4ZYgY zAynVX-4hs=wY}xc%EKn=R7uD8AxQwg%*IzW{P$7olUdWu?RR!PH)&yy{&2;8L>qq8 z9<#w859p6xngJD`hp{#9^yZ(3UC3#o;up!=+)l!O??(rQ3p7aHhX20pQe5X)DKNq> z<#aCU4yy3i6EbYAzzMhnG?cyIEXWlHV_5gAFZX+nrhENRT6`(i)L5y<@6a=PHmC1b zyV7Gh3I~;H4~J8rHa@P)ahHW=iq*u`1r{Y8W*RFFP8LE~czv?Jnh-739Z#Tc^&dNK zp8484bO!UUKV@+Z(PUO<+B+5}J}AYR!%{j-Ww8NbQs?r1E>Wo1S|)R?@*&``9k_iR(f0@dAzRo?BAIXiqRzG!h& z03Lt&#@_kW0P#%q$i*JUvyL&^Li>7ZNhu<7nX@rpV%#vgE%Yn$#o6cBRNSgk_Fzj~ z!)Yf6zGO^z1VF=5?+u0yiRSkF>HD&!arkeBW!z2 zf|5%<>lDPiWx<)NZXZW?tFHHyKJ@5DgpT!t1(uSc6S>TLefm4`4m~ZV_~FTr4|275 zG`+4CsY|xCQ_js!@TJ$UC_kPK*S-j#M8PM9Jr&*2_-4XKabSgr8cJ-LY%Bm!iZwn}hSFd0uxDs*V)A zOUU576?;$gZ6`9uHW4_K+NG3xY8dOi-rLGthiy`0GNNx#CCR2RS22fyGf!e|L{_j+y|K~9v-Be#KzHjFG`?R?0K6td znhS;CGCalv_VT_p2pfwV9h_PU9z=ItJ*0ow!i|u4?Zwh9JVh4|mdRn9sW;$zKWPX# zYubDXQ)6Nn8I(ISv*jr6Mr^)4NtEp4f|e8^5%Q!ZwrY$fM$6sZB-g(!=~jbcUc^&b zGiTYC2L?MYV}|clme{v|=8NqnfA*y|*^mr3#|dLi&wm7but>`kBrcGOk6S}x9o-18 zoWn9g|3K=a^jiDrT0D|%uAk>*%AR&EzDgZ+-*>roDUxm754qH!pV{;Z1Urw3lYKoc zEO%jX`0FbcJOPyF%E^cLi#wI=v$HFG?RlBX&&Zuwm&po@XamWu>^K_WVZ8P;+SZ}_ zM-YA_MCmfE#rhf1!SS>K7!*jB*X8ujZm_-u4PU#dZJ7Mp=#V%z>Uh||5X3L#wWmR+ zHUd;MUfe&V1mhB%ABNDZn&OW^oyUxN;y$6;l@|HGzR#2`TrE9$h2Wj#s5L2^Q>gjk zXR2kp>WSmGP}&zl3+)iQF88l%F zXzgiJ1-&XN4Xb&}1VZf&tfTd#Oz=S64#C_QW{I=u(r%dOsGPRV(4|_~i4ZTmLr#KR zJ&`6^S2)?oKSG7KK*I*Y@3vk|_mv329p~6LBP+L1V{S-2*XCECnnhK#KaaM}i89SL zv)-@u1)2;GNV4ka3zPQTplcU?eJ_%le?YatXlsrwHqQg6-E%m8tiMSb)Yu3NBc~N1 zBV|ipmUMsNS^hKO1r>r6b`$W>S+jA5XjiVs3{uQspVg@N0v+M1S5t}>*YyNb; z`|w$29z&<%e9LfpD=f3)8kW$Yow!+j#dT!GfH(8_5Z@gpqgY=k`}wT#Is3h>Ns~9u z#&1TRo*JMbnIpN-(__$???|XEAcq#O7En*ZN5_@KJqvM|;gLDJx3BK2M4i02xBAe% zptE@ZIfk#zSg+1_#P-75vyE=O{<_HzJBsF4q_81nY|3U9Zu~Pn|xl3p*Pz z@gE;~T6z_h+{Lz@NKp`63VEzu+-VoRvEj=!E-3sP>OY$7P8pBTwjF# zu7N0CWWLSul-t0IQ|SX6tMMJf<5}&=wV3P9P?6-54P%~ruA2cMp^v<><%L}uu1DUn zQ(v>}Q9V_Gy313{fM4Hp+C^ehS+32BsX{N|B?8Lq6~eNEe0_ymVInip~a>JCYqa^ZEKne0EH+6%Z z%6Ovcm<)0ZcY4HMZ&cb`vwkcJACPF~s*kaRz@4ID>qn9iUrXgG4zXI|dHjQ>wfYvh z8CM9B#C5ktMTLU}tK|bH#2u;MhltY2RA;X2zjyw2!kJB06uh~zd|bWY?fpc-@XHI0 zmlCHBm?txoeKH}_=Y-llPwF;~0@^2;QCFrbhMg&#Q=BLBBv)Kwqiha(j4(KF2@`it zVO3i%j9=o~H}4mV`^K2)))z4I7R^1Pp=q)lz3_&myPK%{K+a4cA6KMRO((`Kla?6x z`Bw3``g++L8jFr#;!RT5w^FR@u=tsYzIXb^q8{UeBMgUZ!$K!hoKH-~CZL2Y-fo7c&;;l4clxM{HPa&Q3X6?XX@LN(?)T5A$680dya}WWeuX ztNyYuVDt&pK@on+Sz8>C?PTx4{n%(C3t9Dg;)fRMZV)x%s7J03tL_VQ?a)3Zi@)ir zep~YNi^BT5{Fl(1`t|2DGsCm>>Blo1)9M{G>(h-|Nb4u2 zB-Rkml)ES!r>*w&hP%>_<-L|Gp0c{DkjV|W@{0FO@#(TCC) z2j2I(Oxr)WSJGp~t(YL_Vgi`EuZF(nQNp!SHq?A8d~Dtq`N$;-@SZsjjBWBcJ*3y& zSl~yc35-TXHcQ+ccMz*kQf6R5LX6i@MG^i$ijcG*79~V(d-nb|t+n3RpEP0s zFQtLMli;|-U~WNBx&)BE?hK9{{C_|(-=$a4cKZ0wG2i(li=F;~Vv?=PZ%4d3Ncgdb zIValN7@=r;r<1uXEia_V)HeMghnT9U{?k@9JHdce6rBjb;jhohppvBfpDdH8tHE- z+S`MFH@bn4*DM5D$|J?>9tckE=9>0HEFdrA38I$(#+?6}A62C0O><`X{`XR&|5Y5| z|M;Zwe{1GHDEt1Ot;n3PHAx#=R#(j8wuEbx`BlJAL()~z-SCmc+**ks(+`lnrtqOP=G6a>vGwD*kZ1KG6KRVEDYJ8UU=>^?9+3N$(U)=d#nC+|3D+IB8ViYGY@dufQnwNJse-P{q3|`ynk*aLD=DXc& zG=kKAj=`di@V!jr0v5=f(g7hZ`r5Rx7tR?*lL%dX{gLe~b9{VAlAgEAS4N(}ZKPK< zzFs4t)~>NOET)bWOr0ZhN{;B2hFY5<1)EfP=CYzw3aoJ_y@Il(8@Ff12^Q7vEQMcS zF#ME4wo~sU+re3e%p^gSK3ZPgk`15xJ)cxDWIHK&=)94P3dxVjO5I9sj;%Czit_F4 z-{47YHj|oFQ05LN1bZO;*h)q}c2^$QIoiyuPuYZYR_P_s2lAwg-#P&$~LE^ z4;w{v9i$FXNcUs6u_P&&^AG~LVd);Z;m}~)|H9hQc}dY`P<^0fGdVPs3Rq-} zRA4IbmQ6|P{VGc#qCkC&RDJb&!XA9y-L2>E!=4|F1Bv@zJtO&+|| zb{u|8TuUiKRnt%Jz6=Z!N4@r?P=*+v1iv}(*jFXq{LVs#)pnS+t%mf4h0UEmog+Wj z1MvZi`5ba~T3B0u>_Ra9gJ-H%ObCwF)7h^zrYFPW+bkw=TtlgM?It~SHqX)#F+L5Z zZ~exql{!IMl>LbdMoAXcyiQu`cot`7`C|g*MS3y26-b?8$hW9!|0&aF55 zJWR}zY|kpa3KKOW_L7^l)a+A<+1|+!8gT7v-nXWSse9ADNg@~xii2KIVP;|0vED9Z zS7T_$7{1hNRqAb1>zwaLgOKLPfMP9qOY>^(rd`nT*RyiC;$j)4^psd(k$pvcdY!G9 zps;)leLW!1P)G<|`4p<$s3e&!ek`8Ib--FYUw`QU6LC);Uwwc3@oGo4S@voJ@w8!2 zk!-nU7SLWZR%|9Ep3h)G2u+HaCwN14UZP;Smgow+Z1s1JZCqKL4yCYZ@PgOHUv^4{ zIAig}6UQyu#FRa!RqNbX*rrxpMd(^bBc;;6>Q4fbz@gzxK&lO9b(Di;S$O~Gwe{?g z!PcnLpG#PRDYF%VSeqhinJV@Cl!uQ3Tfq1%Hec%d#ypJ+MN`ggzFeBz7AA|CH@k(K zd);?$pSWaL0_+=Hg-eYi2 z%V;27$0*8ntS8&Cr(IPiI|l(=u0^Q6zAJgCcUTe@UkpPD5NbmYH<2@>zTvzG_tD{t z`w0u!g{C=8*IdcK>}AYOx#$#Bc(y_#fdVx*wWds#jW9Rh)i4yNp|utZs~hqkvZ0hU zqPUS?i8Tu&MDKue@l$8^yWHKb>G9ceX4eF6#g3;!-#~(QgWUc@|){TtZKq zpziGbCo`Ipd8X+jVNM%__ek_$$EYVR57CT zPzY?}n8futEzA^91Z&_1b2U2Hl+rCaIAhG_DLKusRMX^>XZG7u93H(f8pa3@w*kFe zN``+kC*#$Y5sO-x@fQE2$pUqXZ@tS#)t)Pv#@r&AcX~`+>tsF#7UIY~bp_%pH+4S8 zBBoIn>T(|iw*yx!{6TNhWDJru> zc+HY}%?GzJ+_AdEVfC7=R`olLGSg3r$u5nft6{gx7#t@w>0po1*fWDtjf{R>@%99L zl%{Lg9NQsU<1Bj_79x$~x*Cd$N%w!`ACo(CO?@36X+C?ioGiSs~mc+WlB3f_&q}@{PbK1cXq(+N3b?C z7Cf8trAFT-Ew4xOmVk{UH-=>Pfp4bsIXo6)@Izy%!~Jq0M(gDskClYp2bEIO6glpw zH26rIO{qZmlw;dcVUJRFSh*esYTmnv7 zS6kzFBrmRAS7H@raz__*DK|FOL}z2Rl#J~C!qArgN-IhU2(>L~bu!csDlhze44oZE zNllB5R~l?6F-mf0LcJU1ixXZ|_s%i|p&E46pW&Lynz|dE+gw9|c3oVQkCCk$QLt5b z_g5MYgZA(CY$OgTszX4>toFh|f66EpIKjM_+MHLf8u2~4h- zq@AMTPgr`@68!;V952%mQR$%BRG_u;Ken$7ps1 zSe-N`qJw+I`m`+~!pkjfJ!1G6eAtkCj_cgEzNy-&U%Ig18S4m%{?3tQ5!Q&#cx5z$ zg%L=*NuFQEV`4x(vArpiDhR)49=c@ z#TM2+rTe@auMT^f%(yLS^V`9$7CW|~P3XRce%_+(Ez1BpLa?U;V)=M#;|iN~Q7FZ> zcwPwyC0OI%AyO-2XdQ}N;~En~z#5sU!`iDyO=j!IWMj4mS@6+Jx50HA(zDZ*Y20}a z5i8cp^eDyx4DGiTF?#n#s#@0@yuZkE_UuXHInEh~jPuaNELZI-~?xR_qEipRA~prm_?Le2se!**0{J+ib;3ecd+H1<9-C&LKnGc;LHF z4H?{SZf6>;?ul$oSG7P8>%de>nCwsMbg)gq?`twTGoXr)4r@l?lAC#>A zUANJ)=7s)7t#S$&P9Z|b941jzu;zfDE+dUp*lDa1n@qXgAupRJX%H)9*s;S*{<+q= zT_c(B&Vh6F41&vQ=B(O8^$;kzGE*u;a<9$XF9~m453mda4dAYw@M_iN% zatM8HwD_9L>R;=7v?UM0>FML4H4Zj8D@s0!mM9Hh?=*`0FXrVGDSSw+h};zAJZ5pg z3?ptdBKg2D+if?Fq+~IZgAh5u5f3UwjWCyRc;1*FK1U`@aL5W!>uLZ(hFmsala{Z7 z47vReF23c6?FgRc6iYjB9GTy_M{0bPt9T9;wZ@ix=8&Q6havx@o;{oLa}I71uXZgJ zPrFRfR>~2@)!BH1k110O6Qic9U|xCitTNVZ7Zk*RH-fw`YCJDT962aPB+P|L;am#D zZ}soj;u@eIFTMA34^iJ=L9v}d*#ke4k8G}BPx@+{7q@=wr_G6wHpEK<7ED8}w!{}T zdMFal{#Z|KTzBBaxeTk&ZA%WgBgD~RMbc*8JRGbovELSPmN-m}IC2Og&2M*nA9GSt zV^0}4h)vy?8n7Ar#?Ozqzur5f<#SK))+#o*}yf$ zhK1Lm9gSDuxq6fj!6gHuwY>8AaraamByJKKA#wXmk6>zR?svT){;2d)8BvW-Rafow zUJ+ks`{i<^&2VN7FK}e}^h&y#{rRkLsCwM?Wtj}NDDvEC^lvHr{DZ$pdM|)?#l8HU z>Lnn_@Px3_H@Z@p>D$02tI|SD-?OnUdi5Y4u{0&&+fY$zBgZU_AvQW;-WJYUln)1! zah7RoeY5>FGlH!A5)XYg;k_Azv%Di$U-d_Ib@$qP4MR);zCGnvMVHAoh-g32HAHuq zti?66(1MxZ_OVQl`s0v^!`7$5T#)LlRBJK^f0p}0C%>bOvk?7&4sRw=9&L;!Pnu<=OqalVU)b-&VZ@|3AMgot>JaIcBF?BXEre)Y(y@j?+zy1Z7FOg z3(GkY6yX&mrP566{?b2m{aa#=g2j-%A zhR~7z1MbO83jfDzfQ-LBvCaKWTeLVMLv;*YW5~M??BAmOT!ZRaw@K8%<-LC{%fhvB zoQXl6E}adTcHE7)FfE}XzYFh~zwBJ(8oodh!pa07Tdd@CWhSrq9oD34q3X3qmnxlwd zn}2Y3@t>0Rf?-ijP>7DQ9kJ(J^Fn9M3(({*I*XHGW_-3I_`Nen{%7zFD|q3RG&SW? zM`*z}4GC8=M`@OlDihS-)GPWuN28&A(vw}* zq_)WV&NQ;p;;-_?FvYMtz$d@xjgKd$87NHwA`@4g<8?lZ`$RWDFKNH zqz7;nN<_MlGX=(?Iyy#YZP#bt5OzP|_c?{RlVJggPWycbpMl4fP4SP>=29;N`bC@a zOxk_-+XL+b4L$}r#9*yML5W!Gsm+M*Pn`#HdsQc=PCe%A>|d|f8m;?k4%c)xoSuSW z8a8O54{0H4vdEbl3-O0BV?x<4oQ^5#N+^*xQ`F%1^v;*8f&QVrD2kJY+wt;K-M+Qb z1lHEAq@ojym4Z_Lgd3EyIm6g!t`+m0KG~}5!VmPq3pZ3wHWMiB+O6B1(}@b7dn_fj zjl7fO33xttzu#wNP;sUtt;McjlyJi+X27vvTK1W(_;Ay}su=PVi7FJB z3Z)FoFCTD})srh@pY??CX*=!O30j@MriMSYSg7I+M1e^7!49)+0^aq0)Co_Tcm+zf%E#u;v|Gu-l*|;V-Nz1F zMbR4*vsgR2)-X;d!qDg7Q^W3vKceG6IPmhmHTB_oG9YL4wUMbmtZQBWIk#BC%H;wFjg!_shTz$aCDh6vmtx0hZGDrd<3pMRY)fP9RmmPv zHY-3*9yROJ4%Fp)ReA%a6b9-ljb< z+x{uJ`1+8w^|{Syr@Im~_+Gl6-(xeqm4MRO_5Kc_t(wQ~o)3uh2YW@k%W3Lf+5LuD z$Fkim=(Ke92_I0wGP9ZEzG5vG@{`_dThH{C;!e)k=F&cqu++3AHAXXeY|IjDtcm|b z)^f$)o(>hLMQ*p~V4U3*!Q5prMWOImZT=z(blcwmhW6$itoyoBotL->^et85#g&`Y zPbSZjkOuKn*I8X5(~4Ry2-eA4n@c;vg4UppoC+5e*s;{tUIc>5=9n1?w zH>)i#3p(W69Orn0@*_Tn2b*x+vw5f6c3#J)bGFJpDN_VW|6IH_K4U}_lxObxv*$)1G`YvCl}Cp|1gx-`LM6&^*wjZ4=AJ< z9sUOXQD!mE>Y1+p&~dj69ttMiqB7#{HE~5v-5d>lOeHZKH$6za%@VRDH6roVP=!HV zFp*38l~(m;Gn0uip7qU$d{FizeS=V|&wiw<64gyU(}oH(BGzqhapvDf84D{|q%laf zylBsR=RdRPWbYVM@@8O{KK5;A8hzzLrUVH95JX_+p+CpZRhT+Pin{)K#22uqkdPd` zB=zQb)_Y-=tJKVWkFgrt4`-JfcIoyP0XZIxeEVFR~XY~R554l{}+awb__nqt+!fgKyvk42wsTm*RB@s({_ zDiu9&QR66lidN15Wkco@0;8Den z7P4g`%`fQ0+;X4Wq;E?{nC9I2v3u*5%Tty09hLcVHB0Wjo#aaO&fs%UNH2%q4O#&9 zns4JkZ+u|SzHA6BcK(b%PR7zHqv2?kZG~gR>f^m-fZ}NQz`sEXu_r zS2Qrb=4<1m8evjbX#9OvjL01PjEN!o76;}{UZ@w9YiZamx4GgpeXX8MS7qm~uuiR@ z$UOcu50>$V@kp{M2n7;YVuZ|spIQ!FiP-lerDnx65q;jc+o3aZc!XzC-z>NISmj5v zT|GlR0X3`g`%^04`T}EK@;*lRrC4M%Tb;VG7=_=5DlNR@+q>tnH4HrZOvfSVQ?R0g zEVl2W1MM2-q2rw_j^Ikgg7AS)d)@kfv>+a_5A7L;idGAg5vk@`w*S2M>_+^?XWy6` zO-9%R&=aFtrIx$J72BrJkL0?pCO`70!Oo36o2-(X+D#*I+2MB1K4B2ukUt?= zK(fOw{{GRD(O}TkooJ${K%kK(DA95mJ)8l+37=)Xv!9nx8j+l ze|_8q=-U&d`PtNOSk}GeZ<)E%*8N{NJCc>cHdY+p1yxj{`ge(#roHygOwylJ7q^rN zSnb1pDWq6-`FDSr`9}>SklhI?`)t|sCc2%ZkI};^lI~< zBU>W;?W%og77!dx$beZ@h6UF5{An^;WL+xuh$Ak19dqj)ncnqx_V7C}<1r#CV!t`{ zCZc*}Iva^gjMJV}PvDQ2ZnJ;gih8|bPws7WsB&n8E@qD@s)w785T>%R>NIT~4m@e_l1lixDK(Q1@0COp(RPcv+rzf~T|P|@uyK_xb+G%}JVc)l zUXx6u))tv{cLTP*A{K$tC6m=-tjdu`k2Rmb9`H2l-BuQ2-Em? zXsT4wyG4OiZuGw)`@ahX{~wd9|L5$FmwEeQqyd_Rz=Yu>BULA5b zk3YWj?(qK&n!gj>Zv(ys&8|XU^m;!9x|w{JVv|NSR)`!%9Zh^M9C2q$VgF@+f#xD; zy{yy%C2h%G>pOhTy&?ec7<@hUUCO(X+183qt8Q8-VXO?*rMO>AZhAOv)3qh^BXdN~ zSy%U`?N)Xn6Q~Vn-jjs_ZH&?oCrYrxtNcZfL|tP#eC8piu+>@ePH^eVJekF_^woU! zfq5UT7qq}aS(8w^C3-S+K5@R+gtOJ+&!wm!=L8Y z@u5bLn2-fEmRnW;W90yuj56CQkFFO`n~a=sS{PC%b${xoQ@r;@-hV}XC66U#R0m=? z3#uf`!?HP7eVuP0PW+k=_u;k)D@fM6|DYmx}#+1@#y{ zZ4Aqp|1R_V*zel_DZ|~l0#J4>rk0Sdr%^+PmMkzJWF+I}OyZpB-2~YScO9Dc&PTZE z@UD7m|AM2mwzdN;tmd*aY^fyFqGmZi*O)m>4Bs-k2$(x5RsxECcz-cQNXN~4FzcQxSk7{B zo1+Bop6;ulSF}5Ti*i*e@!Ii(ZI;1m?n%N}MZElBZ#Wy{9tb|oUF%pc3#je-V`wbh zPOV7th^LmpLOuR0H#{!g^RdHO`V6Rw-%C@=`^p-kb3)y)y4kq>5V^&3%xOUkV^)>_ zY_m02MNI?^BG*U1|1I4i%4PKVtRbquvKz<2LfF;b6-MyTGg4z1$^mdtme)1XY{`eC zPzgzVqCZALq7ub!A6m5{04cQ5s*@JN179tqb0Os#Z?ALjPuPmC<-Rr)d6UfQy)>3_ z0Wjxy1I+l^^T=yCn9W-objBy1=&So&$0@n2TvTW9XD%PmA!rNRx73s%B>I#}tBvfJ zY|niEV}!E1-cUWWyYaSCzB}Zoi#tKg_hV4R#c#nhbE#?L=mYz*`?~pAHgI1du!&z+ zWZAQe0Ib@lWYvl9`BxldKeQ=CcFXba(jmX7b2Jmr??AJ8HyFynEw5@&(mWmZs+$&Sd=MaXUE>F1A`Z5YVjb)@z=l>#m#Oeq@J6q)Gn_=Lk$* zi^;QW2&#%U`Rm~`xEU`#iORR(VsGnx{lAz|RsBlxw+%0tfE)tm5s34Bd28M*L^LQGo%;8wl!Dmlm69;9vV`u zsGvAw8>&U>hm}0-4Szc(R0eD#51mBo}+9qVmykP$U9$~Ic z3swq@2Of+uW7{`=S>`n#p;RT_~@Xd(6|P{Y2?N}SlBfYYP7XN28g29BUOYPo9|z5Rz*l10MQ z1~xs6o5wtySsXh&7pP$QcHhO;cLtWu3QZyVXr<n<>X{?4&!a@nb4A`Xu@!Qg+ zba$yco@_tD)wBO}yB>!IxUqVOKXaA)r-=DRYddjf2cKYhH zM+@C>T)Ld{kX}Momw{7aP@pj5O%~Po`F^JM<>5A2^6U2{)?xjO3=3@kr4^4eMr?hb o3duc6{@qQE{!gBP=ob{;MwmiM>kDBIs)hlYYI@JhR9=1jA7q));Q#;t literal 0 HcmV?d00001 diff --git a/docs/webapp/pipelines/webapp_pipeline_viewing.md b/docs/webapp/pipelines/webapp_pipeline_viewing.md index 65bf262c..5b65e684 100644 --- a/docs/webapp/pipelines/webapp_pipeline_viewing.md +++ b/docs/webapp/pipelines/webapp_pipeline_viewing.md @@ -19,10 +19,46 @@ Each step shows: While the pipeline is running, the steps' details and colors are updated. +## Run Stages +Steps that were set into the same stage when created, are grouped into stages in the Run Details panel. + +In stages view, click`Expand Stages` to view the complete pipeline DAG with all steps visible. +In the detailed view, click `Collapse Stages` to view the pipeline DAG outline with the same stage steps grouped into a single stage. + +![Pipeline structure in stages](../../img/webapp_pipeline_DAG_collapsed.png) + + + +In the collapsed view, each stage displays: + +
+ +![Pipeline stage card](../../img/webapp_pipeline_stage_card.png) + +
+ +* Stage name +* Number of steps in stage + +Click Expand to view the +steps that comprise the stage. Select a step to view its [Step Info](#run-and-step-info). + +Click on a stage to view its **STAGE INFO**: + +
+ +![Pipeline stage info](../../img/webapp_pipeline_stage_info.png) + +
+ +* Stage name +* Step count by status - The number of steps in each status category (e.g. completed, running, pending) + + ## Run and Step Details ### Run and Step Info -On the right side of the pipeline run panel, view the **RUN INFO** which shows: +On the pipeline run panel, view the **RUN INFO** which shows: * Run Parameters * Reported Metrics * Produced Artifacts diff --git a/static/icons/ico-zoom-to-fit.svg b/static/icons/ico-zoom-to-fit.svg new file mode 100644 index 00000000..e30efb48 --- /dev/null +++ b/static/icons/ico-zoom-to-fit.svg @@ -0,0 +1,3 @@ + + +