/* Ċ Ġ* ĠTencent Ġis Ġplease d Ġto Ġsupport Ġthe Ġopen Ġsource Ġcommunity Ġby Ġmaking ĠB K - CI Ġ èĵĿ é² ¸ æĮģ ç»Ń éĽĨ æĪĲ å¹³åı° Ġavailable . Ċ Ġ* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 ĠTH L ĠA 2 9 ĠLimited , Ġa ĠTencent Ġcompany . Ġ ĠAll Ġrights Ġreserved . Ċ Ġ* Ċ Ġ* ĠB K - CI Ġ èĵĿ é² ¸ æĮģ ç»Ń éĽĨ æĪĲ å¹³åı° Ġis Ġlicensed Ġunder Ġthe ĠMIT Ġlicense . Ċ Ġ* Ċ Ġ* ĠA Ġcopy Ġof Ġthe ĠMIT ĠLicense Ġis Ġincluded Ġin Ġthis Ġfile . Ċ Ġ* Ċ Ġ* Ċ Ġ* ĠTerms Ġof Ġthe ĠMIT ĠLicense : Ċ Ġ* Ġ------------------------------------------------ --- Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ċ Ġ* Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ġto Ġuse , Ġcopy , Ċ Ġ* Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe Ċ Ġ* ĠSoftware Ġis Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT Ċ Ġ* ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN Ċ Ġ* ĠNO ĠEVENT ĠSHALL ĠTHE ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER ĠLIABILITY , Ċ Ġ* ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE Ċ Ġ* ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE ĠSOFTWARE . Ċ Ġ*/ Ċ Ċ package Ġcom . tencent . devops . environment . service Ċ Ċ import Ġcom . tencent . devops . common . api . auth . AUTH _ HEADER _ DEV OPS _ PROJECT _ ID Ċ import Ġcom . tencent . devops . common . api . pojo . OS Ċ import Ġcom . tencent . devops . common . api . util . Hash Util Ċ import Ġcom . tencent . devops . environment . service . slave . Slave Gateway Service Ċ import Ġcom . tencent . devops . model . environment . tables . records . T Environment Third party Agent Record Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ Ċ /** Ċ Ġ* Ġ èĵĿ é² ¸ ä¼ģä¸ļ çīĪ / å¼ĢæºĲ çīĪ ä¸ĵ çĶ¨ Url å®ŀçİ° Ċ Ġ*/ Ċ class ĠBlue king Agent Url ServiceImpl Ġ@ Autowired Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġslave Gateway Service : ĠSl ave Gateway Service Ċ ) Ġ: ĠAgent Url Service Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġgen Agent Install Url ( agent Record : ĠT Environment Third party Agent Record ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgw Ġ= Ġslave Gateway Service . fix Gateway ( agent Record . gateway ) ĊĠĠĠĠĠĠĠ Ġval Ġagent Hash Id Ġ= ĠHash Util . encode Long Id ( agent Record . id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġ"$ gw / ms / environment / api / external / third Party Agent /$ agent Hash Id / install " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġgen Agent Url ( agent Record : ĠT Environment Third party Agent Record ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgw Ġ= Ġslave Gateway Service . fix Gateway ( agent Record . gateway ) ĊĠĠĠĠĠĠĠ Ġval Ġagent Hash Id Ġ= ĠHash Util . encode Long Id ( agent Record . id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġ"$ gw / ms / environment / api / external / third Party Agent /$ agent Hash Id / agent " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġgen Agent Install Script ( agent Record : ĠT Environment Third party Agent Record ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinstall Url Ġ= Ġgen Agent Install Url ( agent Record ) ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( agent Record . os Ġ!= ĠOS . WINDOWS . name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" curl Ġ- H Ġ\"$ AUTH _ HEADER _ DEV OPS _ PROJECT _ ID : Ġ${ agent Record . projectId }\" Ġ$ install Url Ġ| Ġbash " ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }