build/static/js/138.03ed2462.chunk.js

1 line
14 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(this.webpackJsonp=this.webpackJsonp||[]).push([[138],{y8uv:function(e,t,n){},ya74:function(e,t,n){"use strict";n.r(t),n("T2oS");var a,r=n("W9HT"),c=n("zLi2"),s=n.n(c),l=n("o+MX"),o=n.n(l),i=n("cDcd"),u=n.n(i),f=(n("y8uv"),n("spEH")),m=(n("KkuB"),n("dZ1t")),d=(n("P2fV"),n("NJEC")),p=n("YdDX"),h=n.n(p),v=(n("lUTK"),n("BvKs")),b=n("lHQ6"),E=n.n(b),g=n("FLGM"),j=n.n(g),S=n("vOnD"),N=n("PhNK"),O=n("sYIF"),y=v.a.SubMenu,w=S.a.img(a||(a=h()(["\n {\n width: 25px;\n height: 25px;\n border-radius: 50%;\n margin-right: 10px;\n }\n"]))),C=function(e){var t,n,a,r=e.data,c=e.repeatSet,l=e.chooseSteps,o=Object(i.useState)(void 0),m=s()(o,2),p=(m[0],m[1]),h=Object(i.useState)(void 0),b=s()(h,2),g=(b[0],b[1]);return Object(i.useEffect)((function(){if(r&&r.started){var e=1e3*E()(r.started),t=(c=(a=new Date(e)).getFullYear(),s=a.getMonth()+1,l=a.getDate(),o=a.getHours(),i=a.getMinutes(),u=a.getTime(),(n=(f=new Date).getTime()-u)<=6e4?"刚刚":6e4<n&&n<=36e5?Math.round(n/6e4)+"分钟前":36e5<n&&n<=864e5?Math.round(n/36e5)+"小时前":864e5<n&&n<=1296e6?Math.round(n/864e5)+"天前":n>1296e6&&c==f.getFullYear()?s+"-"+l+" "+o+":"+i:c+"-"+s+"-"+l+" "+o+":"+i);p(t)}var n,a,c,s,l,o,i,u,f;r&&r.after&&g(Object(N.b)(r.after))}),[r]),u.a.createElement("div",null,u.a.createElement(f.j,{className:"leftheader"},u.a.createElement(f.a,null,u.a.createElement(w,{src:Object(O.h)("/".concat(r&&r.author&&r.author.image_url))}),r&&r.started&&u.a.createElement("span",{className:"nest"},"开始时间:",u.a.createElement("span",null," ",r.started)),r&&r.duration_time&&u.a.createElement("span",{className:"nest"},"运行时间:",u.a.createElement("span",null,r.duration_time))),(n=r&&r.status,a=r&&r.number,"failure"===n||"error"===n||"success"===n?"":"killed"===n?u.a.createElement(d.a,{title:"确认重新构建?",onConfirm:function(e){return c(e,"repeat",a)},onCancel:function(e){e.stopPropagation()},cancelText:"取消",okText:"确定"},u.a.createElement(f.f,{onClick:function(e){e.stopPropagation()}},"重新构建")):u.a.createElement(d.a,{title:"确认撤销构建?",onConfirm:function(e){return c(e,"cancel",a)},onCancel:function(e){e.stopPropagation()},cancelText:"取消",okText:"确定"},u.a.createElement(f.f,{onClick:function(e){e.stopPropagation()}},"撤销构建")))),u.a.createElement("div",{className:"leftMainContent"},u.a.createElement(f.a,{className:"contentBranch"},u.a.createElement("i",{className:"iconfont icon-fenzhi1"}),u.a.createElement("span",null,"分支:"),u.a.createElement("span",{className:"branchname"},r&&r.branch_target),u.a.createElement("span",{className:"branchsha"},r&&Object(N.b)(r.build_after_sha)))),u.a.createElement(v.a,{mode:"inline",className:"leftMenu",defaultOpenKeys:["0"],defaultSelectedKeys:["0"]},r&&r.stages?j()(t=r.stages).call(t,(function(e,t){var n;return e.steps&&e.steps.length>0?u.a.createElement(y,{title:u.a.createElement("div",null,u.a.createElement("i",{className:"iconfont icon-gongzuoliu font-14 mr4"}),u.a.createElement("span",null,e.name)),key:"".concat(t)},j()(n=e.steps).call(n,(function(t,n){return u.a.createElement(v.a.Item,{key:"".concat(n),onClick:function(n){return a=e.number,r=t.id,void l(a,r);var a,r}},u.a.createElement(f.j,null,u.a.createElement("span",null,t.name," ",t.status?function(e){switch(e){case"running":return u.a.createElement("span",{className:"statuslineColor running"},"运行中");case"failure":case"error":return u.a.createElement("span",{className:"statuslineColor failed"},"未通过");case"success":return u.a.createElement("span",{className:"statuslineColor pass"},"已通过");case"pending":return u.a.createElement("span",{className:"statuslineColor Preparing"},"准备中");case"killed":return u.a.createElement("span",{className:"statuslineColor killed"},"已撤销");case"skipped":return u.a.createElement("span",{className:"statuslineColor skipped"},"已跳过")}}(t.status):""),u.a.createElement("span",null,t.duration_time)))}))):""})):""))},k=n("5PDf"),M=n.n(k),x=n("vDqi"),_=n.n(x),D=n("04Ix"),I=n.n(D),T=n("Kwsy"),z=n.n(T),H=n("+oHS"),P=n.n(H),K=n("OWCx"),W=n.n(K),F=n("fHi0"),J=n.n(F),A=n("RXMP"),B=n.n(A),R=n("qjzJ"),Y=n.n(R),L=n("HnXd"),U=n.n(L),X=n("LYCE"),q=n.n(X),G=n("UtpJ"),Q=n.n(G),V=n("0lTi"),Z=n.n(V),$=n("O0yt"),ee=n.n($),te=n("Dcj1"),ne=n.n(te),ae=n("6UaR"),re=n.n(ae),ce=n("WxoT"),se=n.n(ce),le=n("IeeE"),oe=n.n(le),ie=n("J66h"),ue=n("/POA"),fe=(n("q7KB"),n("eLKs")),me=n.n(fe),de=n("M5Mt"),pe=n.n(de),he=n("526F"),ve=(n.n(he),new function(e){var t={},n={subscribe:function(e,n){var a;return t[e]||(t[e]=[]),t[e].push(n),me()(a=this.unsubscribe).call(a,null,e,n)},unsubscribe:function(e,n){var a=t[e],r=-1;if(a){for(var c=0;c<a.length;c++)if(a[c].name===n.name){r=c;break}var s;if(r>=0)return pe()(s=t[e]).call(s,r,1),!0}return!1},publish:function(e){var n;if(!t[e])return!1;var a=Q()(Array.prototype).call(arguments,1);return B()(n=t[e]).call(n,(function(e){e.apply(null,a)})),this}};return n}),be=n("bdgK");function Ee(e,t){var n=P()(e);if(W.a){var a=W()(e);t&&(a=M()(a).call(a,(function(t){return J()(e,t).enumerable}))),n.push.apply(n,a)}return n}function ge(e){for(var t=1;t<arguments.length;t++){var n,a,r=null!=arguments[t]?arguments[t]:{};t%2?B()(n=Ee(Object(r),!0)).call(n,(function(t){I()(e,t,r[t])})):Y.a?U()(e,Y()(r)):B()(a=Ee(Object(r))).call(a,(function(t){q()(e,t,J()(r,t))}))}return e}function je(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function Se(e,t,n){var a=n._core._renderService.dimensions.actualCellWidth||9.5,r=n._core._renderService.dimensions.actualCellHeight||18,c=Math.floor(t/r);return[Math.floor(e/a),c]}var Ne=function(e){var t=e.sshConfigData,n=e.sid,a=Object(i.useState)(null),r=s()(a,2),c=r[0],l=r[1],o=t.ws_url,f=(t.password,t.port),m=t.secret,d=Object(i.useRef)(),p=Object(i.useRef)(),h=Object(i.useRef)(!1);return Object(i.useEffect)((function(){if(d.current&&o){var e=new ue.Terminal({fontSize:16,rendererType:"dom"});e.open(d.current),e.onData((function(e){p.current&&1===p.current.readyState&&(p.current.send(se()({tp:"client",data:e})),ve.publish("on-operating-ssh"))})),e.write("Connecting..."),l(e);var t=function(e,t){var n=new be.default((function(t){var n,a=function(e,t){var n=void 0!==ee.a&&ne()(e)||e["@@iterator"];if(!n){if(re()(e)||(n=function(e,t){if(e){var n;if("string"==typeof e)return je(e,t);var a=Q()(n={}.toString.call(e)).call(n,8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Z()(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?je(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,r=function(){};return{s:r,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var c,s=!0,l=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){l=!0,c=e},f:function(){try{s||null==n.return||n.return()}finally{if(l)throw c}}}}(t);try{for(a.s();!(n=a.n()).done;){var r=n.value;if(r.target.offsetHeight>0||r.target.offsetWidth>0){var c=Se(r.target.offsetWidth,r.target.offsetHeight,e),l=s()(c,2),o=l[0],i=l[1];e.resize(o,i),ve.publish("ssh-xterm-resize",{columns:o,rows:i,width:r.target.offsetWidth,height:r.target.offsetHeight})}}}catch(e){a.e(e)}finally{a.f()}}));return n.observe(t),n}(e,d.current);return function(){e.dispose(),t.unobserve(d.current)}}}),[o,d.current]),Object(i.useEffect)((function(){if(c&&o){var e=oe()((function(){p.current&&p.current.send(se()({tp:"h"}))}),3e4),a=ve.subscribe("create-socket",(function(a){var r;n===a&&(p.current&&1===p.current.readyState?c.focus():(r=new WebSocket(o),p.current=r,r.onopen=function(){var e=c.element.parentElement;if(e){var n=e.offsetWidth,a=e.offsetHeight;r.send(se()({tp:"init",data:ge(ge({},t),{},{secret:m,width:n,height:a,rows:c.rows,columns:c.cols})}))}c.focus()},r.onerror=function(e){},r.onmessage=function(e){h.current||(c.write("\r"),z()((function(){}),1e3)),h.current=!0;var t=ie.Base64.decode(e.data.toString());c._core._renderService.dimensions.actualCellWidth,c.write(t)},r.onclose=function(t){e&&clearInterval(e),c.write("\r\nconnection closed")}),c.focus())})),r=ve.subscribe("close-socket",(function(e){n===e&&(p.current&&(p.current.close(),h.current=!1,c.clear()),p.current=null)})),s=ve.subscribe("ssh-xterm-resize",(function(e){p.current&&1===p.current.readyState&&p.current.send(se()({tp:"resize",data:ge({},e)}))})),l=ve.subscribe("ssh-add-connect-time",(function(){p.current&&1===p.current.readyState&&p.current.send(se()({tp:"overtime"}))}));return function(){r(),a(),s(),l(),p.current&&(p.current.close(),h.current=!1)}}}),[c,o,f]),u.a.createElement("div",{ref:d,className:"xterm-panel",style:{height:"100%"}},o?null:u.a.createElement("p",{style:{color:"#fff"}},"正在连接命令行服务..."))};function Oe(e,t){var n=P()(e);if(W.a){var a=W()(e);t&&(a=M()(a).call(a,(function(t){return J()(e,t).enumerable}))),n.push.apply(n,a)}return n}var ye=function(){var e=Object(i.useState)(void 0),t=s()(e,2),n=t[0],a=t[1];return Object(i.useEffect)((function(){n||_.a.get("/api/ci/pipelines/ssh_server.json").then((function(e){e&&e.data&&a(function(e){for(var t=1;t<arguments.length;t++){var n,a,r=null!=arguments[t]?arguments[t]:{};t%2?B()(n=Oe(Object(r),!0)).call(n,(function(t){I()(e,t,r[t])})):Y.a?U()(e,Y()(r)):B()(a=Oe(Object(r))).call(a,(function(t){q()(e,t,J()(r,t))}))}return e}({},e.data))})).catch((function(e){})),z()((function(){ve.publish("create-socket",1)}),300)}),[n]),u.a.createElement(Ne,{sshConfigData:n||{},sid:1})},we=function(e){var t=e.data,n=e.stepN,a=e.stageN,c=e.projectId,l=e.owner,m=e.opsId,d=e.rightSpin,p=Object(i.useState)(void 0),h=s()(p,2),v=h[0],b=h[1],E=Object(i.useState)(!1),g=s()(E,2),S=g[0],N=g[1],O=Object(i.useState)(!0),y=s()(O,2),w=y[0],C=y[1],k=Object(i.useState)(void 0),x=s()(k,2),D=x[0],I=x[1],T=Object(i.useState)(void 0),z=s()(T,2),H=z[0],P=z[1],K=Object(i.useState)("0"),W=s()(K,2),F=W[0],J=W[1];return Object(i.useEffect)((function(){C(d)}),[d]),Object(i.useEffect)((function(){if(t){var e=t.stages;if(e&&e.length>0){var r=a?M()(e).call(e,(function(e){return e.number===a}))[0]:e[0];I(r);var s=r&&r.steps,i=n?s&&s.length>0&&M()(s).call(s,(function(e){return e.id===n}))[0]:s[0];P(i),J("0"),i&&"skipped"!==i.status&&function(e,t){if(e&&t){var n,a,r,s,i=o()(n=o()(a=o()(r=o()(s="/".concat(l,"/")).call(s,c,"/builds/")).call(r,m,"/logs/")).call(a,e,"/")).call(n,t,".json");_.a.get(i).then((function(e){e&&(b(e.data),C(!1))})).catch((function(e){}))}}(r.number,i.number),"skipped"===i.status&&(b(void 0),N(!0),C(!1))}else C(!1)}}),[t,a,n]),u.a.createElement(u.a.Fragment,null,"0"===F&&u.a.createElement(r.a,{spinning:w},u.a.createElement("div",{className:"rightMainContent"},t&&"error"!==t.status?u.a.createElement("div",null,u.a.createElement(f.j,{className:"items"},u.a.createElement("span",null,H&&H.name),u.a.createElement(f.a,null,H&&H.duration_time,u.a.createElement("i",{className:"iconfont icon-sanjiaoxing-down"}))),u.a.createElement("div",null,v&&v.length>0?j()(v).call(v,(function(e,t){return u.a.createElement("div",{className:"opsDetailOut"},u.a.createElement("span",null,t+1),u.a.createElement("p",null,e.out))})):S?u.a.createElement("div",{className:"opsDetailOut"},u.a.createElement("span",null,"1"),u.a.createElement("p",null,D&&D.name," ",H&&H.name,": Skipped")):"")):u.a.createElement("div",{style:{color:"red"}},"error:",t&&t.error))),"1"===F&&u.a.createElement(ye,null))},Ce=n("2iEm");t.default=function(e){var t,n=Object(i.useState)(void 0),a=s()(n,2),c=a[0],l=a[1],d=Object(i.useState)(void 0),p=s()(d,2),h=p[0],v=p[1],b=Object(i.useState)(void 0),E=s()(b,2),g=E[0],j=E[1],S=Object(i.useState)(!1),N=s()(S,2),O=N[0],y=N[1],w=Object(i.useState)(!0),k=s()(w,2),M=k[0],x=k[1],D=e.match.params.projectId,I=e.match.params.owner,T=e.match.params.opsId;function z(){var e,t,n=o()(e=o()(t="/".concat(I,"/")).call(t,D,"/builds/")).call(e,T,".json");_.a.get(n).then((function(e){e&&e.data&&(x(!1),l(e.data))})).catch((function(e){x(!1)}))}return Object(i.useEffect)((function(){T&&D&&z()}),[T]),u.a.createElement(r.a,{spinning:M},u.a.createElement("div",{className:"opsDetailPanel"},u.a.createElement(f.j,{className:"opsInfos"},u.a.createElement(f.a,null,u.a.createElement("span",null,"#",c&&c.number),u.a.createElement("span",{className:"ml10"},c&&c.message),function(e){switch(e){case"running":return u.a.createElement("span",{className:"statusColor running"},"运行中");case"failure":case"error":return u.a.createElement("span",{className:"statusColor failed"},"未通过");case"success":return u.a.createElement("span",{className:"statusColor pass"},"已通过");case"pending":return u.a.createElement("span",{className:"statusColor Preparing"},"准备中");case"killed":return u.a.createElement("span",{className:"statusColor killed"},"已撤销")}}("".concat(c&&c.status))),u.a.createElement(Ce.a,{style:{color:"#ddd"},to:o()(t="/".concat(I,"/")).call(t,D,"/devops")},u.a.createElement("i",{className:"iconfont icon-yiguanbi font-15 mr5"}),"退出")),u.a.createElement("div",{className:"opsSection"},u.a.createElement(m.a,{className:"outer-split-pane",split:"vertical",minSize:468,maxSize:-350,defaultSize:"40%"},u.a.createElement("section",{className:"leftSection"},u.a.createElement(C,{data:c,repeatSet:function(t,n,a){if("repeat"===n){var r,c,s=o()(r=o()(c="/".concat(I,"/")).call(c,D,"/builds/")).call(r,a,"/restart.json");_.a.post(s).then((function(t){var n,a;t&&t.data&&(e.showNotification("工作流正在重新构建!"),e.history.push(o()(n=o()(a="/".concat(I,"/")).call(a,D,"/devops/")).call(n,t.data.number,"/detail")))})).catch((function(e){}))}else{var l,i,u=o()(l=o()(i="/".concat(I,"/")).call(i,D,"/builds/")).call(l,a,"/stop.json");_.a.delete(u).then((function(t){t&&(e.showNotification("撤销构建成功!"),z())})).catch((function(e){}))}},chooseSteps:function(e,t){e&&t&&(j(t),v(e),y(!0))}})),u.a.createElement("section",{className:"rightSection"},u.a.createElement(we,{data:c,rightSpin:O,stepN:g,stageN:h,owner:I,projectId:D,opsId:T}))))))}}}]);