From ce7822674788c9700ab34bf0521e6dd5c2ef33ff Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Wed, 6 Oct 2021 14:32:58 -0500 Subject: [PATCH 01/23] Adding Azure DevOps frontend plugin Signed-off-by: Andre Wanlin --- app-config.yaml | 1 + packages/app/package.json | 1 + .../app/src/components/catalog/EntityPage.tsx | 8 ++ plugins/azure-devops/.eslintrc.js | 3 + plugins/azure-devops/README.md | 135 ++++++++++++++++++ plugins/azure-devops/api-report.md | 35 +++++ plugins/azure-devops/config.d.ts | 26 ++++ plugins/azure-devops/dev/index.tsx | 20 +++ .../azure-devops/doc/azure-devops-builds.png | Bin 0 -> 177135 bytes plugins/azure-devops/package.json | 62 ++++++++ .../azure-devops/src/api/AzureDevOpsApi.ts | 32 +++++ .../azure-devops/src/api/AzureDevOpsClient.ts | 56 ++++++++ plugins/azure-devops/src/api/index.ts | 18 +++ plugins/azure-devops/src/api/types.ts | 30 ++++ .../src/components/BuildTable/BuildTable.tsx | 132 +++++++++++++++++ .../src/components/BuildTable/index.ts | 17 +++ .../EntityPageAzureDevOps.tsx | 33 +++++ .../components/EntityPageAzureDevOps/index.ts | 17 +++ .../azure-devops/src/components/Router.tsx | 48 +++++++ plugins/azure-devops/src/constants.ts | 17 +++ .../src/hooks/useProjectRepoFromEntity.ts | 25 ++++ .../azure-devops/src/hooks/useRepoBuilds.ts | 40 ++++++ plugins/azure-devops/src/index.ts | 17 +++ plugins/azure-devops/src/plugin.test.ts | 22 +++ plugins/azure-devops/src/plugin.ts | 54 +++++++ plugins/azure-devops/src/routes.ts | 20 +++ plugins/azure-devops/src/setupTests.ts | 17 +++ 27 files changed, 886 insertions(+) create mode 100644 plugins/azure-devops/.eslintrc.js create mode 100644 plugins/azure-devops/README.md create mode 100644 plugins/azure-devops/api-report.md create mode 100644 plugins/azure-devops/config.d.ts create mode 100644 plugins/azure-devops/dev/index.tsx create mode 100644 plugins/azure-devops/doc/azure-devops-builds.png create mode 100644 plugins/azure-devops/package.json create mode 100644 plugins/azure-devops/src/api/AzureDevOpsApi.ts create mode 100644 plugins/azure-devops/src/api/AzureDevOpsClient.ts create mode 100644 plugins/azure-devops/src/api/index.ts create mode 100644 plugins/azure-devops/src/api/types.ts create mode 100644 plugins/azure-devops/src/components/BuildTable/BuildTable.tsx create mode 100644 plugins/azure-devops/src/components/BuildTable/index.ts create mode 100644 plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx create mode 100644 plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts create mode 100644 plugins/azure-devops/src/components/Router.tsx create mode 100644 plugins/azure-devops/src/constants.ts create mode 100644 plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts create mode 100644 plugins/azure-devops/src/hooks/useRepoBuilds.ts create mode 100644 plugins/azure-devops/src/index.ts create mode 100644 plugins/azure-devops/src/plugin.test.ts create mode 100644 plugins/azure-devops/src/plugin.ts create mode 100644 plugins/azure-devops/src/routes.ts create mode 100644 plugins/azure-devops/src/setupTests.ts diff --git a/app-config.yaml b/app-config.yaml index c24ac1701b..b92595df7b 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -436,3 +436,4 @@ azureDevOps: host: dev.azure.com token: my-token organization: my-company + top: 25 diff --git a/packages/app/package.json b/packages/app/package.json index d1892438d8..fe86077273 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -11,6 +11,7 @@ "@backstage/core-plugin-api": "^0.1.10", "@backstage/integration-react": "^0.1.11", "@backstage/plugin-api-docs": "^0.6.11", + "@backstage/plugin-azure-devops": "^0.1.0", "@backstage/plugin-badges": "^0.2.12", "@backstage/plugin-catalog": "^0.7.0", "@backstage/plugin-catalog-graph": "^0.1.3", diff --git a/packages/app/src/components/catalog/EntityPage.tsx b/packages/app/src/components/catalog/EntityPage.tsx index 62fdcf4d3f..b79bd2c4aa 100644 --- a/packages/app/src/components/catalog/EntityPage.tsx +++ b/packages/app/src/components/catalog/EntityPage.tsx @@ -33,6 +33,10 @@ import { EntityProvidedApisCard, EntityProvidingComponentsCard, } from '@backstage/plugin-api-docs'; +import { + EntityAzureDevOpsContent, + isAzureDevOpsAvailable, +} from '@backstage/plugin-azure-devops'; import { EntityBadgesDialog } from '@backstage/plugin-badges'; import { EntityAboutCard, @@ -183,6 +187,10 @@ export const cicdContent = ( + + + + { + return await createRouter({ logger, config }); + } + ``` + +3. Next we wire this into the overall backend router, edit `packages/backend/src/index.ts`: + + ```ts + import azureDevOps from './plugins/azuredevops'; + // ... + async function main() { + // ... + const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); + apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); + ``` + +4. Now run `yarn start-backend` from the repo root +5. Finally open `http://localhost:7000/api/azure-devops/health` in a browser and it should return `{"status":"ok"}` + +### Frontend + +To get the frontend working you'll need to do the following two steps: + +1. First we need to add the @backstage/plugin-azure-devops package to your frontend app: + + ```bash + # From your Backstage root directory + cd packages/app + yarn add @backstage/plugin-azure-devops + ``` + +2. Second we need to add the `EntityAzureDevOpsContent` extension to the entity page in your app: + +```tsx +// In packages/app/src/components/catalog/EntityPage.tsx +import { + EntityAzureDevOpsContent, + isAzureDevOpsAvailable, +} from '@backstage/plugin-azure-devops'; + +// For example in the CI/CD section +const cicdContent = ( + + // ... + + + + // ... + +``` + +### Entity Annotation + +You need to add the following annotation to any entities you want to be able to use the Azure Devops plugin with: + +```yaml +dev.azure.com/project-repo: / +``` + +Let's break this down a little: `` will be the name of your Team Project and `` will be the name of your repository which needs to be part of the Team Project you entered for ``. + +Here's what that will look like in action: + +```yaml +# Example catalog-info.yaml entity definition file +apiVersion: backstage.io/v1alpha1 +kind: Component +metadata: + # ... + annotations: + dev.azure.com/project-repo: my-project/my-repo +spec: + type: service + # ... +``` + +## Features + +- Lists the top _n_ builds for a given repository where _n_ is the value configured for `top` + +## Limitations + +- Currently multiple organizations is not supported diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md new file mode 100644 index 0000000000..11de164276 --- /dev/null +++ b/plugins/azure-devops/api-report.md @@ -0,0 +1,35 @@ +## API Report File for "@backstage/plugin-azure-devops" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +/// + +import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { Entity } from '@backstage/catalog-model'; +import { RouteRef } from '@backstage/core-plugin-api'; + +// Warning: (ae-missing-release-tag) "azureDevOpsPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const azureDevOpsPlugin: BackstagePlugin< + { + entityContent: RouteRef; + }, + {} +>; + +// Warning: (ae-missing-release-tag) "EntityAzureDevOpsContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const EntityAzureDevOpsContent: (_props: { + entity?: Entity | undefined; +}) => JSX.Element; + +// Warning: (ae-missing-release-tag) "isAzureDevOpsAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const isAzureDevOpsAvailable: (entity: Entity) => boolean; + +// (No @packageDocumentation comment for this package) +``` diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts new file mode 100644 index 0000000000..827e64d5bd --- /dev/null +++ b/plugins/azure-devops/config.d.ts @@ -0,0 +1,26 @@ +/* + * Copyright 2020 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export interface Config { + /** Configuration options for the azure-devops-backend plugin */ + azureDevOps: { + /** + * The max number of items to return - applies to builds + * @visibility frontend + */ + top: number; + }; +} diff --git a/plugins/azure-devops/dev/index.tsx b/plugins/azure-devops/dev/index.tsx new file mode 100644 index 0000000000..8d1c3ef6ea --- /dev/null +++ b/plugins/azure-devops/dev/index.tsx @@ -0,0 +1,20 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { createDevApp } from '@backstage/dev-utils'; +import { azureDevOpsPlugin } from '../src/plugin'; + +createDevApp().registerPlugin(azureDevOpsPlugin).render(); diff --git a/plugins/azure-devops/doc/azure-devops-builds.png b/plugins/azure-devops/doc/azure-devops-builds.png new file mode 100644 index 0000000000000000000000000000000000000000..89a777059f67b448c961bdcd829d38ddd9eea0d5 GIT binary patch literal 177135 zcmbrmcTiK?+qZAS0#X!_BE^O%9U@W;L`6Xb1f?TA6ancSLUL?GF_0rjZz=~+DWQY3 z2mt~l5EZ0DgaDzpkU&TR@5Xb!W#)O_ncq9VKO6^~oxS#2*?aBlzCO3FOz!FPa*J{A z*|UfD&h48I_Ut(nv1iY|)x!sY-_*wBn*)FC4Sb+~V^49n_$=_l0r%@h*Z1rxMf0$o zxPYIJ_}#V++_Q%dxBF)=-uI)+o;^FccWz!c3$tI~gn#oM4(~&Dm$Mp3It@W_E`&1I zhi%@EP)73UF$vAlpLwdDNyJs+~1T-~tfja$iPzj@~rHuK&oEO$WYT`JeiKCOE8njB77Sn>u( zP7SB@H9>RbOa&RibnSHz`Qi;Zg1cYZSq`(*==VPchlq4NlDfilJppzo&Ayk9%L;9K zFG^YCz8c*kw!FunkS;Vor=sQAs31wfs7&8#y#j*R%65l=;_N#-9PydUhz?D7cU%vZ zNIDzI-kZS^p0}QC_li{l2RYS48rHaBhp)V_-Cr_e@!M3P7&BdibF4OztRMMd3gy%LE1vJwv(JDD%hMOl~V zh7}pP!No=9ikH=!zJGqTU&{jDZW(0;B?gqVRBN$o4En~g(- z2SWW)m;dz%OfkN$6lN)OriA{-IEBIqS5^FIH@<8^HBp)TNalnUT1~ zx(%qdtx|pmeX=ZW>gWh%0Q>C%C17DS++2kA!8tuuN>RwYKB?zkH)Z`-24?)*1vIm2 z;SYL53`gS_xjrPk#((O^cQol74!`;k)qfvmqnTAI9+n;07~R0u1VK*7b~A_A52KA~ znINcr7q*qizx`DzJD2iZm8R>|ox%@43Oda>kK&Q75>19R-f4_r?ki4?_F9>*@l`e6 zfu%7g=oU>qB&=E>xjO(1)?uY*N^MQC4N$LXUZPB=Tw%X6Ir{_y>~#2$D-~IwxO~df zm>6dL#LyjQixPppH5ekWQJGKUk4QXT(0zvwd0A4ZXLU~wrJ~UpQkCNW>q}!2sd2|& z=PQ20!Own%J>Z-Lsd)>|TAm3##tCjzg%}blBJuf?tPOw2mjU-Y?IMV196TzH#eeEu zeBi01I8uA5u|hINU+CgI|K!@{6lLB9QL5UpIzYDa>i}nIA^b#Hm@;4C{;PR!UPReq z_^B`W1ojnV`rkk7t*Y3qkDKS{$Mz)@!UMCqvn`|RHta?1YobDHUI#7=u#8*%5hARd zgA&uW)2F~o!gF-?J`0w{q7!%#F-C5i&DqiN!kXU)kW2=U;pe&rubdQeov8xPq}+b@#2wBA8sX@(jP;QwPhQSiAFBN)w!V>aL~#6J|P>{FeGY&%D~BQc~wkl=Sjl zr!#If`o-9OZi-r{m~`nvYR+h4)A}{)T|VQ}FfKyPZQOE@Jp?{G3oVJhiuIH~QJX|+ zqU8*M*izBuC#eMLSEqs{3y!|>w{~aw#Dx>@8W7X0qQSs-_b>>$)k0LC^9$aVAFe|! zifvfhE~qQcUBnj&oA_^psoeYC{UQRQRTy{lVTnuM&Eq*fDhes9&C;z()*eA3{VOiT z?acRu^q<7-b0B-d(H>>45x2H{N9i6svs$Bmf+&-+ajHyeXXSX}#<`C{OB=`Ke7B!b zh13JvV9wpcs{3reggJ#xv{jC85lglPRRYh3v0G$OCkum8sG@F_X@Y-2@c74GO5 zv|GmgR>|>!rZ@UsU>%9RYYcm*BZbjwd0aSkYg_`TC@nZc%`em6tV^t>B@BF8*V&fH zP?VFZ8p`eDadr_4OPmbQ#kIUm78PP!7K7lewu(n;4l0O*b5-N)|Pu--GA&J zC!(W5E5A#UQ-hwU6&E6gx^zKGX|pRS#vMKIKQEQ>I2nk0mXI<;YT?X@mFRR!WHlHL z4cq!Yk2`0n#G4$Wt~nb62_ULNZH2;Q3IwiD3QJ&(UnYn7YQ0O8)aYs5(SmZf$+83$+ zWuBA#e}2s@yfJ_(Zw}brU7Ndj;D|`#W~9d2$5hrEVxJ@LW2?CmtzwnM#3wtELp(~O z5;|M##qlVqaHlY`zQZ+UpC5HB>N0iyS{yD=%7LtMa67i=g{7gKMslv7bTx-3Tst8J zJI!b8W>j{1L|pJs!jWg3z*AAqdUquST^G;pf0oEwF#DPQ;z9KdFCyo{RY+txMWGt(#bMuY>%h?LO#sf4A&#SpybkM1~t7V#>N$4O;Dr#NE7J ztjRN>z*{b4%%TpT=3d`Z#mAK+qt;)Ez8Y=YzKddgcj9`=WsFuISazg}FiWw$&^p)R zes#^d@gS#LIB0}(F_P#Hvf$eCdPmatbSC@P-viYeqpqG5Rjd8Uxt{yfd~bBRP!md{ zqr#==FiZjh0cVa7{$>LDeXESy5OsylW6(}GH;6D{ka zk=IIk)|j`9EqdDbaSh=|B+5cA*#2m~hB-Wc^#~!$ z*p57_aqy*@K-JeTCyV%#ZSBgo3|wrKsr<=L^Erodo)#OP&Pl#bJ(qp?Jy;`> zecfz2S$2)?J7dItRi1UW$z^nQYi#?%#QHk{e#ueZ+m-C0Pqs-vA_Q_5J8wSp0bjjr zE1B(TTnTgb&b=S;c}njmh47}6Hb`BKk9q!9sRqnv&{*?r$oNZ^QELVJN+0mf%(v}( zC2z|dA&|?CIgnr+23z=)WL#KuSxia_-SIiD+3T~R^5c<>q*Ek5h2=Fff=r)2mV zPpS8ZP1XtD`}@jDr}i{8_+CvNOMj{9Y8Zxg3hU<~7yHAs$>ztappp5N zOV=B$u|Z%P2ir#^Q-$UJVl_ph{+j;5-t6l`(So1qbbfz!i0v=9AQ->6YDOq@8ujQM z-Dnt_8QFlN-%1_tZLD6PC`Up9DV(mP*#w(0CA?PbXOq+=(cmBTK@ZR0l#A2fGN|4x z$8pAWc98E1rSOB+vR@cxgs9B$SDCXXWas-~$a@jwF~Pe`p(7X6@iLIfqB(V8+uA9* z5vZ~i4>4Fyb_pMYwqBWC-W@ry`w%)38@&e zm-^>rf5O{;8868gJtpJ8k49GNDKBwRd{3L@+HMiY{5;?2rlSfbkQSm>pl$OiBV;r9 zEpk02Ls0+fRw-gziXx8ZEUD@rq{5tSXTn|i6o>iUT4TvaFKO1hPUX{8NRE}ph2+AC zr&d>0e~$Zky_TSx5vSrS8Kqamd4s54m4;m+$w_wOsg|Nkl!wX`x$lyA_=Ox@bhwVc zOcbmuD4@#JF1mU_L))#FSMP;Yv8T#w(3Q_{=Shhvmm>atV&JRrsncUpRMc6Yik(`r z>h-Z9FU6sT(tbSMd^g*{s zLd_44aY5SV&7F8%P@8L8XaC;cSBs|zq|(nJF#+`S_q-tc)(ju#;wCyH<`_cQOM;iC zKGeSEt*5m%r#}ACZ~CEULZIVq;^iE8Vro`~P}99XU+}TQVo`i{jIU{;Sm)2UaSLUN z0Wa>d4f+rdiW|FW4}IHFAxdFi$BH8F=8;5_b%r-oo68+f)yMGrhO@`VKc)9apGsD`1)otuE;`%JR;;`#ZyuTy7dZ}s_hM9O z9;vH|zG(l(r2jeSE2%=AzK3+7TIbx)$ZJ+~h_{Eme}+Z^*NMWw7PT8+p53{kbVwun zkpuJ-K7>bpxT8e0`~!YXx-Ib@@OOrtyIZAxXc={l9d2<;r2VoE@JiGg$P%FO^=O8DW<8>!t!8Z~Y z`js3H^y%obPknwojR0vuHBxEw*fTHEMfv^PSI?NiMJhWF-?otC^%^h4tSzhf^0X~( zLJU4hLRwo`c5gpS&+i>TiDK|;ANjgNUgQD8)NA~H&$xSj0MhH2Or!JlzbzDNgT{XC zW?sJE)J>*KM~>dQdhk*Gp*~_*)3)ZD&zcDMdg6_`$FI(PUVCRuRCG4qGs&{T$7UVH zL+)^R=o%!6n68egZQ~6o-WiZB`TWn?rz(5<^P^m`j>h5}$ceCZE9zDJEkx!rJDZ-8 zJoja<88W=?>-r>^+P;uH=g-K!+wEC;Xj+xK`-WAaoOytCc3L;W%lXjx$Q12VIpdH+ zXj2`}5*Y_OA%&qm{ca&31 z7N-Lx43?N)Nb#ryzI_M#nUY!H285u5E~xw3nZ@e0U$rvR%(TVB1;?Y>US^ZUi^2-^ zgOz1WbkYvT?d`_674H|~O^De({(GrAz)R{>emCLb@;Uy%u#-uH^Y3%^CC1?OZgX~D zzvMCQ4?2#$_vyc>s8C8PNoQ{UVqeCtZPcWthXk4Ep!CrpTIXcs1Tptz$XQcPM2^p;qDSH*-WF+%dq%qp2X@479@y{c`e%YIs^-tXcFRoT z^6ki1rC1FwSeur6L`X!8tR5>Duvja|32815Ak&b-ca1x_j5!Y;vVYC45324vm&@IE zK#=;Z4`qFtqNO6a;CF`lEWp@n1Nn01L+{!%45ggwfDuk5!@*_Z>-@ zva>lt@@43t3pC~pjJ^He*pZFZ%e>V~qoJpS7TxVg%tz9D(-_cagjg}nt;+u$Tz}!$ zd3=Qb=-FR0_FO^o7n-_%*#TxsZRQK9RV&Y2t=jw(*4<)@l?j4h6`{0B-wM(UX zBJ86sVGUr>`l>C=>mJ!r0ZG27M&wD&y#CE-wWt-92Ze$jBTBpbvF*L809eqD_2@Eg zVD;X)Tb(Na@G8C~`Q~>L?#CSQXyEv!(%gfUAxPQ|-`gE+M3BkVnD~P=7Zu8r2dbp< z>LIA%%FA{nQ?7Zi_b~cfBhE^C&q8_kt4YP!s?6 zrpG6}wBg@6L*V;s@Nvjtu0HBz4w zW6OLwA6yp6?T>kZJyoo$kVO;#lQdp;SI7G|-d~T`RBDcdm-d`5htcMy#ygN0zGTIf z*n@qg+1g5VH8m(^o2&E2LfM3o{9*O-vjaQ>ZdzV)dTdFr(~+2x6U-u21(C)Mv8)W> zfmCpC3BY%^456eAa_+4@T*2tVkvi07U5cXIE=hSGw!lZ9sY|`3A}P`@x+CCltGh>) z5?5HEg(}!mL#4-GD*FT2rTkyc%e8X4;(a$(E|2>YX~C~P(Hw1*VQq6+sKT$zQ|*G~ z%I=aocEn8ukhmr+5!eV;M01{Y3%GJnvznxnxCGj^D%9*HP#)l&EP^FeezjcBW99T0 zAN7T^+g3bkbl{XZKl()LBfR;3r(HxAb$>BM>yRdgSj`S~sW_oU5&Zg+YJotV;K_nr zNv~6|E%fj6XLwYgyuw;5v;knWa_Z8!8XcOtitAE2le)?%flbVZ72$T~%n{Gx_`fZn z`2VCr)m0(?pRPzJCI!QduKkPHXRcHKo zst^xsV~nuX`ja2NkUJhlYSe&Dei`1%!|)*tpZB?7CzxM5P#v{6zAOiI$9`3x$i{Z*_>uHe^4q7YF<%* z0IvTj-j&L5LCC@;O`bUyKkKCXWm`e@V$&AgEDp#$Nu#Zz!(+u?O;VmAL|r1-A4TGj zxo_x=BBb&O4rr<=q#;ToJVdm6b9_6`s|hGWId_8svUU`57RJw&AF?K#|K>4HK*0v2 zeuUZ1SSOE~0@H*3ETK>`wt8IOd1|$jWk8T@AL9a^OVZg6GaV>bi`PD*WS`0fkNjY1 zef~08Kl)d@!mx20-gf-i8yKt zU=}NA^W~S#Co0%c0=9hf$T@GzC8!m(Ca57&JPG`B?Nw!BTUz$BfV#4J<6Ad6`3tY@ z0;A2?)Zb`&*SM0M=5?vb6d+tdFOOP3jzDhcmkW}^Qa3M=&NfYsadPPa%M6P4+t?pmG{&r3G>CkVU&He+QKmRGoAyDYZB?muhm~Cy4KTwgI8lT|W z);10Xe>GLewle5hTs?HZ6LVYnOCZdxF>)N>)m;Ym+CJ@RJm$Tv0J&|`v9l(P=-Cj% z&c4R)%X0g%cmBIa_*n%k{{H!!!?oF8>9uYi<95bB>se9B5E81Eok?-L- z!I#^YFT8!#)sktpsKB^Josqgy?G^;3-VLb|ATT4o91^x ztO~$k-;hcF@pxddmy~MfEIl;~F3ebyPF* zAX!(lQAJIq->w|n#EQu{rZ??-oGb9*ns2koWDzCj*IL6aNa^@nSQ#v+oe|i%6+YRH zCXN{t!fXK0iUR6t%4?RSwB43Lzvw@Sw&Ib|FHNy_pB7}KYTv4*JbI69IN;y7~AW}WQ3Z81gZ z$IL{`e#ll7!hXw`PXm?ag+`(2%E#y+z3#@H%fwh*t%d0RmZ6u?q8MksWxuf2PWMAl z358+G=AxVJEZ;fc%JoJi)9Epo5tk2i98SuFO3&F(#Z1qbEqSprh z48^@SYLh0ZdpaMoh1RCZ+(YM+Z$gqphv~M64#t~V7<&X)pIt!=(@ug$jqF6p~J|`T&C;rJ?c)W8^QGKQ9q*0! zj9-aD%v5Mck|T)R0bw0XBQk#!u-|c{BKwV>SrGXH%jwA z$o+-`J8XFtB`DnnMLZcL#yECk*tQO34$CJNMSj8h!ihP*>PsvymDU+(he)oc4Wh{h zg2#9XT?-DNi9gT85fhvd0?Lf)=#t| z>*p{tX2{^zyzx)JIGxpky4KP3Uvxf71Ifa+iQz|cV6#5?S4~Q|oj!`-3b2|O=#I%V zyFU1L|2r1Elu|v%e)!bQCVTX}LCDAliT#(y_Ioji6CMb!ymCv;dt?_om+b6t$+sCl zmOo0i!^tu9IO;~ZJoPG_JUJqDo6eRAY2@HBX%b2r6ydn$nIWXh(bEpKo8MMuaF)?B zKK7!;c8zASq_D!f(;BaL?}ju2T^c9`n~lo!M>Ps1YE=~gT$FaxOx<{=dN1u5T(bDqTCunKs|-cpZv z&(>QGGC?21Q@?*TU%gVJ@$sCc{ukF1xrN3G<+$GYt6>dBVcH@1*T$ZcGnOj6_xkRn zJJ&ygyzX2VLIi5IKEKR6;JAo*1i)VzI9UD}_lPZdY-PRoWOlg)37^Y0?eJn&+di7# zF6p}ehn10Hn)?R&C;Q<);Ia1*K2=v z?n3*EUl!D1zP|0@csx172ThuTOLhL+lgb_W7IeegPh9Ggwxo0Awg0$KIihg$6hD{y zxVO3BzR;4Ti~pk8V0qt1fO6YKRCB|R?2wgdPOc-MeeL@nUzU9ffAnTtT<(cOeXuV( zPYGe0A?Cn)>qZWDo@;aOajzZSbNbk%sZYP%FW@o%Wk7>J@Zw?#$1s8k1QSGHnulh%x-F;hD>#qO8LW&kxc39kl9>|71qUOR?eo#%fzGG#W0 zwU;~ofxaZAfTvh)X8YF4ZAW&2{a-gsR`?lk{Ip&CZsYd4PqQL|6V6wm28|O)}~l(3}YIJqi6J$^sYVaM4!>gO*}M+pnSLVd555Ng`U)T)vbYe zc6uOt^3eQWgH3DEG~Wk7sh_xL>U}oRcd18`5iE1E_|MwSbPHQj%gnUz#Eaww^4pU1 zL<^+9IX2oqfe5=)CT3s(RQ!71Sq0+NQl-lqfH!UEQf>5Qc!$IcP-U$Z zj++;}!UFPssuqjYB$yvg2VNGs$-jwhV3*jAk*U;!J^r6Gmmtm|{L?fT!6X^rznZmD zQVQ*B>M5z6POOTmN-@QE;UtQ1Qcg!n0pB`*$%;vvfDie0EOGd!g90oLL|z|Wxaq0a zs=7Zxt;FdPP5Ze=(~4+8lm<0)x|t{c5#)QAd)j=O&vZour~ zTHYG_gX2ZRQTb068k&#mJK0jHqIyAB6}A9_42aK*kcpa|V)u4-CS#86Yekv)o^7wH zMz=f|$4_5c9?FadIlM$W03{ful&lQx%lyN$n!bbuBOXOcVqpkS0vMTlUcHgRc@UK~ zxvD6)=x6cD{E64m6TernoIZX7E$g2I7r7C+LV0p=8T zcZcU&?)XIOC+xmE-B?!=zjM8xg)~pI`@-I)H;gd$NO9O^xX!Rz!@eRAE&|p;Ox7-1 z+Sc!=E`Bb2OQ1< zUm0oN2J9z~pJ(uB4?P_>wH}^nQclN%&5ZKqA8`F^5oOK?<@`1m!YWXkJ*zYgRWg|v zLPvu=+hFHacpD<`{eBnwHcy^; zu^BtYB5x{OXPIT6hjbp%AT_0?td6y#3<(>Eb z>;0i)jRW#wj}g}{7r%IrWq9HRv0R&PcJTd_-7ezAtfalqXr%s|;{w40Pz%VzUupR^ z#fip0taSi{6Vlnf5VoRS|3}19U*>q9-FEETLx!CoVSzqLq_nSaE)o_sJutUEF(^!HJ_f>HrHEqnYy2!z@c z|ApBA$YKGIUDJ?fF1_g4#n6Wyh0OgqSKdqO0PWx_27+w z_iR{&P8^PN7OXi6IW^KxIwYoAwK1im|MAE&?KPKeHB48ZYVl~pAJC3ZJ8Ue$z7=@s zC}2U8Xla`w!TmLtInf(8GH=ywM46|G_|VxRN8*?l0Kh*PXUy6B2|#`0$!w|WUcTDKdE#YM6c3qd~Iq>Tn%0F|pCd<_=@w0!IZ}e7rBsj|!jh=7! z!}z}NKO>i&bPO|DZ=#lb0u>&j0#3zx6WEusv+3%`6W(;UYZ*GWj_X}_u8I?X@$CZj z>$et$HZf@3=;nn>ZhCHu`8;beg9VPoH&FzXT6U_>--fKCkck>bajSYw_*}j!spT`5 zjB0!1zg-GS`4Q1>QiV}fjH>coT~Bv+)uvS&6YCqU)oPq9+_|$S3w_S6Puy**h2i3} z9}(CUxPd0Mmx#(;Lr%H1Qg5Bw>GV66XbgsVhpi7KjytmfTT{NX59yX6q3fJW0oVzy zAm?OpS$qsy^cuBy;;~ZdF6$A8L8?)09|e$7fQ8giSyNC<%dc5*ZgKZWNJVB)jZ4<{ z>t~H&UA8aeanBsWe^dn75RTgZ#ygF*43)a-ZPtek0BdQ+svcw zZUO#{faofowZE^lQ{;4C1Qjgdp!~4zu~cd?ETlw=ul4A7utLc$=Fu*|oTrD!YpM!4 z;=@GiwMFZcrU)WOL&#JcD5HI;5xqJGTxj`I`Q>uBVBN$cWIGJU0RkY=`BDu!uq{FL zRofu*oz}eJ9O$Dq(TnHx!ji67dt5F&U_PVF$ae{vDFf8qrjV%wU-eT_2TzfzjzSYa zdWiLiYVzz-;qg=oPc`!D z#%6hP-9`DW9@-q;C~aU2ij^!&&+jL7>OWc3X3(T5T>6os)sOQZYEOGN)thG&;?>g6 zRH2V%t58%RXS1iDStk&K!#=qDmc?Hr%adK>PULUDKd5aK5`EXrqC@N6$0dYd<0C5D z3e7l1SCGR_Y#NdaeNtAR(xUeF$&|mQIV)9{pO4!P?4}#7#s?p0yKMDtW00AQQk5|5 z7`$it#~tl%|F@*jFm46Bp^D+!&FD2%whQ!94S73wN7d-r znt-)GdGCo89>`A~C0aGzOW}$w7^I<5e4R4OkV1EG*uq~dxhF}VM94bW6XeOM#r4gp zkS?Xr-lQm27|HZktK|%C3;^6)U z9S~7&y}Wrc`)+=$`GJQTI_Hv4^_EcNt4ZN@<&+wAn5KM~t@AMa4-x1{oZ!qmmhoq8 zNiM0zoq1vyvN8J`bn8+OP;t!=rp113mLU3DOP~^K&koD&j{7Z>VF$0<*!JUr2!>%t zw3ZPm6^+cGg!srT*&5rv(jmmXw?}?;a*p<`)i`)ZibhU~^p}mKbt8M<+j<4YM&fYz z+f6w(_QzxRD?J+a^REu)gi$tY#w$U zmby}VV=CdWTGY!&%Vk#vecWD18PfiuKC9rrfB+$V8*j2?1K&nXByHk1$+YeM?dpbl{;z0d@}nJ4szH!4rmcsw6QE&Kjfk{Wp+ra?u#}V z4b4WgW7Xk3pe5sWQ}H;@$aScmYZgm1F1&RmsnX#bG$m|=Fin#)BB7R+||NR z^cr4pvyk@-zEP;0St%5VO&Am_d?FY~F5;uaFHm|^#qkcn16cM#h)v+Z=awj+hlby+ z3pI)ttW*#?a*!10^jVk$@J}fd(6QSJj;h>F*>HI)sdP$Z!q1)5V5p3scs#C z$10@w)<8liohx~GpQFAJ?1Nbe#YdA@**8@XgfZ89fsCm&MU71wqB?I2V!he zr*CAYhiJ(riKgtjBuBNv-MTHDA^Hzu|3kXa7e7aLE;3JchiOOu4i5iUXxGweUx8CB zK*vUXD*zj~+Wyv&yE)$stU==_uIG9F)EGP~&7)~#$M03)Qb+sef2VV$b=kQe(Ac2R z%{@C=%e3lfVIQ(Ye)nE`v_az(?UT$mS~3_eDHHhgQD`HNy!w3jTS*EB_9|p7j`R2I z-WQQtxHxT#Y#ih^FZ5%?r{XueEL4V=7nEo(E*$i;BA}|jqW&B{{UTC3L6x-d4t%*m zdoXy=>xU#`^)YxYh2fxGx3DeQ4`r0sqvuf%y@5y$URjiDtW!cqv*)w*_zagmdWQ7$ z+ios6aOa$Tm~35sL?P#huQl1$Tw8)l06Zjxc?Z3!1xcVJJJJbUD{s{5abn0Qp8-z| z>cd|u*-zC@fpa~$=^AxC?x@XNH?Uqsf;QF;#c?(tBWdrIs76&c#mHo*kk7j!OLtID zI=EXrL7cg%*EkBlLmR!*&x1{7oP#iu+d~N8#f_jH(Lo_+zIjmbxC?K-Fj27siuhf+ zuVj%*hm}!@mocnW^LlZMkrI$7`+*uB6@T~Ip z>{Xm}mt|Scdc+4CK-$LRvmh#= z7ifX|sYm<1M(0`?)4S{<#qS^W0`#M%Lk$Xj=%WeTIagB^hw1_D%H0IEv@QmbBdoQk z9+3=CAxi(cOlFi;2kb%IBBe(Ax5P^;URhP=P2W27;J1eZ^To2lwBJ40c3;2Iv!CX) z2E3bXU0=O@3DVNDT|E*O@@QbE=y}qn2d|OkjZWI0@OSo51bosY-EVzA} z`IJB@nfxyX+}_hk_0>Tb7fL;ayg`$!*{BI}Jhd9eRF7gpOft+m`Hy&#chkABGV$zx z(yq(8zvJ)f7>B(%&hwiKzmv5;f`G{H+cml4hW1w#XaCN-h9u7ZwXST-4ht6O84AN3 zDc|=Z-u%&*@E!q)b(#-B{9{;P)~+)Bd9QBzQxfSkd<6%Q`Rcnhoh_tMmvlTMl3weW zOCB*5lxul)xlyo9#AWDHE6YRz zKEXxhxK0Yr{6)Pv=7$9VGIsS*gVhXswE$R+$~b!m(4w17uJ6oWkyx?Mz+67jbR?>a zvbt%t+LD=+^2H>`Wae*3OwAtW zoqzBqm7n)>KIQ&>aV7hQZYytcC5IKZzg_<)%otGKXN(hX%m;J(Mt zsF!eKCy6@XbDcC~=1Ln=QOC5lO*&?z^SV1J;i^zqO_ly9XH&iHElXfZl)F@;&2^*4 zlZU9euJ$(5+ZRk5DC2p2a<;hA<*}V46^D+QZ_qI*lXLkC#g_0}Q5|BW;Uo(DD)gQl z_3=92)pw^(4s0NlUE&y%3sMW5KEI#y8eD-KAxb>;lv?Tj2##WSnq=Kh#uq7fXkX1( zmSq)nD?kE>gIZV1Jq}u!93V}OIBe%VEaO>sLFcr{9^GQ}nyO=X)iHKi)krt-EFcQ{ zC^6Nz=BC>%G|n>hqz>iV1!R8v2&uOKr)VnO6V)iuQCnBnIK@c+%PqsWV~#{C!XGs$ z*%tzAJ8hU0&3D3lCaRv_Jgc9Mw%_O~F>>RwZfpSpwjdyn81N`T^Uu{Af^`n9D>{IJ zSxv-d7UFj#p?{=6jy^8!g^ryhKFk)8Hz&e{K-o#VNlWQIz0+`I#g5sYotER`$)bT{ z6KC~cNmo+CFK4hu1I{bvg^K31h>xlYVp8V(YJ`ZJ4+wEus(=SHfg_cRgML4&=qbJx zwB^l4X6Y&1DXA|yU>H5V@yz>>gU;;3VJjS@|65-)6q4}$Jweh6M6vuQkow7K;6nKg z=Az>xL-$Gf=hDb4sryBhf>u`lEI%u<%2W?$s%Khbe8;}hu(=qK{cXO}k5!5Yj5j~) z6W%PN=occ8lrDPwU@J;hRH!@Og)ygGNT>%gw&Uq2e~=rjDBnpVThu}n-PDc2p)6IX z3(BRgQ{`PE7Z~$z9T##mhC@|4U2dbcUNJY9R4Y4f7n1mDI{iR$V$q~j)_rBIpw#^j z``9CRm(RFb@4tm9ikn*9b}_*N1oJTO!rzG4~Xjc>;#rBd|Hn;z~lX8NFlX9okjzmeRT9r zneRyJ&)v)mR&FMygr9~`wN=tv-NV4A$dV5b>>8?A{hWt1|KaT11g#B%&xD z9}%%Yt05~yx=cc1jolIl6l%>8gZpqN)X)wn8LD`2y^gy>=R%n_qia7@J0Zdrzn`|L z``P{ejDNV~t8wiRFjb|EpUP}IIQ3n1-^+37KwE;@GIIxrx+3!>8&tut#rXN~Q>@Xl zWlM0<_hR;JoD$=Y7y?UQHBuSH0@^5E7-zgt_A8d@ze6fuRGR=Ea>1|CYs#++6CI6H z!}h7WQ$@Q&^myH)y39}{PIQ6L65R;xaB_=qQe=A7O)TG3K0Gf`A{jt<-X;2T-R>?| zjQbCi|EuD7D?;qnM3f3S;DcjLs!-EQ$WnE;3@G$zF>}x%T)t#~>;i2hi}}q%q3rxtbTk>-}R90 zxBTGG#?LgwTuXS%d4OMwW<<}2dp^N?pGMl~Sj4GIzdQ6Q?6|G#(Mc;0&nlbfwYauJ z&0F_?G~mjUp;K8voHQ=rPQIoNU3%P=J!wYstL1;`J)vX zo$q5Wp*WY&Rp<*?Nle~9L;shb{J(W*?zXV*YD^h{9l7u9yyaUBjyd+A{^>BoJL_^oo*d9+N`Xmvn)T(|*uO~%z2V(}^*fx?{?Im`p{q&J>=W&M z?q0tXVwywM2sUcU3`fzdHbQs9u$>DgaSGRT;oR8(TXosRJ%`8q}-CTLY(T3I+_ux7+ zRVjb=U6oWw4nIIk2D$_vll<3vwWzGF9kO}W|Q`kqZ>ZYa0iciEfS2Yq?2lP*(GEg;2L+^5O-B$J=Ue8TEap# zB+zgG`nNS3LAz8P^m4>KK>qXxILNOu2{4_R7Rfj{K$ijKVxcS)9ux1cGF(U8%z=t$ zX;_I-M{#S>Ox^3aPGjQWGr-NgAPKt>m_Ldn|F(QCfC2rFAct5|>O-4j6c7by?##mc|LeB=AN(w@IY~F%?a}Omvz7=rygkrvvI13_9d1+_ z{er$speJ#Fv`gVt1)=`m)IrWeYIIbxG9}P@(HlCz7dh<$GV)nKXyJ$x-Ro%VMyJH z1zJbiIDhd!QXV%4+E%;3^61T<8vLF2rUX zNwOLzf*()jX1j|7?3y}1&gSF(TjCPBqa1X+?-z(-xERRth9x5S9i>mOxQr$@@w5T- zCVQVSkad1o-W}RHevk`fUjp=UUWmVHsBBx*G?eYv7lt)+1c7@zMS+b}XBbhWv_a-{ zZY%CK+E(tYPf(5fn{(`#?ba&pKCc(v!ai5LwHuED-nkFNjw0 z0p*Qb2Q1|_c+7)p!e~wC7~&duoxNh)vjYL zt9RztWIn)TuF7;(W3Ua{|A({pjA|->*Zya897kz7h=3rmAqvt(Kp?27I5zBnAfZP= z4MloLMjeS1iKsL|qM{V(AUzNC>>%55FoS=(%bV5&iu}t^PK>@-h!cExIiRe=+Xp_6ly)&1Tk?HsD^-4=wvjb&|WEIiKj}f>Fxy z4+oUf_k(oWWl0gCb-LK_$7FbVxTiX5UYYAsy98ERC%XWf#V%UnEiM;7ILe~5%|zX)bQS@!Zf zvb%OH9kNAVdU*ehJ--ZEK%*T_A-~`^INoFL?Xg~ZJ}2I7)^HkxGVw)sd-_ff@^+&Y zZDs@a-1T|y;ez#Q5x3BHhXeJp_gvpP7>f|V81azGU0Lr|_K3@iI~}5_l=xDnMba!L zi7lL(SMzQbo3$UL^VE!wJI=n`47h+c2^ zMuSWzViGLQW5RC+Q;?7ebB`+yw2Vc;kxX@#_cbTl4AKhi3AJ9m9r)XmE$w(ax8E`$ zw09utzuXRLX+A>#jhMfA5=_{WdnP}nQ(Gi=w#YLWO z8=c2^RORd(s-CK$yu(n-Iw7KXy80GkTzX4PASGk+>&Uzh)ufTGr1hmfALyyk-W&Wm zA+1OFdkSyN1?W~qeBIY;1|Pj9xC4gsaGdk{gy@YjeGC|ZpS{+ir7#~wbkOu~7+r5o z==BP5^?Wkbz7QKR5~4P3Vqn@Sv}=k)!3p76hB&F-C3KcQ(ALU#mUg8vzjxxumLGRf zj|V;(Uh50b_c@Ar1k#3JG)?_i+VHBUFgacoV_$qlD+{&Mxuj^N%WgRorXm5^bkSu7JLB5@!`i4{Q^ZGN*F-F7DfMGYHYg<)f ztdD#Q{!ybK_epQ_Kw$y(cgrH*3b;%Io-)pmKF}x7oZ2rJh?Z zk^8KKp6OZk&tyf#q8DSj+9!YGXPj=a7)KDEOCe8$S9Mr?3M}-uM9w0Am~k+wrh5v6 zA!Fcf)1*Od->3T7cWfQjCOe3%H$fI3vG*Tc`S@=$b_tA}wbSB>Fmrks7UbHoxNRfQ z^n!~W8FG%hf(#BstfC(}!8sPFV%T@ly?QcqY!YW3ecphT!NEnhhCa`Qd!(l(c3J4R zgg#wy^64DJr0hM3H)4JwKcNCciZ-xl8PMklw_IxP?*(X838sNPvDliXsUbU)c_|8iPY z&EcH2RYCL3GgcH_BrUslK_ESs=@?R<^J1LYQLo^1rLS1AzpQJMLyQR|D4qUQ>mE@4 znY-?pXTKvq9&V!P#&oGMS>aQAm82#W!h5AKv%;IX1ur~xNf}dq_bPOqx0uNfdaou=ss2YpPlAD8W6g-A5eb%o zSPCk6+sn?HUAMY9W!in_`{?t;f6St&3H|xL*=Gxnk3^RCU8ao8zRX>FNi-V%mNiRd z|58{uRgHS-Kd^oti?)bgySF0bZirMS-d)y$XD5!|*gd?idsl?K?7<&*#xnYY^{Gjb ze<$Sf(&4u0q4}AfIrMV$F=Q9SP~Y&C&%@xSU(UM>ttaTShi0t=8nL8;w1@k4YW8^j zm-!WvCu88;2@!q3CQFAKmXicGvE|M4^V#jE^p1G;>KZBI(obws|BO zLFOMjE7{TDidt4AZ<8DDl*6AxzEb@AL&UsKjQKex^{Ou8JZ3TXWsRiozzq^`)M9`n z`Td(1`b6pL57Tb_rQe@F8{_4z0%qK@|4L=1aR-u55ZQXFOI&18!y1PyM0q^c0xD1s ztCYq(or~+01E1rH)ZDSM{TKI?D6L8Pxt^PPXFUIDHJ30R@^J)fClatZD}pzfknTQn zygw{web^^W?5C5-yUr8@?HM^K4BSPR%y#;3M^?`3e7eTfyK79{r6=7?F1yyAcNK;^ zMQ++#I#Cf>_%8c$aSJy$3q4hg`Z+hZ1!s63V4PNAh2N?m&)s-8RJLz$_be&t&Z<4v z0v=XV#(S2mpS&5Yj`-bWU*-DKkm<$LlOMQS``vy;L>w8f%DmG3SEA#N1B}hs6e|+R ztVTs{i$cKJ%XB`?aS&}6l?yfw@v0Z_`b%}UI{ykcs>CedgY2RoMwjxpyb<24N#A@Y z;@mI6*ZEtnl;J%t>@hWRUa0||FDHYcYd$%fj;K7rJ!|NojJ@gaJ}rKHPsekt7f4^U z@P&+*-V+@L>0vEt0kM?^M#F?-Ch$3KLPWo3tB&dO`_sny0^+v;55Lai)x<-wuG0a< z{yVF}oLPe($0KWSqK|m@*%F+lqa~-(`}BdMM_TwAHYz8~x|6$fiOJXok|Zaut3W;b zrS<&r*4c#Ji9QiyqsKQB(|qHw8o^o+dbbJ7t3N>;8>3D;XL59dynIfV(+aEYUa7M^ zFJ`V)LNEASzO}KL>N&9Xyr;@vWmyNMNBSR|7b}<>z&65H1I!2Ief&@RrMDt$M>Lfm ztw+aN-t>;_H)usIIc;8l^TAeQy0cHs;u^ZGMg1*HLHfPTt;ut9D%%?@iPaV@$P*!! z!eAtD6<(V0P#9_ldWURj8@aA#cwW1Q+4Q=LW5BR3%jn;#rtvm@Tmd+Bv-+W3kJDiw z#<(kv`QH6OL)If|f&;i|sVM86+VIl`^1p(G#><{i@T+whd?V3HwDy}o-TIfq_k;bt z8%K|nC(?iK23bW~IoSf;mf!%gst9NCI-K^$?Kn3qlkgQeBN(Tq%hbb~h#TR+6hnQ4 z`g}s!4|*%p6eykmD+5BDs(V75Hut7&l*g6T>A*LEoSU2R4W(sQqiH9AtoVuof=?dv zwJu_8)y&l+w#Z3-b*W-#Z1M&Wp{tfO5W3LpEC1yZanoRton_85<||rlaeCi~&+Bdv z*!&tQRz}4?DZVywFE8aH7#!mlOga3!0<{`4#~Omvq=}lkU~z@vsvG*G-9I@=&ED2d4&LJN)f0LB`4Lv%k=u87Wo3x@i<&8Esfq`LQcw#o8XY zE3th5QYYBDk(PhH8z)O#d7Bqw%Ts4uYIOI@J4!9wtcz}GRyM{qWKH6L6PYajZlQ44 z3=%eT*`su2;9Ft*>k;NV-uKVOxZ?qsSc%Q08Z}i?2jhm*N|H}u`TKi16(7K)DbsPE znR3&$XR9-#%$R$(-YobBmtTs!EW4P;eK2Bo@unYaW}QpX-IWsuM-~Hzw7}?ue>3@8*V4JwulaxGkts3= z3pdf8@i$Fot97^VRZ^9l+?U1-@#wCN16EqAH6iG$@!@Ygu2kV3$4#-?n;lGW&vkpc z>w3OfLF>VUc=yG5@1-xpQAAetycTIygapyQ>p75~ zobCvAENgmOB>Y1#dYkc&g;cU-nG9q5oP;UaDzbYHm=_!0I5~KIgd7-dWG#ZRDY{`d zIu&ti7isnW;`i6I`ST#OsO_C5IXmnATG z5ohxg3|x6GejaO&>6RmM?b_eG}rWq3S6ocYidHQ%z%7J_^P;LxgjL zq+TOoWg!y;HUz$fJ+W~C##S51N`WnTIOE(=4Bpypp|5O?nI33R>I2lPJM#2E9fmnJ z{H$%=#%a!i*7>NKC*gi>aNf@BLv)D7rb}82Q{lfbECMODD9tXd6E=w!?f3_5KhY+l zLrdXjN}3|@$2=XbBljA>zEnp|X}+QM?J}s2l3rEM;+7;;9-KL5D4SLe$fl3~-ND%U zLQ6R5bUiC@Vs#PF`zr!^>J%XAiM*RIcsOn@QdF!q1OEeHFJ#2J4^UL z&ZYW0j%GAsDQY9(ECKNM=n;KT(J`zbG1XIkvV4X4KW@-qg3I!ZMNy1ty>;}z#7&GQ zHp9`77P*QXcNGpip)eo$0H~D{NGO6>nM=a8TTy!)o(5kD-q~}j80N!Es67b0oJ2?U zm965N%eLC(2<89dz(?8ig8?R+{#h~1Lk036YdV#IwGNBoeIg+gx(K&c+qx`9^w@R< zUx`Y@WMN%)w(Eq}53lI(D;BV-?xzx2c$)caon|p&)Z^3#Ioq!E^>;sB$A;bD*Ux?B znZsPFWDhK@D|6E@maQRu^QyPiSEpX@0v5*LudlSK#U0}ENk3-eeE?>uQZwwaG%nk6 z!5Dn&3z${6I^hP=nDQS+#jk|1AY8bW@i_bBmx!}hXL)V$P8V$Ix+=uFee~_UMH@|# z4|1cQ_H7&Nm#pKQ(G)+fC3x;lPVh*A%>UH%c`imFhOF4!JJul9uf$6eloJ;A=mfi^ zAYB3mwF(ia58t+2TJv*d$=d6{M%w0TkJU@{M7D&=kq60lS*wCSc&~ubZ9`ZC3(Z8P zz>S@Lv{{a0?lP6t#UN^@i8U=+0pdVqmHn-#fSzk;Id&q(0cY7ki#DzF%ADwp+@$CT zy^OO--;Nx4iCg`_-WMO2e_!=vSb_f|l6crNtrbgG*?czKy1y;d;o;ORXW_w|r0n7D zEwEZ}x=#Z?0L&U6VjXq!9$jeqL>XQc6~L5k9BvNEfeRkF-|T3G1$$a6|l_u3-^?UGtEdOz^0}kxEt5(B5W=c+Q~AGL4_^*Q~n;7AX~Grv;2s4!7zs)I@OPIRm2Gc+PM?#V?&2awX&#IvJW9HEaN`v`O zEh$WKOI67*dhFj(!)x#TQwVgZA&(Hw%oG$)~z30gLeDv^bKa*M%MmgSqmG=f~0Rd1Gg@H^{{TS z%zjFxNpj1d0j>1YZcaf-@-J8S+X|7>nG-@nOUF4d3r8C0b(PRUs*ElkdKb&y>N?L0 zcv%QMkp>K$vuyh9-uTg<3=@S@dm5+_uHx}u^AuGXUO)HtoOf}(`a*E>!;^wF*Dinm zmE@k~C_+@RUm#l52ZJ?jDm$%Vy+TM%p!EC+FmSKR;xJ}B6Fh|*-#%JbWTAyZ&b>`l zeoL||+_;NTM1&A7|MRun8TES6``W7L^wU4OGv0EdGwpMITY$tq_E=YQ*c#nbQ)q0K zGZ>V&j8-)T20@0Mo6!|jXxpm_Xm4*R>U`<-k{)xLKMFRh1~=d^WsoN=afG{6q{((h zM(kCtxxAG;Jpm|^rMr3%Z}*s19~Ax(gD~M5ragY7pv}O&8Af-?TbpR8rt|OE{Yb7& zBh2CN6djd|frqkbNPQLn{LYpODqNb*qw}0pGfYb5s9Nr^4x2_%Zd7!CK6d1RDHiZP9Ja!cC&2a&P(EwKa zD9?N6SCbtR)_Mub=Zjz7oQc<@k>7*I+s-SS)O)Wa_{X{WsjB`A)>dgMQBEtv%KxUj z0F=u)tPJn+sgM=+Ae)d#Pl%A@6{yQxtswH}ivcM?l?n5ov>HMq!fDy&G3L;q=y3V2 z8;%CsEO*A;D<|j}IBEQ>=e&$8{aZxa`)?B}$UP8&C`t8o2b6N zC5V43Q3Hv?1a-(F?O@Z{JdWHOaKZ5b^1w<>g&1Ewr_|LL4(GK61Ec8t5UIS@_ShK) z{G~6{HbUb5mIWSN3}N=Q(YDQ*q-#xn)hC+#Z4m-wLXFy`XSg$1 zQt!dfu*N%eR?fa=b6aCg%=Lu>g_% zCQb5E=u?w(#=8C&;Mol5La4$;GfGJ(KK2U_SteMPbmGdxoB`Jj0$DLZOKjw~hd14s z!RXgiFT`2GGfUne(vDqfCkJ{9+IH=7Yj0uhPWJ*a&xmkfGK|USHE4tt`O zcRxw*JXzs=8DnN+qh5^givtmwF6P2;I^!=U{hARldH)G@i@SdF_gw(*#!yV0eroAH z11s0rlur6c)tQj@4B2tkCTCSJ3K$H=Re`v-wz2KjCRgDRENZ||br`lhpOgHhW_@nu z2x|N1IYnh5Gp&=I*1x@WS~ewW(rRIEI>XDPO*8P2w3WcDMh>Sw8codvM5w=ENlqq9 zAgR9QfAiM6UovzV2-Xt%;zwH5hT1}#N|M?-zZ{ZFP|Jvo}sU+Mt!MYi7>`f`}h084yi zXz-Sv&*5b{v8H;ub;XDMdb!&O!%>VmBT3cR)^oB9n?Fgrq2dhsn3YWSN>2EtqQGkc8-w`wYi>Pia70PY&^82R zj{N%SvRiM{HT_dcw&NqX<6^eYsD~WZ%al|zPAcg+ukYa5@%hk0D=thcD~eexajbLR zkENl! z3|r1k@zFlV#@X%|if|rHT^M~N4@jmpf2e@>vMsSF}a0-xW6`VJq-wLmXwGzRe|Y=feacn^8ZJ@gL`2mNw7ZNyzlDD}rwo4abFA*(ghY0hL^e%ZcokXz` zHHINy1o^kP;#vk!tW+c?U^j|rz>aQXz{FqdV<;>}V*n2>of8wQrJw50bVNWlp%^6s z%_0nqFkNALBb-9Yf=HUVqWc5VcUFzzJf#uIRNTS9=pn3OBunEVMRhyDKX3d4{?Obk zPIx;^aXwON-{Pi(CVqkxf7Q&cIXh5V8bgxQtFtc9tP0cVWYz+-Gh3u^SPhj@v+Yr4$2ujnGvqg&Kjmb)EdC+gsue(5B8%EAMSZb{_~ zXv3J%ci=zUPFm6a6n#70R$5OJJ(w}$ps1p8ROao#%i9&z*?8eCb$&jYC=WmmN1KE$ ztmr2=LI}L(0jW0-{cv6H@Nfxh!c*#)&ZnLWY#khZn;ntaNK7xOY$sz^+F^=TXEN7j zb(ScbXsQ&Dt#epK-|w5#m?EgvcFpd?2d8eSiJd+Ji!4bD+!tI;tmD1p?~1;SH8ZqA zn-rZ{sx>+^I8!MjA=cu$AaLVNb-{30Q=2h+%n8RRnE&sKT4UAS(_BEBBIZ%cdom}OyOLHD%ufwfkJ@7<^N=h)zBpusW50GjQOu^=S%K)*zCQ4zY?+bWyUPJv0B$krJv~ zuGzCJqA{j0|HtW&)iHGp;bC}js>Zh<*(-aOUs+6hOw$W}7isfd6TNLh`tTNe@g7z1 z?F2)d?2dz%tbVtNGGXh2y@9m(Y9!3x#5Nu_=){?SOoH^4RGXsxTV)^QmcIA$WV8$p_ERlFd`U#5UzJ#bJ&XB?>%;J zZP_B}2*ZES8AnqM$4d{hzliBFc$i%E+%y}nG0h1SId!py6Ry3qp(8BzdQGg(8nuL7 z-12T(u=i%?xP&`kPQo~nBZ5(`M(!WrcS+)-nb)GPcDkMCp7cuYppm+74wc-Km|0<; z^pL_oBYG0!d%a?Z*Kc6N3;lsDC&t+AWGN<>%|}6t5I)wjG98+Um799Wxa_JdCR)OX zTNhh0%n=gicL!%1X0tL;+$CMy5+8Nxc*Y6yVj~dA`Mz)8Gtm(o=j(!$cM1j_YFSBw z2r{ID3)SdR8=|Q>LY}~nr|d(H-5Vr!*$9UgbO>_=GRa#3J&hBkL3vR`-~{VMNnAom zk_EZy7{e$=cg;$9;*rc6igbj#TY?bW>C%L9A7GUXhZ}4~ES&H)waCHR#F{lp1UC?f zt(nMy!u28&B;PBDCE^5lj01XxN)@6fRM}hS*&V4ETXD24R8$KQr2=PnBNX|Oj-Ciu z<8W?X@Xr1Wim@=J&=?rd4q4h3-7|bh1bLSUW357L2E8J19udvLO|JY(U>Snjnm9~C zUI>On-{gJi3XkL!=4x%$YCx$lB2c_f!G`&Xe32A2O;JEkVNl1#xI;(|zgzm3B|ey! zgp+Qm4%omoZW%tom0X_MeUmkhCaEf5UF%Im4)=xhGBj)QmN;X%3L@-l0i>C%s z!(NCGeOthlCyb`+#8i91YA13bwZ%%UQYJxS+4&bk zPq4t{G=KsTNdXRmnsvc7Wepvnz%(WGCE{}G3Fxc>4Xo`YDT&N(?2sDjXHr@;dV&bi zkT3|Wm1)2RND;@Pt&rS$R48wqAX#rIBKr}-UQru6d}i0aW8ze`ETv1%gtnTiNTcz= zL#NPHbc^HUnirv>e7;jMa{!hZP(lg-FOC472om8(N2^?NB(x_h&({l_cB|1u|_2a8yKL1xeQJA ztUJ4%^cNrk7_olqoPHDm6=3q+6*bc7hOT6frl7ylcJ}#tc4VIMQ`=WwkElR;hW&Pf z>D*%RI>m|c{x8dUt%*CA!9bmDp|IsINQVuGmSSS*SMnE;)-h+_zo8axoO6HRufBOw zpEw*XU;456j&}0{kYLyqF%xsh7@2J5u{S}}kAER<>gWSa<(>Xln#f*CQFcX1!?!8; zx;u;q1*vS0@z?RH-^k`8+kPtks&?jW`v<#wrMEIz&ovyKM*>1MEx#^0t5EIr7qZQZ zrwN@J^l$smI(gj;=y3k*vmy8AzZOzDQ1TN6BDQz%w?kSX4j za^Ajt@yyoiw@H2*-UR5KgwVe0Dpn%r29AF(blo4~31u^{T2{8eRcKExdltzlPvE1{ zxR{iR707u>2iT&Ed|nEfXl3e$-p^Wp>Q#2K8Oj&G=S&&`ucb`_UbArm6!R2Jtu?SI zF*W$0eSWZW1+2RLk_F5@fB&@3<_~#I7n4r!=%a!2P{Q5V<7_p0fySB4U)R0Ix{tp&*ulj22o~7|SoiwgP;d(?5E-@L77=+*=q8C#m zU9urOkE~*4yd^9R$$^(on4YwYKrir9V{#F0_R_A9Blnr4HEOo2e>pFD$M>qfsRZM; zAcCV__*w4_TG9|=6RdVym!QgD&gk2s!~+ZO!BeY41CHXV6(i+xMQsa0iNID1^}S)< z(NGt+_u3{1zdqDYY7RkOf}nyaPN=1UZ`59NXKsPG;JX79P$jxB&>V{m*hSR_em?ah z*2Y>?f#%+(3Ms7kI0vbot*D!54;x!un}zv;DExki?iAVMAdgiFU(&d;N=TS5#gYkT zmL|T_CdEwi-L;eq@`nsv^JcIpCL@hn|RRGU+_Z|sDkf+zTQ<9n{zTG``kbYaO?C_c~TH^)3)6?Btv zTIR-XW|aL}&Ru&VsY@4_!82raHkUeT{Jx(Cx#3o4k86Z%U%6Icnh;`;^vy=yIpn{pi9V$#D*d~Z=qexj0cay|-U3Jk z!(lZ=N@$yP8^vN#i^mY|=e48-5A_vBZ1cC#MFt`%V0w zVC>LNruckd1jd4jCDJ2=oYtW8`a+)X10`Q)@{4<%fH@@_OTP`cn`P1IBxd-P-93zs z*z_&w;H_;L|s`vQzlJrIXnza<78~kIw zUD`-_?_+WMTldOAZ4=!b8p-4NMNq*;j5Fi+7;#PXH8b#t=xD?wJ_XUwuh;5nYbqPpTHxnv+eh*uuS9NT6ERA zVtG}AZAx$9b@Ds((mq(I$QW2`%myXZx)IwoRWl>fRh`TRF`OJEtw0CuxD=eA#3>$h zK4(Sy;|RehrkT@Y+SkANF%*gU}+ zIriFx)lj|k@p76>R-uOfOXOcF!Yv!#DLZaY|VrO`q}g-NyjqznSx zToKKe3e1S+;_0r78n4|xu#%~>fp{LpO}exi`Ude;9G45}MIoW0*Y(^Oh)5m%=gedt zdSXqq@&IHS`bwP3;-To+hA>wOxC#I9QQEr=D`heW=ft8kSLyI(v*m;TR6@zNM1EIN!eVWW?83s~>c*KefBr)0uYSI~V`FS5k(X@yp8E z;NJ<`sK%}Lam^DgJnwiq=QEzKgsx3oc+~%yZZ2>fs&bGE(!v;h^Ac|KzeqO6dlzj7 z9_1wUoIeO%7kK;N_mWB4R)x$XV{AZFKvBt>7Pf=VijZ{H)o7WCcSV1-`q2q%@0WeW zms?Zs@GT}{)EP{Nh`r>M7$elF5ffjS*RHu=tz^ask4z7vy!6O$ZBJZj@ zFlLNbZ!A2pImXb0zMgn|XWZYF)2f=cmLSe?!w@=34Fe*&&bzlGP~Q?lQUSX+CY6lfEW$H%5N?pHh?#+fz6S-wZzoiZ<&^{6I7I#7%kJ#z zl8Wp&=jZoIOul&yfEKZ*!1p?DLdUS?nNZ0>a*`SPGjP3oX^E@<{KTWIGzheAHZ{D|)M(ptbCt&=(I-Rt2`a=43+eGKzI%&^X7s+gu!V{Rle&5!)vWAYQ zl*Z0O6`hC!Jl)`vSZchcqm99n1W*rDpK!-X#UCIHZ6wdvHGaVVl}c8M;CsviiXS|j z`nsMN-MGU}Lz;0xaXfraSK#|F<9Su8x0G9Yla5uLh7?P*tHIZ2a^}xRDtR44t5bJF zA!)Oy#t>V})klR1R2vR*4#zxaHtSV#{xy^RCoM|s$xUD$Kjv0GTC<&b_eK!73R$?T{aaXw5uQ{B$$!V{VBZ8k3MLnguy(bL=k^oi^eec=5pk>O;36Zl zw<40Vu>`< zAwFE~ffdfc^7b`vK>}^Rm&9M42_9bY2ws;&z*Uq^g(15ZvXpEJYekqWt2VW~8{QOQ)g*p(!mUEMf!1T70ySi&|IN zuSHkp#xrz#;E8!iqsP7E#{K9v<5{hoc+f-zS|Nn?KkfAb!HFAzngCH3TaJi;4%E7F zE_=S|Esov~_f4MWWBFle5oKr;Yarr_T&vtIV^>Ti7OB4;P=*8x{j z$3=bL!1Tb^8l-Y{zE;Ps0B!GCbg4^v-U(0zcyP}xwX?_nCX_4DF^wSb``8@R0O$a( z&~&S0FT1)v^0wsznt$kFnR z-w9?hYrmD4tcYb>R5zW&Mo2a!1WG2F6OoK|*>doFY0hU_QsswI zU`+0qu4#H$(}tD>d?F1PXNhhYsytd# zWyuiTOvMeVUO0ib4H)qb{Y=c!2$$>HyMK?l6*|fUJ(8QLB7>vFVJ2X#}oJ+1taL?(fjE z4*TY-*8`>Gq5V2byqF9QGrZ|hzjk%ROjl?~TVix4sL6&vr>GC z(mGJX>{SEnG6Gardh?`CYb@zEq)kg~UBcRik@rUkOTRi?+RjkN?qR1@uVU@nm{-$O z_(#wCaaY?0ccnZh(s}44x^>y=tbk=Y99m2@8~zdL$U9S$vQ^l8fy+BW@W#P3N$fOr zJJPDuGTTg6#GM%8GpsZ7y?T4~Biq>HokhCh?Ck-{{$njkA>+=~Co(=)y-UCqL^yvQfw{F~Q1}^d$?6_6Vb^qNDm! zhOb05(?^IC#guFUt3|#^|p*|^|+ z7$^A$7pleYtS}VjX37JGt)_%UU`GoAlF$Vyqm;}eD?SUiin(2xv}f}yOyyI^tZe)F zwK~X7U!iiOoi5w_YvtCm8G%$xb4R;MYR^C34ueMGcQjjUo<2uTvf}Fe7Dxp)_K2*~`br*JZCfdYA3jFr#qHUP@0n9Erm|r?j}g@)?wm%tpaeNdWTVbBZyzO*&i9`Ym(ir zF9I7>Tl`Ee<|&C(lJeQ1BVR2Gi@tU8z(j@@vR~&YK|jYoJayKLB^sMWRb5;83i`uQ z>9${sT;V9KlhBh%Bn(nQthOU~$u-Za|V44ut%KBcZm%1)zvIJB{`Nce# znH$`Lu&_#$f1s&y4U`lE=-lfL#tK@G?P(T%<+Xu)Su!CM} zr3Rg_GWlSW^Wx<(L`L9L#mXKstH^!B(Zs|1(pmoD?Ro0zDe@5Yz|gXr8kbgFAeJT# zM`ut?j|Qd(H{f?K-=^y>RD!yq(pss0aAQh((>CHGstNBz*qkCHTGF{t2wfPD|FbUI z+vB4(r2>~l`DTzQs2A=dMj+G7En$YKvtQbdSSe(7pYMl;#2-3VDEVAMJdXW2&9P}e zmggXz+ML4(^%R@@{wgG)_w2f9LO*qh05wIal$<#QZo&s@ZF*0b z+jo^Uj0WN(@Y3gzc z<(YCVe|qbDKw8ZxyL*qI7l|GcWVSWfzL}3VJdP-^-erwy?<>B;cnp3T!c!X>-7i|d zk|xo2<9*SKInuDKGQx@j+k+dL-cCLgKRQ1|IOmy&6$BEJ*7fFdmC83;bKpZZ^5%EW zE{g5Vg4iW#m*KeFo6OlA#`T!ULe{-IwVOdw->}>&v`(M zQsuj>gS>cDocPbQm(nG}=nK+&bg$l$M6@vZsTO`W{rnmBLwXmxa#W&Jz^m00Ow(hx-;}!n#Z@Pwz!C&6J5INa? zRjwp_h5|oMUf6EG6+D_}CNhA*%)3*E^GhcpJsS0yUFOholgl557ZY7^6b3nV5-D#2 z7@bIC`Ze{Rcl!321q&zh4rcid!zL#ynvb3T68<$6bkRdii_WwxU`kxUvMKNgWl@_E z9t`EU(vH3Ig_Ov0QnFq)qKwD?V>$bAR$^eB_{e!>sv2EY{dbxt$hPtOK3bP-Ok-M+ ze~TkpxB0kj_ZkAVdlUWr`3Ml@9rnz=5c3WUzm(UcDNLT=Q=pWqlg;s4vR>SSS5jIFu5m&ICJ*F>CG}K2GL-`CJxJwIMDl)&HLiD z*(pX}ZJMbaJsEYDvhWRfd0kb6r)v8U<8TlU)3$$V`Y)QL%t#m|njqawOUGLO)6gF0 z^XpE4Mfu%H!T);oon(+F{?QHij}r`dQ=z7Ad7iw4e>&`{nqT}XbOq(P?Eg3+O*_{X zgh@+5m(ah6E7q`OK&Qfq&6h}KIje|pK$Vm&$^Y(r*T#UVw@z6nMB0BU`Thws`ZtEq z8znAuIF4Y2zXcb>7_vHgy&|KHy;MNMxE`{+`%UX=23ynzaa^@2wd})M)lT+(yKc-y zj)5wz%}3L8rB>V0ecQkphZi<8JYe)oznC3b*J_WB#IglOn%CODt#VxaYOC(J>Wwqw zMFqOO=E9E#Rh)x?B{@?)Q5*BR!t?feicp1i*LkDq1#p;f&LhjMSi|9t%kac*czR1? zD)|?Fzm-jlzR}`ZhtB2-if+NWUwfH%KG0HCXG^^2%VP%HU6oFt`aySspk}O-gywrJ(Z$5Q#{T4+Wy_y@-hyEAxL%KW8AxWq2$9#qX4Q!p5&NvZb+J@-DU1@)k1DV9Xb zWwpCXL@>5PVlzlF?x-;9Q~vhfB8MOc_;=(mMg9stf;9obF4h)^9&+s^WT2@}p@o!! zlhFeu!gE*hxzYvf2blh{Phz-B8Z_&ipHi>8&rz%~;oEHso+GJnTLF{084<-=z@hr- zN)%qf2oyi{Spzt?s5q@gX#?T;&lF(^I+S-25fRDDfw61-&>hO=7~mnpsW-An6dP-C z8XY0Ydx(~V-xa-X+&-o&Tr{yjBk(-P zB*f3EYYxhet{9A8AB^7|j4T#JDN0paVM0D489h&sL|BrT1gNAfzM6e|@1X5wrX{C( z^l4yLWFOiq%~HxUM27Qf;W&*Ewgh{%L9~-a;PI6dA&2L_rlMNAFAHs@{ot>olpWC9 zYV=x{F!qB%isUseHxtE%;{$p2(rGvb%`3)z%M^t!rAAMf`UzWMA8jPA(Z31fyPze~ zME)>DkOwUse>UIKAS60&*(lw(C^Iq;<74HBa2tNxf?igHC-3YG3+wq{hP$-gJO(E0 z$;HrbQo1Rl;@jLt804iC*2t?UwZ&!gQ9lVes_2E>81oVQR>{d`s_1$yTAYg9mpHyk zY;qt1kCZ%1jvmR^S_QrOy5dEMLN>12q`}UWZ;akKWTN|>uMt4I8{DJgu+lMeni;1j z(W;JB&7lWf*22)^2fknEaG8EkGO;_HjM;`cG5I_C?=gi+LJZ-RHE;JICJ^h9oddQvLYumBhzHeg;`INE28Km=(GuGed#L@Sdq?iiR^W6a!a=SN)Ie}u2k))m41%Y?tj35ft#azoPVu2O z65|8BZ6xNpl#?518<{*V{b~l z+{!1a#=4LTd;M)$MmqRqqf zIP31@n-g{qI#+CZ-uk)`eULJ{ANovS zcM%7(T2Ui>sdr^undt;6j8XqlVR-@Tn8}(6$_QU}<{~Cvz_TJI{+xq53bz`Ty#5e6 z4G|UFTBB%OJiDs8;YK)>A!Tj3zIGo0dG_VwOF9l6BeQW-8c*Rg9kHLU;St=)(}Cmf ze~a(ZPkhTY!CmKP9-h$97v0N_cb7~JAd5#!pNe1Bd5;(TAJ*PGs;P8;^d2jtw6V~n zjiMsGi4=jTjG%%d(t8h5B=i~*6$J$(C{jYpAWD&5q(i_!LJ35qcOekK&_hB?xf^EY z{LZ=Oy?4FqUGIOgmh3!xXYbAPZJ&>)I-YJ^p0Zkl&a-pDJ`?@wfyT^$Sh*&p*GXPr%1B9h)Kt(iqqH`BsCv3hmL))wp0HOSl+Ev=tam zI$}5Xh3-o3xEkm3B64eFuRB10K8f^H(dG6xs+!*dG*Z?V;FTl1kGM(pvNNsskISJ#ZQWFA~k#VuY>rzi`h zDo~to-yFz?TpP~#Zc(2zwX=m|W0)E@I|Lxu6yBjrU|V%jZt(nos|NEkygR?pzzywl z*JMwWY~j4kzuF)``QVs_6qV(1)mWPdE8(bKnH2Pz3KMWyIpbcTx%^lp7br1sMqLZR z!)Nv>hQ)S`9PWc`C{kFW#fg<4ic^2BWy|j|wubj{&$>el2gpy0yIem0B*_@jlO7CQ(`i#RF%)#_iw&`0qjVO!A?Y zZH<<)llAC4Ydu&h)8b5)9b;Rg+iK&zUH1~7+nZ60Q$r+=oQCcLvP8=AIY{Op4#oYO z+)#27BWS~)70Y<;Y8!)Z@IH@NW%D=Rao6}B)k#O*K;%+li1^J}{QN^%ia{11IHNME zD|nO*ON72wEcC%1?*gNyrcDi? zI+(f^S83-Gx9HH=8b9K7Gj3hbIu4a#mkI8V^^tkl5Dc56bNqQj0Fr?Vj@d$`)O1;M z)2w)u{X~5y^4;Ktl6Ewli%<9ug~<@5jT;9on#})f(Ja`wDaW!R(W|^xwI?6BOqr1} zleCCQ;@SH9y}`y+HL7=)#RFQYpmE>BKINN zwEk8=#lCi+Nklb0CS)rw6Nc<61#mEycb^8v;pT%gV_4*4XiXr89c~l!a-U6N@F(!d z2#Ul(wD1QqLwVq=s^g;g|36Lz`k4Vs90REH|G+=Bz94o&+6KCq6^H0{7ip4q+=yJl zcYjR-p28u~Cwr&PQ7laoe<>yGITlI5nHi35hxtCq6t}6~le3s83`Bh;pClkjh{U`mxceLguTGJ~V&r_~u z5psnKpOH3#^Xv{-Jj!KTu-b4$xr)u`Ni(j;8H4iFgIb*2q%e9q?A7in;z_>#uS2S~ zMtPT8ZfEXoZky0R^;}#DiyzO?cG{kQ8=X0pF{9N=?cOT5^OP5-YdPafZ|^nOpA!UN ztAFujWB4jrCY=H%Fz+tzCqr7ZpE|jN;N8`9*iJzf?STZ)_7pTKLh0W0u2|J{#E!MZ z{!raaX5*y_sz1(EQp_OYz3iNg-|wur_K4!?&Ck6*8p(sniU4-9v6BRsZ!Dk*?(q+PiRevzHS~nU1Yvj-u6o<$iWC`0dEKSoT^C z^ziL@J}&2wOa*jmw&+KS81${$YWsr(ysvRRu&eM%i}4_(4LQeI%tAG|z-rg@m!j?E z>}y(p86n0`@8y$l3UspgW%&UmQ?plHuLqI=aAk!0dV;^Nr|)@~>@~KAs+OjWI6Nz} z+t=F*>?tS)p0^Mdj9dcqw$-o-m6+$7qSJF-u)-E@0sLlE4}KNE=XRl>%$Wy(lUdtI ztU!|fX&viy74H)KM>=?-FjD((7|V4TE!F`3Yq}56)hv4k*uP2%9mp*@OEBIQ2EQo~ zBSxI?**GB0KsmZ3-w@73mC5!|Sc+1oCOcJ-JYr%Qvj0O^X`@#F9b{6%^=g-w6o>~V z2hpj&_%F!trlZ92R{uA$BGv85zeR|qZa~IBlws<089AAe%dKj8b0gVIv903T>clpmLyxyyC3nV{`b92>L4E~Gy0}NGofp2@S%=3EKS?x1+ z4s4ackN?W2{9CizUtM*doPe%6O`y~B07P;J>`{9B+W#qT{D0`h`;U&c9_YR4sTIZo zB?usI2kW9WX7^E<1wlLXh-l|Xs{eu9{jD63GfZJis(@7KxrCZ9gX+g5zB8@)n}Aq(9V$$8gcFsfG$%2i>YAbTkmENZ1gn9-Wz!X_;hNR|mf0UzB>*QMKuw|T z%Nzh@-}Yv(#`-Y8h6&;Q3s^JvRRtJ+d;KL5n+kgM2zKY;-lQ*aWcme89OJqpJ>zj2 zhEYK;cY!|1r|sJi4gSPItObC9h)W9(4+aLk`cn@^9h2;aK3Ce*A{?v$D<3tu5?I@T zv`~~E_-~+6TH_qH0wdnFe)kJK^?zGeRk1B;Dhizk*-d(MvIu~fdN)1@`{k1gxpwN_ zRZnuwM-_ILMdL@?6?u2N$Z11C;ZYB2J8e9S4;H&I%e}NSkn@Qi6e_v>UQc61^}&g_ zEfgu(KinrPVNcuES8|M-PuJ@+r(Ld6=oYNjPGu8Zyc~bb0vl zdD7MNsERmI(&_2&5#2$^&v<{i zV$Ct}%uz!}-n7`0r^NF|#oovk5Krs=ey1=}ZN9tOBIq}G>ebOXiwEIUIXvgViO;*qg17& zQFdG{QrD9T87AQ^Wm8Qy(+efgcWUUvRQ^39MfFW{T$T%9Yna{RW|4l`$}AjJRp{s1 zQdyYSr>d^XrO$f`?FcuAbcbeI5qEg!hj`fnRYl?65hs+*g1g3PZ+&_l{`|_P*6)Pv zhL)Yy@W@_q#OBy!-+dYrI7^Cvy*aSdz{Ktp4Oq6(7N zj7#1SnSSZ&J;;i8!g*j|CH>QD(Ew5mV_9{528IoITRWLIhFKR}4H;PPok&2Y@-*Oj zr=C5pEjiimv^w9u@Xdw05VWLe97Bdv@pvNQQm09d|y*c@D3fgVVNo^?V6lb>7?({w2(y==LRY2^B!bLD02yJu5 z07qZOe>?i{M6yDj<8Z8@LME$Tz(w&5plR@dy*)1%7U6?bAnGzC$(t4Av>Q&Egenog z56_i-q5$qT(W@ifuV*yJ{(b8q>3$Bf0$hSII;Xc^eC99!g@yybY$*%|Q1$|5-EXi0 zw2-NyGx%m6BM`t|16>;O2zq>S;r6Lg$4|XZrbm^UHook;15v`#fU)u!rbq^RwGNmR z-2V#Bc&G!!RVa4+_m!Y7po#Ag5mxE6+rJp zW=-XZdYqVRNS;o}n|};*-!A+8PJBrN(0>-E0HW(uQzziE4=n9>sy~)A0Nv|hOgjNv zORZh{6UK-5%&FmHLrW+J#(hjGRU>CNb#B4c?Biluq?n(5_d;CAp1yc)>v}_D+vY5k zIn;0xAPP0$thoj1od?@)mE6-D+4s!e%a9)r2AvJw^-2IVBFobSayuzhU#i9>pjhE zS=jWPzv)pxUaBs%b17RpS+jKi;rd&Qf&pwSFE^~5fN%XTgM?NxWV4u&VFPPU6Wt)O z)ov~k%JR)9kj)Lj#6c{tCT7G2CJ2p|ouI^qBzTwjy9Y;FGvr(^9ZEg! z=^dhV5C&Ss%tIch3BwGj{#`&6!;3QaAPfHmlCgq5m?5_IBKWxfY!HF`Nx-?l_Ejdg zVOERGa0QQ%9wPqEX9w210>;0%GN^qBClAi)?H5)SE%?>Izma8%0NgFwZ_-pD%iq+N z(x3m2zTs~>VHZ)$chkcnQ$1;@%`MUE4#=NR4$UV(#9s1&CIO&p8$ccrip!p3+uUB_ z4B7$)>xDI3Cu`Z^NXSgRg(IA%_XT=f(|5U?*+mMMylmWb-CP`u*`MRuw-$DyqGxuU zj(icm4uDC2iXfhwZS6h$OI-MOi29D0y&p>XX)RITU~<9GW(s>>UJ5qYs^J>zZVJzp zHB$iL!|BP-Gm4h=sHwg4BN!|FELql?zu2ZW53&D5FmcV=w+hfDHcfe-%#2x%Iq}P0q4H%pA<=-xwH;AA zREoN_%ehCI6N+00Uik+Z;cxn0>}D=}uO}TKrxHkyZjFeNNp*UUxt_3|3<3%AP zvg!1epcUz(jWV22ksa$MzdgHQTfbdSSBED^}l*<-R`Rm+-`eHlcAAIj)wQ$iQuuGhFghJJ0Ex2Qvx zr7s)D4TV^)Niz?nXPOmH%spOJAgwA=zJf|}Ythnczz|{-Zb#)ri8blr7pdZFlMEgJ z6!WpDtkt3li1ntNIS)L6CI=Llf7L$K4{D#S1avRD)4vGt_dZO*m$ro3yX{l9$sA@{ zGyy-6njXVU_?^%mpbAqg_Y{D zQdq-Tz%rN7E7od>C=K4A$(sL*LSsBj6pf4ib^aA)%0u5!HEunJCv)vcqqFm^I}-C016LnUHT0l+%jD3f~^togYyZb;Qz2pYR1q14kSH@@av&)01P#; zFMawB*9>Jf*@2v%j`mKt>B5VL3UkVAZsZop+ujb=kkZkC&Bpf-uj~Z&5Z523JO@(E zJ*YUV`!zk2cB&o`7N)SZM`5a4X_-rsTy{6^Tx=?h-9CMzC z*cw<0xF$_t29N)qeL;=S_mFrx((icKOzI{12mQ{W<*VAv5EP?ORYXuj*Z}F2FQ2mr zwanqcua6$jG4t(Z^#TGYR}u6z4PQoiO*N|rlUcYG6H$~8vNRhZOA$lDXX?UGz{4hG ztNt-q(ib$+OAXIytEoY6(^Hl9)KIhSxzh@wSnkZGS~4ti9};)XY4yxpDQSRV2Cql* zurD30Ry$pQB;WnNW(_zpmINF3!%RZ8PuSE-IE$N=M<0TAt(vKk55i49DR_3WIGTI+ z;&%r@v)FGfhbX^8c2vC(xt5cI4viq6*6Z0Km4l`=mEmD@W#h01aii^41}6akM2IK+ zO=S)5y%0q}azKN<%M?BkQXu&H1il>94ek76z_qhx?M0i48Wx z&JsT`=ceS z`^)$7<*JIphToDkQ39O9QgT`xF<<@%Y+1u0Wf})Kg{o`E;J+WT zIq&}C*9L&z&!F%xj_F@+XYN z)Z#Fk&`}3z&ropQS*CPq?w6(f zB(r@#ljUUDh4Z7|*RPC=&ddR3$VQDgPb`3z!M=o=(@l%`? z>HUwICe0@8NjTS?FAa9}gXW~_nF*9%&!0qE_+5acYH)(@Amlvwy8b?uhOCX{;#CN3p1Y%E-!YYQCm*=d!HPD9Xt~u3W>Y!}^#7j$Ikar6>>?^^Z=5g^ z?dvEB@31^$LvRHT6XIH6REk6 z80toLrvR}RlCk?~_Hk6J`yDI{5J>>0r$p3|BtVpiaXoNqP{~S7Tx7*@yQ}MUZ7Eqm zWpV#|3$h3)QTnc62FILZ05zdmy26AdH6agDN}m;?@@`J^=Gz`u`Op?|baY4gc??6<5o`MGa0A zDQyvr^?{)E*gUKnkQkWaX=uQ*{#R5|N#2&XeeAeZz`vh90fOA>e+zP5t^;#`1PcA( zb2w(}<=9qa{kq=G;MCVwKZq4|0clTfEwi_acr$_xU7O;Lh|3ZnD(0}i-nlA3?NEyo zedJLGTYOC)d`g#^4|?`4nf25 ziesGqrAM$gDzHJrd%Qh?mfNw~=Lk3A2hXJQWvsr0GV3c_fxjf_EJ_AK@A72%R*-WK zFujX`UU3DNndOVf35(Y8@8vH3mY92D9`DV z-q2SX#d7D`B^5F+Ul{H#{FOxS9HL(8>V@&k4NXb|X+jdZaST2'OLF;}K1r?yk4 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 literal 0 HcmV?d00001 diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json new file mode 100644 index 0000000000..fb59d5eb38 --- /dev/null +++ b/plugins/azure-devops/package.json @@ -0,0 +1,62 @@ +{ + "name": "@backstage/plugin-azure-devops", + "version": "0.1.0", + "main": "src/index.ts", + "types": "src/index.ts", + "license": "Apache-2.0", + "publishConfig": { + "access": "public", + "main": "dist/index.esm.js", + "types": "dist/index.d.ts" + }, + "homepage": "https://backstage.io", + "repository": { + "type": "git", + "url": "https://github.com/backstage/backstage", + "directory": "plugins/azure-devops" + }, + "scripts": { + "build": "backstage-cli plugin:build", + "start": "backstage-cli plugin:serve", + "lint": "backstage-cli lint", + "test": "backstage-cli test", + "diff": "backstage-cli plugin:diff", + "prepack": "backstage-cli prepack", + "postpack": "backstage-cli postpack", + "clean": "backstage-cli clean" + }, + "dependencies": { + "@backstage/catalog-model": "^0.9.3", + "@backstage/core-components": "^0.6.0", + "@backstage/core-plugin-api": "^0.1.9", + "@backstage/plugin-catalog-react": "^0.5.1", + "@backstage/theme": "^0.2.10", + "@material-ui/core": "^4.12.2", + "@material-ui/icons": "^4.9.1", + "@material-ui/lab": "4.0.0-alpha.57", + "azure-devops-node-api": "^11.0.1", + "moment": "^2.29.1", + "react": "^16.13.1", + "react-dom": "^16.13.1", + "react-router": "6.0.0-beta.0", + "react-use": "^17.2.4" + }, + "devDependencies": { + "@backstage/cli": "^0.7.13", + "@backstage/core-app-api": "^0.1.14", + "@backstage/dev-utils": "^0.2.10", + "@backstage/test-utils": "^0.1.17", + "@testing-library/jest-dom": "^5.10.1", + "@testing-library/react": "^11.2.5", + "@testing-library/user-event": "^13.1.8", + "@types/jest": "*", + "@types/node": "*", + "msw": "^0.29.0", + "cross-fetch": "^3.0.6" + }, + "files": [ + "dist", + "config.d.ts" + ], + "configSchema": "config.d.ts" +} diff --git a/plugins/azure-devops/src/api/AzureDevOpsApi.ts b/plugins/azure-devops/src/api/AzureDevOpsApi.ts new file mode 100644 index 0000000000..424999441d --- /dev/null +++ b/plugins/azure-devops/src/api/AzureDevOpsApi.ts @@ -0,0 +1,32 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { RepoBuild } from './types'; +import { createApiRef } from '@backstage/core-plugin-api'; + +export const azureDevOpsApiRef = createApiRef({ + id: 'plugin.azure-devops.service', + description: + 'Used by the Azure DevOps plugin to make requests to accompanying backend', +}); + +export interface AzureDevOpsApi { + getRepoBuilds( + projectName: string, + repoName: string, + top: number, + ): Promise; +} diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts new file mode 100644 index 0000000000..c9e44109aa --- /dev/null +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -0,0 +1,56 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { AzureDevOpsApi } from './AzureDevOpsApi'; +import { RepoBuild } from './types'; +import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; + +export class AzureDevOpsClient implements AzureDevOpsApi { + private readonly discoveryApi: DiscoveryApi; + private readonly identityApi: IdentityApi; + + constructor(options: { + discoveryApi: DiscoveryApi; + identityApi: IdentityApi; + }) { + this.discoveryApi = options.discoveryApi; + this.identityApi = options.identityApi; + } + + async getRepoBuilds( + projectName: string, + repoName: string, + top: number, + ): Promise { + return await this.get(`/repo-builds/${projectName}/${repoName}?top=${top}`); + } + + private async get(path: string): Promise { + const url = `${await this.discoveryApi.getBaseUrl('azure-devops')}${path}`; + const idToken = await this.identityApi.getIdToken(); + const response = await fetch(url, { + headers: idToken ? { Authorization: `Bearer ${idToken}` } : {}, + }); + + if (!response.ok) { + const payload = await response.text(); + const message = `Request failed with ${response.status} ${response.statusText}, ${payload}`; + throw new Error(message); + } + + return await response.json(); + } +} diff --git a/plugins/azure-devops/src/api/index.ts b/plugins/azure-devops/src/api/index.ts new file mode 100644 index 0000000000..c69636222f --- /dev/null +++ b/plugins/azure-devops/src/api/index.ts @@ -0,0 +1,18 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export * from './AzureDevOpsApi'; +export * from './AzureDevOpsClient'; diff --git a/plugins/azure-devops/src/api/types.ts b/plugins/azure-devops/src/api/types.ts new file mode 100644 index 0000000000..35d4e38ae1 --- /dev/null +++ b/plugins/azure-devops/src/api/types.ts @@ -0,0 +1,30 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { + BuildResult, + BuildStatus, +} from 'azure-devops-node-api/interfaces/BuildInterfaces'; + +export type RepoBuild = { + id?: number; + title: string; + link: string; + status?: BuildStatus; + result?: BuildResult; + queueTime?: Date; + source: string; +}; diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx new file mode 100644 index 0000000000..26f365c5e9 --- /dev/null +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -0,0 +1,132 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import React from 'react'; +import moment from 'moment'; +import { + Table, + TableColumn, + StatusError, + StatusOK, + StatusWarning, + StatusAborted, +} from '@backstage/core-components'; +import { Link, Box, Typography } from '@material-ui/core'; +import Alert from '@material-ui/lab/Alert'; +import { RepoBuild } from '../../api/types'; +import { + BuildResult, + BuildStatus, +} from 'azure-devops-node-api/interfaces/BuildInterfaces'; + +const getBuildResultComponent = (result: number | undefined = 0) => { + switch (result) { + case 0: // None + return ; + case 2: // Succeeded + return ; + case 4: // PartiallySucceeded + return ; + case 8: // Failed + return ; + case 32: // Canceled + return ; + default: + return ; + } +}; + +const columns: TableColumn[] = [ + { + title: 'ID', + field: 'id', + highlight: false, + width: '80px', + }, + { + title: 'Build', + field: 'title', + render: (row: Partial) => ( + + {row.title} + + ), + }, + { + title: 'Source', + field: 'source', + }, + { + title: 'Status', + field: 'status', + render: (row: Partial) => ( + + + {BuildStatus[row.status || 0]} + + ), + }, + { + title: 'Result', + field: 'result', + render: (row: Partial) => ( + + {getBuildResultComponent(row.result)} + + {BuildResult[row.result || 0]} + + ), + }, + { + title: 'Date', + field: 'queueTime', + render: (row: Partial) => moment(row.queueTime).fromNow(), + }, +]; + +type Props = { + items: RepoBuild[]; + loading: boolean; + error?: any; +}; + +export const BuildTable = ({ items, loading, error }: Props) => { + if (error) { + return ( +
+ + Error encountered while fetching Azure DevOps builds.{' '} + {error.toString()} + +
+ ); + } + + return ( + + ); +}; diff --git a/plugins/azure-devops/src/components/BuildTable/index.ts b/plugins/azure-devops/src/components/BuildTable/index.ts new file mode 100644 index 0000000000..acf20eb523 --- /dev/null +++ b/plugins/azure-devops/src/components/BuildTable/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { BuildTable } from './BuildTable'; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx new file mode 100644 index 0000000000..fbeac53569 --- /dev/null +++ b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx @@ -0,0 +1,33 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Entity } from '@backstage/catalog-model'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import React from 'react'; +import { useRepoBuilds } from '../../hooks/useRepoBuilds'; +import { BuildTable } from '../BuildTable/BuildTable'; + +type Props = { + /** @deprecated The entity is now grabbed from context instead */ + entity?: Entity; +}; + +export const EntityPageAzureDevOps = (_props: Props) => { + const { entity } = useEntity(); + const { items, loading, error } = useRepoBuilds(entity); + + return ; +}; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts b/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts new file mode 100644 index 0000000000..89ee4f199b --- /dev/null +++ b/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; diff --git a/plugins/azure-devops/src/components/Router.tsx b/plugins/azure-devops/src/components/Router.tsx new file mode 100644 index 0000000000..74cf0439f8 --- /dev/null +++ b/plugins/azure-devops/src/components/Router.tsx @@ -0,0 +1,48 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import React from 'react'; +import { Routes, Route } from 'react-router'; +import { azureDevOpsRouteRef } from '../routes'; +import { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; +import { AZURE_DEVOPS_ANNOTATION } from '../constants'; +import { Entity } from '@backstage/catalog-model'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import { MissingAnnotationEmptyState } from '@backstage/core-components'; + +export const isAzureDevOpsAvailable = (entity: Entity) => + Boolean(entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION]); + +type Props = { + /** @deprecated The entity is now grabbed from context instead */ + entity?: Entity; +}; + +export const Router = (_props: Props) => { + const { entity } = useEntity(); + + if (!isAzureDevOpsAvailable(entity)) { + return ; + } + + return ( + + } + /> + + ); +}; diff --git a/plugins/azure-devops/src/constants.ts b/plugins/azure-devops/src/constants.ts new file mode 100644 index 0000000000..6abc6449e9 --- /dev/null +++ b/plugins/azure-devops/src/constants.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export const AZURE_DEVOPS_ANNOTATION = 'dev.azure.com/project-repo'; diff --git a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts new file mode 100644 index 0000000000..721fa52781 --- /dev/null +++ b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts @@ -0,0 +1,25 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Entity } from '@backstage/catalog-model'; +import { AZURE_DEVOPS_ANNOTATION } from '../constants'; + +export function useProjectRepoFromEntity(entity: Entity) { + const [project, repo] = ( + entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION] ?? '' + ).split('/'); + return { project, repo }; +} diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts new file mode 100644 index 0000000000..e6d2964770 --- /dev/null +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -0,0 +1,40 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { useAsync } from 'react-use'; +import { Entity } from '@backstage/catalog-model'; +import { useApi, configApiRef } from '@backstage/core-plugin-api'; +import { azureDevOpsApiRef } from '../api'; +import { RepoBuild } from '../api/types'; +import { useProjectRepoFromEntity } from './useProjectRepoFromEntity'; + +const DEFAULT_TOP: number = 10; + +export function useRepoBuilds(entity: Entity) { + const config = useApi(configApiRef); + const top = config.getOptionalNumber('azureDevOps.top') ?? DEFAULT_TOP; + const api = useApi(azureDevOpsApiRef); + const { project, repo } = useProjectRepoFromEntity(entity); + const { value, loading, error } = useAsync(() => { + return api.getRepoBuilds(project, repo, top); + }, [api, project, repo, entity]); + + return { + items: value as RepoBuild[], + loading, + error, + }; +} diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts new file mode 100644 index 0000000000..b654aebab7 --- /dev/null +++ b/plugins/azure-devops/src/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export { azureDevOpsPlugin, EntityAzureDevOpsContent } from './plugin'; +export { isAzureDevOpsAvailable } from './components/Router'; diff --git a/plugins/azure-devops/src/plugin.test.ts b/plugins/azure-devops/src/plugin.test.ts new file mode 100644 index 0000000000..f23639798f --- /dev/null +++ b/plugins/azure-devops/src/plugin.test.ts @@ -0,0 +1,22 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { azureDevOpsPlugin } from './plugin'; + +describe('azure-devops', () => { + it('should export plugin', () => { + expect(azureDevOpsPlugin).toBeDefined(); + }); +}); diff --git a/plugins/azure-devops/src/plugin.ts b/plugins/azure-devops/src/plugin.ts new file mode 100644 index 0000000000..f37fab6d62 --- /dev/null +++ b/plugins/azure-devops/src/plugin.ts @@ -0,0 +1,54 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { azureDevOpsApiRef } from './api/AzureDevOpsApi'; +import { AzureDevOpsClient } from './api/AzureDevOpsClient'; +import { + createApiFactory, + createPlugin, + createRoutableExtension, + createRouteRef, + discoveryApiRef, + identityApiRef, +} from '@backstage/core-plugin-api'; + +export const rootRouteRef = createRouteRef({ + path: '', + title: 'AzureDevOps', +}); + +export const azureDevOpsPlugin = createPlugin({ + id: 'azureDevOps', + apis: [ + createApiFactory({ + api: azureDevOpsApiRef, + deps: { discoveryApi: discoveryApiRef, identityApi: identityApiRef }, + factory: ({ discoveryApi, identityApi }) => + new AzureDevOpsClient({ discoveryApi, identityApi }), + }), + ], + routes: { + entityContent: rootRouteRef, + }, +}); + +export const EntityAzureDevOpsContent = azureDevOpsPlugin.provide( + createRoutableExtension({ + name: 'EntityAzureDevOpsContent', + component: () => import('./components/Router').then(m => m.Router), + mountPoint: rootRouteRef, + }), +); diff --git a/plugins/azure-devops/src/routes.ts b/plugins/azure-devops/src/routes.ts new file mode 100644 index 0000000000..81f4b48fda --- /dev/null +++ b/plugins/azure-devops/src/routes.ts @@ -0,0 +1,20 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { createRouteRef } from '@backstage/core-plugin-api'; + +export const azureDevOpsRouteRef = createRouteRef({ + title: 'azure-devops', +}); diff --git a/plugins/azure-devops/src/setupTests.ts b/plugins/azure-devops/src/setupTests.ts new file mode 100644 index 0000000000..fc6dbd98f8 --- /dev/null +++ b/plugins/azure-devops/src/setupTests.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import '@testing-library/jest-dom'; +import 'cross-fetch/polyfill'; From 02ef33e4e89ed02e5e0e00dfc52c5407ed3790b1 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 06:59:24 -0500 Subject: [PATCH 02/23] Updated devDependencies causing CI to fail Signed-off-by: Andre Wanlin --- plugins/azure-devops/package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index fb59d5eb38..c823924c9d 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -42,15 +42,15 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.7.13", - "@backstage/core-app-api": "^0.1.14", - "@backstage/dev-utils": "^0.2.10", + "@backstage/cli": "^0.7.14", + "@backstage/core-app-api": "^0.1.15", + "@backstage/dev-utils": "^0.2.11", "@backstage/test-utils": "^0.1.17", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^11.2.5", "@testing-library/user-event": "^13.1.8", - "@types/jest": "*", - "@types/node": "*", + "@types/jest": "^26.0.7", + "@types/node": "^14.14.32", "msw": "^0.29.0", "cross-fetch": "^3.0.6" }, From cba0352000e541473675bca099678795b076f5ab Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 08:57:16 -0500 Subject: [PATCH 03/23] Fixed formatting of README Signed-off-by: Andre Wanlin --- plugins/azure-devops/README.md | 60 +++++++++++++++++----------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index a596863bad..376a630873 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -31,43 +31,43 @@ Configuration Details: Here's how to get the backend up and running: -1. First we need to add the @backstage/plugin-azure-devops-backend package to your backend: +1. First we need to add the @backstage/plugin-azure-devops-backend package to your backend: - ```sh - # From the Backstage root directory - cd packages/backend - yarn add @backstage/plugin-azure-devops-backend - ``` + ```sh + # From the Backstage root directory + cd packages/backend + yarn add @backstage/plugin-azure-devops-backend + ``` -2. Then we will create a new file named `packages/backend/src/plugins/azuredevops.ts`, and add the - following to it: +2. Then we will create a new file named `packages/backend/src/plugins/azuredevops.ts`, and add the + following to it: - ```ts - import { createRouter } from '@backstage/plugin-azure-devops-backend'; - import { Router } from 'express'; - import type { PluginEnvironment } from '../types'; + ```ts + import { createRouter } from '@backstage/plugin-azure-devops-backend'; + import { Router } from 'express'; + import type { PluginEnvironment } from '../types'; - export default async function createPlugin({ - logger, - config, - }: PluginEnvironment): Promise { - return await createRouter({ logger, config }); - } - ``` + export default async function createPlugin({ + logger, + config, + }: PluginEnvironment): Promise { + return await createRouter({ logger, config }); + } + ``` -3. Next we wire this into the overall backend router, edit `packages/backend/src/index.ts`: +3. Next we wire this into the overall backend router, edit `packages/backend/src/index.ts`: - ```ts - import azureDevOps from './plugins/azuredevops'; - // ... - async function main() { - // ... - const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); - apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); - ``` + ```ts + import azureDevOps from './plugins/azuredevops'; + // ... + async function main() { + // ... + const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); + apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); + ``` -4. Now run `yarn start-backend` from the repo root -5. Finally open `http://localhost:7000/api/azure-devops/health` in a browser and it should return `{"status":"ok"}` +4. Now run `yarn start-backend` from the repo root +5. Finally open `http://localhost:7000/api/azure-devops/health` in a browser and it should return `{"status":"ok"}` ### Frontend From 48232f8507d07d3d6944f00cb47b3229527c514f Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 19:55:26 -0500 Subject: [PATCH 04/23] Start of refactoring based on feedback Signed-off-by: Andre Wanlin --- .../app/src/components/catalog/EntityPage.tsx | 4 +-- plugins/azure-devops/README.md | 2 +- plugins/azure-devops/config.d.ts | 2 +- .../{doc => docs}/azure-devops-builds.png | Bin plugins/azure-devops/package.json | 10 +++---- .../azure-devops/src/api/AzureDevOpsClient.ts | 8 +++-- .../src/api/AzureDevOpsClientError.ts | 21 +++++++++++++ plugins/azure-devops/src/api/types.ts | 2 +- .../src/components/BuildTable/BuildTable.tsx | 28 +++++++++++------- .../EntityPageAzureDevOps.tsx | 2 +- plugins/azure-devops/src/constants.ts | 1 + .../src/hooks/useProjectRepoFromEntity.ts | 5 +++- .../azure-devops/src/hooks/useRepoBuilds.ts | 12 +++++--- plugins/azure-devops/src/index.ts | 2 +- plugins/azure-devops/src/plugin.ts | 13 +++----- 15 files changed, 72 insertions(+), 40 deletions(-) rename plugins/azure-devops/{doc => docs}/azure-devops-builds.png (100%) create mode 100644 plugins/azure-devops/src/api/AzureDevOpsClientError.ts diff --git a/packages/app/src/components/catalog/EntityPage.tsx b/packages/app/src/components/catalog/EntityPage.tsx index b79bd2c4aa..4147874e65 100644 --- a/packages/app/src/components/catalog/EntityPage.tsx +++ b/packages/app/src/components/catalog/EntityPage.tsx @@ -34,7 +34,7 @@ import { EntityProvidingComponentsCard, } from '@backstage/plugin-api-docs'; import { - EntityAzureDevOpsContent, + EntityAzurePipelinesContent, isAzureDevOpsAvailable, } from '@backstage/plugin-azure-devops'; import { EntityBadgesDialog } from '@backstage/plugin-badges'; @@ -188,7 +188,7 @@ export const cicdContent = ( - + diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 376a630873..97a415d8d0 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -2,7 +2,7 @@ Website: [https://dev.azure.com/](https://dev.azure.com/) -![Azure DevOps Builds Example](./doc/azure-devops-builds.png) +![Azure DevOps Builds Example](./docs/azure-devops-builds.png) ## Setup diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts index 827e64d5bd..62b1488e49 100644 --- a/plugins/azure-devops/config.d.ts +++ b/plugins/azure-devops/config.d.ts @@ -1,5 +1,5 @@ /* - * Copyright 2020 The Backstage Authors + * Copyright 2021 The Backstage Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/plugins/azure-devops/doc/azure-devops-builds.png b/plugins/azure-devops/docs/azure-devops-builds.png similarity index 100% rename from plugins/azure-devops/doc/azure-devops-builds.png rename to plugins/azure-devops/docs/azure-devops-builds.png diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index c823924c9d..16e8f35991 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -27,8 +27,8 @@ }, "dependencies": { "@backstage/catalog-model": "^0.9.3", - "@backstage/core-components": "^0.6.0", - "@backstage/core-plugin-api": "^0.1.9", + "@backstage/core-components": "^0.6.1", + "@backstage/core-plugin-api": "^0.1.10", "@backstage/plugin-catalog-react": "^0.5.1", "@backstage/theme": "^0.2.10", "@material-ui/core": "^4.12.2", @@ -42,10 +42,10 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.7.14", - "@backstage/core-app-api": "^0.1.15", + "@backstage/cli": "^0.7.15", + "@backstage/core-app-api": "^0.1.16", "@backstage/dev-utils": "^0.2.11", - "@backstage/test-utils": "^0.1.17", + "@backstage/test-utils": "^0.1.18", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^11.2.5", "@testing-library/user-event": "^13.1.8", diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index c9e44109aa..32a563f429 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -17,6 +17,7 @@ import { AzureDevOpsApi } from './AzureDevOpsApi'; import { RepoBuild } from './types'; import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; +import { AzureDevOpsClientError } from './AzureDevOpsClientError'; export class AzureDevOpsClient implements AzureDevOpsApi { private readonly discoveryApi: DiscoveryApi; @@ -39,7 +40,9 @@ export class AzureDevOpsClient implements AzureDevOpsApi { } private async get(path: string): Promise { - const url = `${await this.discoveryApi.getBaseUrl('azure-devops')}${path}`; + const baseUrl = await this.discoveryApi.getBaseUrl('azure-devops'); + const url = `${baseUrl}/${path}`; + const idToken = await this.identityApi.getIdToken(); const response = await fetch(url, { headers: idToken ? { Authorization: `Bearer ${idToken}` } : {}, @@ -47,8 +50,7 @@ export class AzureDevOpsClient implements AzureDevOpsApi { if (!response.ok) { const payload = await response.text(); - const message = `Request failed with ${response.status} ${response.statusText}, ${payload}`; - throw new Error(message); + throw new AzureDevOpsClientError(response, payload); } return await response.json(); diff --git a/plugins/azure-devops/src/api/AzureDevOpsClientError.ts b/plugins/azure-devops/src/api/AzureDevOpsClientError.ts new file mode 100644 index 0000000000..f9a2f37b41 --- /dev/null +++ b/plugins/azure-devops/src/api/AzureDevOpsClientError.ts @@ -0,0 +1,21 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export class AzureDevOpsClientError extends Error { + public constructor({ status, statusText }: Response, payload: string) { + super(`Request failed with ${status} ${statusText}, ${payload}`); + } +} diff --git a/plugins/azure-devops/src/api/types.ts b/plugins/azure-devops/src/api/types.ts index 35d4e38ae1..b3562f76c6 100644 --- a/plugins/azure-devops/src/api/types.ts +++ b/plugins/azure-devops/src/api/types.ts @@ -22,7 +22,7 @@ import { export type RepoBuild = { id?: number; title: string; - link: string; + link?: string; status?: BuildStatus; result?: BuildResult; queueTime?: Date; diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index 26f365c5e9..e853662fbf 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -32,17 +32,19 @@ import { BuildStatus, } from 'azure-devops-node-api/interfaces/BuildInterfaces'; -const getBuildResultComponent = (result: number | undefined = 0) => { +const getBuildResultComponent = ( + result: number | undefined = BuildResult.None, +) => { switch (result) { - case 0: // None + case BuildResult.None: return ; - case 2: // Succeeded + case BuildResult.Succeeded: return ; - case 4: // PartiallySucceeded + case BuildResult.PartiallySucceeded: return ; - case 8: // Failed + case BuildResult.Failed: return ; - case 32: // Canceled + case BuildResult.Canceled: return ; default: return ; @@ -75,7 +77,9 @@ const columns: TableColumn[] = [ render: (row: Partial) => ( - {BuildStatus[row.status || 0]} + + {BuildStatus[row.status || BuildStatus.None]} + ), }, @@ -86,7 +90,9 @@ const columns: TableColumn[] = [ {getBuildResultComponent(row.result)} - {BuildResult[row.result || 0]} + + {BuildResult[row.result || BuildResult.None]} + ), }, @@ -98,7 +104,7 @@ const columns: TableColumn[] = [ ]; type Props = { - items: RepoBuild[]; + items?: RepoBuild[]; loading: boolean; error?: any; }; @@ -125,8 +131,8 @@ export const BuildTable = ({ items, loading, error }: Props) => { pageSize: 5, showEmptyDataSourceMessage: !loading, }} - title={`Builds (${(items && items.length) || 0})`} - data={items} + title={`Builds (${items ? items.length : 0})`} + data={items || []} /> ); }; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx index fbeac53569..8e102e647d 100644 --- a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx +++ b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx @@ -29,5 +29,5 @@ export const EntityPageAzureDevOps = (_props: Props) => { const { entity } = useEntity(); const { items, loading, error } = useRepoBuilds(entity); - return ; + return ; }; diff --git a/plugins/azure-devops/src/constants.ts b/plugins/azure-devops/src/constants.ts index 6abc6449e9..d6e67ff7ed 100644 --- a/plugins/azure-devops/src/constants.ts +++ b/plugins/azure-devops/src/constants.ts @@ -15,3 +15,4 @@ */ export const AZURE_DEVOPS_ANNOTATION = 'dev.azure.com/project-repo'; +export const AZURE_DEVOPS_DEFAULT_TOP: number = 10; diff --git a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts index 721fa52781..dfbee81d62 100644 --- a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts +++ b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts @@ -17,7 +17,10 @@ import { Entity } from '@backstage/catalog-model'; import { AZURE_DEVOPS_ANNOTATION } from '../constants'; -export function useProjectRepoFromEntity(entity: Entity) { +export function useProjectRepoFromEntity(entity: Entity): { + project: string; + repo: string; +} { const [project, repo] = ( entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION] ?? '' ).split('/'); diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index e6d2964770..1e68490ea6 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -20,12 +20,16 @@ import { useApi, configApiRef } from '@backstage/core-plugin-api'; import { azureDevOpsApiRef } from '../api'; import { RepoBuild } from '../api/types'; import { useProjectRepoFromEntity } from './useProjectRepoFromEntity'; +import { AZURE_DEVOPS_DEFAULT_TOP } from '../constants'; -const DEFAULT_TOP: number = 10; - -export function useRepoBuilds(entity: Entity) { +export function useRepoBuilds(entity: Entity): { + items: RepoBuild[]; + loading: boolean; + error: any; +} { const config = useApi(configApiRef); - const top = config.getOptionalNumber('azureDevOps.top') ?? DEFAULT_TOP; + const top = + config.getOptionalNumber('azureDevOps.top') ?? AZURE_DEVOPS_DEFAULT_TOP; const api = useApi(azureDevOpsApiRef); const { project, repo } = useProjectRepoFromEntity(entity); const { value, loading, error } = useAsync(() => { diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts index b654aebab7..9a90d6ed6a 100644 --- a/plugins/azure-devops/src/index.ts +++ b/plugins/azure-devops/src/index.ts @@ -13,5 +13,5 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -export { azureDevOpsPlugin, EntityAzureDevOpsContent } from './plugin'; +export { azureDevOpsPlugin, EntityAzurePipelinesContent } from './plugin'; export { isAzureDevOpsAvailable } from './components/Router'; diff --git a/plugins/azure-devops/src/plugin.ts b/plugins/azure-devops/src/plugin.ts index f37fab6d62..9ec5ebbb09 100644 --- a/plugins/azure-devops/src/plugin.ts +++ b/plugins/azure-devops/src/plugin.ts @@ -20,15 +20,10 @@ import { createApiFactory, createPlugin, createRoutableExtension, - createRouteRef, discoveryApiRef, identityApiRef, } from '@backstage/core-plugin-api'; - -export const rootRouteRef = createRouteRef({ - path: '', - title: 'AzureDevOps', -}); +import { azureDevOpsRouteRef } from './routes'; export const azureDevOpsPlugin = createPlugin({ id: 'azureDevOps', @@ -41,14 +36,14 @@ export const azureDevOpsPlugin = createPlugin({ }), ], routes: { - entityContent: rootRouteRef, + entityContent: azureDevOpsRouteRef, }, }); -export const EntityAzureDevOpsContent = azureDevOpsPlugin.provide( +export const EntityAzurePipelinesContent = azureDevOpsPlugin.provide( createRoutableExtension({ name: 'EntityAzureDevOpsContent', component: () => import('./components/Router').then(m => m.Router), - mountPoint: rootRouteRef, + mountPoint: azureDevOpsRouteRef, }), ); From e5070b3f2ba649e536c73bd2cc3cf445dbad8946 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 20:31:31 -0500 Subject: [PATCH 05/23] Regenerated API Report Signed-off-by: Andre Wanlin --- plugins/azure-devops/api-report.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index 11de164276..bc39fd0ce4 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -19,10 +19,10 @@ export const azureDevOpsPlugin: BackstagePlugin< {} >; -// Warning: (ae-missing-release-tag) "EntityAzureDevOpsContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "EntityAzurePipelinesContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const EntityAzureDevOpsContent: (_props: { +export const EntityAzurePipelinesContent: (_props: { entity?: Entity | undefined; }) => JSX.Element; From e67321d20d4eb0b04c6ee602a070da671bb43c7c Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 08:20:49 -0500 Subject: [PATCH 06/23] Further refactoring based on feedback Signed-off-by: Andre Wanlin --- plugins/azure-devops/README.md | 6 +++--- plugins/azure-devops/package.json | 2 +- plugins/azure-devops/src/api/AzureDevOpsClient.ts | 8 ++++---- .../src/components/BuildTable/BuildTable.tsx | 9 ++++++--- .../EntityPageAzurePipelines.tsx} | 2 +- .../index.ts | 2 +- plugins/azure-devops/src/components/Router.tsx | 4 ++-- plugins/azure-devops/src/plugin.ts | 2 +- 8 files changed, 19 insertions(+), 16 deletions(-) rename plugins/azure-devops/src/components/{EntityPageAzureDevOps/EntityPageAzureDevOps.tsx => EntityPageAzurePipelines/EntityPageAzurePipelines.tsx} (94%) rename plugins/azure-devops/src/components/{EntityPageAzureDevOps => EntityPageAzurePipelines}/index.ts (89%) diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 97a415d8d0..55d5ea5f91 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -81,12 +81,12 @@ To get the frontend working you'll need to do the following two steps: yarn add @backstage/plugin-azure-devops ``` -2. Second we need to add the `EntityAzureDevOpsContent` extension to the entity page in your app: +2. Second we need to add the `EntityAzurePipelinesContent` extension to the entity page in your app: ```tsx // In packages/app/src/components/catalog/EntityPage.tsx import { - EntityAzureDevOpsContent, + EntityAzurePipelinesContent, isAzureDevOpsAvailable, } from '@backstage/plugin-azure-devops'; @@ -95,7 +95,7 @@ const cicdContent = ( // ... - + // ... diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index 16e8f35991..16008090b7 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -35,7 +35,7 @@ "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "azure-devops-node-api": "^11.0.1", - "moment": "^2.29.1", + "luxon": "^2.0.2", "react": "^16.13.1", "react-dom": "^16.13.1", "react-router": "6.0.0-beta.0", diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index 32a563f429..d82dfbe09e 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -36,15 +36,15 @@ export class AzureDevOpsClient implements AzureDevOpsApi { repoName: string, top: number, ): Promise { - return await this.get(`/repo-builds/${projectName}/${repoName}?top=${top}`); + return await this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); } private async get(path: string): Promise { - const baseUrl = await this.discoveryApi.getBaseUrl('azure-devops'); - const url = `${baseUrl}/${path}`; + const baseUrl = `${await this.discoveryApi.getBaseUrl('azure-devops')}/`; + const url = new URL(path, baseUrl); const idToken = await this.identityApi.getIdToken(); - const response = await fetch(url, { + const response = await fetch(url.toString(), { headers: idToken ? { Authorization: `Bearer ${idToken}` } : {}, }); diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index e853662fbf..7c3e09c66c 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import moment from 'moment'; +import { DateTime } from 'luxon'; import { Table, TableColumn, @@ -56,7 +56,7 @@ const columns: TableColumn[] = [ title: 'ID', field: 'id', highlight: false, - width: '80px', + width: '100px', }, { title: 'Build', @@ -99,7 +99,10 @@ const columns: TableColumn[] = [ { title: 'Date', field: 'queueTime', - render: (row: Partial) => moment(row.queueTime).fromNow(), + render: (row: Partial) => + DateTime.fromISO( + row.queueTime ? row.queueTime.toString() : new Date().toString(), + ).toRelative(), }, ]; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx similarity index 94% rename from plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx rename to plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx index 8e102e647d..5d53df928c 100644 --- a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx +++ b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx @@ -25,7 +25,7 @@ type Props = { entity?: Entity; }; -export const EntityPageAzureDevOps = (_props: Props) => { +export const EntityPageAzurePipelines = (_props: Props) => { const { entity } = useEntity(); const { items, loading, error } = useRepoBuilds(entity); diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts b/plugins/azure-devops/src/components/EntityPageAzurePipelines/index.ts similarity index 89% rename from plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts rename to plugins/azure-devops/src/components/EntityPageAzurePipelines/index.ts index 89ee4f199b..c907c61b2c 100644 --- a/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts +++ b/plugins/azure-devops/src/components/EntityPageAzurePipelines/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; +export { EntityPageAzurePipelines } from './EntityPageAzurePipelines'; diff --git a/plugins/azure-devops/src/components/Router.tsx b/plugins/azure-devops/src/components/Router.tsx index 74cf0439f8..81b6d89a25 100644 --- a/plugins/azure-devops/src/components/Router.tsx +++ b/plugins/azure-devops/src/components/Router.tsx @@ -16,7 +16,7 @@ import React from 'react'; import { Routes, Route } from 'react-router'; import { azureDevOpsRouteRef } from '../routes'; -import { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; +import { EntityPageAzurePipelines } from './EntityPageAzurePipelines'; import { AZURE_DEVOPS_ANNOTATION } from '../constants'; import { Entity } from '@backstage/catalog-model'; import { useEntity } from '@backstage/plugin-catalog-react'; @@ -41,7 +41,7 @@ export const Router = (_props: Props) => { } + element={} /> ); diff --git a/plugins/azure-devops/src/plugin.ts b/plugins/azure-devops/src/plugin.ts index 9ec5ebbb09..1cf6e680d0 100644 --- a/plugins/azure-devops/src/plugin.ts +++ b/plugins/azure-devops/src/plugin.ts @@ -42,7 +42,7 @@ export const azureDevOpsPlugin = createPlugin({ export const EntityAzurePipelinesContent = azureDevOpsPlugin.provide( createRoutableExtension({ - name: 'EntityAzureDevOpsContent', + name: 'EntityAzurePipelinesContent', component: () => import('./components/Router').then(m => m.Router), mountPoint: azureDevOpsRouteRef, }), From 94acc6211641f92da6963d89dbfd1fac71973083 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 10:06:05 -0500 Subject: [PATCH 07/23] Another set of feedback improvements Signed-off-by: Andre Wanlin --- app-config.yaml | 3 +- packages/backend/src/index.ts | 2 +- .../{azuredevops.ts => azure-devops.ts} | 0 plugins/azure-devops/README.md | 39 ++++++++++--------- plugins/azure-devops/config.d.ts | 12 +++--- .../src/components/BuildTable/BuildTable.tsx | 9 ++++- .../src/hooks/useProjectRepoFromEntity.ts | 19 +++++++++ .../azure-devops/src/hooks/useRepoBuilds.ts | 3 +- 8 files changed, 58 insertions(+), 29 deletions(-) rename packages/backend/src/plugins/{azuredevops.ts => azure-devops.ts} (100%) diff --git a/app-config.yaml b/app-config.yaml index b92595df7b..645221538b 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -436,4 +436,5 @@ azureDevOps: host: dev.azure.com token: my-token organization: my-company - top: 25 + azurePipelines: + top: 25 diff --git a/packages/backend/src/index.ts b/packages/backend/src/index.ts index f25ec5a14e..b6c148dfba 100644 --- a/packages/backend/src/index.ts +++ b/packages/backend/src/index.ts @@ -38,7 +38,7 @@ import { Config } from '@backstage/config'; import healthcheck from './plugins/healthcheck'; import { metricsInit, metricsHandler } from './metrics'; import auth from './plugins/auth'; -import azureDevOps from './plugins/azuredevops'; +import azureDevOps from './plugins/azure-devops'; import catalog from './plugins/catalog'; import codeCoverage from './plugins/codecoverage'; import kubernetes from './plugins/kubernetes'; diff --git a/packages/backend/src/plugins/azuredevops.ts b/packages/backend/src/plugins/azure-devops.ts similarity index 100% rename from packages/backend/src/plugins/azuredevops.ts rename to packages/backend/src/plugins/azure-devops.ts diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 55d5ea5f91..d2ab1b6c6f 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -17,7 +17,8 @@ azureDevOps: host: dev.azure.com token: ${AZURE_TOKEN} organization: my-company - top: 50 + azurePipelines: + top: 50 ``` Configuration Details: @@ -25,7 +26,7 @@ Configuration Details: - `host` and `token` can be the same as the ones used for the `integration` section - `AZURE_TOKEN` environment variable must be set to a [Personal Access Token](https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=preview-page) with read access to both Code and Build - `organization` is your Azure DevOps Organization name or for Azure DevOps Server (on-premise) this will be your Collection name -- `top` is strictly used by the frontend to limit the number of items returned, currently only used for Builds +- `top` is strictly used by the frontend to limit the number of items returned, if not provided it defaults to 10. Currently only used for Builds ### Backend @@ -39,7 +40,7 @@ Here's how to get the backend up and running: yarn add @backstage/plugin-azure-devops-backend ``` -2. Then we will create a new file named `packages/backend/src/plugins/azuredevops.ts`, and add the +2. Then we will create a new file named `packages/backend/src/plugins/azure-devops.ts`, and add the following to it: ```ts @@ -83,23 +84,23 @@ To get the frontend working you'll need to do the following two steps: 2. Second we need to add the `EntityAzurePipelinesContent` extension to the entity page in your app: -```tsx -// In packages/app/src/components/catalog/EntityPage.tsx -import { - EntityAzurePipelinesContent, - isAzureDevOpsAvailable, -} from '@backstage/plugin-azure-devops'; + ```tsx + // In packages/app/src/components/catalog/EntityPage.tsx + import { + EntityAzurePipelinesContent, + isAzureDevOpsAvailable, + } from '@backstage/plugin-azure-devops'; -// For example in the CI/CD section -const cicdContent = ( - - // ... - - - - // ... - -``` + // For example in the CI/CD section + const cicdContent = ( + + // ... + + + + // ... + + ``` ### Entity Annotation diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts index 62b1488e49..bbd42c55a1 100644 --- a/plugins/azure-devops/config.d.ts +++ b/plugins/azure-devops/config.d.ts @@ -17,10 +17,12 @@ export interface Config { /** Configuration options for the azure-devops-backend plugin */ azureDevOps: { - /** - * The max number of items to return - applies to builds - * @visibility frontend - */ - top: number; + azurePipelines: { + /** + * The max number of items to return - applies to builds + * @visibility frontend + */ + top: number; + }; }; } diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index 7c3e09c66c..b3d239d914 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -56,11 +56,12 @@ const columns: TableColumn[] = [ title: 'ID', field: 'id', highlight: false, - width: '100px', + width: 'auto', }, { title: 'Build', field: 'title', + width: 'auto', render: (row: Partial) => ( {row.title} @@ -70,10 +71,12 @@ const columns: TableColumn[] = [ { title: 'Source', field: 'source', + width: 'auto', }, { title: 'Status', field: 'status', + width: 'auto', render: (row: Partial) => ( @@ -86,6 +89,7 @@ const columns: TableColumn[] = [ { title: 'Result', field: 'result', + width: 'auto', render: (row: Partial) => ( {getBuildResultComponent(row.result)} @@ -97,8 +101,9 @@ const columns: TableColumn[] = [ ), }, { - title: 'Date', + title: 'Age', field: 'queueTime', + width: 'auto', render: (row: Partial) => DateTime.fromISO( row.queueTime ? row.queueTime.toString() : new Date().toString(), diff --git a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts index dfbee81d62..418badc630 100644 --- a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts +++ b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts @@ -24,5 +24,24 @@ export function useProjectRepoFromEntity(entity: Entity): { const [project, repo] = ( entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION] ?? '' ).split('/'); + + if (!project && !repo) { + throw new Error( + 'Value for annotation dev.azure.com/project-repo was not in the correct format: /', + ); + } + + if (!project) { + throw new Error( + 'Project Name for annotation dev.azure.com/project-repo was not found; expected format is: /', + ); + } + + if (!repo) { + throw new Error( + 'Repo Name for annotation dev.azure.com/project-repo was not found; expected format is: /', + ); + } + return { project, repo }; } diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index 1e68490ea6..0bae4b334b 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -29,7 +29,8 @@ export function useRepoBuilds(entity: Entity): { } { const config = useApi(configApiRef); const top = - config.getOptionalNumber('azureDevOps.top') ?? AZURE_DEVOPS_DEFAULT_TOP; + config.getOptionalNumber('azureDevOps.azurePipelines.top') ?? + AZURE_DEVOPS_DEFAULT_TOP; const api = useApi(azureDevOpsApiRef); const { project, repo } = useProjectRepoFromEntity(entity); const { value, loading, error } = useAsync(() => { From 619257ff83f33ec6caf7ce71e44cfd0a3ca65790 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 11:11:10 -0500 Subject: [PATCH 08/23] Applied suggested async and await changes Signed-off-by: Andre Wanlin --- packages/backend/src/plugins/azure-devops.ts | 4 ++-- plugins/azure-devops/README.md | 4 ++-- plugins/azure-devops/src/api/AzureDevOpsClient.ts | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/backend/src/plugins/azure-devops.ts b/packages/backend/src/plugins/azure-devops.ts index e11a21ba2e..4120e655ed 100644 --- a/packages/backend/src/plugins/azure-devops.ts +++ b/packages/backend/src/plugins/azure-devops.ts @@ -18,9 +18,9 @@ import { createRouter } from '@backstage/plugin-azure-devops-backend'; import { Router } from 'express'; import type { PluginEnvironment } from '../types'; -export default async function createPlugin({ +export default function createPlugin({ logger, config, }: PluginEnvironment): Promise { - return await createRouter({ logger, config }); + return createRouter({ logger, config }); } diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index d2ab1b6c6f..8b25800bb7 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -48,11 +48,11 @@ Here's how to get the backend up and running: import { Router } from 'express'; import type { PluginEnvironment } from '../types'; - export default async function createPlugin({ + export default function createPlugin({ logger, config, }: PluginEnvironment): Promise { - return await createRouter({ logger, config }); + return createRouter({ logger, config }); } ``` diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index d82dfbe09e..02cac3b9de 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -31,12 +31,12 @@ export class AzureDevOpsClient implements AzureDevOpsApi { this.identityApi = options.identityApi; } - async getRepoBuilds( + getRepoBuilds( projectName: string, repoName: string, top: number, ): Promise { - return await this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); + return this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); } private async get(path: string): Promise { @@ -53,6 +53,6 @@ export class AzureDevOpsClient implements AzureDevOpsApi { throw new AzureDevOpsClientError(response, payload); } - return await response.json(); + return response.json() as Promise; } } From ff09af35cea4593c8d361ea2d53f36d9f4aed22e Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 14:03:16 -0500 Subject: [PATCH 09/23] Combined the Status and Result columns into a single State Signed-off-by: Andre Wanlin --- .../src/components/BuildTable/BuildTable.tsx | 100 +++++++++++++----- 1 file changed, 72 insertions(+), 28 deletions(-) diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index b3d239d914..a6cfb9bf81 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -23,6 +23,8 @@ import { StatusOK, StatusWarning, StatusAborted, + StatusRunning, + StatusPending, } from '@backstage/core-components'; import { Link, Box, Typography } from '@material-ui/core'; import Alert from '@material-ui/lab/Alert'; @@ -32,22 +34,80 @@ import { BuildStatus, } from 'azure-devops-node-api/interfaces/BuildInterfaces'; -const getBuildResultComponent = ( - result: number | undefined = BuildResult.None, -) => { +const getBuildResultComponent = (result: number | undefined) => { switch (result) { - case BuildResult.None: - return ; case BuildResult.Succeeded: - return ; + return ( + + Succeeded{' '} + + ); case BuildResult.PartiallySucceeded: - return ; + return ( + + Partially Succeeded{' '} + + ); case BuildResult.Failed: - return ; + return ( + + Failed{' '} + + ); case BuildResult.Canceled: - return ; + return ( + + Canceled{' '} + + ); + case BuildResult.None: default: - return ; + return ( + + Unknown + + ); + } +}; + +const getBuildStateComponent = ( + status: number | undefined, + result: number | undefined, +) => { + switch (status) { + case BuildStatus.InProgress: + return ( + + In Progress + + ); + case BuildStatus.Completed: + return getBuildResultComponent(result); + case BuildStatus.Cancelling: + return ( + + Cancelling + + ); + case BuildStatus.Postponed: + return ( + + Postponed + + ); + case BuildStatus.NotStarted: + return ( + + Not Started + + ); + case BuildStatus.None: + default: + return ( + + Unknown + + ); } }; @@ -74,28 +134,12 @@ const columns: TableColumn[] = [ width: 'auto', }, { - title: 'Status', - field: 'status', + title: 'State', width: 'auto', render: (row: Partial) => ( - - {BuildStatus[row.status || BuildStatus.None]} - - - ), - }, - { - title: 'Result', - field: 'result', - width: 'auto', - render: (row: Partial) => ( - - {getBuildResultComponent(row.result)} - - - {BuildResult[row.result || BuildResult.None]} + {getBuildStateComponent(row.status, row.result)} ), From 38b014a5f5700bcb54908fce1291b0cf249273af Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Wed, 6 Oct 2021 14:32:58 -0500 Subject: [PATCH 10/23] Adding Azure DevOps frontend plugin Signed-off-by: Andre Wanlin --- app-config.yaml | 1 + packages/app/package.json | 1 + .../app/src/components/catalog/EntityPage.tsx | 8 ++ plugins/azure-devops/.eslintrc.js | 3 + plugins/azure-devops/README.md | 135 ++++++++++++++++++ plugins/azure-devops/api-report.md | 35 +++++ plugins/azure-devops/config.d.ts | 26 ++++ plugins/azure-devops/dev/index.tsx | 20 +++ .../azure-devops/doc/azure-devops-builds.png | Bin 0 -> 177135 bytes plugins/azure-devops/package.json | 62 ++++++++ .../azure-devops/src/api/AzureDevOpsApi.ts | 32 +++++ .../azure-devops/src/api/AzureDevOpsClient.ts | 56 ++++++++ plugins/azure-devops/src/api/index.ts | 18 +++ plugins/azure-devops/src/api/types.ts | 30 ++++ .../src/components/BuildTable/BuildTable.tsx | 132 +++++++++++++++++ .../src/components/BuildTable/index.ts | 17 +++ .../EntityPageAzureDevOps.tsx | 33 +++++ .../components/EntityPageAzureDevOps/index.ts | 17 +++ .../azure-devops/src/components/Router.tsx | 48 +++++++ plugins/azure-devops/src/constants.ts | 17 +++ .../src/hooks/useProjectRepoFromEntity.ts | 25 ++++ .../azure-devops/src/hooks/useRepoBuilds.ts | 40 ++++++ plugins/azure-devops/src/index.ts | 17 +++ plugins/azure-devops/src/plugin.test.ts | 22 +++ plugins/azure-devops/src/plugin.ts | 54 +++++++ plugins/azure-devops/src/routes.ts | 20 +++ plugins/azure-devops/src/setupTests.ts | 17 +++ 27 files changed, 886 insertions(+) create mode 100644 plugins/azure-devops/.eslintrc.js create mode 100644 plugins/azure-devops/README.md create mode 100644 plugins/azure-devops/api-report.md create mode 100644 plugins/azure-devops/config.d.ts create mode 100644 plugins/azure-devops/dev/index.tsx create mode 100644 plugins/azure-devops/doc/azure-devops-builds.png create mode 100644 plugins/azure-devops/package.json create mode 100644 plugins/azure-devops/src/api/AzureDevOpsApi.ts create mode 100644 plugins/azure-devops/src/api/AzureDevOpsClient.ts create mode 100644 plugins/azure-devops/src/api/index.ts create mode 100644 plugins/azure-devops/src/api/types.ts create mode 100644 plugins/azure-devops/src/components/BuildTable/BuildTable.tsx create mode 100644 plugins/azure-devops/src/components/BuildTable/index.ts create mode 100644 plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx create mode 100644 plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts create mode 100644 plugins/azure-devops/src/components/Router.tsx create mode 100644 plugins/azure-devops/src/constants.ts create mode 100644 plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts create mode 100644 plugins/azure-devops/src/hooks/useRepoBuilds.ts create mode 100644 plugins/azure-devops/src/index.ts create mode 100644 plugins/azure-devops/src/plugin.test.ts create mode 100644 plugins/azure-devops/src/plugin.ts create mode 100644 plugins/azure-devops/src/routes.ts create mode 100644 plugins/azure-devops/src/setupTests.ts diff --git a/app-config.yaml b/app-config.yaml index c24ac1701b..b92595df7b 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -436,3 +436,4 @@ azureDevOps: host: dev.azure.com token: my-token organization: my-company + top: 25 diff --git a/packages/app/package.json b/packages/app/package.json index d1892438d8..fe86077273 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -11,6 +11,7 @@ "@backstage/core-plugin-api": "^0.1.10", "@backstage/integration-react": "^0.1.11", "@backstage/plugin-api-docs": "^0.6.11", + "@backstage/plugin-azure-devops": "^0.1.0", "@backstage/plugin-badges": "^0.2.12", "@backstage/plugin-catalog": "^0.7.0", "@backstage/plugin-catalog-graph": "^0.1.3", diff --git a/packages/app/src/components/catalog/EntityPage.tsx b/packages/app/src/components/catalog/EntityPage.tsx index 62fdcf4d3f..b79bd2c4aa 100644 --- a/packages/app/src/components/catalog/EntityPage.tsx +++ b/packages/app/src/components/catalog/EntityPage.tsx @@ -33,6 +33,10 @@ import { EntityProvidedApisCard, EntityProvidingComponentsCard, } from '@backstage/plugin-api-docs'; +import { + EntityAzureDevOpsContent, + isAzureDevOpsAvailable, +} from '@backstage/plugin-azure-devops'; import { EntityBadgesDialog } from '@backstage/plugin-badges'; import { EntityAboutCard, @@ -183,6 +187,10 @@ export const cicdContent = ( + + + + { + return await createRouter({ logger, config }); + } + ``` + +3. Next we wire this into the overall backend router, edit `packages/backend/src/index.ts`: + + ```ts + import azureDevOps from './plugins/azuredevops'; + // ... + async function main() { + // ... + const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); + apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); + ``` + +4. Now run `yarn start-backend` from the repo root +5. Finally open `http://localhost:7000/api/azure-devops/health` in a browser and it should return `{"status":"ok"}` + +### Frontend + +To get the frontend working you'll need to do the following two steps: + +1. First we need to add the @backstage/plugin-azure-devops package to your frontend app: + + ```bash + # From your Backstage root directory + cd packages/app + yarn add @backstage/plugin-azure-devops + ``` + +2. Second we need to add the `EntityAzureDevOpsContent` extension to the entity page in your app: + +```tsx +// In packages/app/src/components/catalog/EntityPage.tsx +import { + EntityAzureDevOpsContent, + isAzureDevOpsAvailable, +} from '@backstage/plugin-azure-devops'; + +// For example in the CI/CD section +const cicdContent = ( + + // ... + + + + // ... + +``` + +### Entity Annotation + +You need to add the following annotation to any entities you want to be able to use the Azure Devops plugin with: + +```yaml +dev.azure.com/project-repo: / +``` + +Let's break this down a little: `` will be the name of your Team Project and `` will be the name of your repository which needs to be part of the Team Project you entered for ``. + +Here's what that will look like in action: + +```yaml +# Example catalog-info.yaml entity definition file +apiVersion: backstage.io/v1alpha1 +kind: Component +metadata: + # ... + annotations: + dev.azure.com/project-repo: my-project/my-repo +spec: + type: service + # ... +``` + +## Features + +- Lists the top _n_ builds for a given repository where _n_ is the value configured for `top` + +## Limitations + +- Currently multiple organizations is not supported diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md new file mode 100644 index 0000000000..11de164276 --- /dev/null +++ b/plugins/azure-devops/api-report.md @@ -0,0 +1,35 @@ +## API Report File for "@backstage/plugin-azure-devops" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +/// + +import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { Entity } from '@backstage/catalog-model'; +import { RouteRef } from '@backstage/core-plugin-api'; + +// Warning: (ae-missing-release-tag) "azureDevOpsPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const azureDevOpsPlugin: BackstagePlugin< + { + entityContent: RouteRef; + }, + {} +>; + +// Warning: (ae-missing-release-tag) "EntityAzureDevOpsContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const EntityAzureDevOpsContent: (_props: { + entity?: Entity | undefined; +}) => JSX.Element; + +// Warning: (ae-missing-release-tag) "isAzureDevOpsAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const isAzureDevOpsAvailable: (entity: Entity) => boolean; + +// (No @packageDocumentation comment for this package) +``` diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts new file mode 100644 index 0000000000..827e64d5bd --- /dev/null +++ b/plugins/azure-devops/config.d.ts @@ -0,0 +1,26 @@ +/* + * Copyright 2020 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export interface Config { + /** Configuration options for the azure-devops-backend plugin */ + azureDevOps: { + /** + * The max number of items to return - applies to builds + * @visibility frontend + */ + top: number; + }; +} diff --git a/plugins/azure-devops/dev/index.tsx b/plugins/azure-devops/dev/index.tsx new file mode 100644 index 0000000000..8d1c3ef6ea --- /dev/null +++ b/plugins/azure-devops/dev/index.tsx @@ -0,0 +1,20 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { createDevApp } from '@backstage/dev-utils'; +import { azureDevOpsPlugin } from '../src/plugin'; + +createDevApp().registerPlugin(azureDevOpsPlugin).render(); diff --git a/plugins/azure-devops/doc/azure-devops-builds.png b/plugins/azure-devops/doc/azure-devops-builds.png new file mode 100644 index 0000000000000000000000000000000000000000..89a777059f67b448c961bdcd829d38ddd9eea0d5 GIT binary patch literal 177135 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'OLF;}K1r?yk4 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 literal 0 HcmV?d00001 diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json new file mode 100644 index 0000000000..fb59d5eb38 --- /dev/null +++ b/plugins/azure-devops/package.json @@ -0,0 +1,62 @@ +{ + "name": "@backstage/plugin-azure-devops", + "version": "0.1.0", + "main": "src/index.ts", + "types": "src/index.ts", + "license": "Apache-2.0", + "publishConfig": { + "access": "public", + "main": "dist/index.esm.js", + "types": "dist/index.d.ts" + }, + "homepage": "https://backstage.io", + "repository": { + "type": "git", + "url": "https://github.com/backstage/backstage", + "directory": "plugins/azure-devops" + }, + "scripts": { + "build": "backstage-cli plugin:build", + "start": "backstage-cli plugin:serve", + "lint": "backstage-cli lint", + "test": "backstage-cli test", + "diff": "backstage-cli plugin:diff", + "prepack": "backstage-cli prepack", + "postpack": "backstage-cli postpack", + "clean": "backstage-cli clean" + }, + "dependencies": { + "@backstage/catalog-model": "^0.9.3", + "@backstage/core-components": "^0.6.0", + "@backstage/core-plugin-api": "^0.1.9", + "@backstage/plugin-catalog-react": "^0.5.1", + "@backstage/theme": "^0.2.10", + "@material-ui/core": "^4.12.2", + "@material-ui/icons": "^4.9.1", + "@material-ui/lab": "4.0.0-alpha.57", + "azure-devops-node-api": "^11.0.1", + "moment": "^2.29.1", + "react": "^16.13.1", + "react-dom": "^16.13.1", + "react-router": "6.0.0-beta.0", + "react-use": "^17.2.4" + }, + "devDependencies": { + "@backstage/cli": "^0.7.13", + "@backstage/core-app-api": "^0.1.14", + "@backstage/dev-utils": "^0.2.10", + "@backstage/test-utils": "^0.1.17", + "@testing-library/jest-dom": "^5.10.1", + "@testing-library/react": "^11.2.5", + "@testing-library/user-event": "^13.1.8", + "@types/jest": "*", + "@types/node": "*", + "msw": "^0.29.0", + "cross-fetch": "^3.0.6" + }, + "files": [ + "dist", + "config.d.ts" + ], + "configSchema": "config.d.ts" +} diff --git a/plugins/azure-devops/src/api/AzureDevOpsApi.ts b/plugins/azure-devops/src/api/AzureDevOpsApi.ts new file mode 100644 index 0000000000..424999441d --- /dev/null +++ b/plugins/azure-devops/src/api/AzureDevOpsApi.ts @@ -0,0 +1,32 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { RepoBuild } from './types'; +import { createApiRef } from '@backstage/core-plugin-api'; + +export const azureDevOpsApiRef = createApiRef({ + id: 'plugin.azure-devops.service', + description: + 'Used by the Azure DevOps plugin to make requests to accompanying backend', +}); + +export interface AzureDevOpsApi { + getRepoBuilds( + projectName: string, + repoName: string, + top: number, + ): Promise; +} diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts new file mode 100644 index 0000000000..c9e44109aa --- /dev/null +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -0,0 +1,56 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { AzureDevOpsApi } from './AzureDevOpsApi'; +import { RepoBuild } from './types'; +import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; + +export class AzureDevOpsClient implements AzureDevOpsApi { + private readonly discoveryApi: DiscoveryApi; + private readonly identityApi: IdentityApi; + + constructor(options: { + discoveryApi: DiscoveryApi; + identityApi: IdentityApi; + }) { + this.discoveryApi = options.discoveryApi; + this.identityApi = options.identityApi; + } + + async getRepoBuilds( + projectName: string, + repoName: string, + top: number, + ): Promise { + return await this.get(`/repo-builds/${projectName}/${repoName}?top=${top}`); + } + + private async get(path: string): Promise { + const url = `${await this.discoveryApi.getBaseUrl('azure-devops')}${path}`; + const idToken = await this.identityApi.getIdToken(); + const response = await fetch(url, { + headers: idToken ? { Authorization: `Bearer ${idToken}` } : {}, + }); + + if (!response.ok) { + const payload = await response.text(); + const message = `Request failed with ${response.status} ${response.statusText}, ${payload}`; + throw new Error(message); + } + + return await response.json(); + } +} diff --git a/plugins/azure-devops/src/api/index.ts b/plugins/azure-devops/src/api/index.ts new file mode 100644 index 0000000000..c69636222f --- /dev/null +++ b/plugins/azure-devops/src/api/index.ts @@ -0,0 +1,18 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export * from './AzureDevOpsApi'; +export * from './AzureDevOpsClient'; diff --git a/plugins/azure-devops/src/api/types.ts b/plugins/azure-devops/src/api/types.ts new file mode 100644 index 0000000000..35d4e38ae1 --- /dev/null +++ b/plugins/azure-devops/src/api/types.ts @@ -0,0 +1,30 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { + BuildResult, + BuildStatus, +} from 'azure-devops-node-api/interfaces/BuildInterfaces'; + +export type RepoBuild = { + id?: number; + title: string; + link: string; + status?: BuildStatus; + result?: BuildResult; + queueTime?: Date; + source: string; +}; diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx new file mode 100644 index 0000000000..26f365c5e9 --- /dev/null +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -0,0 +1,132 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import React from 'react'; +import moment from 'moment'; +import { + Table, + TableColumn, + StatusError, + StatusOK, + StatusWarning, + StatusAborted, +} from '@backstage/core-components'; +import { Link, Box, Typography } from '@material-ui/core'; +import Alert from '@material-ui/lab/Alert'; +import { RepoBuild } from '../../api/types'; +import { + BuildResult, + BuildStatus, +} from 'azure-devops-node-api/interfaces/BuildInterfaces'; + +const getBuildResultComponent = (result: number | undefined = 0) => { + switch (result) { + case 0: // None + return ; + case 2: // Succeeded + return ; + case 4: // PartiallySucceeded + return ; + case 8: // Failed + return ; + case 32: // Canceled + return ; + default: + return ; + } +}; + +const columns: TableColumn[] = [ + { + title: 'ID', + field: 'id', + highlight: false, + width: '80px', + }, + { + title: 'Build', + field: 'title', + render: (row: Partial) => ( + + {row.title} + + ), + }, + { + title: 'Source', + field: 'source', + }, + { + title: 'Status', + field: 'status', + render: (row: Partial) => ( + + + {BuildStatus[row.status || 0]} + + ), + }, + { + title: 'Result', + field: 'result', + render: (row: Partial) => ( + + {getBuildResultComponent(row.result)} + + {BuildResult[row.result || 0]} + + ), + }, + { + title: 'Date', + field: 'queueTime', + render: (row: Partial) => moment(row.queueTime).fromNow(), + }, +]; + +type Props = { + items: RepoBuild[]; + loading: boolean; + error?: any; +}; + +export const BuildTable = ({ items, loading, error }: Props) => { + if (error) { + return ( +
+ + Error encountered while fetching Azure DevOps builds.{' '} + {error.toString()} + +
+ ); + } + + return ( +
+ ); +}; diff --git a/plugins/azure-devops/src/components/BuildTable/index.ts b/plugins/azure-devops/src/components/BuildTable/index.ts new file mode 100644 index 0000000000..acf20eb523 --- /dev/null +++ b/plugins/azure-devops/src/components/BuildTable/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { BuildTable } from './BuildTable'; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx new file mode 100644 index 0000000000..fbeac53569 --- /dev/null +++ b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx @@ -0,0 +1,33 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Entity } from '@backstage/catalog-model'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import React from 'react'; +import { useRepoBuilds } from '../../hooks/useRepoBuilds'; +import { BuildTable } from '../BuildTable/BuildTable'; + +type Props = { + /** @deprecated The entity is now grabbed from context instead */ + entity?: Entity; +}; + +export const EntityPageAzureDevOps = (_props: Props) => { + const { entity } = useEntity(); + const { items, loading, error } = useRepoBuilds(entity); + + return ; +}; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts b/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts new file mode 100644 index 0000000000..89ee4f199b --- /dev/null +++ b/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; diff --git a/plugins/azure-devops/src/components/Router.tsx b/plugins/azure-devops/src/components/Router.tsx new file mode 100644 index 0000000000..74cf0439f8 --- /dev/null +++ b/plugins/azure-devops/src/components/Router.tsx @@ -0,0 +1,48 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import React from 'react'; +import { Routes, Route } from 'react-router'; +import { azureDevOpsRouteRef } from '../routes'; +import { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; +import { AZURE_DEVOPS_ANNOTATION } from '../constants'; +import { Entity } from '@backstage/catalog-model'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import { MissingAnnotationEmptyState } from '@backstage/core-components'; + +export const isAzureDevOpsAvailable = (entity: Entity) => + Boolean(entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION]); + +type Props = { + /** @deprecated The entity is now grabbed from context instead */ + entity?: Entity; +}; + +export const Router = (_props: Props) => { + const { entity } = useEntity(); + + if (!isAzureDevOpsAvailable(entity)) { + return ; + } + + return ( + + } + /> + + ); +}; diff --git a/plugins/azure-devops/src/constants.ts b/plugins/azure-devops/src/constants.ts new file mode 100644 index 0000000000..6abc6449e9 --- /dev/null +++ b/plugins/azure-devops/src/constants.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export const AZURE_DEVOPS_ANNOTATION = 'dev.azure.com/project-repo'; diff --git a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts new file mode 100644 index 0000000000..721fa52781 --- /dev/null +++ b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts @@ -0,0 +1,25 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Entity } from '@backstage/catalog-model'; +import { AZURE_DEVOPS_ANNOTATION } from '../constants'; + +export function useProjectRepoFromEntity(entity: Entity) { + const [project, repo] = ( + entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION] ?? '' + ).split('/'); + return { project, repo }; +} diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts new file mode 100644 index 0000000000..e6d2964770 --- /dev/null +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -0,0 +1,40 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { useAsync } from 'react-use'; +import { Entity } from '@backstage/catalog-model'; +import { useApi, configApiRef } from '@backstage/core-plugin-api'; +import { azureDevOpsApiRef } from '../api'; +import { RepoBuild } from '../api/types'; +import { useProjectRepoFromEntity } from './useProjectRepoFromEntity'; + +const DEFAULT_TOP: number = 10; + +export function useRepoBuilds(entity: Entity) { + const config = useApi(configApiRef); + const top = config.getOptionalNumber('azureDevOps.top') ?? DEFAULT_TOP; + const api = useApi(azureDevOpsApiRef); + const { project, repo } = useProjectRepoFromEntity(entity); + const { value, loading, error } = useAsync(() => { + return api.getRepoBuilds(project, repo, top); + }, [api, project, repo, entity]); + + return { + items: value as RepoBuild[], + loading, + error, + }; +} diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts new file mode 100644 index 0000000000..b654aebab7 --- /dev/null +++ b/plugins/azure-devops/src/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export { azureDevOpsPlugin, EntityAzureDevOpsContent } from './plugin'; +export { isAzureDevOpsAvailable } from './components/Router'; diff --git a/plugins/azure-devops/src/plugin.test.ts b/plugins/azure-devops/src/plugin.test.ts new file mode 100644 index 0000000000..f23639798f --- /dev/null +++ b/plugins/azure-devops/src/plugin.test.ts @@ -0,0 +1,22 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { azureDevOpsPlugin } from './plugin'; + +describe('azure-devops', () => { + it('should export plugin', () => { + expect(azureDevOpsPlugin).toBeDefined(); + }); +}); diff --git a/plugins/azure-devops/src/plugin.ts b/plugins/azure-devops/src/plugin.ts new file mode 100644 index 0000000000..f37fab6d62 --- /dev/null +++ b/plugins/azure-devops/src/plugin.ts @@ -0,0 +1,54 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { azureDevOpsApiRef } from './api/AzureDevOpsApi'; +import { AzureDevOpsClient } from './api/AzureDevOpsClient'; +import { + createApiFactory, + createPlugin, + createRoutableExtension, + createRouteRef, + discoveryApiRef, + identityApiRef, +} from '@backstage/core-plugin-api'; + +export const rootRouteRef = createRouteRef({ + path: '', + title: 'AzureDevOps', +}); + +export const azureDevOpsPlugin = createPlugin({ + id: 'azureDevOps', + apis: [ + createApiFactory({ + api: azureDevOpsApiRef, + deps: { discoveryApi: discoveryApiRef, identityApi: identityApiRef }, + factory: ({ discoveryApi, identityApi }) => + new AzureDevOpsClient({ discoveryApi, identityApi }), + }), + ], + routes: { + entityContent: rootRouteRef, + }, +}); + +export const EntityAzureDevOpsContent = azureDevOpsPlugin.provide( + createRoutableExtension({ + name: 'EntityAzureDevOpsContent', + component: () => import('./components/Router').then(m => m.Router), + mountPoint: rootRouteRef, + }), +); diff --git a/plugins/azure-devops/src/routes.ts b/plugins/azure-devops/src/routes.ts new file mode 100644 index 0000000000..81f4b48fda --- /dev/null +++ b/plugins/azure-devops/src/routes.ts @@ -0,0 +1,20 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { createRouteRef } from '@backstage/core-plugin-api'; + +export const azureDevOpsRouteRef = createRouteRef({ + title: 'azure-devops', +}); diff --git a/plugins/azure-devops/src/setupTests.ts b/plugins/azure-devops/src/setupTests.ts new file mode 100644 index 0000000000..fc6dbd98f8 --- /dev/null +++ b/plugins/azure-devops/src/setupTests.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import '@testing-library/jest-dom'; +import 'cross-fetch/polyfill'; From d1b0a7345383c638d495add074bb135971e6b93b Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 06:59:24 -0500 Subject: [PATCH 11/23] Updated devDependencies causing CI to fail Signed-off-by: Andre Wanlin --- plugins/azure-devops/package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index fb59d5eb38..c823924c9d 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -42,15 +42,15 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.7.13", - "@backstage/core-app-api": "^0.1.14", - "@backstage/dev-utils": "^0.2.10", + "@backstage/cli": "^0.7.14", + "@backstage/core-app-api": "^0.1.15", + "@backstage/dev-utils": "^0.2.11", "@backstage/test-utils": "^0.1.17", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^11.2.5", "@testing-library/user-event": "^13.1.8", - "@types/jest": "*", - "@types/node": "*", + "@types/jest": "^26.0.7", + "@types/node": "^14.14.32", "msw": "^0.29.0", "cross-fetch": "^3.0.6" }, From a44d32d46c3da76aacbbb265e7202c1865686f10 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 08:57:16 -0500 Subject: [PATCH 12/23] Fixed formatting of README Signed-off-by: Andre Wanlin --- plugins/azure-devops/README.md | 60 +++++++++++++++++----------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index a596863bad..376a630873 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -31,43 +31,43 @@ Configuration Details: Here's how to get the backend up and running: -1. First we need to add the @backstage/plugin-azure-devops-backend package to your backend: +1. First we need to add the @backstage/plugin-azure-devops-backend package to your backend: - ```sh - # From the Backstage root directory - cd packages/backend - yarn add @backstage/plugin-azure-devops-backend - ``` + ```sh + # From the Backstage root directory + cd packages/backend + yarn add @backstage/plugin-azure-devops-backend + ``` -2. Then we will create a new file named `packages/backend/src/plugins/azuredevops.ts`, and add the - following to it: +2. Then we will create a new file named `packages/backend/src/plugins/azuredevops.ts`, and add the + following to it: - ```ts - import { createRouter } from '@backstage/plugin-azure-devops-backend'; - import { Router } from 'express'; - import type { PluginEnvironment } from '../types'; + ```ts + import { createRouter } from '@backstage/plugin-azure-devops-backend'; + import { Router } from 'express'; + import type { PluginEnvironment } from '../types'; - export default async function createPlugin({ - logger, - config, - }: PluginEnvironment): Promise { - return await createRouter({ logger, config }); - } - ``` + export default async function createPlugin({ + logger, + config, + }: PluginEnvironment): Promise { + return await createRouter({ logger, config }); + } + ``` -3. Next we wire this into the overall backend router, edit `packages/backend/src/index.ts`: +3. Next we wire this into the overall backend router, edit `packages/backend/src/index.ts`: - ```ts - import azureDevOps from './plugins/azuredevops'; - // ... - async function main() { - // ... - const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); - apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); - ``` + ```ts + import azureDevOps from './plugins/azuredevops'; + // ... + async function main() { + // ... + const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); + apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); + ``` -4. Now run `yarn start-backend` from the repo root -5. Finally open `http://localhost:7000/api/azure-devops/health` in a browser and it should return `{"status":"ok"}` +4. Now run `yarn start-backend` from the repo root +5. Finally open `http://localhost:7000/api/azure-devops/health` in a browser and it should return `{"status":"ok"}` ### Frontend From 9953dc1b44f01a66a372a896bf6ff43fd7d2ea7b Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 19:55:26 -0500 Subject: [PATCH 13/23] Start of refactoring based on feedback Signed-off-by: Andre Wanlin --- .../app/src/components/catalog/EntityPage.tsx | 4 +-- plugins/azure-devops/README.md | 2 +- plugins/azure-devops/config.d.ts | 2 +- .../{doc => docs}/azure-devops-builds.png | Bin plugins/azure-devops/package.json | 10 +++---- .../azure-devops/src/api/AzureDevOpsClient.ts | 8 +++-- .../src/api/AzureDevOpsClientError.ts | 21 +++++++++++++ plugins/azure-devops/src/api/types.ts | 2 +- .../src/components/BuildTable/BuildTable.tsx | 28 +++++++++++------- .../EntityPageAzureDevOps.tsx | 2 +- plugins/azure-devops/src/constants.ts | 1 + .../src/hooks/useProjectRepoFromEntity.ts | 5 +++- .../azure-devops/src/hooks/useRepoBuilds.ts | 12 +++++--- plugins/azure-devops/src/index.ts | 2 +- plugins/azure-devops/src/plugin.ts | 13 +++----- 15 files changed, 72 insertions(+), 40 deletions(-) rename plugins/azure-devops/{doc => docs}/azure-devops-builds.png (100%) create mode 100644 plugins/azure-devops/src/api/AzureDevOpsClientError.ts diff --git a/packages/app/src/components/catalog/EntityPage.tsx b/packages/app/src/components/catalog/EntityPage.tsx index b79bd2c4aa..4147874e65 100644 --- a/packages/app/src/components/catalog/EntityPage.tsx +++ b/packages/app/src/components/catalog/EntityPage.tsx @@ -34,7 +34,7 @@ import { EntityProvidingComponentsCard, } from '@backstage/plugin-api-docs'; import { - EntityAzureDevOpsContent, + EntityAzurePipelinesContent, isAzureDevOpsAvailable, } from '@backstage/plugin-azure-devops'; import { EntityBadgesDialog } from '@backstage/plugin-badges'; @@ -188,7 +188,7 @@ export const cicdContent = ( - + diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 376a630873..97a415d8d0 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -2,7 +2,7 @@ Website: [https://dev.azure.com/](https://dev.azure.com/) -![Azure DevOps Builds Example](./doc/azure-devops-builds.png) +![Azure DevOps Builds Example](./docs/azure-devops-builds.png) ## Setup diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts index 827e64d5bd..62b1488e49 100644 --- a/plugins/azure-devops/config.d.ts +++ b/plugins/azure-devops/config.d.ts @@ -1,5 +1,5 @@ /* - * Copyright 2020 The Backstage Authors + * Copyright 2021 The Backstage Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/plugins/azure-devops/doc/azure-devops-builds.png b/plugins/azure-devops/docs/azure-devops-builds.png similarity index 100% rename from plugins/azure-devops/doc/azure-devops-builds.png rename to plugins/azure-devops/docs/azure-devops-builds.png diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index c823924c9d..16e8f35991 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -27,8 +27,8 @@ }, "dependencies": { "@backstage/catalog-model": "^0.9.3", - "@backstage/core-components": "^0.6.0", - "@backstage/core-plugin-api": "^0.1.9", + "@backstage/core-components": "^0.6.1", + "@backstage/core-plugin-api": "^0.1.10", "@backstage/plugin-catalog-react": "^0.5.1", "@backstage/theme": "^0.2.10", "@material-ui/core": "^4.12.2", @@ -42,10 +42,10 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.7.14", - "@backstage/core-app-api": "^0.1.15", + "@backstage/cli": "^0.7.15", + "@backstage/core-app-api": "^0.1.16", "@backstage/dev-utils": "^0.2.11", - "@backstage/test-utils": "^0.1.17", + "@backstage/test-utils": "^0.1.18", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^11.2.5", "@testing-library/user-event": "^13.1.8", diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index c9e44109aa..32a563f429 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -17,6 +17,7 @@ import { AzureDevOpsApi } from './AzureDevOpsApi'; import { RepoBuild } from './types'; import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; +import { AzureDevOpsClientError } from './AzureDevOpsClientError'; export class AzureDevOpsClient implements AzureDevOpsApi { private readonly discoveryApi: DiscoveryApi; @@ -39,7 +40,9 @@ export class AzureDevOpsClient implements AzureDevOpsApi { } private async get(path: string): Promise { - const url = `${await this.discoveryApi.getBaseUrl('azure-devops')}${path}`; + const baseUrl = await this.discoveryApi.getBaseUrl('azure-devops'); + const url = `${baseUrl}/${path}`; + const idToken = await this.identityApi.getIdToken(); const response = await fetch(url, { headers: idToken ? { Authorization: `Bearer ${idToken}` } : {}, @@ -47,8 +50,7 @@ export class AzureDevOpsClient implements AzureDevOpsApi { if (!response.ok) { const payload = await response.text(); - const message = `Request failed with ${response.status} ${response.statusText}, ${payload}`; - throw new Error(message); + throw new AzureDevOpsClientError(response, payload); } return await response.json(); diff --git a/plugins/azure-devops/src/api/AzureDevOpsClientError.ts b/plugins/azure-devops/src/api/AzureDevOpsClientError.ts new file mode 100644 index 0000000000..f9a2f37b41 --- /dev/null +++ b/plugins/azure-devops/src/api/AzureDevOpsClientError.ts @@ -0,0 +1,21 @@ +/* + * Copyright 2021 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export class AzureDevOpsClientError extends Error { + public constructor({ status, statusText }: Response, payload: string) { + super(`Request failed with ${status} ${statusText}, ${payload}`); + } +} diff --git a/plugins/azure-devops/src/api/types.ts b/plugins/azure-devops/src/api/types.ts index 35d4e38ae1..b3562f76c6 100644 --- a/plugins/azure-devops/src/api/types.ts +++ b/plugins/azure-devops/src/api/types.ts @@ -22,7 +22,7 @@ import { export type RepoBuild = { id?: number; title: string; - link: string; + link?: string; status?: BuildStatus; result?: BuildResult; queueTime?: Date; diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index 26f365c5e9..e853662fbf 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -32,17 +32,19 @@ import { BuildStatus, } from 'azure-devops-node-api/interfaces/BuildInterfaces'; -const getBuildResultComponent = (result: number | undefined = 0) => { +const getBuildResultComponent = ( + result: number | undefined = BuildResult.None, +) => { switch (result) { - case 0: // None + case BuildResult.None: return ; - case 2: // Succeeded + case BuildResult.Succeeded: return ; - case 4: // PartiallySucceeded + case BuildResult.PartiallySucceeded: return ; - case 8: // Failed + case BuildResult.Failed: return ; - case 32: // Canceled + case BuildResult.Canceled: return ; default: return ; @@ -75,7 +77,9 @@ const columns: TableColumn[] = [ render: (row: Partial) => ( - {BuildStatus[row.status || 0]} + + {BuildStatus[row.status || BuildStatus.None]} + ), }, @@ -86,7 +90,9 @@ const columns: TableColumn[] = [ {getBuildResultComponent(row.result)} - {BuildResult[row.result || 0]} + + {BuildResult[row.result || BuildResult.None]} + ), }, @@ -98,7 +104,7 @@ const columns: TableColumn[] = [ ]; type Props = { - items: RepoBuild[]; + items?: RepoBuild[]; loading: boolean; error?: any; }; @@ -125,8 +131,8 @@ export const BuildTable = ({ items, loading, error }: Props) => { pageSize: 5, showEmptyDataSourceMessage: !loading, }} - title={`Builds (${(items && items.length) || 0})`} - data={items} + title={`Builds (${items ? items.length : 0})`} + data={items || []} /> ); }; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx index fbeac53569..8e102e647d 100644 --- a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx +++ b/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx @@ -29,5 +29,5 @@ export const EntityPageAzureDevOps = (_props: Props) => { const { entity } = useEntity(); const { items, loading, error } = useRepoBuilds(entity); - return ; + return ; }; diff --git a/plugins/azure-devops/src/constants.ts b/plugins/azure-devops/src/constants.ts index 6abc6449e9..d6e67ff7ed 100644 --- a/plugins/azure-devops/src/constants.ts +++ b/plugins/azure-devops/src/constants.ts @@ -15,3 +15,4 @@ */ export const AZURE_DEVOPS_ANNOTATION = 'dev.azure.com/project-repo'; +export const AZURE_DEVOPS_DEFAULT_TOP: number = 10; diff --git a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts index 721fa52781..dfbee81d62 100644 --- a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts +++ b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts @@ -17,7 +17,10 @@ import { Entity } from '@backstage/catalog-model'; import { AZURE_DEVOPS_ANNOTATION } from '../constants'; -export function useProjectRepoFromEntity(entity: Entity) { +export function useProjectRepoFromEntity(entity: Entity): { + project: string; + repo: string; +} { const [project, repo] = ( entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION] ?? '' ).split('/'); diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index e6d2964770..1e68490ea6 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -20,12 +20,16 @@ import { useApi, configApiRef } from '@backstage/core-plugin-api'; import { azureDevOpsApiRef } from '../api'; import { RepoBuild } from '../api/types'; import { useProjectRepoFromEntity } from './useProjectRepoFromEntity'; +import { AZURE_DEVOPS_DEFAULT_TOP } from '../constants'; -const DEFAULT_TOP: number = 10; - -export function useRepoBuilds(entity: Entity) { +export function useRepoBuilds(entity: Entity): { + items: RepoBuild[]; + loading: boolean; + error: any; +} { const config = useApi(configApiRef); - const top = config.getOptionalNumber('azureDevOps.top') ?? DEFAULT_TOP; + const top = + config.getOptionalNumber('azureDevOps.top') ?? AZURE_DEVOPS_DEFAULT_TOP; const api = useApi(azureDevOpsApiRef); const { project, repo } = useProjectRepoFromEntity(entity); const { value, loading, error } = useAsync(() => { diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts index b654aebab7..9a90d6ed6a 100644 --- a/plugins/azure-devops/src/index.ts +++ b/plugins/azure-devops/src/index.ts @@ -13,5 +13,5 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -export { azureDevOpsPlugin, EntityAzureDevOpsContent } from './plugin'; +export { azureDevOpsPlugin, EntityAzurePipelinesContent } from './plugin'; export { isAzureDevOpsAvailable } from './components/Router'; diff --git a/plugins/azure-devops/src/plugin.ts b/plugins/azure-devops/src/plugin.ts index f37fab6d62..9ec5ebbb09 100644 --- a/plugins/azure-devops/src/plugin.ts +++ b/plugins/azure-devops/src/plugin.ts @@ -20,15 +20,10 @@ import { createApiFactory, createPlugin, createRoutableExtension, - createRouteRef, discoveryApiRef, identityApiRef, } from '@backstage/core-plugin-api'; - -export const rootRouteRef = createRouteRef({ - path: '', - title: 'AzureDevOps', -}); +import { azureDevOpsRouteRef } from './routes'; export const azureDevOpsPlugin = createPlugin({ id: 'azureDevOps', @@ -41,14 +36,14 @@ export const azureDevOpsPlugin = createPlugin({ }), ], routes: { - entityContent: rootRouteRef, + entityContent: azureDevOpsRouteRef, }, }); -export const EntityAzureDevOpsContent = azureDevOpsPlugin.provide( +export const EntityAzurePipelinesContent = azureDevOpsPlugin.provide( createRoutableExtension({ name: 'EntityAzureDevOpsContent', component: () => import('./components/Router').then(m => m.Router), - mountPoint: rootRouteRef, + mountPoint: azureDevOpsRouteRef, }), ); From 9cc89f753042c6ad47b7dba165fe8d450d90fcf7 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Thu, 7 Oct 2021 20:31:31 -0500 Subject: [PATCH 14/23] Regenerated API Report Signed-off-by: Andre Wanlin --- plugins/azure-devops/api-report.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index 11de164276..bc39fd0ce4 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -19,10 +19,10 @@ export const azureDevOpsPlugin: BackstagePlugin< {} >; -// Warning: (ae-missing-release-tag) "EntityAzureDevOpsContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "EntityAzurePipelinesContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const EntityAzureDevOpsContent: (_props: { +export const EntityAzurePipelinesContent: (_props: { entity?: Entity | undefined; }) => JSX.Element; From a9d460dd1cd3e1006dc4b9e06e3016e61b5774bf Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 08:20:49 -0500 Subject: [PATCH 15/23] Further refactoring based on feedback Signed-off-by: Andre Wanlin --- plugins/azure-devops/README.md | 6 +++--- plugins/azure-devops/package.json | 2 +- plugins/azure-devops/src/api/AzureDevOpsClient.ts | 8 ++++---- .../src/components/BuildTable/BuildTable.tsx | 9 ++++++--- .../EntityPageAzurePipelines.tsx} | 2 +- .../index.ts | 2 +- plugins/azure-devops/src/components/Router.tsx | 4 ++-- plugins/azure-devops/src/plugin.ts | 2 +- 8 files changed, 19 insertions(+), 16 deletions(-) rename plugins/azure-devops/src/components/{EntityPageAzureDevOps/EntityPageAzureDevOps.tsx => EntityPageAzurePipelines/EntityPageAzurePipelines.tsx} (94%) rename plugins/azure-devops/src/components/{EntityPageAzureDevOps => EntityPageAzurePipelines}/index.ts (89%) diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 97a415d8d0..55d5ea5f91 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -81,12 +81,12 @@ To get the frontend working you'll need to do the following two steps: yarn add @backstage/plugin-azure-devops ``` -2. Second we need to add the `EntityAzureDevOpsContent` extension to the entity page in your app: +2. Second we need to add the `EntityAzurePipelinesContent` extension to the entity page in your app: ```tsx // In packages/app/src/components/catalog/EntityPage.tsx import { - EntityAzureDevOpsContent, + EntityAzurePipelinesContent, isAzureDevOpsAvailable, } from '@backstage/plugin-azure-devops'; @@ -95,7 +95,7 @@ const cicdContent = ( // ... - + // ... diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index 16e8f35991..16008090b7 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -35,7 +35,7 @@ "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "azure-devops-node-api": "^11.0.1", - "moment": "^2.29.1", + "luxon": "^2.0.2", "react": "^16.13.1", "react-dom": "^16.13.1", "react-router": "6.0.0-beta.0", diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index 32a563f429..d82dfbe09e 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -36,15 +36,15 @@ export class AzureDevOpsClient implements AzureDevOpsApi { repoName: string, top: number, ): Promise { - return await this.get(`/repo-builds/${projectName}/${repoName}?top=${top}`); + return await this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); } private async get(path: string): Promise { - const baseUrl = await this.discoveryApi.getBaseUrl('azure-devops'); - const url = `${baseUrl}/${path}`; + const baseUrl = `${await this.discoveryApi.getBaseUrl('azure-devops')}/`; + const url = new URL(path, baseUrl); const idToken = await this.identityApi.getIdToken(); - const response = await fetch(url, { + const response = await fetch(url.toString(), { headers: idToken ? { Authorization: `Bearer ${idToken}` } : {}, }); diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index e853662fbf..7c3e09c66c 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import moment from 'moment'; +import { DateTime } from 'luxon'; import { Table, TableColumn, @@ -56,7 +56,7 @@ const columns: TableColumn[] = [ title: 'ID', field: 'id', highlight: false, - width: '80px', + width: '100px', }, { title: 'Build', @@ -99,7 +99,10 @@ const columns: TableColumn[] = [ { title: 'Date', field: 'queueTime', - render: (row: Partial) => moment(row.queueTime).fromNow(), + render: (row: Partial) => + DateTime.fromISO( + row.queueTime ? row.queueTime.toString() : new Date().toString(), + ).toRelative(), }, ]; diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx similarity index 94% rename from plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx rename to plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx index 8e102e647d..5d53df928c 100644 --- a/plugins/azure-devops/src/components/EntityPageAzureDevOps/EntityPageAzureDevOps.tsx +++ b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx @@ -25,7 +25,7 @@ type Props = { entity?: Entity; }; -export const EntityPageAzureDevOps = (_props: Props) => { +export const EntityPageAzurePipelines = (_props: Props) => { const { entity } = useEntity(); const { items, loading, error } = useRepoBuilds(entity); diff --git a/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts b/plugins/azure-devops/src/components/EntityPageAzurePipelines/index.ts similarity index 89% rename from plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts rename to plugins/azure-devops/src/components/EntityPageAzurePipelines/index.ts index 89ee4f199b..c907c61b2c 100644 --- a/plugins/azure-devops/src/components/EntityPageAzureDevOps/index.ts +++ b/plugins/azure-devops/src/components/EntityPageAzurePipelines/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; +export { EntityPageAzurePipelines } from './EntityPageAzurePipelines'; diff --git a/plugins/azure-devops/src/components/Router.tsx b/plugins/azure-devops/src/components/Router.tsx index 74cf0439f8..81b6d89a25 100644 --- a/plugins/azure-devops/src/components/Router.tsx +++ b/plugins/azure-devops/src/components/Router.tsx @@ -16,7 +16,7 @@ import React from 'react'; import { Routes, Route } from 'react-router'; import { azureDevOpsRouteRef } from '../routes'; -import { EntityPageAzureDevOps } from './EntityPageAzureDevOps'; +import { EntityPageAzurePipelines } from './EntityPageAzurePipelines'; import { AZURE_DEVOPS_ANNOTATION } from '../constants'; import { Entity } from '@backstage/catalog-model'; import { useEntity } from '@backstage/plugin-catalog-react'; @@ -41,7 +41,7 @@ export const Router = (_props: Props) => { } + element={} /> ); diff --git a/plugins/azure-devops/src/plugin.ts b/plugins/azure-devops/src/plugin.ts index 9ec5ebbb09..1cf6e680d0 100644 --- a/plugins/azure-devops/src/plugin.ts +++ b/plugins/azure-devops/src/plugin.ts @@ -42,7 +42,7 @@ export const azureDevOpsPlugin = createPlugin({ export const EntityAzurePipelinesContent = azureDevOpsPlugin.provide( createRoutableExtension({ - name: 'EntityAzureDevOpsContent', + name: 'EntityAzurePipelinesContent', component: () => import('./components/Router').then(m => m.Router), mountPoint: azureDevOpsRouteRef, }), From 0b0876b0da3e5a97e9d9ca6e2e17d0f815251e39 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 10:06:05 -0500 Subject: [PATCH 16/23] Another set of feedback improvements Signed-off-by: Andre Wanlin --- app-config.yaml | 3 +- packages/backend/src/index.ts | 2 +- .../{azuredevops.ts => azure-devops.ts} | 0 plugins/azure-devops/README.md | 39 ++++++++++--------- plugins/azure-devops/config.d.ts | 12 +++--- .../src/components/BuildTable/BuildTable.tsx | 9 ++++- .../src/hooks/useProjectRepoFromEntity.ts | 19 +++++++++ .../azure-devops/src/hooks/useRepoBuilds.ts | 3 +- 8 files changed, 58 insertions(+), 29 deletions(-) rename packages/backend/src/plugins/{azuredevops.ts => azure-devops.ts} (100%) diff --git a/app-config.yaml b/app-config.yaml index b92595df7b..645221538b 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -436,4 +436,5 @@ azureDevOps: host: dev.azure.com token: my-token organization: my-company - top: 25 + azurePipelines: + top: 25 diff --git a/packages/backend/src/index.ts b/packages/backend/src/index.ts index f25ec5a14e..b6c148dfba 100644 --- a/packages/backend/src/index.ts +++ b/packages/backend/src/index.ts @@ -38,7 +38,7 @@ import { Config } from '@backstage/config'; import healthcheck from './plugins/healthcheck'; import { metricsInit, metricsHandler } from './metrics'; import auth from './plugins/auth'; -import azureDevOps from './plugins/azuredevops'; +import azureDevOps from './plugins/azure-devops'; import catalog from './plugins/catalog'; import codeCoverage from './plugins/codecoverage'; import kubernetes from './plugins/kubernetes'; diff --git a/packages/backend/src/plugins/azuredevops.ts b/packages/backend/src/plugins/azure-devops.ts similarity index 100% rename from packages/backend/src/plugins/azuredevops.ts rename to packages/backend/src/plugins/azure-devops.ts diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 55d5ea5f91..d2ab1b6c6f 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -17,7 +17,8 @@ azureDevOps: host: dev.azure.com token: ${AZURE_TOKEN} organization: my-company - top: 50 + azurePipelines: + top: 50 ``` Configuration Details: @@ -25,7 +26,7 @@ Configuration Details: - `host` and `token` can be the same as the ones used for the `integration` section - `AZURE_TOKEN` environment variable must be set to a [Personal Access Token](https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=preview-page) with read access to both Code and Build - `organization` is your Azure DevOps Organization name or for Azure DevOps Server (on-premise) this will be your Collection name -- `top` is strictly used by the frontend to limit the number of items returned, currently only used for Builds +- `top` is strictly used by the frontend to limit the number of items returned, if not provided it defaults to 10. Currently only used for Builds ### Backend @@ -39,7 +40,7 @@ Here's how to get the backend up and running: yarn add @backstage/plugin-azure-devops-backend ``` -2. Then we will create a new file named `packages/backend/src/plugins/azuredevops.ts`, and add the +2. Then we will create a new file named `packages/backend/src/plugins/azure-devops.ts`, and add the following to it: ```ts @@ -83,23 +84,23 @@ To get the frontend working you'll need to do the following two steps: 2. Second we need to add the `EntityAzurePipelinesContent` extension to the entity page in your app: -```tsx -// In packages/app/src/components/catalog/EntityPage.tsx -import { - EntityAzurePipelinesContent, - isAzureDevOpsAvailable, -} from '@backstage/plugin-azure-devops'; + ```tsx + // In packages/app/src/components/catalog/EntityPage.tsx + import { + EntityAzurePipelinesContent, + isAzureDevOpsAvailable, + } from '@backstage/plugin-azure-devops'; -// For example in the CI/CD section -const cicdContent = ( - - // ... - - - - // ... - -``` + // For example in the CI/CD section + const cicdContent = ( + + // ... + + + + // ... + + ``` ### Entity Annotation diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts index 62b1488e49..bbd42c55a1 100644 --- a/plugins/azure-devops/config.d.ts +++ b/plugins/azure-devops/config.d.ts @@ -17,10 +17,12 @@ export interface Config { /** Configuration options for the azure-devops-backend plugin */ azureDevOps: { - /** - * The max number of items to return - applies to builds - * @visibility frontend - */ - top: number; + azurePipelines: { + /** + * The max number of items to return - applies to builds + * @visibility frontend + */ + top: number; + }; }; } diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index 7c3e09c66c..b3d239d914 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -56,11 +56,12 @@ const columns: TableColumn[] = [ title: 'ID', field: 'id', highlight: false, - width: '100px', + width: 'auto', }, { title: 'Build', field: 'title', + width: 'auto', render: (row: Partial) => ( {row.title} @@ -70,10 +71,12 @@ const columns: TableColumn[] = [ { title: 'Source', field: 'source', + width: 'auto', }, { title: 'Status', field: 'status', + width: 'auto', render: (row: Partial) => ( @@ -86,6 +89,7 @@ const columns: TableColumn[] = [ { title: 'Result', field: 'result', + width: 'auto', render: (row: Partial) => ( {getBuildResultComponent(row.result)} @@ -97,8 +101,9 @@ const columns: TableColumn[] = [ ), }, { - title: 'Date', + title: 'Age', field: 'queueTime', + width: 'auto', render: (row: Partial) => DateTime.fromISO( row.queueTime ? row.queueTime.toString() : new Date().toString(), diff --git a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts index dfbee81d62..418badc630 100644 --- a/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts +++ b/plugins/azure-devops/src/hooks/useProjectRepoFromEntity.ts @@ -24,5 +24,24 @@ export function useProjectRepoFromEntity(entity: Entity): { const [project, repo] = ( entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION] ?? '' ).split('/'); + + if (!project && !repo) { + throw new Error( + 'Value for annotation dev.azure.com/project-repo was not in the correct format: /', + ); + } + + if (!project) { + throw new Error( + 'Project Name for annotation dev.azure.com/project-repo was not found; expected format is: /', + ); + } + + if (!repo) { + throw new Error( + 'Repo Name for annotation dev.azure.com/project-repo was not found; expected format is: /', + ); + } + return { project, repo }; } diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index 1e68490ea6..0bae4b334b 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -29,7 +29,8 @@ export function useRepoBuilds(entity: Entity): { } { const config = useApi(configApiRef); const top = - config.getOptionalNumber('azureDevOps.top') ?? AZURE_DEVOPS_DEFAULT_TOP; + config.getOptionalNumber('azureDevOps.azurePipelines.top') ?? + AZURE_DEVOPS_DEFAULT_TOP; const api = useApi(azureDevOpsApiRef); const { project, repo } = useProjectRepoFromEntity(entity); const { value, loading, error } = useAsync(() => { From e290590517a7141102b4e7a4f325ceb7d871ef59 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 11:11:10 -0500 Subject: [PATCH 17/23] Applied suggested async and await changes Signed-off-by: Andre Wanlin --- packages/backend/src/plugins/azure-devops.ts | 4 ++-- plugins/azure-devops/README.md | 4 ++-- plugins/azure-devops/src/api/AzureDevOpsClient.ts | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/backend/src/plugins/azure-devops.ts b/packages/backend/src/plugins/azure-devops.ts index e11a21ba2e..4120e655ed 100644 --- a/packages/backend/src/plugins/azure-devops.ts +++ b/packages/backend/src/plugins/azure-devops.ts @@ -18,9 +18,9 @@ import { createRouter } from '@backstage/plugin-azure-devops-backend'; import { Router } from 'express'; import type { PluginEnvironment } from '../types'; -export default async function createPlugin({ +export default function createPlugin({ logger, config, }: PluginEnvironment): Promise { - return await createRouter({ logger, config }); + return createRouter({ logger, config }); } diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index d2ab1b6c6f..8b25800bb7 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -48,11 +48,11 @@ Here's how to get the backend up and running: import { Router } from 'express'; import type { PluginEnvironment } from '../types'; - export default async function createPlugin({ + export default function createPlugin({ logger, config, }: PluginEnvironment): Promise { - return await createRouter({ logger, config }); + return createRouter({ logger, config }); } ``` diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index d82dfbe09e..02cac3b9de 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -31,12 +31,12 @@ export class AzureDevOpsClient implements AzureDevOpsApi { this.identityApi = options.identityApi; } - async getRepoBuilds( + getRepoBuilds( projectName: string, repoName: string, top: number, ): Promise { - return await this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); + return this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); } private async get(path: string): Promise { @@ -53,6 +53,6 @@ export class AzureDevOpsClient implements AzureDevOpsApi { throw new AzureDevOpsClientError(response, payload); } - return await response.json(); + return response.json() as Promise; } } From 652d1ad5108dea61fe59a6acac69f8b606e30c4a Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Fri, 8 Oct 2021 14:03:16 -0500 Subject: [PATCH 18/23] Combined the Status and Result columns into a single State Signed-off-by: Andre Wanlin --- .../src/components/BuildTable/BuildTable.tsx | 100 +++++++++++++----- 1 file changed, 72 insertions(+), 28 deletions(-) diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index b3d239d914..a6cfb9bf81 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -23,6 +23,8 @@ import { StatusOK, StatusWarning, StatusAborted, + StatusRunning, + StatusPending, } from '@backstage/core-components'; import { Link, Box, Typography } from '@material-ui/core'; import Alert from '@material-ui/lab/Alert'; @@ -32,22 +34,80 @@ import { BuildStatus, } from 'azure-devops-node-api/interfaces/BuildInterfaces'; -const getBuildResultComponent = ( - result: number | undefined = BuildResult.None, -) => { +const getBuildResultComponent = (result: number | undefined) => { switch (result) { - case BuildResult.None: - return ; case BuildResult.Succeeded: - return ; + return ( + + Succeeded{' '} + + ); case BuildResult.PartiallySucceeded: - return ; + return ( + + Partially Succeeded{' '} + + ); case BuildResult.Failed: - return ; + return ( + + Failed{' '} + + ); case BuildResult.Canceled: - return ; + return ( + + Canceled{' '} + + ); + case BuildResult.None: default: - return ; + return ( + + Unknown + + ); + } +}; + +const getBuildStateComponent = ( + status: number | undefined, + result: number | undefined, +) => { + switch (status) { + case BuildStatus.InProgress: + return ( + + In Progress + + ); + case BuildStatus.Completed: + return getBuildResultComponent(result); + case BuildStatus.Cancelling: + return ( + + Cancelling + + ); + case BuildStatus.Postponed: + return ( + + Postponed + + ); + case BuildStatus.NotStarted: + return ( + + Not Started + + ); + case BuildStatus.None: + default: + return ( + + Unknown + + ); } }; @@ -74,28 +134,12 @@ const columns: TableColumn[] = [ width: 'auto', }, { - title: 'Status', - field: 'status', + title: 'State', width: 'auto', render: (row: Partial) => ( - - {BuildStatus[row.status || BuildStatus.None]} - - - ), - }, - { - title: 'Result', - field: 'result', - width: 'auto', - render: (row: Partial) => ( - - {getBuildResultComponent(row.result)} - - - {BuildResult[row.result || BuildResult.None]} + {getBuildStateComponent(row.status, row.result)} ), From 148d9d22c825ea8f841cfee9013f2969d75bdf7f Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Mon, 11 Oct 2021 16:48:10 -0500 Subject: [PATCH 19/23] More improvements Signed-off-by: Andre Wanlin --- plugins/azure-devops/README.md | 2 +- plugins/azure-devops/api-report.md | 4 +--- plugins/azure-devops/package.json | 6 +++-- .../azure-devops/src/api/AzureDevOpsApi.ts | 6 ++--- .../azure-devops/src/api/AzureDevOpsClient.ts | 19 ++++++++-------- .../src/api/AzureDevOpsClientError.ts | 21 ------------------ plugins/azure-devops/src/api/types.ts | 4 ++++ .../src/components/BuildTable/BuildTable.tsx | 22 ++++++++----------- .../EntityPageAzurePipelines.tsx | 8 +------ .../azure-devops/src/components/Router.tsx | 7 +----- .../azure-devops/src/hooks/useRepoBuilds.ts | 9 +++++--- 11 files changed, 40 insertions(+), 68 deletions(-) delete mode 100644 plugins/azure-devops/src/api/AzureDevOpsClientError.ts diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 8b25800bb7..03be6dfba2 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -32,7 +32,7 @@ Configuration Details: Here's how to get the backend up and running: -1. First we need to add the @backstage/plugin-azure-devops-backend package to your backend: +1. First we need to add the `@backstage/plugin-azure-devops-backend` package to your backend: ```sh # From the Backstage root directory diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index bc39fd0ce4..000702268e 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -22,9 +22,7 @@ export const azureDevOpsPlugin: BackstagePlugin< // Warning: (ae-missing-release-tag) "EntityAzurePipelinesContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const EntityAzurePipelinesContent: (_props: { - entity?: Entity | undefined; -}) => JSX.Element; +export const EntityAzurePipelinesContent: () => JSX.Element; // Warning: (ae-missing-release-tag) "isAzureDevOpsAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index 16008090b7..b6f7801766 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -4,6 +4,7 @@ "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", + "private": false, "publishConfig": { "access": "public", "main": "dist/index.esm.js", @@ -29,6 +30,7 @@ "@backstage/catalog-model": "^0.9.3", "@backstage/core-components": "^0.6.1", "@backstage/core-plugin-api": "^0.1.10", + "@backstage/errors": "^0.1.2", "@backstage/plugin-catalog-react": "^0.5.1", "@backstage/theme": "^0.2.10", "@material-ui/core": "^4.12.2", @@ -51,8 +53,8 @@ "@testing-library/user-event": "^13.1.8", "@types/jest": "^26.0.7", "@types/node": "^14.14.32", - "msw": "^0.29.0", - "cross-fetch": "^3.0.6" + "cross-fetch": "^3.0.6", + "msw": "^0.29.0" }, "files": [ "dist", diff --git a/plugins/azure-devops/src/api/AzureDevOpsApi.ts b/plugins/azure-devops/src/api/AzureDevOpsApi.ts index 424999441d..f0bad53b43 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsApi.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsApi.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { RepoBuild } from './types'; +import { RepoBuild, RepoBuildOptions } from './types'; import { createApiRef } from '@backstage/core-plugin-api'; export const azureDevOpsApiRef = createApiRef({ @@ -27,6 +27,6 @@ export interface AzureDevOpsApi { getRepoBuilds( projectName: string, repoName: string, - top: number, - ): Promise; + options?: RepoBuildOptions, + ): Promise<{ items: RepoBuild[] }>; } diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index 02cac3b9de..f0ed2d9951 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -15,9 +15,9 @@ */ import { AzureDevOpsApi } from './AzureDevOpsApi'; -import { RepoBuild } from './types'; +import { RepoBuild, RepoBuildOptions } from './types'; import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; -import { AzureDevOpsClientError } from './AzureDevOpsClientError'; +import { ResponseError } from '@backstage/errors'; export class AzureDevOpsClient implements AzureDevOpsApi { private readonly discoveryApi: DiscoveryApi; @@ -34,12 +34,14 @@ export class AzureDevOpsClient implements AzureDevOpsApi { getRepoBuilds( projectName: string, repoName: string, - top: number, - ): Promise { - return this.get(`repo-builds/${projectName}/${repoName}?top=${top}`); + options?: RepoBuildOptions, + ): Promise<{ items: RepoBuild[] }> { + return this.get( + `repo-builds/${projectName}/${repoName}?top=${options?.top}`, + ); } - private async get(path: string): Promise { + private async get(path: string): Promise<{ items: any }> { const baseUrl = `${await this.discoveryApi.getBaseUrl('azure-devops')}/`; const url = new URL(path, baseUrl); @@ -49,10 +51,9 @@ export class AzureDevOpsClient implements AzureDevOpsApi { }); if (!response.ok) { - const payload = await response.text(); - throw new AzureDevOpsClientError(response, payload); + throw await ResponseError.fromResponse(response); } - return response.json() as Promise; + return response.json() as Promise<{ items: any }>; } } diff --git a/plugins/azure-devops/src/api/AzureDevOpsClientError.ts b/plugins/azure-devops/src/api/AzureDevOpsClientError.ts deleted file mode 100644 index f9a2f37b41..0000000000 --- a/plugins/azure-devops/src/api/AzureDevOpsClientError.ts +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright 2021 The Backstage Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -export class AzureDevOpsClientError extends Error { - public constructor({ status, statusText }: Response, payload: string) { - super(`Request failed with ${status} ${statusText}, ${payload}`); - } -} diff --git a/plugins/azure-devops/src/api/types.ts b/plugins/azure-devops/src/api/types.ts index b3562f76c6..1fbc34231e 100644 --- a/plugins/azure-devops/src/api/types.ts +++ b/plugins/azure-devops/src/api/types.ts @@ -28,3 +28,7 @@ export type RepoBuild = { queueTime?: Date; source: string; }; + +export type RepoBuildOptions = { + top?: number; +}; diff --git a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx index a6cfb9bf81..bead424ffb 100644 --- a/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx +++ b/plugins/azure-devops/src/components/BuildTable/BuildTable.tsx @@ -17,6 +17,7 @@ import React from 'react'; import { DateTime } from 'luxon'; import { + Link, Table, TableColumn, StatusError, @@ -25,9 +26,9 @@ import { StatusAborted, StatusRunning, StatusPending, + ResponseErrorPanel, } from '@backstage/core-components'; -import { Link, Box, Typography } from '@material-ui/core'; -import Alert from '@material-ui/lab/Alert'; +import { Box, Typography } from '@material-ui/core'; import { RepoBuild } from '../../api/types'; import { BuildResult, @@ -39,25 +40,25 @@ const getBuildResultComponent = (result: number | undefined) => { case BuildResult.Succeeded: return ( - Succeeded{' '} + Succeeded ); case BuildResult.PartiallySucceeded: return ( - Partially Succeeded{' '} + Partially Succeeded ); case BuildResult.Failed: return ( - Failed{' '} + Failed ); case BuildResult.Canceled: return ( - Canceled{' '} + Canceled ); case BuildResult.None: @@ -123,9 +124,7 @@ const columns: TableColumn[] = [ field: 'title', width: 'auto', render: (row: Partial) => ( - - {row.title} - + {row.title} ), }, { @@ -165,10 +164,7 @@ export const BuildTable = ({ items, loading, error }: Props) => { if (error) { return (
- - Error encountered while fetching Azure DevOps builds.{' '} - {error.toString()} - +
); } diff --git a/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx index 5d53df928c..34c8bc4fd1 100644 --- a/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx +++ b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx @@ -14,18 +14,12 @@ * limitations under the License. */ -import { Entity } from '@backstage/catalog-model'; import { useEntity } from '@backstage/plugin-catalog-react'; import React from 'react'; import { useRepoBuilds } from '../../hooks/useRepoBuilds'; import { BuildTable } from '../BuildTable/BuildTable'; -type Props = { - /** @deprecated The entity is now grabbed from context instead */ - entity?: Entity; -}; - -export const EntityPageAzurePipelines = (_props: Props) => { +export const EntityPageAzurePipelines = () => { const { entity } = useEntity(); const { items, loading, error } = useRepoBuilds(entity); diff --git a/plugins/azure-devops/src/components/Router.tsx b/plugins/azure-devops/src/components/Router.tsx index 81b6d89a25..ce8dd3b51d 100644 --- a/plugins/azure-devops/src/components/Router.tsx +++ b/plugins/azure-devops/src/components/Router.tsx @@ -25,12 +25,7 @@ import { MissingAnnotationEmptyState } from '@backstage/core-components'; export const isAzureDevOpsAvailable = (entity: Entity) => Boolean(entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION]); -type Props = { - /** @deprecated The entity is now grabbed from context instead */ - entity?: Entity; -}; - -export const Router = (_props: Props) => { +export const Router = () => { const { entity } = useEntity(); if (!isAzureDevOpsAvailable(entity)) { diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index 0bae4b334b..8dafccb4a2 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -18,7 +18,7 @@ import { useAsync } from 'react-use'; import { Entity } from '@backstage/catalog-model'; import { useApi, configApiRef } from '@backstage/core-plugin-api'; import { azureDevOpsApiRef } from '../api'; -import { RepoBuild } from '../api/types'; +import { RepoBuild, RepoBuildOptions } from '../api/types'; import { useProjectRepoFromEntity } from './useProjectRepoFromEntity'; import { AZURE_DEVOPS_DEFAULT_TOP } from '../constants'; @@ -31,14 +31,17 @@ export function useRepoBuilds(entity: Entity): { const top = config.getOptionalNumber('azureDevOps.azurePipelines.top') ?? AZURE_DEVOPS_DEFAULT_TOP; + const options: RepoBuildOptions = { + top: top, + }; const api = useApi(azureDevOpsApiRef); const { project, repo } = useProjectRepoFromEntity(entity); const { value, loading, error } = useAsync(() => { - return api.getRepoBuilds(project, repo, top); + return api.getRepoBuilds(project, repo, options); }, [api, project, repo, entity]); return { - items: value as RepoBuild[], + items: value?.items as RepoBuild[], loading, error, }; From 0a47212b423eae9830ecb77970c8d88d24b2c5c9 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 12 Oct 2021 14:06:04 -0500 Subject: [PATCH 20/23] Another round of improvements Signed-off-by: Andre Wanlin --- app-config.yaml | 2 -- .../app/src/components/catalog/EntityPage.tsx | 2 +- plugins/azure-devops/README.md | 7 ++--- plugins/azure-devops/config.d.ts | 28 ------------------- plugins/azure-devops/package.json | 6 ++-- .../azure-devops/src/api/AzureDevOpsClient.ts | 9 +++--- .../EntityPageAzurePipelines.tsx | 8 ++++-- .../azure-devops/src/components/Router.tsx | 4 +-- .../azure-devops/src/hooks/useRepoBuilds.ts | 12 ++++---- 9 files changed, 25 insertions(+), 53 deletions(-) delete mode 100644 plugins/azure-devops/config.d.ts diff --git a/app-config.yaml b/app-config.yaml index 645221538b..c24ac1701b 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -436,5 +436,3 @@ azureDevOps: host: dev.azure.com token: my-token organization: my-company - azurePipelines: - top: 25 diff --git a/packages/app/src/components/catalog/EntityPage.tsx b/packages/app/src/components/catalog/EntityPage.tsx index 4147874e65..3fe027ddad 100644 --- a/packages/app/src/components/catalog/EntityPage.tsx +++ b/packages/app/src/components/catalog/EntityPage.tsx @@ -188,7 +188,7 @@ export const cicdContent = (
- + diff --git a/plugins/azure-devops/README.md b/plugins/azure-devops/README.md index 03be6dfba2..edf26ecfb3 100644 --- a/plugins/azure-devops/README.md +++ b/plugins/azure-devops/README.md @@ -17,8 +17,6 @@ azureDevOps: host: dev.azure.com token: ${AZURE_TOKEN} organization: my-company - azurePipelines: - top: 50 ``` Configuration Details: @@ -26,7 +24,6 @@ Configuration Details: - `host` and `token` can be the same as the ones used for the `integration` section - `AZURE_TOKEN` environment variable must be set to a [Personal Access Token](https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=preview-page) with read access to both Code and Build - `organization` is your Azure DevOps Organization name or for Azure DevOps Server (on-premise) this will be your Collection name -- `top` is strictly used by the frontend to limit the number of items returned, if not provided it defaults to 10. Currently only used for Builds ### Backend @@ -96,7 +93,9 @@ To get the frontend working you'll need to do the following two steps: // ... - + // Set defaultLimit to the max number of builds you would like to be able to see + // the default if not set is 10 + // ... diff --git a/plugins/azure-devops/config.d.ts b/plugins/azure-devops/config.d.ts deleted file mode 100644 index bbd42c55a1..0000000000 --- a/plugins/azure-devops/config.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright 2021 The Backstage Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -export interface Config { - /** Configuration options for the azure-devops-backend plugin */ - azureDevOps: { - azurePipelines: { - /** - * The max number of items to return - applies to builds - * @visibility frontend - */ - top: number; - }; - }; -} diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index b6f7801766..3aa545cc27 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -57,8 +57,6 @@ "msw": "^0.29.0" }, "files": [ - "dist", - "config.d.ts" - ], - "configSchema": "config.d.ts" + "dist" + ] } diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index f0ed2d9951..e03428e511 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -31,17 +31,18 @@ export class AzureDevOpsClient implements AzureDevOpsApi { this.identityApi = options.identityApi; } - getRepoBuilds( + async getRepoBuilds( projectName: string, repoName: string, options?: RepoBuildOptions, ): Promise<{ items: RepoBuild[] }> { - return this.get( + const items = await this.get( `repo-builds/${projectName}/${repoName}?top=${options?.top}`, ); + return { items }; } - private async get(path: string): Promise<{ items: any }> { + private async get(path: string): Promise { const baseUrl = `${await this.discoveryApi.getBaseUrl('azure-devops')}/`; const url = new URL(path, baseUrl); @@ -54,6 +55,6 @@ export class AzureDevOpsClient implements AzureDevOpsApi { throw await ResponseError.fromResponse(response); } - return response.json() as Promise<{ items: any }>; + return response.json() as Promise; } } diff --git a/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx index 34c8bc4fd1..c993922105 100644 --- a/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx +++ b/plugins/azure-devops/src/components/EntityPageAzurePipelines/EntityPageAzurePipelines.tsx @@ -19,9 +19,13 @@ import React from 'react'; import { useRepoBuilds } from '../../hooks/useRepoBuilds'; import { BuildTable } from '../BuildTable/BuildTable'; -export const EntityPageAzurePipelines = () => { +export const EntityPageAzurePipelines = ({ + defaultLimit, +}: { + defaultLimit?: number; +}) => { const { entity } = useEntity(); - const { items, loading, error } = useRepoBuilds(entity); + const { items, loading, error } = useRepoBuilds(entity, defaultLimit); return ; }; diff --git a/plugins/azure-devops/src/components/Router.tsx b/plugins/azure-devops/src/components/Router.tsx index ce8dd3b51d..3000deb5cc 100644 --- a/plugins/azure-devops/src/components/Router.tsx +++ b/plugins/azure-devops/src/components/Router.tsx @@ -25,7 +25,7 @@ import { MissingAnnotationEmptyState } from '@backstage/core-components'; export const isAzureDevOpsAvailable = (entity: Entity) => Boolean(entity.metadata.annotations?.[AZURE_DEVOPS_ANNOTATION]); -export const Router = () => { +export const Router = ({ defaultLimit }: { defaultLimit?: number }) => { const { entity } = useEntity(); if (!isAzureDevOpsAvailable(entity)) { @@ -36,7 +36,7 @@ export const Router = () => { } + element={} /> ); diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index 8dafccb4a2..5207838f04 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -16,21 +16,21 @@ import { useAsync } from 'react-use'; import { Entity } from '@backstage/catalog-model'; -import { useApi, configApiRef } from '@backstage/core-plugin-api'; +import { useApi } from '@backstage/core-plugin-api'; import { azureDevOpsApiRef } from '../api'; import { RepoBuild, RepoBuildOptions } from '../api/types'; import { useProjectRepoFromEntity } from './useProjectRepoFromEntity'; import { AZURE_DEVOPS_DEFAULT_TOP } from '../constants'; -export function useRepoBuilds(entity: Entity): { +export function useRepoBuilds( + entity: Entity, + defaultLimit?: number, +): { items: RepoBuild[]; loading: boolean; error: any; } { - const config = useApi(configApiRef); - const top = - config.getOptionalNumber('azureDevOps.azurePipelines.top') ?? - AZURE_DEVOPS_DEFAULT_TOP; + const top = defaultLimit ?? AZURE_DEVOPS_DEFAULT_TOP; const options: RepoBuildOptions = { top: top, }; From 9e86cce0851393c8be8a62b8ad5cfe918e27ed28 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 12 Oct 2021 14:09:31 -0500 Subject: [PATCH 21/23] Updated API Report Signed-off-by: Andre Wanlin --- plugins/azure-devops/api-report.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index 000702268e..fbe28c179c 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -22,7 +22,11 @@ export const azureDevOpsPlugin: BackstagePlugin< // Warning: (ae-missing-release-tag) "EntityAzurePipelinesContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const EntityAzurePipelinesContent: () => JSX.Element; +export const EntityAzurePipelinesContent: ({ + defaultLimit, +}: { + defaultLimit?: number | undefined; +}) => JSX.Element; // Warning: (ae-missing-release-tag) "isAzureDevOpsAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // From 9cfbf27f6d074dcdaf7824e35a1ae54bd374032c Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 12 Oct 2021 14:17:07 -0500 Subject: [PATCH 22/23] Updated screenshot Signed-off-by: Andre Wanlin --- .../azure-devops/docs/azure-devops-builds.png | Bin 177135 -> 177135 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/plugins/azure-devops/docs/azure-devops-builds.png b/plugins/azure-devops/docs/azure-devops-builds.png index 89a777059f67b448c961bdcd829d38ddd9eea0d5..4788a185ed7d664b179ba6fbd1aaa8453f44a793 100644 GIT binary patch delta 145883 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 z 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 z%0A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 z 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 UQ3)~G7x~Y0ykOx^vD7^N8<;gmssI20 delta 145779 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

  • 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 From 3135d711d899f986fbe4b0ddb167a84df1ade761 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 12 Oct 2021 14:23:36 -0500 Subject: [PATCH 23/23] Fixed this missed item Signed-off-by: Andre Wanlin --- plugins/azure-devops/src/hooks/useRepoBuilds.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/azure-devops/src/hooks/useRepoBuilds.ts b/plugins/azure-devops/src/hooks/useRepoBuilds.ts index 5207838f04..14a8a79428 100644 --- a/plugins/azure-devops/src/hooks/useRepoBuilds.ts +++ b/plugins/azure-devops/src/hooks/useRepoBuilds.ts @@ -26,7 +26,7 @@ export function useRepoBuilds( entity: Entity, defaultLimit?: number, ): { - items: RepoBuild[]; + items: RepoBuild[] | undefined; loading: boolean; error: any; } { @@ -41,7 +41,7 @@ export function useRepoBuilds( }, [api, project, repo, entity]); return { - items: value?.items as RepoBuild[], + items: value?.items, loading, error, };