From a9104a50136e485c8dda7af37106332f9010a1e8 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 11 Feb 2020 00:09:06 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- app/models/repository.rb | 6 ++ .../refactoring-entities-file-14.yml | 5 ++ .../sh-squelch-snowplow-tracker-messages.yml | 5 ++ config/initializers/snowplow_tracker.rb | 23 ++--- .../troubleshooting/group_saml_scim.md | 20 +++++ .../img/ADFS-configure-NameID.png | Bin 0 -> 22571 bytes .../img/ADFS-configure-assertions.png | Bin 0 -> 10561 bytes ...-token-signing-certificate-fingerprint.png | Bin 0 -> 49772 bytes ...e-token-signing-fingerprint-from-shell.png | Bin 0 -> 28939 bytes .../img/ADFS-saml-setup-sso-url.png | Bin 0 -> 30321 bytes doc/api/api_resources.md | 2 +- doc/api/settings.md | 2 +- lib/api/entities.rb | 80 ------------------ lib/api/entities/event.rb | 23 +++++ lib/api/entities/namespace_basic.rb | 17 ++++ lib/api/entities/project_group_link.rb | 9 ++ lib/api/entities/push_event_payload.rb | 10 +++ lib/api/entities/todo.rb | 46 ++++++++++ spec/models/repository_spec.rb | 39 +++++++++ 19 files changed, 189 insertions(+), 98 deletions(-) create mode 100644 changelogs/unreleased/refactoring-entities-file-14.yml create mode 100644 changelogs/unreleased/sh-squelch-snowplow-tracker-messages.yml create mode 100644 doc/administration/troubleshooting/img/ADFS-configure-NameID.png create mode 100644 doc/administration/troubleshooting/img/ADFS-configure-assertions.png create mode 100644 doc/administration/troubleshooting/img/ADFS-determine-token-signing-certificate-fingerprint.png create mode 100644 doc/administration/troubleshooting/img/ADFS-determine-token-signing-fingerprint-from-shell.png create mode 100644 doc/administration/troubleshooting/img/ADFS-saml-setup-sso-url.png create mode 100644 lib/api/entities/event.rb create mode 100644 lib/api/entities/namespace_basic.rb create mode 100644 lib/api/entities/project_group_link.rb create mode 100644 lib/api/entities/push_event_payload.rb create mode 100644 lib/api/entities/todo.rb diff --git a/app/models/repository.rb b/app/models/repository.rb index e04db65fa94..ae19e6b8120 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -1130,6 +1130,12 @@ class Repository true end + def create_from_bundle(bundle_path) + raw.create_from_bundle(bundle_path).tap do |result| + after_create if result + end + end + def blobs_metadata(paths, ref = 'HEAD') references = Array.wrap(paths).map { |path| [ref, path] } diff --git a/changelogs/unreleased/refactoring-entities-file-14.yml b/changelogs/unreleased/refactoring-entities-file-14.yml new file mode 100644 index 00000000000..1d6f7d59431 --- /dev/null +++ b/changelogs/unreleased/refactoring-entities-file-14.yml @@ -0,0 +1,5 @@ +--- +title: Separate 5 classes into own entities files +merge_request: 24745 +author: Rajendra Kadam +type: added diff --git a/changelogs/unreleased/sh-squelch-snowplow-tracker-messages.yml b/changelogs/unreleased/sh-squelch-snowplow-tracker-messages.yml new file mode 100644 index 00000000000..97956560c1a --- /dev/null +++ b/changelogs/unreleased/sh-squelch-snowplow-tracker-messages.yml @@ -0,0 +1,5 @@ +--- +title: Squelch Snowplow tracker log messages +merge_request: 24809 +author: +type: fixed diff --git a/config/initializers/snowplow_tracker.rb b/config/initializers/snowplow_tracker.rb index 3c730e03738..fadedc97d83 100644 --- a/config/initializers/snowplow_tracker.rb +++ b/config/initializers/snowplow_tracker.rb @@ -3,21 +3,12 @@ # Gitlab.com uses Snowplow for identifying users and events. # https://gitlab.com/gitlab-org/gitlab/issues/6329 # -# SnowplowTracker write log into STDERR +# SnowplowTracker writes logs to STDERR: # https://github.com/snowplow/snowplow-ruby-tracker/blob/39fcfa2be793f2e25e73087a9700abc93f43b5e8/lib/snowplow-tracker/emitters.rb#L23 -# `LOGGER = Logger.new(STDERR)` -# -# In puma.rb, if `stdout_redirect` specify stderr, Puma will overwrite STDERR in: -# https://github.com/puma/puma/blob/b41205f5cacbc2ad0060472bdce68ba636f42175/lib/puma/runner.rb#L134 -# `STDERR.reopen stderr, (append ? "a" : "w")` -# As a result, SnowplowTracker will log into Puma stderr, when Puma enabled. -# -# By default, SnowplowTracker uses default log formatter. -# When enable Puma, SnowplowTracker log is expected to be JSON format, as part of puma_stderr.log. -# Hence overwrite ::SnowplowTracker::LOGGER.formatter to JSON formatter - -if defined?(::Puma) && defined?(::SnowplowTracker::LOGGER) - ::SnowplowTracker::LOGGER.formatter = proc do |severity, datetime, progname, msg| - { severity: severity, timestamp: datetime.utc.iso8601(3), pid: $$, progname: progname, message: msg }.to_json << "\n" - end +if defined?(::SnowplowTracker::LOGGER) + # This squelches the output of the logger since it doesn't really + # provide useful information. + # https://github.com/snowplow/snowplow-ruby-tracker/pull/109 + # would make it possible to configure this logger directly. + ::SnowplowTracker::LOGGER.level = Logger::FATAL end diff --git a/doc/administration/troubleshooting/group_saml_scim.md b/doc/administration/troubleshooting/group_saml_scim.md index 109379f98ca..7c2733d9d63 100644 --- a/doc/administration/troubleshooting/group_saml_scim.md +++ b/doc/administration/troubleshooting/group_saml_scim.md @@ -55,3 +55,23 @@ Adding a user: SSO settings: ![OneLogin SSO settings](img/OneLogin-SSOsettings.png) + +## ADFS + +Setup SAML SSO URL: + +![ADFS Setup SAML SSO URL](img/ADFS-saml-setup-sso-url.png) + +Configure Assertions: + +![ADFS Configure Assertions](img/ADFS-configure-assertions.png) + +Configure NameID: + +![ADFS ADFS-configure-NameID](img/ADFS-configure-NameID.png) + +Determine Certificate Fingerprint: + +| Via UI | Via Shell | +|--------|-----------| +| ![ADFS Determine Token Signing Certificate Fingerprint](img/ADFS-determine-token-signing-certificate-fingerprint.png) | ![ADFS Determine Token Signing Fingerprint From Shell](img/ADFS-determine-token-signing-fingerprint-from-shell.png) | diff --git a/doc/administration/troubleshooting/img/ADFS-configure-NameID.png b/doc/administration/troubleshooting/img/ADFS-configure-NameID.png new file mode 100644 index 0000000000000000000000000000000000000000..d45e189b3abf23071b676c82250a75e131bfdd59 GIT binary patch literal 22571 zcmb@u2|Scv|37@8Z$-*CDk)2aWDil+(Q1uS_LwYD_9e+WzHL$>JK00B%Nm1GWM@Li zIp7Q@YkC@c*^aOQ0I*j} z^O6Ao{8bGAJJNPDgI7K%-UDwKW3?`wzxj~Knna~SSXfvD1qEMUvY!O5$)5vmN;3r& zKYcA><+lRoy^&Ncwz6jE{c2 zqX`v3h)6m{Daut%w#`z%9iXgGVeHh*c}Tf$F3a0)u52=c~01(R8+%=Y7`W6 z?L_zLM1W;s4LVD(fC^5yT7)TM243YzF@YoB{?PhD0%O+D~UeJwXLpspHoC|my1y}y7XMiw;5 z)I$(F_Me^}DxlFklv}CP6?vV0V|-Lt=hlj*5O`S~&C>sJ#HJ}Hw|}ujx-Oh|vt}2k zv*oa}B!*7V&s<|#?@Aq7J3_zY2HydGuV3P%UHZS=n0Nl>aCo-6%G?%?fjwU&>cCs1 z_^yQWdY7!65J|Z+(IV5tmq(*@=-ISO-PsbTv{S8><r)9f()>P`;(|{gV3_2VRAT5M#V;ehhE|yoxfQ#>!N0|`kDPojb?GAsDtOxt4HT*H5x$=v zzOqc5_YR5G=lh^Bh1OU7JE3CgpXMuF@abj4g_W*?IE^~rw_BA4kC4DKRAzdI~v*Cht#e?g!$UwCNzHZ3nuSUqXVuzF2@8QFrj!~Am za{(Z2)ztksrs=Cqs(iEmUeQF!t5wVLaUVx&RwF-(T&Uypp6<9fvg=1+YBX|Sb>@@{ z_Ev}No5uw=MT|szmec(*J>Q$pjD1*K!csYXH6#X0N*#hu|G3nmb-{2RJYUnn@;-!h>Hy}ReXFv2lPOlvL&h4AA;KZ(~Ft(3O z5Euxy#9P}32U6-aXBX7gDsxvsqzFLB|4^r>9F%#HbQrm(+5Srr6HB|X(JFrx`;_>K z_TS5&O*T&Ld(oQY<(ku_`9S4PTyM(Hmxmue)Ga{D52f$F8oLi$kU4^s*l=7Hm~QNOXK|r*QsF%^H$6;Zv7nC$Andp ze=#p>3%%%W)PMXGA|aW1Ip%$pL*J=Ee3UEN^j?L6?+5W~IG2s*K7C*Ggr^NRo_lTX zZA})!j=aHSMETA}`^p`}cj1-1ey;3BYM(tsbtF@?6L?>75{i@(D3?BPicnY3D&nf$ z%F}!iFl~KaRK&>AsmZfahy?vQ)JfExS`Gjxoe^J=Qe2k#L|16q%1={AgQ?-ev_KQ@dbA(iF z;RSB}Cu-x>Iu}!aE(aI}gX87Nr|Fh>AS@B}tE6T5*8-oks>spPUC;%UHaT(bB`q6BkB*Z7=_S}#{NA$oZ` z`@5=eU3$j*m)<-$-G!!(99w#HOUU=FoJ3@JPS6!9LM=Z}1!p?gHz6|Onv`1a0Xwmp zII9eDM5iutCw~-Snr^UZJgT=SnUhVt0CQV=IQtNfyueXJ)V}N2Tp~8BddLIIr+g7b z>ElXQwJ`jelEfa+hYowPZw;TREgaHX#|GH3rHSZuk;OLW*Y|i_Wkb&95<>-r5 znoik3hxT;#qVv7(t;s5}5Y0Tb_rq^Lgx#-ZHiu6}d=o1hAZUf9yiKn={lcL0g;3TJ zalYK{3?B!5Ro}7prj_^m26L3{r_Jv1k18*oSC!7XFN+pbes%D50Qp7%39kW4xGY@J8+ioWSe+IV#9Mxf#m_kC97l5fUkR%%_s z2FgVTOzyo%lD;6X{ib;05jPSVo7ysR)`;5DWoR*F+MBaFY!zeLX5Tk+jjAvQS|xS+ zQJQC@e?ICo&aBFc3@pvFl8NT}Pxh_Dtj(lhXUgOi_=g~aY~*=;{1ZLhy$`b@U%%2B zPLCVv;j6}P2It*VxXH%?1f`st4lP@6HZ^$|Cvb;Sipo^%|L2RCsl=t|24u{wH?M0U zFS0kU&dBD9yd8xc(ks*(d-o14Mm6et*_Kjr3#IYVyJ3YYsU-5IYBD*!1a--ig@!Vk zFQjh9kB{wj+HisuV-J(TTWSU&Zp>Va1ydz))SrY#lTm0r6a_W8o+GR|2$>4 z=g28-BlKlThU_8XDq~WtY0^T3YqfXB%F!u(Ud;VTbWND!6%lAe{&Zdm!SViOWt23y zmXR$SedQey?mV|X(2$N8K?#Uix&^NrUWw6u6wsV|`?|L#a!^?e0M0?L$Ev}B`DvS& zQA2(cJ*EXsgNKC@g${e)b6uS?F15UVVK$^pkyzsAe4w?u)@y3t?pLAJ-WJ_vGrU9I zeW5Lzj&NwBz9vrD7TTnuZpq|H#O4$0DNcE)LHt!t$C9)B4XnJq85yv$NIr zM2iSS{j&>`T>Ab{QCIBO#536+(O%NG+TbXv+|>`%hsrS^&+2s*fBqakyK3F6GhDJ8 zK^ZrX!|vLY5~Ih%X#=%7VGxg7rEi{EB~$D7udmXy=)LyVoE4rW7B$nS)^ zKP=9_z4KSjO2vY6DEMd#ojteLzKN*RkXAq8>uTrBDVz5v{3hYr2}t+n_BqkvQSl$x zj2-qN?$E{_qzgHe@-rCHF?hCOZS$&(r(EIbw|oD%+2uF3s=#h~f=ei(j}x~y0qMjI z_OxZd>P;u+lhsMwS(z)_*UUE2R4e0`RY-ABLG2pHuvKqs*wiVI1;-e<+nBISb7t06 ziiHoseHvwGpR!=f`Gx3fBP0XKL!JgPut*2s6*8nZ4AWNW3X|_gLtp97tWLI7=0m74 zg*H@hvVViYjJG7uFX9&EAuX8eG=wnNak#9ztxcPN&NYVH_3k7HKBpxTjD<6x^_>pf ze*-55QnWJcE;65t(rV8G`|a7YhasxsKQTBatd1YmCDoqzP5hwnZSUE_jNf$D&mv(I znv?pqx*)?>O_T21zkxqd8P@Y&@nm~@``+J=gY@PlE@66Uq;F)?`4hC`&o2IQ`(A%f zXi46;wd!LL7A1c8WxG1S54U(v0o1J^KMU9E3`EUec?S*zjDHIEOJWQr-zk*1L&CQw?c$t9tIHL?{AdV9UW1nC zSqC_Q!SmK_^+91)Sq<>_FEQYxw8}y@Q+So`zgPSMrgCr6Y!biAR)jm#9%1P8RH@ET zsiO8y4ZKPiE-AtUBH7SAWd6*iN#Q8y-GHC}R3fsXy{qx$u6Txdy{p21)~CQ!C_yD` z4jySHt4$kA+cKnO=N547^bn=!smevaL{+Il9TAMlcpl8W`XcTaTiSx1M6y-CNKeDGUi2$$-9 zATJh}hHr9$oD2zX^k#&c&P#LtN*EUIJY3ww-8QyMvx z&-z$}6U6xBrYNMRF|@o~dOhbO8|U?8IP^2T#74K{;-=3kxdVzPdCi@hpDJC($u*U( zdBpXRB{cn;$_I8xI`7=y_f{!2ST?OCT#3SweSyk_x0%M&z1FM4CNwA!-W-!U-Tw)KYNa4*Qc}6xSdAsu5e3`ZW=EEfwq2Wud&pRQ_=EIxf z-K#et0}5lDOX8z9LKY11Qh8L0hr#h{JFsIFZ}FsK28z+aW6-(o^#fP638sC+p?7H7yqY{m;h&fnmcChwI53 z{v8^1@2}9cBM5}Zj71=nV`6cAoxQU($NwhY4>4XHeLeo-C9n3RDTu&jHHK*cZIDwj zS`SQpsqDS%+2N^eGOW!>?Rj${W!-&9+?)Q7?-H)V?Juv(*gh9h6UgD>ASm-~Np@GU znZSZgV(c4I#HN6;Q&e<(9*G@IeWyfyA_5sJ=ew6`tfCoq%Jn1OxGt5@z3yjW?bK`x zZ#JiT59S9PDjRqbaS|z&>lZp7D|b>u=6MT7E!aI)c7FH=*^i|oZhCs!Agp;(?%Usk(@e$!tEmFU)X9SuZ_RGL>?6WkuMJEF z`ee?{EO69$i9#ub_`(#rV$ryB7ZuLphM#Uex8WWlbzL%dDMN&Rk$#t^|43c+oAGF( z%>h?0JIk9d9b|4HQW@;}A2t(=HC~E1v>?+1XZ(7G#{5rUJJHss9ZUB+Vw(l9UiYbw z7;y+Hlm)<*4Xm;uaL#Ebxxod0_{j+(Lb+2Z`b16u$LP+VZm5srSFSwA>Mq|0sh*b1O zVdLS_)vtkLwvg2URhUI}xDtZpLVMLbujf+u4Juw2PqDHAFy=PbF(1*$fA;C15X zo?W-Kmw0~~8IsV^@!%~wB=DWJT1y!cTBKWczp~K#8hHa5E)MDGS7-?Lj}Rz>WQ9i} zY)S{t94E}F6s6u;M*Vb9h$U{`oEOl65p=$6SuQ96Euuqs3sp;xhN-SK&m2IHJ)jt< z%}*djr(bmi4m(sGCbM7{$OQ)aIHl+MN8jDCtV3!YoKb{5newqmhlU^y7k!JG>TO~B zpgO*x|2N?TB5sjslum##HH#(ImmPn-TSv<+^tA(d6L z(bXP@1$9t-S|1-!8LhuL$D%{XpLun>IkTyri-=DB+06)5%A!i*={oyL!&m zdgcQ{i!9ij9kvQNdhs|V7?tOtyBgY(idPY|ai_lE-SSP5bAiH@DyY3WJ{6s4sc94* zBRvhHc&A0b%#e%2YNJ24l--eq3q?%+4ecz~O3J#dbLh&FQ*?P;DuIBmYRt!pO~rTY zzixH^;E5XEK`;G|@D^@D4vw%8|n+*nq5)v_3fBP|i>vqIIEA;&_yNmfLToD+ULc@vfyeFUVuh|@_>1q`@ zZn%!97Zo4AVLb6EPXsy6h*>8R$sOT^)CGgpF;@B3kCG5{c(1F9cP^{o)ue#K5z^Sn z-bE67Wo16q?_8aD>SixByHvk01^Zdn`+T3i@XokjnS`yZDD~D{o3Z$`Jd`^3E^)we zX|dCxkdpPqV2pUdSaKQ@w=WipZbzJ&c8`iN2&;6Kn!emsk{694x5IP@orx0D-XqWZ zy`YiH&EfKdh$iE3=bBN!m_@6=nLH~WpQ`A|l?`_J4Rh-b$cbxHFaM4Z6nh4dx?Z_o zbvaJsjY}Op8OehZtYaAP^NUOJ8z$%w-~kBn>4XYi6ymU?$>gjN?}vAW zJe;Rj_hZqo6800u?0jQV8%Tjty>FOq-3e+ud+VW@JpR&cY>nF*%J|Wy@qH@{CqO}t zS=2X$W%>Y>%E?xun0Q(S*4QH>*C30T*|_A_!ESw|TZWd133)#zD=p2!GBmfG_mo1lvx@*0A9~M3$jj$BKQ@qW4Ky7W4Tc zk&VTX7lOMm$>WPlutRU%HAnnJ&dqE%MkB%mhf_&wUnF^;*~y5>>&cgjxbS6KkkTr5 zy^*NZC2wR^KVxww`x>qVlBgxagELo&fpIc(XT30XALb$fPL$WTfmS6O^T=~u@qtV3 zg-(080`!wqmG>D2@tIjYuVk$3##Uzgg-(n3}_|f`nKTjJ`xpCJ-`p z2jg-uVtYw^Nc<_e6fP2^VF$j69iK#MVX)1uQvyEkU!94{(y5rfhG#CToY3;*6wmH} zXr1{{Wd|7|tnYb;Fj%QfBOvt_Qrj8_?SGn{lJx0`(oX1)#ai>htfK5!sO*v>pC!(n7l4_L)as@8J@ZA<3$8AbXB($q6 zQ4-U0bN6<2eCh7K&V6@7nXn>9p04#%VLA>=lEI>LA7P$PNV=m|ox7kYf1L^94Or2^ zO1b6h6z`MvJue$CkrK5AJ#iYff|PPJ5Xs~LbZ?I z7>kcXpg*ED-!NEmONZ>Ru1Q!a#E|r|{ChE^bOZjv>HMcWHuKxVx4ocYUiafOD# zWeo^5Tj7bmcTrK%`VGk@{E5O;Co785Ni$m3PoUEjbieg9I~=>XQldPI#fpYM#7HXJ zP&Ssrk!M9pGFBtPM;-@x{FfptaEs6 zijS^1WRa2vzPrFGj|!YKHDj8ju94xFDY3w+I15}kjiL* zbtQr8ZD&8?CAA6A1(?*dfa*{4EK)9lKr&E+ZxY|gBrNjCeCoAoTX^a9=nXpD^ZYef z<6s8vth~|Xk(V_QHYQ6lU|s?g2d@1il0={9wUp_%TUsaqr*;=(sY9a&=Y53**5)yW zZE+C)7z0ZCV~$uX#8vHP+tKzo(P?wU#6tfY!hJ2Z@Y8lWKDEuJDeph-UBP9lcF6~_ z7jb5Ja7Jd(nEaBSpPsYeEV^AXx360K8+v@ibHgZ$)Z2@Yn!dQuhg+wTEJX*%TB1<$ zoqgW&)Gw>nSKbNDco(iDB){_m&0x?k&TCnePvzI~KiiNr&t8CuPNP)T+(fBUYx+7q z3i&!d_Xn&*2O0wS_6kEe#fuNCf|D~WQa-q&QSprEE0+&1Xjqmly5F1^gDn!+STNup zaW`u7!_4X^F3uyGx@)ui$Gg1>6whnFJ)f0KQ0uzwA8GUbJ5Bn(u|l@~9-CNt%mS-e zIgGcgTR^vWyB3p)S5EveROc%XxK6sB7LzEJ)4-A z#ar#{^8oo^bD*YabhIz<$CQQ+;VR7gRvXNe+@MqFWWaR_^I(z%Zd!b0r<~jU`#0Nq zdwYr1@6Ex{3p4B~gSki1#%kn?+5|ZWnM?mP!^tc~)?oysxi1>CH?$C9B6)MBlfF3G zgI$1rIws;ht8IH#Q%(&owxu7Pf8g@+0L>pU^uL%Fk|)a^P-&L)s2=WeFF z{tE!MTx-MWBylDeFUs5H@v$bl$6Igw7HzrC(5{CmdL*IbG`mrL z5mTuG({MzygG67;YEuCp(sgKrVd z;q}k^`$2YYIoTkbDcrWgd7ptKK@e@eXPYo`u{gZoGQo6h*yDSQhK2@T{n|u~{E*Sm z$i&^o0&oR%p#ZUb>YJjGJcT-(`0j&XHHUF^jx#9o#%>RuJFcX{cV?EAjq8(YGv<-p zl}0@vR)0TpGL`$r{0{R8;y0rZio%?X-s>7hKvZR55!C4dd zl*dIBt$f7z9Z#19LuB=DY0uR&G=ec%FFlfBm>XTXxB9cg=~s8WUo!Cu2zc)Y`%wux z^e4c9{nw3QUZ93{bl*t99&p^c436G0M8>0}fB6|&ZO-i}ln?`rkg8Gue*ikQv}=qx ziXX75qwrb0&yJ4`-&9^zt=9H2E(A+KTPn+XngzRm@C;a}VMzbau!d&A=gs*2R03uu z_D|G$`HgZ4c-rc`yVWQBJp}`bi_ryaJ1)Pj*o{3I=b|Na?veLjZYfLpjfQL`syT3TV+~wbO|JtK@(_xi}|bUK;x%2(KJIdEH{ZZ5H|)oCaAy?#0t zTp3t!^h4nNvVJ)++J(ZO;s~txmU64xxQu+2uYT*}%%#C6#HB*a&uk|jin(v=o|9cMQ<&of91F1e^N~F){gYJICWcxzq4+3*ut#AM4+~5L@#R;eK>tf1dnm z07sYtPU#tz{7Sgl**}@&`fxDvp8YksYy;7KCgBtPiqV8SKDBzN%|R$_5!e^ z4GVX&jB|U%kIy*PluWt0=})l{>#N4jsS6LU*C8^NWL*6ETElhUCbK3uMiUAE!0vW8 zO-Dg|mf4WJy9sOBdzxD-tqLUtq6S)KtcNhJ6I^FL!LdtDm?KQT0SV|*`6z4pf4#Za zu3@XoyoBQ(*!>#>d*93^7=7wSK zkD|>{l!HpQE%o$4=XwABeV2AGTf@J8YB2#1XHpBQ-2W6-%PCyDaYKIzVRv4K0PZsD;Oa}coAg=ELK@R|=1_ND!KnQM& zQ4;XOfV#_4c(tlDqMvn3z3;Q0jr_NQvVJ?Cg$J3?Q|}jXzb+oV|s^gO(nHvk(M!(W!q$xEyKce zIL_$3A3k611mbUA5mZ-RsH=~BU0}(;CmtKZf}xICi*Muni{qabPACPQxNd+tSY}T; zBJQ5-K#G{eg^uj`daEhZMW5xDvE>Z9#Ce=rI5(USX9~}}vxI+i>dR{rQ$e+%MJ}cD zJF{a~EQ5B+om`jSGQq&t+=qSPgzOi0CH~=@5-j8_TI;qm5{9U)oO(65=XCiV(?}xG zn(sHYcOmxa-o3f{m5P;jN-Qs)XqCOU=dqVo6XvhGk~SxdA8kRR-m69S+tTEME~?8P zGePXd=hgA|c9GU2&)oZwBjsLw93I%b4mQxrCn4ZFYq=8$kNbEf8_a){kA@)=%mx5E}}=$=adXLqw1 z=y3l7+*a|3#ZjirJIy@1e)_1~{Gkf4r3D2^y$0EsmCu}(fA=Vx<-yxk66*KQ&%SdI z1*}<_+HwzQsx$p{4H&y{@L?_QodrZwjsMwFbjs@Hk7~PIP8ZBYA8V6msO^J*E>wx0!f_XY0+>IWGVM$>Ko|E~S$q|5@4)?Hz)7-qnK?Z@Wc zEq4~0(FH@=coy-8#pI`_V_$~K`1nl(6YIlal(ZK?!+dbCy_@xvu;Mj6Fz=5cJ zU1Gf_9NS}BYH9+>)k~~^v9Yma5KMZ^Vk$$_?lar&i4IOuGF1ZvaUN@5xE zZXj`CW=w3eBO)8}&ul?QRhRejecw1-Z>l;~+Dbe{#m9r>Ph7i)@Mh8Hmh3i%{f z@yQaiR4U2u)f`%*WO`~dKdJuh&-+ig64Odo!O$+YH`O5&dRD0_a&fDZiD~tYv_NQ+ zvc7sps^SeXFGX~f`yYV`@U^Pl#=){FhtoB7ZiI!iw!3b&>l%+7#V%>$1z^5D-+$GcO*qiCl7I-eOb`en#TnQzwDL zaupZ)Y<=C>!u(z3?4iQZb)ATf~Y%> zZ^M3ZuyiL-Ix;d+hWX`lzNVrQ$OU%FK4RpZ%2eoMkxa=V+U>3`%}A4 zErV`Ef9u{gdQ`+{K}L)hMmb^1o>1buk_f8J;YCM@%B*-4;ponk6H`f(;tz~?0$yOa zxVgETk#IOX5Tm&0Ptz|jkpI2@rW>p}n`BS%$(-2br1avbi4Dq)n`0Gnbqx{OU1J1W z-7Y|Wga?Ud%_~;FeM6~n`9$gItj!z-j9$yMKKT7)e1vw( z7-b`{9jn^B<{i0|4XY;Vd5|Q0J`W}m^}oR!w4&Bgw@X5E+7+2he3~v5?)dGl%4<1< zo4L()a`KYTG`_8KIs9EK08Nf%MVOIu&`~m4wSHIT7YbQ{1Yy%U^fqnh&L+dJD^x7| z`#7>ESqhmN$#4XPYE}G>Nb38SuOt)~mX6{SKYkJ#7RmRLCi?*I?R9Z+;^()~d}0o7 zM9sONlZyn@Rc(GLX&XI)`m_BLpa1E*t|%SEZi7IOMRiqG$p3(E!;i09;5e7aI2-i8 zYJs@D!1n}>Kz#O20P}eOwqf|&@dM*3q)8;g75E9k1d!%dR>SpS!*v3wDun!hemiAv z_ke)Wu^Alh!PCuK4=$%@kp~u$?AvBM$ms&E@MO%fxoawUB#Zu7@dzKEpFWdMQeb}W zBvR`teCIZf>aUI2`YM45?{AcPC)@fVguR;X&xB%R0-Z*$#aB@!o+=Iyx{~!UJ%L27 zS*ozpm$Qg2Ki!gFX8hLlFskg}AGjrIMRn{CMH@BUkR&ViZgdbrYh~6)?Kas0KT%fg z+UNA;n~RRr-qOPTf#@V9CK=d_ZqB#qq@xpH0{wVI3*@s^tEqZ7c5p&Z1eK>0}ZvF+J z+!}AIthtq&JRx4?(OFLG9Tq^jg20TY=#|t`?g#YRrFb$w^A8)&IZ)Dmi|UEX*26K~AtbzXz~6X^OO3maFj z-jw-a+~?7O(co8qVa+&h9kzX1F?;}_3thiU*w2VcU{pzN5rKvXT6uiw~z3{cS9 zQqn(7_Xub&8{zjJ6cZ14@BPJRhMoIQ?RWvBztmBnSO)~=J(eIUzBLMYq!_=2O5kT| zs+to3tTB8fjmK2d^kdK(lQyJLXTCcy^!1PUh#o*}8O%>(S6n|(tuna2HZxiFmL}6eZd-JFs^5V z;ULWx@;9ecHIED;ccGemz!S}i*({3#p0pr0AC#R$(GRjhzmjN@Dl!uEr)BgYvP>t4 z%T6Kj^1k4PmhQU;6ccnk)<}fah=C$#_~HY2M6zD?qiOU@#cClSh;gpt0c(AnH1q_t z=HY&ym5DDcfd~N~Fg{FLT^@zEJbwJRB{?~{1@4WxlA`35%N)zI-S2j7(olKFr`xanoLyY_ZTO<(?7I$Jfdmk5N=AMh`fMoKdoVUU2{ByNm4penOWB)D zdV94+avjGef^$5#J*0ZzE|LCIt(L9#m0r;z#Hl>vB9ED-rYlpAcX4>wDeA7qJJV40<#Rj43^qg z^|$u-8x?wCiR%l*CC;?;W$A)-Bj7jtfX~h00)o;O)zRjbb^fOD0vUr+A+^}uOZg%O zmVGDC-vlI6Kg_t#yCS>a*oz9-*LlBb^XtUlT~F1wvP<4{rj*&Nq15cUOv&rvxtE{H zYg;S-K@9x!YgA{p6J;)_a2Z%loZ{Q5%$QGg0Shs zdtVAD67hrp-Fn#5q^Gtik<-hs#q{xs1nAt37+Y@JsozzJ55EKFerr|97g1- z*qtx5=qZM9$|bsrhBjfiSb(o|3k8UvPCWx0faJR@pHk7vznv*7J zK8eWn4Ww2H5YQAiD@G9qEc55v^en8)ntpekPWo=iDlRS_p>bJo{gUcGH7M*U;5Pl` zy&wg0=NO;*_n0gn0H%LXJ@46}6BiEjm&} z32=dc23j-XfTrQcqkme;0Psk`RQ66LpuUD@g7YC8Fup+BtpRA~?U%)2h!c zZf8cLc%kpp9~uR8UEugd+piIzbTNacGsoA~%F17Ud0W0~*RBFpH8uV)%a3m9&D*f|dL_uGLp_Uh9+fR3xi4_{awE&y>^%F>B5gV)xM4v8BVvfG4(g_*$-2-Hw8 zhd>36Lf$MOFP0+hZh$3Sn!BU7IB}n~+3Sv&kt(?*nX&58}{fnp4ONr8OcoB+?Tejxw|w9_qNwLf>ZJV zEvjamE*R#4rBskmu>CpHnb;2+I-iP~2mPlnBG1M*S_n;apPT8O$qyGTygSQt<)rbq zrYZaPMKb(+aF^OHxrc4*=$_~l<7=E_5^^ORnkq*&6IXa%*kE0oa&GP4mhkKXm{b>7 zn49NiUzV+Ub`wS!Y25gMo{v9f?)+B7<}k|Y)zdZ|FS`Lt>dhTb4ZUCMJ5Qmsx$M9o z?FwWp_tUHB7=&$o#&n*Y_K3Q^dW8-5vx+^&`Ao5n*G2B2OI)5M*B7Q5+()mYz zHN{wB(W~ctOV_t4xg%FQtQ%Jd>^fN$pARCBY_HpGp}(MC%@5}^c)!)nDA8)Ych@?* zPHn|R-@?yZSe__fy-c0XUy1>8Q+-!rVqyX4?VOj!#w;BxD=Y0Yo<&GQ>ztOly1Llx zn269ym@`*Zr4jdo(^bT!R3hT6y^xJTQq{S4556eH^^9pnn#)!q3lN@c;&cwZxQ_KI8GFEUDr+3~W9pJzY52G-bD(Mm@6m%@k@u7EAU% z%%fk9)7-7mSND{vqZ8p1^EBg8)p>`d95!3P(pk{mqyUyiB+ zA915^%U_}_6VFSdcq!-F2|pH=`qf|+ujyvK*qgOjb~E0|*?F&IzS#>Qwkl9}f1P}^ zU{()~W=fHMAj$MgY5nQY`>o%k5+-1k;Qw7qNckl1)y3xJR}8Ix%-&`E{4L=wBcLSp7s1jlfra2BVzT_@}y5kVH5GW zB(H|<&t|}F-`|mVkbl@Q2OFi#m`@CDyR57~1WGS{*B=RBrH{P(VV^?APtS#74g{Vc~EG?)E*}m8UXK zOF46*=KGXGwFD%SVlZ1{F-+kGJpw=WX$;JazgKN#YYeFb710M`M1&!Xr$;oK|4lVgQFx3&$xcb*q7#R zNZ}bTJTMzg#~fG?d@ZAOQh8^4SgS49l^M}~(>9kKgq5d;BGGvcFTCHCN5K$U6m&<@ zXy!b-Mnn8qA1>a988q7}D3X2MtAr8H9Sj`-M>=M=BiDYts5Gs3Kr352SMklGb0WR^ zy_v#YxyuXJx$RS)5d*{n&6IAIdm#5SN|8b92*Ln0g-P8?BV5bqAUeA0IT}LbZ`7`7bZ0!HBp$Txim2|R5JvHG09(k;yoHL#tvvbOe=Ua!={)G*sadd{ zZ4D3C&}c&YiDA9-1J_p)HX-m_V&6qrup<-0CyaNV1M=b=pOXnP}tcna6tgY>9~dLJs&_NR#|*A61-&39lw)xAZW*VS@Q@;o=FI@{?fKr09wFz%6>a>z(d&C zb_6QO|BAelpCT8WVd&n~FNgKC>a$82O73``_Z}v;a~&+dGghmb53TaZBCm3LQyh#~ z0L`>U$~iky{d!ly=yr^~At?S|j2{Ef!v8%+;CwKvS;u!0c7Jdv(&oZ6pHW=y@mt*6 z)@63QHAHD?=(?u`Y9!L*YXgE)T z9ErDCr0}Sact~u4|7(-WKSVQ)ucvzYrznMl6Z|ca&~K>R8^*a-Y};W%kpD#5x^%Kj zOSV}PI+QKu09a~1QDkW-V}7RWMxX4y^;(5zD>5<>5Hn=@n5l;;d7%BCg{dV)gVG!*NhDzUf zG;nz$YxzAEe{E+WSig*Xiq}fY8;WTNsbgKcx^pD`GtP5j_Qe*+K=16Ap-Tk+01m^5 z(b{Vdqx8OO*bpckEgc&xgebYV0i%WoS$Zav?KBy_Do`!1OvE_xd zDl3E>*_I`6TY{A{tZ7O!(6%<^V4V%u`>jxjR&0INsIiDlJ=ko2rKv`%E`?Yp*6NT! zIoJ=%lM!=(4+VMjSds32fZ)D03={C~t)3=J$+ z+XOdoK&L)63l=zxGe0{BuP>auLgV(646i@T6WL+pp!Qp-n0BBF31}* zR*nN5MnUcUIRjc`Z|*nU7Gu=`9`bd>9>SfcOO_tWb`+PF%eRM!MzRVWVRJM_m-U;s#IUOxBgnl@pe6nF@?!Ol@h>mA z3u?h?i<4G^rHFp28lP6&fgoyd&HH`ZfFAEmJX=ufPry3)Eah80i~J0}OIyeB_?#U< zaluA*)2J~OnHIT{@uT{wk`D5%Y@IJhgRh({UNTHTfPf8$sd^x9^d0I?6o4YAD|acD z!jRO~jLCV#=(@g5o&7qj)VlKvDu1fiHI~wu%lvy!cKnZQG9*M7=FxF%-MEbypJe49 ztjz{1lIr7;kMa9RGMm>Ib1x`69XKm`YNT&sW6@qv#&c98+ixD9xslj2EjNBvoMT)3 zAnz-2eR;+OwZ7}~PCU)c%>}C7%ePis5!c1iuNlXeTAEvTeKz$X7sYF)9dOva8vP|y zy)Kt{a3M8;NS^a)wwB5$!%?U)r#fySSOQBO5T?J40x(kTl~;~TQ8ibvkWK2dGa=u) zc)Xz}Pk~ce^!~$%b;OgRIz4=LVDmee{=9d+>!DvD0*wlvlZ#8m18?ujaLYc!&B+UHW+`fW;KMBgA0oEwK z4<(*;-KU)L%6AR0&##QQ}~!uV~5whUeq3K{!i`X5s05<3)}@ z&gC7zjx=U%w~?420|_AOsls39(*fr3wB2|2m9Yh-9pLpn@}wu$;3oJ&tc3dcRPm&` z;Z>hG|Kve3`BLoQK*Aut#F(;)kF@{`LNAeOgklOvg_dk8j)9!ut83aMek`~*PoMktDP@-N)X$$C%EfBlCPXb7-VHYq z{C5iht8_PPgTprVo$QP&J)`XMB)qYxN41XMwd*U@Y(kDpQQyCCNd84QxY8{ugCtgB zFHsDMzET`8$rZ=TWs}2#0ch})-_`@iUh?VA$A@)YMyVZJvA94?lo0H&ynqlamfHht z*Q3}vkQKXm<1Gd;tC;_mA+ z9CRu-yGo@DZ+578%GFJZeE<*U5Vkl80I!~vHN8mK^{;c#0`ed}RRsZ`%RdKwRb=aU zdUvB55|Lk5=9TP@{d7LpSt{7!>3@<7vjaHESoG~v0Ps(kx@KCyweVfl{GAa$6(^e~ zi}Lt*s;vEWi-#lSkbH7HJiUG*;F%FRH-U>xz;kb{&v3nO_9EY-6DSFSona3;gs6Ie zI-CxEuuZe6d`a5b2)?4@Z~uDc9Pk=NXEANgc#QWO+cA5O=0;s+^}ydfzVe1FvT)wL zC^TYTYeeE#IwG?ohetUZH`_k(ahVZPiHeW`PERr@a2-XV27*N}$=^`T$U12mXszG1 zprsPaq6N&f2LXJS#B)TH1w5$&p@_+xO$AS{Qn9Q0&h)7mT3TN-Nmp6gYq!O!@YpSw z{TGUS`WBVwM}y0FIYT1PDmnJC(e#;t)c<0Le}Py~NE6)_up?8{Bxys{RM25v|8wd8 ztpEGhhZ*1{o4_;_=s2HBYb zE~hZv_FoB7dK8uyN7jQq3JJ-E#Q#6G*vY&F<{t)zW02_=4BeQ8B9bE@Q=CM&A6I_C z;oTcz$o@KV8>yTH>tN^xg=7PcvXlrvkQE8QoF=U^{WQ>OgYf!3$T^R|{1CDJIxBG5 z9jGhKzyL`+kPwm9d6%d6+CLMN)*x|X@J4?Awf4n(jr2fji7sIzfRUE?{Q2|N-1x2h z`~EC6Fuz~>?@0B{>YG}>|E~cjgaav{#5-s1T+wF_9z9z0<=3yp`+UjaQ)P#;o3O1RAKUNKoVB=RchWY>8Wb7uXS|_4?jMy^kNmY${XL?QZ{* zD@xl`d+im(gCJ5s?5By*|5rcPRR3O6dgpE$BP88}$Oo6x942!>$}JFiL0j^rwE3%< zw;#XV{C4h^h9#%XZUI#H$ zsUGxm{Ie_HqWHn(XMP`FA6vH~{(|AY`hROrJhA3zH0|2XFC=ig^2n<eynV)MxX5^oj2NzMdsaeLpxegQ};7^Pg|8R=*Q!`}tY*iP^%-?Ei zTLQqqP~s!B?vjlB$2o6jyqL)1ll<>&;Hx@%iT|N8Hx)tlCJd{{NT z%^-lk)aKaxHYuL_l2zQypYXXy>t4l%4JW5-60-BYTE#2ZBQ+(7=X7iKfNY_V?J{87=Dp8^^FZ zYv%Gj;EW0_Z?2To+TF4OC4EQ|_;H_z92|1m<|(*@f~2q<;OQivFJ1%XDM;JkKs=7} zr$MCE?|pt{z14nTyN}_(R^Yfs<^CtJV9zJKFFW~kHDuEVM(KiFt~hKx6C8(RSyuFP!G6x0almPFh~fkyV~`!*c2q@>FVdQ&MBb@0A%U2 A&j0`b literal 0 HcmV?d00001 diff --git a/doc/administration/troubleshooting/img/ADFS-configure-assertions.png b/doc/administration/troubleshooting/img/ADFS-configure-assertions.png new file mode 100644 index 0000000000000000000000000000000000000000..53c26ad0be16ed64570520acd56ec699d3986521 GIT binary patch literal 10561 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 z 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 literal 0 HcmV?d00001 diff --git a/doc/administration/troubleshooting/img/ADFS-saml-setup-sso-url.png b/doc/administration/troubleshooting/img/ADFS-saml-setup-sso-url.png new file mode 100644 index 0000000000000000000000000000000000000000..a837f1b19cce1360ba0b21d027d4791e108d86f0 GIT binary patch literal 30321 zcmcG$2Rxho`#+jKPxo$h(W0$QQMA+u9Y#?!X4PuZs-lX962#MG)uyUQT3ZygXOilm zW{O1Yv^7#8NhKnZNOFSe^ZlLw_?`bbuaj3_#yzgj^|{9TdSBOlYxGrfqg~rYwgUiw zUB;L7EdhW{^#H)e*IWM*9I5GQ&;S4e&l&4quzt8kW5v^BJjK`{#6R z#P+7ohzKNve|CIOS+h{yC9B$RR@wmRTz>XI8{Ge1Bfe}Tk00138kDDuT5{Ezu~sWI z5~~clu4n+t(?lEcAf4jE^vJs#p&wrISpXcmP!<~c{Jzq27H4XoUUgd79EfWgb;*Y7 z2Fx?nwt*-$kPpokT3t~w7|u6MKcQ3J{4*!kQUoC#yiK4oU~>~l71O*UZ{=ro6A@9t zw}{&{C$2BiI94k^!yx4u6rJuoPp}ia9q*YLK&=I-vNs4$@fJ1QcUq65P5%4F`{ns8+)jh0lZ4 zO$uh%){XY*AN$!6;WKvV1q&*v*_(~qX_`+6SFzLjHnMw$14m`YYg}r3&}Uy@8Y^wE z;;=K;L%Udnp3CDrLR+VcxVnkp7(l)WR7sK1&KK%#@*Hk-iha;Aol>aQ9AeDATYlY9 zeXMat*yoVR9xB+E&2aF|Bj7R%g)r*36k|@V*g#~&*_h?^VNJ8o8YZs}hV?hW(Q?51 zDf9h%#zmB~@3%Phe;(J;cKVr~(LX>Q$@6LBXgS@@hV;vn%_i1z{SvCjHU=M!h-q+5 zYVY$*cTscVeKPI;j-$6x`!a3eGEP*sQQ!RSEJe{u3>^?!UPthR9qAQ*L*nU+da31UA9-h?j!pb?=`xwnXteTo1$fvct*M;OxQRN`3EKCK zHx~FV`;SVkm~7&Mp)rBi-RA*$V8YRDJRiauRVZ{of^Q86vcY{nV!isuov!CIc!a__ zrz(gRN0Qv1?!rn#LL!p##y*^L20D+ldN>O*VhjHE{nfNk$JYjVuwg^QkH)alJoYT* zLH8uz)IS+JU~Y%@1uy7o62Hu}pF5hXzWMfn?@M=5r+-BkF+;y;ZUVe6^PuJAwI<1+ z-v{iixw&nt>7%aeHK<4;CPW_hs^ZgCXARGZ_NG_;a=A`Dn)@)aIHM9w?av%9$Be)G z%Iu#hFka29=o}Hqg^2S%+=rL)wV9d_{Cb^VyJw<09)Q`8AZ0>Bo4<$}U!-Tr64?0OqVAKF zxBCDQ%yad_m*B6JHk00bi{1~vHxYK}I^5iqU&0YOgRr=C=w@DO-t)8|rD*m^ zvi5aWWtqbG*hhS+RTa3JinHq~5Si&&w$6EO!7d01m~*&OI{Y%%I)iKwem$(icbuce zEg@fKqZi9>1w5_R)(d9Pt9L7QXLJyPI?Ka<+LbNssN_TWUG|9A3XMj-QRSpBqpU{D zil#Vp3eSsHr$McOdO`ai=mB2$bV!f=Y$TdoPF;0ZMD%n0_U8vRqC+OVMsjv%)9FQZ z*q3MhsM(^; zTb|g;5sD!lKlPo4g!JHc7TZfLP-UF713xDlr$+yg4SH>Xj|ska(PBzCk@ln$_CUy`fg3MW7-l?VVJ#pt)kl$1uXtHvO? zusOaNHhTx^U`@k4^L?9{`a^sa14Q7E!$4cuF<*~~#<8E3&&6n|>fE1>m(0B+NUL%B zJ=##Ec@R?OQNj19>?0+e(W;`+=6MXcnev&cw5PhBBT*yPxC=i+ycc25BY4X~oS}J)VTf@OVL*KCt)3*5#aB+jj^5$7@{#8`f6lsmpmqL=@?T(`v4k%6k|Qzlz0m?Q_8}V6QNQ5&-(AApaaj;!co`MUwx<(tbjy2lj2V zg^{xZ{>>ORsEg_lu9tT9=U-%lqdJ_|H8l+H$KZC&S`Rzy$EMm~`8G(?l5f??TWvbs zlDboE1a~6ln^3T-(*{6<{%Vy5oCofgs-!J=j&yT2=Y%uII5}d%ywQiqX-ZL?kWB9G z1ofP74n8vnCUR8M%_w=QDifq^j}r&eErJeByf_GmV0SmkVRkH?N@n*~$+=nTT72@j zTOaC54HfCENS!I7va3pW((*S0deo-QfV-g`39wxN!2Z>`005+@fck!V={tpI8-S>l(`6t&D_t1GpT}Dm zj#W=w#-@jQ8e#t~+#LJW+mOYbMirqsgfvm(va0ZK>@8EGzNlChND#XE?XjaXAH!xf z6ME+k-r9@pZz;U~@X$w#4{7^;O+Gb8YmdoXlo??=lU}`cf9-=qD{LZ418Q}K~a(% zZXu;UZRb#eh2T~xc5f>eMs}KL21iN&0KcIHfRzL#pNTo`*1J$-=kOqX{`zygGJn1V zWY?o7X2W}T>p01vvo*%gE>JSK4Z=IZ;KJD!`(EtUZ(#P9*)41byvIBdfHiBTy7EY) zi_Cjn7ekL;rJz0Y_YSkY$o+&ax>c%5J6AcJMk30Irr2GQ+iWpVpJ?|@&l6?r!D7z_ zq_y=LHOX>d3h!kOBfGU7H(Bz=kC1XWG8UTg_&)ji*GuD%gqzOJy}*q?T5hG`%9oL zk<|O1GknrU;2WY*s(WuCTCE4E#`QXQy&|jOYZ~Qi5J=3(Gn-PH*|btzFx?6TL{H5v zc{Y79Ed3)8!h#$yD=0S&-#@KkYiDiN-c(AxM=hk3pNss`f9%KXgm12s3XE(SbTF6O zAzaa?B#*PY(cwN*`UUeEXJwKv2)*_2yK^S9`{Ya0^1$vQd~lmx3}xv@m97|LI-w!h zI{5vr0evLlBkKB-k8TenGv)vQEnj?eo$6n}*WtoiIJ_qRNdZi>!(R5**Ouzt0Khrg z6YYa3pRxF`fAozN*9vV&>htU)aU_xcExGC(^WG%)zP|vnZAp;33+G>j>xQX6WY2rzz)_f8fCoWMO$~BFt;$U;!29-d^5R*Tc04Xo=M;7%R(#qMy+y+eNs(LO-EOL_v0F_rpo(M|CuGtjLlnZk6(XKC!x~+U7_lU!Om=vsz4AyQHjgr;$pZv1G znj5N$6I_dD)ZwrCI`|j-Oh(j}{uM8-=iH~qn@><943KCBkX>LPxIIL9(&rUE!&jRy z5bV;?;L64L{o?Mve~3;NdrpiyTkU)B81$V@WYZ~GaZ$b`Uvbei9e;YM0V`GGhIYHw zi9584dEZJkzg>diJ!h6YzSmFW3TG>DyC4Y%VHr5YYRS)QW^C6^9K239Jw1MqiOx^n#9 z;yT)-dnw}3VaB%@AMssDn=W7t(auq)X#cf-(1skhm`(gG_Nd=Xb;h-s0YDi2-~LWgR43P(n*oO@93}3W_IuN_yZeAJRPEErTPnDcNPrsRG zj=sr>DeQYnYJsNF13 zMOaDm6_KY&1V7QcVjjm#!w-kV5!HMYZB5sJY5UwLcKGC;;GZ}tB!w$JQXNdi)r|sX z{eOIlPNq;OJfq#|`0Ie5niGFNx4u(DejB%`oYP~lW;(l85h=j=La-3vczC}Vs&VhX z$n(8}4miH(6M7wi&G6myKjQQ|!)@QXmuG6Ndh#l!LrMxn*zk#|dcrLqkhl-04xFLo zu?Yz*%BT<8)JlyD!5877T%%+vkbsxxpy#_YdUys;*1j4EH46rGiLwy#2RZFK>n&c33Tc{F{FetTtN`#x}IEprP1u$EW%ZyBY|HM?5P zA?qe;!NC!&8V#wcH-Y_iJH}_Mj6A9ZP@^C(<6F~wxTYFh@$GU5vvo1I)T^ibO2T4k zKysCNPsNv!qWQUL-8#5|jsFE!bK8ro<*>cT5tX8Vx3D3U4T?GWis+G)aAL<|<+oCs z7EvtnaChj)_aMb1ZI6;p9GQB=JM{dYKdQdxSo|t#%0@t(UHXj1XvI=Kb`Ynnkm)7J9tWRgg)DLY67d{Qc3)l6;NEqtDF7S89!46ySUAM-b?9@+*0ky) z@MpY@6R1syygd!Lv4Z501OX${ET)arDZ*!cA8Xx=Q%LI~?)l}?7DhN((O8JOAUx1Z zv0-J1m<*%gle0VCx@Wax?uE{!1rPKK9o6{%|C{^1YX;=Z-=`DuqODN zG;s!FW=#cCE@060*hvcCr4OwgHg9Q+=12BRA$dIN&}8MER4wQQ)+X?D+crRyrpVMB zO+)#P+53lHI~}3x)pI3bpmB#-SB-s_dXAc~v*~)Qgo9U1PPJRBo)-GM^2P{hAk5hgxZOLe&56PkIJO1SJ#Gu$mGP zb=^?(^tXP6cK%3}Z-XC{a+BVS?nL!)?x|2%!|t`Q6k?U%48#{&9tK^s`%86|-?^s( zmZyY1@aC}F?uxltQXK2bS>%au_#%j@Sm)6(byH8TJ9uK#pNmfu^LpwxvW{P9@Y@0q z+${Kfk=;-Pv%OF3@(s5z*=xryOXLOb<>>n6)F0YxQFAW1+1@2=AupNcY};SxRqC>% zT^6do=W)i>9ysrn{&=Je8WLFkdNTFw!ag9`39TL&mhJHl4OW>ZM|%u&o#LiHrlk_KK&ID-ky!W5lSlPZ_-4OS}%?&c&pJ%^0T zaJ9&7Iq+@Y>)2kXkw}Atd^VdCMdR%>VFSqv^zY&X!tmmO4sLA%lHdK;+6saVjUU$| zaGY8^Z?akwo1Zxk)uJ$4WZG3qinA2k34ALZ1$XqJW(N`{Y*25XL?>;~sG5(QogFP2 z(OFWQB~SboBv3W$sZxN3b8oFe%UzM`ZmqC+XFFtR@l`Cr@ByCcfO4@P**DsTqKcni z>vf;+k7yb4?ft-OZuB+ot)-%U3Zq=#-wnxZK}4~2nMbvv zfG-b1zZ`c?Tt)2Txf@>t4|bu!w0yAes{*pz+-TrC*`L2=YG|Byyx$kILvZ;zpS({E66_&;2{;KZ@#z1-?;{m=u z#`#(OKJ5VG)#!Ssn%Qlb5HLSw3UXmh(m_4b`Te;!H%O-#W9J`+-f2(yi^R0~M+^V5 z;iF9wju&q}zUkNaz(1=gcYdH^pP;hqOyu_1fY7lSK^y9gRwkkmg0pA(cw9TPG6 zLfM6KnUq`P-L$N>(g&?gl=e%xEHBt&GaUqvPVV!~u?=c6>N(Cps03-M-_CH;e z8AaS8OTD7Gte((is~9g2ZA*DLHdd>9_>X2^Gxgh-QIh4^VP{DJB_27H(Wb);B7vD( zCa!&u@q6AgVuUp;%AKP^AeEwE zXvnW$3}qLC?6NsSAmlCs)R_%(Rvb$_L@sHwveT<&+j33sT2I#rCSbqK8J*nN{y>Jr zI>bV2^ppA4~NB)P~! z6uK8oUNXTB-8oBYeW*wp_w5hv45`iedg)DAF=l|fz&%0>e(__aRX*>#Zg@KkAu5DC ztC0(XOuJ(b!^5r-7k3wc&`km(w3>>GvtS1ls1MS`k+)D`C^KEo)pND)ZlI$}hvDDv zWm1x*1Cj)Ua3x3tABCzR?}c-RT~G%YX%@QTQ{K*6$Q$ItdSQnc(*rd{dZXxopSz{$ z*!C5#o`+wNPAQt0U-~L=YJ^NL#9_f4xJYP&ddF%Dr5mA?C9>7Go2pOy+dmJ8DX^ z^X1HRlZ;ra``oIyOTEayAs_-}&? z%pP&fN^4IaKWppnZ3`5MXu93y61fS@ige91;d}-5gkFEs)V7KHWcZ;_TgJ=u52#9D zBzsOTc)K0gZpvio(ln`iAu%jSnSX2=FWoxsW5qv!z}(<&E%Et1DL$XG@%1lL-;=iz zgMS#J%))}F&(TS4Gqo6I3R=kM+y~TlH|4nMGDudjSA8O_sLMY%aC^Y3L0?zn6CR+; zEqVA_sHNpiB^pQG3H((3U(;NL>R#sc90#ZAHlYi8yaLKnK3th{IZRW|UW{wC`B{jv z;b8s=@t0x2%*wi5Kn)YZJkEiCZSSnQ>yoAD!trC|Wx)H>=yU(CGcU^@vMuoW++Laew9}7@nn~ zI23W@*{L28$|iuW5a0%2d_*fzwtZz*c1~U7Nm`I$WS2Uhn&448zxU-NMB)b>;|SsNj^LV9xdX`upCR|1HwZI2!kRwCQ(V z%=~2Kd#Jqh+B@c^whYV!w$0h1O)}x;1%6tvAVUOEB@lZ)CvPr+liVD*h%3UB!lD}k zsLoh8l#tLEK4*=M#lSP`bS~z&*Jfb;dXOGeCB{%6;?}0O2Tism`w*Oe9N8`mUz`w_ zXI+{*?|EjSow7a>I27Ng2Yk51PA|_fw+qaL0c+SrQ|6ta7o5Ev&OIB~6PCHFnP1tQ z>jT}HuPYc$uDt?~C@c5!N>ENXn(u}6m8r|seQA~(Z}HYJyT^R-^i!3M(RqgBKOn(p z&JBN1dC7DZSZ4h`%>Y*k(&Bg^wlH2VsxdHBisW4_0(NUY1g6%_G~YTqk!VLSMVXyc z*=IT|ZUeO2kI0=xFWRku_Wwitv!n0Go^pzHXq^qoY+kly0jKGrELal~XOyl>>r=rp zaROO?gb5rNoO*}_S*>LE##Z4jNh+i6l=NRDMFpQjGFM5#ktQ5$@1c;+5-JdF6Sjhz z>#CFnNYUARd zNcv|PmLd)+><09_S2aq-h+ua?H;)|U+1zY>Qw|3h-gVU7CiT1U0>1E_lQ5650Ve^v znj6;Cd>x##@qLy5q2+s;dG1Exj=cq6F*yO51js3j-oZO9wYY{7_{UGflY_GsCZyVO z%#Hc2vp&x__Nn!o_g7_jT0vc8uB(5YX3N1+mTir$(F!q6cCkTT$jIi&Q-}Fx+oGXf z+dWV%4BI7q?Sn; zj`-y}4pPj_YnDrA%d;LCzxCng<$Z9>TePVsk$moMw==lF2)W#KyTFVa<|GQb!280X zn-?ck=mwcKybx(7Xv=$``gHaBHaPk+_}i*Ep_do!p&AFrwQ)iBAZuk<@DZbn zqbRam#d~3n+ZbpuYWwmt0h9(y>91lbYeJaBsYZsP8XO(|$d2bSR51z$+Scq-A_Oj{8A-*A&K>e(6q8If&O*3M) zbd0}|My8uyPe8&3iZPMr#HLF=J1q|pqa zqo8sadLM%}qd=w~j*uB4){)1_I=FzKlF&V7ZG#is0n9k9Ew*aQpK5@ulB7cEwpb14 zhd>gmW(SCB4t*ZtMeQsS9}UqaMdn)UXh_c0yKuX<;f7Cz*_+7Cxt((={JhL7zB``~ zJ_>a<<#gZZc~3Jsz_}h`esf7}otT`5@0X(g?{VHcU3NxNT2(maVkXV`&@rf;M~MNX z95_>OfBD@f$q$coF7NR_xz6t*{(FK8A=7t{O@4W_Y+#X~2k+h>uWEsdR{tFC>JtYnc`pUQ>{)%*O1|<)-PkRsO@%6 zNV9+Ih5gU2=(wU0$Os6o#XC+Ko=+>P>b;ANo4<}l5(?-q$S^;vt7E@zy#QkQolb(8b4iLM48`tJjOC=y#5da1*cCm$W1cE(|5G+SGZixIB4iZe`kYW%ye6NR zw%|$F1o$R;*MT03Q^sXZ)Bkd+aYKtxtSNGJ^o#|B(5-zPoR+EA8Cxv%kB@ z!>e-()GF5fGFWXul~>D7=qkkjf4$|t_nEB<)aPPewL^gkRo$1$v*A5MvRNyw#yY2v zn>xJT%Ym%oyoa)k#TdH!a8v|bXRX6I4;T91cB)Wmxxa}5o&|_cUERUALI2ACF1ec; zk{2;h`-M=!yI7kPwYd*Y-GL86NJ}Gd_*}4Qso9(gL3&6{AoF*}cO0aOR&Mw5aEW7& zk}`_4nG^#qi^(mTZ8JAOE-g0%cixUp_Kuf8OFE0+R1O|PP9~rkf>&aqrJ_Np%$L3? z)QmURU0ht=1qKB%zl62cGG07R6^97uLo&RHJy$2@24`mKLH<5c9^~pzPAZF89^J6E z`~NooMKO>u9Or*pYIBF^-Rx?~qc$S6{y@hKg;iV$BTW?ZJ@ND*yOj)=}3g zml!{Y`jV;#iWf8d!1&vSSSRf~VGPD}YNto7N!P_dbcUC2F!6MSy5=G~CApD2t9DK2 zL&#C){S6T^^1pe8{|Z~jqr%ll4Ibu(Ve>*> z_Si(1WHXIV$;(L#3_)Pq$kru^zxm}A%8{^#vFk~}iOaKB8zwHP#)9pjB_jn1v&E@NF`cwKs%iNtKPx)!=eeYXqHdUo|TM_M(1K)r#4LdNl z^Ky7;kjii6PN(W`OO`k-nL&8Jg|8hL-dvn_J}8*iRfnf&8jW8V3wCK%hZ^jHDmjAw zZ0E19v7bKe^B3B+2z&SKMYeZVxOkD^Y4ua4#wPp_iC9?nFx=JHm0Ve#!QT1o zb9?cmfMhTlI+-bYB`mL_fRMEu{BK&p{V(q0BlNgRVw7Y+*4;0KxBTDDf*aOKhQGv=9>!^x)|F4B&qWQV&Vp?yABYE~$tm7zw2OCj0+u zfGgGjZd@642!?Ur_{8bfk2EqGjy7> zf*>gDp_-e8i(e4}u#jk22FSwoA1FCl_N$5TjSTM{f7M*PcS{HRX&zRKmd z51dBuIzMb|U@l^+?N384{%~WD9dSeK(OZ6pMBUnDSMDrYwr9^Ct1xC0A)Dk{afAe9 zPGTU_T^ZIInP$%POM8auev&`x*p)fTVeUNFv*B@{FRsMaZmLLP>_5|UzunIqCU&F$URmT_RjVdkRcn3&id>3sQTS)b1lgg$nSLcpbG31Q5! z7AvLOI#3lZJtRbXMe=V55&U`3j_71Wd>Gj>uEt-=2Zi!e#C6Uht((*`t;_X>pGZ0t z`b!7h8_>8^**#HVVQ5`Ok%m+2{U!_%om2jUvHFaEwupVLp&;ThtHaITQ33#Djp|2# z(!wK*^J7I2&%W0Snxh_#S2kZrS_##Rufn9$bKaIVf#{@ZeRpH`rm@{YBekMsvyHYf z`uHjPwLZDHjvLob6#HiFjctY1Y57LWZ-t*WYjg02C^NPO79M)J`Otr;jHdsvv#OuyU8wbTx8B z6Jf)vuf+XkH~_$ngk)0DGsoGNUPoeDcjXdl@+k1QUJOt(_zmUc(}o0^IW7fCT6vjl z9RyZVL^ik=?1TzDnlhLdefaU4o*OnYca)Ro=a0Ar=eRRhu<<{f8jbsGO(G3QUUr&k z6yDwHi3lCbFwD#=a^2gleiBxsAB{;H6muw?ICJdVXXS9eL4%ds*V1r>iD^QE_3&Df zne}F1q~>LtyO~PS4aFti@}Hzk9_{nWeEAOl(Fz=fwaOGD*oXJUAw=h?v;rzf6&UAA zCX=6v{+%ebqR<*{2!ae~f^ZZAp8JxbG;571>$$=!S9|qZBtxq)E9wlmbhky}uPb95 zw+~{1R!8tzOKiap(aF*7Bl(rrOD|gbSVg~K@C^#Y6Vw${PrgzD;yzObVBvY{YG;8jL9PI@#a37NT{r;mtS+Zo+mxN~dThf4tGQpfIA@yH=DQf2 zQgu@qXLD^VMA{r%m3C6$QYi@muPe84In3=+YV(_DjXU8}aqZLtvXGQWUBe!!bE#4w z+)j17oHLQFkzNiyg&q)ZQEEk1Ms@4}H6t_zG-&?;^*LeCYjySC0T7Xrpl?jJ1h9#> z(p@Svuf|AD&)&K`++AahscwL2*R@N`kM??}=_$9)U3L{Z6gKwil(Fce?hx4kl}gj7 z?0&*Qpcla_MWQ2bDSTdyBZh$nGB{Na7leb7Orw5=2%e6veExH>gN>-#;(;)qOIN@U zA7vbL0j6!qrJ#=`*P%7=0g!adu+a=h=(1^fKHCPGr=^9Kwv{f)IcB6b%5WVKo6@zk zG5;iUV01>4lr@;kB2!MNm;C5g`XMAsvSSp$v2MiG^!Qy-0q-d%K$X!AfnlWwmVc^A zLwO_zOKv+JsD|_9I4J)Kr&(vodfwO(e zD#~bGukh|#dAof0i#mPP>N5V-`=#_rAu6b&UlfVoqQ<9!HrtougP)e9Ibkk$O#J$F z8aL%%%p7(yKa< z7-a#$liBF%ZN^~rG#TRl@uf$O{GTojiKN5mpKo+9&biB%Z57$G@=+N3FNwWhz~>5E zVXC=1zqEWUwvMVi+VLPtbY7-su#R)!F#=tp$$fRUa>)A;F~}5DI8fjov?t{o3>;WwcKkX|Y$Km@-xcCq=@LFj5QS7Wy?k z_!;=JYpK&k|6L|qUWQ(9;_~-P)wDmZZlPuDhEu=l=z@MQH-Lx>`?`HSsw9ThKKG5( z+}3t&I}2@~Rew<`ZJ9E;8sVgQ#`Q`=$$T^y)%L1!bKI2)ygFAq0~HQ7cl7!0q^(O^ zbPN61wj_6j|15#IINwwiPNEU`^VB!)HdfQh_GzgYLET{4rp3JBkIaJW@Xqq4Yms?jt`zig>J}?*eo(drgHl*itou++GKf5N{pnjPGrClT z&E-o$VTUAQrJXE^^G6)u*sBTML4$}U_4zlm(e|6Q(TMJp-Wl(5z^=WZFjk_K~)+p2BIqejS86r8hgm7mfcPb}^T;|9IU- zZQc2X5^MgjhNC%S3y|VnuA6OrDpS*#v@Bj7JvxwUk;UIlgbS$kdh!W4XpPC0 zCyphKvx#GVWhRVRigr4QNWkY0lgwR8>d72h^+b=FFYP`2qLi?{sGaCtBzJv6N%JVSzVy-?y7%okNg%dD0yXKkc;>w0s!V;oUcw zQu7ZEM}XOwcY|bbqv)}&D65BczsODeUFp!AF%~wEH^$mcW*nmn67ydgw!g{o(v_Mx zlX&+M`B(gtDdp)WW>c58jwSB(T=3TGvzZpQVMIEk2Anb{t|p94e56p`+*Ok%Sv+fg zHZ4pD)}L5(`k^KrKAKhN7E*AO<@f`TXRv*dbKm1fSED-8>xann<(50oqFGOq7=wk= z4y8eJb)4{waVy>~i%?E#lQyHc6B=k0(g9WISg99l?H2%G{>G$zD|MVhv0yxQVOo4R z16_Q2*eZ@FV8joGGbQjlI_2Fvb0_YTr167O|J0L>tPv=w#R-$xGY!uixt?-0(j{ln zh&w?EW-fJ?%=N)l!mW`9+B=Afk8E|B)!7^XFqrFp`PxE_7vg3f zjwkWP6g-mfGfky>I5zJv1KL1pq#kf;2--E#`{45%MB8nx)Zt%+BT*h0R0Wk`ycgI4xRieF8?my-n)re~l;nl%oa)OH zR+26Eqmz5ejle(Z$Aa}=-S*zKICsHwSdIG`!rhjzd zWE3e>i>_1>|9vqNHuKAVKkfMH((6HcZc0!w*w+)Lq`SsCV4`l)FSY0Qxt+@LSuVTF zT9#Sq-Trmc<yaH3c%?nrR6O0kg5%%j^ybD!K6 zUbIIioVjs;3i?sj=~OKuVenf8Es&M!XTdcr>lu8sMcS6SvL;1Yi8rGY!8xqK+%@Y~}nHZ6dOD7}C$q z0cXC2COcRp+YwL6ENjB)IJnp)Evg1WB`T-lLM$rIwtX3R@@6M@!~8yrgf9FOB=$thQcX9 zm5_GRz655MABJ#6FuS#ry?>~?*iqcD!D7gP;Xo(7w=gZt*IM;9Khqj)E{PQm=UkP~ zJL`*e;uyva24$#)bQx zUOgK>(d5Nm9gJmXNo1A3dS-X;wsYK_B_S$#r&BeC%0|AISxU~52jItrHY?fvP!rMp z=On6aq@d0V7*cL|0wGcnTJ}lWL?1Jp+EKRJH2-N#AgS1}IHxp{#7I>!k4l)cU<&CeH*wCTharRd-d!Bd&G*P}Y@X;ztS(7Ze4KCn`CV?LF!kcG*7VM)#4lH0 z=uhN$HThniSlrcHKRz`imbrIc?Tc&0J5KcAY!ZtR2){JXDO|PmAE4CEkoB8+rp0$T zoD7|x4&|Cb-ICM~hJl9Sk9MTb$`GR@~>9Kgo#avANI^Q-&MNr7*+~tcKG%#U6TLl<~AjN|fFAM4I_T z*T6M!XGL)2VC_fEbEP8|`o??7zB%rZX0HY(qiE9Ekl2tp&9l0ZIoN3Ug@x4H?>v4C zit$^MLfgKK%@h=x7nDz)1InzX^dGlHC;K?$ht%(GAG%d$mTeTy4CzUBymOJ(N@y>4 zaDkr2@fo#kh3xmA6GNA*{E2*?UBirDi5X%~WTd6j(;eLX%mm95O1Yr34JHRuhXd@2WAuYW;=7f-)iY1HxytQ1S=&aro--L0*5rSZba?EbMf84%R>Bm9((4eq_=%9+ zgYpU?<((<<4_S5VI-^UJEzVTJ;pE+M>S^FRR=~PpQ^weyso5YT>ox+th>ATCywGb+ zxps=abO~<>gw9Z`-RfcGAMjeev$D@X87_MT&4E2!NLV+Q_p=2 zSp!!!iC1ksp8et^4f;~uV4*&6LeO}4eI#Vx3ne6K{&Xr_8N&Ui9}QAwE4OzfFMv}> z{ppZm6tM-2V2pVP)>TATYi2@Vtfl3_8ip#4YkFcv%tm#}|1wD_0ehk(we+-b%pf7k zNbY&hq%yYZ`l)9D_aC(z4TeTy%m%BYEJ6p(A&qfM{Q=9Yvo9>-f677dWi4d`J(@6; zc?lS0T=zEcDR9*?>(DZY6EMY@GZ}*xhy&+g%UjU1g1q9uANnIKAons!M!Fh;DO63Q z6%y6WW%v?ONTz7kaZErN=FY}qy3U1$=RSy1W6M*d(S{jyR`CPiRn;77bMV6=oe!t) zc{<|Yt`mz=AoWj@`a7Y0-IsTNCe)}6Hid7_lNR;*BKp4^7u@Vab-2B8@LjM(Y4f-5&FMHH&7W=NtXYtqZ;69ipPh5hvqc< zo_Z^%n@f2e&c59NoR_t;+|pf8I6F#Ude>&=<{5)iWs^*dg^*5{JU_+9Vr~s0O}&3y znn3X6nhK-GG(PFhdWPG0Ejx+SsjaT`2lkp?$R_EQgNS#Hh8-)YZ`cL-qpYKsoxCvS;t3u4vCW^?@1pTjNgd>qKB~VY?Gg7IWlbG!X=E z<1s0d7lP=2{P=J3PS>FMuc#A^wO)&!NjDvBd@F{8nl^LhZdVzDYp%~I>VjOYWF)rj zi#zHDDZXOzy2~@Prk~)9@?YKFdiu|K=SaFcMHROqIwxvcaYCHg0`$NM%~IHD8`2Hd zf#`10qL}XFB`2NM6p3L6{f0e^YqkCT^{~F9++~EWgd4GrQ+P*Rn=%wMGaQfULdSY< zU6H?zd=Zy&^7_C<&lU^|#;l$AFANYP^*D1W z^`SQi{njteGL2qAM|!RPjw^|mG^-YhK~yT56fYHG-SBSOVL6{rrUzFyu^x7VWc}#E zPm$Ia=JX!iRJ~=qyet6>SKdFRojUQZDg2J(w%yr|Zb51lSmkhWp>DUKpyHVBgd$>B zhFVL%6IvrCqYXZxR_PUOcnXTw^@4P;>aGaGEB)uaT9qL4u`bPzt5&GgdC}=L79*I# zbw~{a-gq?Z)O6;b+%ef*&%3BUi-&|{CstPatl+$_Bb3Sv_g&rGIvvc<`fSXi zo^|>uO^I<0lJC_$uAB57(=v~h5WMq^A<3bYqb<%X%_r@Qnz4JKpRq5+vbRbtPu;{L z6Xq^=`h`5LVLz^aD|-GYItkJI(?EH&naa5ZQtECWRNBJV-)U*G;XGLBp0cf zI&n3v5%GUj_vPVGwtfG)+wS&4A)>NJgd)q3lI%;ilqIrMLfIyU8F!&XWZyz0!w}hH zVic0S8e{B3mWjbIV=!Zu-(}>k=Xu`eeed6K-0yKb??0D0E^}Vjd4AW=_j`WN?>uxx z3qg4}yE05}K;l)tyd{<^tcE+ROIB9hR!0^B5az}X-jkY>BeE8s5TCD1brUsWM$3*(mPKZgvoqohGM#I_ zcs4wJerV;r5dHlzeXmvyuDGqD`FlK*&{vq`IT!Vd#1lk-(;IP^PJBF{vBMoj{`7k< z%RlLqUI1gJ(A)dBH+D(~w9fH6Qqgy{3cj|ZHDVBJrqk0Jzj!CqnMhk0Xen-tHn6Am zJ{R9(M{TvrrTN+~`{vu#_()n%L+w{W%~@0p7Cyg~C-6PbZi)s2&f<0%Ws2G7GM+LP zGg6EWDu1loQL{u>yG-(j7oq1t7m2B-%Ho-eC7WAWA#*Qo&{NXq;khGSSN#FJ@pHZc zFcfE|q)F+8TYJ-YjV&WgqEqaJKi-cXh-sXIeB+X;gpKb$qEzNm#)zWY2>b8U@Gu;- zat;iPQjW0nfEdXy2~pEvWY1ihEVBuvLn)>wpyX$CNTo@&(iZ+-BJ55x-ldV=eT*+V zG2?666|(Ta*T{lt9mrbrKP`VRbSqKiqpR#nPFT)GlH_Q@7Igi)5iYy#kl1$rTT0ve>u)I?-HmyXz zMyIMWi})AZ&ZY$KV~*?-

F#^>h++Dyd(=queb#Rt)KFd6Albe8M{_XNS3|V{Rrh zoW)O}V%0#x3JkRu)G~f9RjN0@-k(w0gsPr_fkW@T%;O~>z0_XhSjz$9bVs~7D(D9K zbR7=%B&O;+{Rrf8mt%>9!2}0V7muY^v6gTiEeTgzV-cFt$nD4u@XF$&u7E449k>e5Meip;tBVxKlJ{$@Tl$nj zsn^rzKEa?i?P^ZdBC>~In^;DGLPOCW?@@74GGzvum?I)Q*4(CX(H}Lt1-Ii*LknzK zq=3cw`n8_t?gc-{Sl3G z*X7&l_BBEHdQs>MrZ!7PL%kNK;e3g1t0C{7&K1y#)fl#(x1Ieo(1ukDaxY_8-!(Qg zhOID_Z!rg`*KCKanOxGWJ&PL6Q^pC)KZES+kIdDxjxG;_VF)354U7{wX~bBLB(^$e z18&psZXi6_|4sz~>pN@Qz&GIC$V*J}Uk$?FM-|~W*;IRpVi*j@HSN~gl_psu%E99M z7bVEGxYgQ*I})aKvfDV8n7~%nGUGFU&kvEW?*w+Xil%Lzi1NPX^SJypi;}MG;~%Sb zyr$>|B5tL;ZILMnCqE`;GK)w?B(YxS)`x5pyMD%iBe?mvQSB5E?~7d066Si#9nPI| zVkeka(!37(dU^{`{OWhG?@a&Hi+9`W=jbT_5ZTZ)KUGuCA)Pa$KK%Iz7io}b3c+*? z61u|BdPibW5B+An}-cOi5K& zTdZGTfZtl@f}gV2TcQ`RG`JN^a#^>M5`T;<|FhyQZhs_;4th>Oe#bg^_eu;u&aR?I-$8{R&KlgjE8U2W;) zSa-3J#naxM?6?1kFD_^2Jn83Z6w!3lnLgpf80r+4mJT(}*3}I$@HIUdW}|yrVI|IS zr-GO|Aq!EJhrsu$CiL?8oP-*66}1vSu218ar-@h+jwx_9oWSG`h2-?9PEWZV={GM} zI%U6HL4Y_0iA5(%>&|4}yr3ka*XTCT<02I{6J}@^Nn9B1Yt%!Z_A_$67IxsvKm{jK z(3jR8F>2*F`DMW3OmvE2#k`Xc=uB-h?uhYc_8K-)Mk8`*5<6@&nY}svq0Wc|PEiNh zvlkL`uG+U@3!arzQXF7h`SB7{_?R?8TE0w@KU3_qaQ=3nVy@LkB4%`XW!{1e$V3=C zo;07&Z7ZULmidk|}A*t|s?WqqQgTI5u|LuuQ?W`tfS-l+&hJbc!c8w2HXMp{-2)shC_1U}tr-L}dfH|7SYG-tpDS95d9nc0DrORPPhS`fKCzxI@?|fb z<1I)ho{m;JlMh8_M(0D9;dty2YetQ9ZJ)p-ZA23x%Q7=Iq|ABlZQ&V8ajSZ_KlZBb z&UA9Ap)cBf8<_xGYo~bZGS% zVlTOFcN4qnzEl`S^dh9g^O~bp?tz@Kg;i2iulx7&LL%(LT|QTUEH05F#m{^!<3|IC zklJiWldgdlewb)Wx-_Rw`XpS5j%r86E`X^N0~7&5{}f4(g|$lA!l=(D$eB({W(KU5 zL~uWIh-KM^wPYsdYZQ|_c_(nm5Wid~i(4Zm4)q}$Cjh0XQr+jdMA-FZYX)>Y2&;Y; z!w?hk3}}$YbUb}z#>n&prA=?ghDZ(1KQ1Kx$v-2zDfn8%Q=Mnl(E+ zng2mm5Jpp%6N_E(Sd9jFkC}Mut&Z56P9HlLpti_`d-TR#T(_O}2P-cSh1DfBG&fMG zh@OnJcTm?ucLXt@O%s8lG24z+XA~1}l71Vej$q8YY-*%1ydJp$>ND`Gk3bi-V|fY8 zqNOc-vBLfmQ?!NN=uP@$KsXwIEfJsTUG6WBxPP^* zSKx^=&QX=I+l%Hc8hp=-*Y6-I|wPv>ZlUZlmgkc50{?7lT6~ud>d=F zlx_^{-D*TzG07EUW9i;$W8hr6Dj)1N>C99xm6?E1D=?Kn)#oGDX4+!&yAJEkiaGfZIxWZ+uN0ICr$fX_VvVKJ?D%h7B;EsNE zmDM?RIcTbC@YAlE{ju)fn`{v7Jh8d0;MG7a{{BHO?}S{toPLUM34bT7WJlB;C)hLI zu|~4vVqto-S!u(Zel{hqU*L)M=>eCr5^{8*))=A=7ZqJbHYTQ|!NwX7EXlk#a1AtI z4RE;8Jw5e|mgm6?N@wOC)4PIt@4MW--FfAftj=0g-en1mOwosC!ohQ-OlOE~U07^F zeA+7U;4T<)yjLUXYbH^ylv6>%x_VZUlQ4IhDEC$f`?O zxbY55Q>t8LN&UWo0f4=AQbIJu1p#I?0s#eq$10y0huhuK$3U9Zj(H_b>(|Y`H%HA; z@n)dkt357QT2;#c+2SNasN%ly{_zaIIJZa_ey$0<$_r6r{S|Kga$2fEdHwN!bfjIG zHf_CtA>Pk+bx*xOj&65Z7A* z#YZ=QCi01vZjeLVG(59~5(g_cs(4NIJ?Jsn|JuxUuE`wh&Qt1+D!hn$>3t3HY{~=e zY0K&Tn$`zox&2&srVW`?p0~(Fn<CvdVUlYE?Mwz-Ng zKMuEyLiaMHb*IErS+i*3@Z=fe3?VZxRkFUzCro2kU^dn47JQ~_vJhz%UtDQ3>N;w? zyl8C2OrHnEv1=*U3R*6|c%7K9*oF)X`J~79?5?DUDPOE2rbv0Fd38vI7NgSRpJTmS zGS<@n$ukU4h$3~hqt9MRM&mehH#f>GyzAyo!PP>IYHci3vBW!|H8_vv+kd-x_O_vK z3(wQd$?xTsL^6xn0)9ikBeq$#EVv&zf4b4YR4I z0($O2VE4xum9!%U^c`n_RD(6=EPr;op%3_*q#9KAAW9K7OGTnL0Tq6_zAzXo@xaJ9 zvGjew75>Slxsx2Q#P`OoO21%q4nLRZSg}U)gBf`VoAL>xTb}bK?4N?1KeCPCYjrEE za3IB2M;cZdIh2%BM2J!F$u$Ey&;~x*+EcbmeAj%H0|&=EN~M?GtP4mlf%L-CFJ;>u zDy`X(0&GnYTQI=J;MWknDWD+}4jNSgZwVw{%Q3BAZx8t64+n?1e{?MGfcn16dyvn} zWi-AueNHvddwDD~!2}Mu0ityCgRQ#9RP~L!*0IpcpI%w3rcQB*n_piw`EkJRm(%pm z?bgXR&5lhlIE)tj`BHITk-5dL)3&%VZI>&sDYFSTbeSk)D?#@AB7;5!Aer@39c%u* zQB1Ra@6oJIOq5Yyv522cewJH@xfEIs)F;<7H5b*TSeLdV7|l@XowQXbblBd*;$?Ne zN}rQSSvxNN)B8R@VSWRABmMS~niz)Oj2ePd{JE;IS=S5GXj*eu^8&~9^QA8UM~PK& z9nm0mPMR$iQBg|36E-9S$kaBS5Gk3{2e;`e?MmC3ukuPq`|`1hrQ%H}JpB^aKuoY-9m};I#Kleq~9QefP0GKRHb8GmFCruUiehe5ZYJ=AmMFO0E_v z-l)Zrg#r&n<7P9@A#~l+rprX6Pv_=Jl6(-Kp^B`cif^q4)F? zgaI7R@w^pv(uysV4`q>$_?_g2Qt#SdU0Hroiyt{-sm zBL^f*<5)xVY$9F1%^b(-5yRB#Q)#4E&)&`K0t)E%$o_5}w^}v%E-hdHZj@LJGd&qq zD&npd(AJUW-&tF$_WlI8XVelX^w5Sx_@tK#s_*#5CA!p|<}f&}=YvJR?c=|gd6CTV zwl*cS#khKb1m7tjEH!G_Qf9ys!!x^qu1oj37X4dQ+h7kSP=7G-XDRs)1iwm%1CqEA zv71QpjsA;WTqY9(FCa7)Tr<+At6(#l2-v*8F9OAwGb|#uQeLwNo#v=n{USJxvRo0A z?WBP*T7BYk=~h(#^GjyUFVodM1P0HlROedv0agjF806*Dw+xoMJqSM^FY^W11c0p^ z(T&$#0IA10s#aVzs(l}Y{IjZp<7_wt2FT6Gqv1DVKdj9g1xP%-+DbzSBg=XrgAq^f zDu$pv6@xw;$BN4?T@D)C<%p1Frtw^6^y5MCNxouEhB75~x&2{^SoijZ)}Rm-3uV}3 zAfm_8e}B@YjC!^-P&GZ_$`6>(4gEiRQYZe?=IBY<$K`RFzULRg2QQ8P3p6y)mW4J7>3X z>csTkip8&3Y zglOcDGl3Fkz<|*|&XaHkJ1ROf;+K-DjPHkChwxBnmrw;zr&YTvmJ`cces~qYx19S3 zk4N#^yFRMCedXj2{sU4F3@_hOaK4ZQijY4L>Y6Hotr+CD`{G4pQnkCAF<$NC!mm$# z$fS~ia`iu7=rwt~S5QjCB$h^Y%NH=Ko+cA^78riruImDyWv~LSO^+W%=IyW%MRvBT0*|64namhBe8|KCnM0sEBfxKf4ZumIZTLbfd8XNh+}E!USf}o<{Z;=` zKiDGiU~$6iBV<0X?=sSyw9F~$z9zMR^{3O9?g7GFNhS@sy0HcN&c}a#RXs*SjH5D* zJ-PL6ve(z!))97G2QwL$=Fn5+4{vuZdEB)uL{>?5J<);Q6%SmS}4a*!YbNTmvjU`1OQxlw#)ApTc*p3Z5O}W*}{q zn>^8V0Vua_SyuF))E};-DwBu%n&TpSE_Kr+Qk`$ysn^+CcZSF2OKT$SzLW*;cU&3; zKXm#g>qVs;$}8jf*7=!r$^q-naPww@OP&2QD8~7?9RiH@BsI6VDtEhU!>S2|nnUx* z#n3>_ynf+7PASOKkOBf`g>PV<+h|p=>)(rQhWir?Z0e4z%X)Aaz!c+)JJdz>Vz^0% z!)dkOTlvB&t{rPL`CLLg965f>if8;GsbBDAhWdk6g4+pq46~`E$|5xUy!`J!)#b?G zQ`~!y>+GTOgcvnMSa~IlckgserBpeK37eS47sIx1TE~9C_2zSVow+TCmiFdXyCM%3 zIo_{0IlTk%dRb?&Ju1Ls;*P#U`HXd~l76$&P1ZE}u1Xs=w2yOLPJwH%#YIczW*BvN z!hfgn_52=GuiaUfhy6XvGAu#dZ&WjdLzlL>%h!qWT+22Hc6O`xMd$aws00DxcAZaYqa~TqaIKOb@m3U zLhX8U!Pgb&lwqJfhh5#O8j86>f=-76og6scT)Hkf{U(%{y z)iC1);TD*~!^6XJX&8rFF4ib6gLY1yd`1inEa&bl>%Dw-fOTK+2bcvQ?a?tA!U|;4 zhp1Vu@WYU;E7gxFozdgi_PVvC*Gp_r)zdi2UZ8A0_E~ZAo5GWxaqpO9Ve)NqZIU~m zPhi$|+3yp(0#4BucexeV`;M+AL?#AUv``}~(hJgmF>ZOd4kHop47pJg+UWziYa81C z;H2hG;XJ>pSiyFP#?1Q7J7w{3QZGPk)WTP0+|f1Z5blyi|pQMdfM^QGG^ zE-w5N$z+N2l3vap6jM6OwS1@c=Z91|ieS42sMx)&Kqhj2CHdUvFbw(5Z$F^pTa|Pp zbmqH&AXQXd^{Tpa-Edv<($=$r(PYBt-TQAQBugtF1J$u3fIJSZ^OZ?q|9I27gusV6 z_7~1&LH~jf4ZXJq+FP%g*ZQL{0^^26B=GSZ+qACtxn#q{qin3P{_u5_!Nw8mZGQfv zzr6oHYNAeSg#O#e_NsEMMARA?gbZ_6IrRd&Ykd4yxZ=$zrwGd*icd0z+2yi z+r#k}K<$5zc>fI${!hRC_be(Fwo+o=jxCtDIENuTj@{T0O(iL=lJe9K+27Y)i)4@^2zD<1fspI4-rd& zX|2!WzmTJmv|81-w~qY&fn#QK`ncY{)93b>XzulSw)bq#Z+U-g`~HVpz-XlQm6wt7 zomX(+#RxyEjPyt4OlM$i^_W1wiw6Vo$(v;a2nCZhAXAodk|?DoR#m0ge)!ETV2J=? zeQQup4YVtwERcXt1bnnzPaEPL`h-5)6`y5m_+56?Kk{Ntgz7cf0slibCAPDPy_Zc# z0rr61^KXEk_~;qEdxZ(Ewh8DlNsjmyWEsi;FM=%n>W9%|2;p@U09@k_neOgP;C9)8^;B`88!qh(hXD0>P$9*c%f1FaCT>+8!_nLYFH?Vh9l}V| zJa**ssq+pK;ZjQ%YE>vF@=P@^TvGBW0G+C9UVr~TFiw@tCeOG(|Fso0J9JE^@h*4s zg1C+He&ngbCBb%=f*0E!UM#t_f7_vg-906bLJ17qY|CD*(QkoGFC4Zxd|IN0*gquqRo9&GlbXK``Kl2VdMuy*}4zXSbOspCK=!2L<$jV`NR-YKk6K4-5)!9d=f8 zw)vN#Y%vS|kzz7f1EGJT(YVr-`C4Pxo2cZuU=JuAMiSfzd*!Vn(QrGd9J(ih9yTd!|{WJ0`dybRblY5-W>D2!(77<(B_My z9$PiuG^OidVNo4~iw?A^bm!kSwl0sqc-NIJ@Ahb#M&vyP(jpujx)+VKiq2nu@c#f8 CE>qk9 literal 0 HcmV?d00001 diff --git a/doc/api/api_resources.md b/doc/api/api_resources.md index 2adc0087474..a20b903d534 100644 --- a/doc/api/api_resources.md +++ b/doc/api/api_resources.md @@ -131,7 +131,7 @@ The following API resources are available outside of project and group contexts | [Projects](projects.md) | `/users/:id/projects` (also available for projects) | | [Runners](runners.md) | `/runners` (also available for projects) | | [Search](search.md) | `/search` (also available for groups and projects) | -| [Settings](settings.md) | `/application/settings` | +| [Settings](settings.md) **(CORE ONLY)** | `/application/settings` | | [Statistics](statistics.md) | `/application/statistics` | | [Sidekiq metrics](sidekiq_metrics.md) | `/sidekiq` | | [Suggestions](suggestions.md) | `/suggestions` | diff --git a/doc/api/settings.md b/doc/api/settings.md index ae44c317dbb..cae51579afb 100644 --- a/doc/api/settings.md +++ b/doc/api/settings.md @@ -1,4 +1,4 @@ -# Application settings API +# Application settings API **(CORE ONLY)** These API calls allow you to read and modify GitLab instance [application settings](#list-of-settings-that-can-be-accessed-via-api-calls) diff --git a/lib/api/entities.rb b/lib/api/entities.rb index 98c0f78de1f..5c46a9f21e8 100644 --- a/lib/api/entities.rb +++ b/lib/api/entities.rb @@ -129,86 +129,6 @@ module API end end - class PushEventPayload < Grape::Entity - expose :commit_count, :action, :ref_type, :commit_from, :commit_to, :ref, - :commit_title, :ref_count - end - - class Event < Grape::Entity - expose :project_id, :action_name - expose :target_id, :target_iid, :target_type, :author_id - expose :target_title - expose :created_at - expose :note, using: Entities::Note, if: ->(event, options) { event.note? } - expose :author, using: Entities::UserBasic, if: ->(event, options) { event.author } - - expose :push_event_payload, - as: :push_data, - using: PushEventPayload, - if: -> (event, _) { event.push_action? } - - expose :author_username do |event, options| - event.author&.username - end - end - - class ProjectGroupLink < Grape::Entity - expose :id, :project_id, :group_id, :group_access, :expires_at - end - - class Todo < Grape::Entity - expose :id - expose :project, using: Entities::ProjectIdentity, if: -> (todo, _) { todo.project_id } - expose :group, using: 'API::Entities::NamespaceBasic', if: -> (todo, _) { todo.group_id } - expose :author, using: Entities::UserBasic - expose :action_name - expose :target_type - - expose :target do |todo, options| - todo_options = options.fetch(todo.target_type, {}) - todo_target_class(todo.target_type).represent(todo.target, todo_options) - end - - expose :target_url do |todo, options| - todo_target_url(todo) - end - - expose :body - expose :state - expose :created_at - - def todo_target_class(target_type) - # false as second argument prevents looking up in module hierarchy - # see also https://gitlab.com/gitlab-org/gitlab-foss/issues/59719 - ::API::Entities.const_get(target_type, false) - end - - def todo_target_url(todo) - target_type = todo.target_type.underscore - target_url = "#{todo.resource_parent.class.to_s.underscore}_#{target_type}_url" - - Gitlab::Routing - .url_helpers - .public_send(target_url, todo.resource_parent, todo.target, anchor: todo_target_anchor(todo)) # rubocop:disable GitlabSecurity/PublicSend - end - - def todo_target_anchor(todo) - "note_#{todo.note_id}" if todo.note_id? - end - end - - class NamespaceBasic < Grape::Entity - expose :id, :name, :path, :kind, :full_path, :parent_id, :avatar_url - - expose :web_url do |namespace| - if namespace.user? - Gitlab::Routing.url_helpers.user_url(namespace.owner) - else - namespace.web_url - end - end - end - class Namespace < NamespaceBasic expose :members_count_with_descendants, if: -> (namespace, opts) { expose_members_count_with_descendants?(namespace, opts) } do |namespace, _| namespace.users_with_descendants.count diff --git a/lib/api/entities/event.rb b/lib/api/entities/event.rb new file mode 100644 index 00000000000..9c2d766b7f1 --- /dev/null +++ b/lib/api/entities/event.rb @@ -0,0 +1,23 @@ +# frozen_string_literal: true + +module API + module Entities + class Event < Grape::Entity + expose :project_id, :action_name + expose :target_id, :target_iid, :target_type, :author_id + expose :target_title + expose :created_at + expose :note, using: Entities::Note, if: ->(event, options) { event.note? } + expose :author, using: Entities::UserBasic, if: ->(event, options) { event.author } + + expose :push_event_payload, + as: :push_data, + using: Entities::PushEventPayload, + if: -> (event, _) { event.push_action? } + + expose :author_username do |event, options| + event.author&.username + end + end + end +end diff --git a/lib/api/entities/namespace_basic.rb b/lib/api/entities/namespace_basic.rb new file mode 100644 index 00000000000..f968a074bd2 --- /dev/null +++ b/lib/api/entities/namespace_basic.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +module API + module Entities + class NamespaceBasic < Grape::Entity + expose :id, :name, :path, :kind, :full_path, :parent_id, :avatar_url + + expose :web_url do |namespace| + if namespace.user? + Gitlab::Routing.url_helpers.user_url(namespace.owner) + else + namespace.web_url + end + end + end + end +end diff --git a/lib/api/entities/project_group_link.rb b/lib/api/entities/project_group_link.rb new file mode 100644 index 00000000000..89138854e67 --- /dev/null +++ b/lib/api/entities/project_group_link.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +module API + module Entities + class ProjectGroupLink < Grape::Entity + expose :id, :project_id, :group_id, :group_access, :expires_at + end + end +end diff --git a/lib/api/entities/push_event_payload.rb b/lib/api/entities/push_event_payload.rb new file mode 100644 index 00000000000..6aad5f10177 --- /dev/null +++ b/lib/api/entities/push_event_payload.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +module API + module Entities + class PushEventPayload < Grape::Entity + expose :commit_count, :action, :ref_type, :commit_from, :commit_to, :ref, + :commit_title, :ref_count + end + end +end diff --git a/lib/api/entities/todo.rb b/lib/api/entities/todo.rb new file mode 100644 index 00000000000..820d1ceaadd --- /dev/null +++ b/lib/api/entities/todo.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +module API + module Entities + class Todo < Grape::Entity + expose :id + expose :project, using: Entities::ProjectIdentity, if: -> (todo, _) { todo.project_id } + expose :group, using: 'API::Entities::NamespaceBasic', if: -> (todo, _) { todo.group_id } + expose :author, using: Entities::UserBasic + expose :action_name + expose :target_type + + expose :target do |todo, options| + todo_options = options.fetch(todo.target_type, {}) + todo_target_class(todo.target_type).represent(todo.target, todo_options) + end + + expose :target_url do |todo, options| + todo_target_url(todo) + end + + expose :body + expose :state + expose :created_at + + def todo_target_class(target_type) + # false as second argument prevents looking up in module hierarchy + # see also https://gitlab.com/gitlab-org/gitlab-foss/issues/59719 + ::API::Entities.const_get(target_type, false) + end + + def todo_target_url(todo) + target_type = todo.target_type.underscore + target_url = "#{todo.resource_parent.class.to_s.underscore}_#{target_type}_url" + + Gitlab::Routing + .url_helpers + .public_send(target_url, todo.resource_parent, todo.target, anchor: todo_target_anchor(todo)) # rubocop:disable GitlabSecurity/PublicSend + end + + def todo_target_anchor(todo) + "note_#{todo.note_id}" if todo.note_id? + end + end + end +end diff --git a/spec/models/repository_spec.rb b/spec/models/repository_spec.rb index fdacfbe24d1..3d817065963 100644 --- a/spec/models/repository_spec.rb +++ b/spec/models/repository_spec.rb @@ -2781,6 +2781,45 @@ describe Repository do end end + describe '#create_from_bundle' do + let(:project) { create(:project) } + let(:repository) { project.repository } + let(:valid_bundle_path) { File.join(Dir.tmpdir, "repo-#{SecureRandom.hex}.bundle") } + let(:raw_repository) { repository.raw } + + before do + allow(raw_repository).to receive(:create_from_bundle).and_return({}) + end + + after do + FileUtils.rm_rf(valid_bundle_path) + end + + it 'calls out to the raw_repository to create a repo from bundle' do + expect(raw_repository).to receive(:create_from_bundle) + + repository.create_from_bundle(valid_bundle_path) + end + + it 'calls after_create' do + expect(repository).to receive(:after_create) + + repository.create_from_bundle(valid_bundle_path) + end + + context 'when exception is raised' do + before do + allow(raw_repository).to receive(:create_from_bundle).and_raise(::Gitlab::Git::BundleFile::InvalidBundleError) + end + + it 'after_create is not executed' do + expect(repository).not_to receive(:after_create) + + expect {repository.create_from_bundle(valid_bundle_path)}.to raise_error(::Gitlab::Git::BundleFile::InvalidBundleError) + end + end + end + describe "#blobs_metadata" do let_it_be(:project) { create(:project, :repository) } let(:repository) { project.repository }