From a01f6354227709be5aa15ceda19402bdd812f9a3 Mon Sep 17 00:00:00 2001 From: Fabian Aguilar Gomez Date: Mon, 3 Oct 2022 12:58:39 -0500 Subject: [PATCH 01/30] Update about-custom-domains-and-github-pages.md closes https://github.com/orgs/github/projects/5400/views/2 update the docs to reference Types of GitHub Pages sites for future reference for issues such as custom domains in organizations. --- .../about-custom-domains-and-github-pages.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index ab3c1ff7c6..0af8e930df 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -31,6 +31,7 @@ You can set up either or both of apex and `www` subdomain configurations for you We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." After you configure a custom domain for a user or organization site, the custom domain will replace the `.github.io` or `.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`. +For more information about the types of {% data variables.product.prodname_pages %} see "[Types of {% data variables.product.prodname_pages %} sites](https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)" which dives deeper into specifics such as handling custom domains and explanations for each type (e.g user, organization). ## Using a subdomain for your {% data variables.product.prodname_pages %} site From 45d9175c6f71aafbc20e15c0784eb8d7fb8739f5 Mon Sep 17 00:00:00 2001 From: Fabian Aguilar Gomez Date: Mon, 3 Oct 2022 14:18:08 -0500 Subject: [PATCH 02/30] Update about-custom-domains-and-github-pages.md changed URL to relative path for reference --- .../about-custom-domains-and-github-pages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index 0af8e930df..adebb587e1 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -31,7 +31,7 @@ You can set up either or both of apex and `www` subdomain configurations for you We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." After you configure a custom domain for a user or organization site, the custom domain will replace the `.github.io` or `.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`. -For more information about the types of {% data variables.product.prodname_pages %} see "[Types of {% data variables.product.prodname_pages %} sites](https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)" which dives deeper into specifics such as handling custom domains and explanations for each type (e.g user, organization). +For more information about the types of {% data variables.product.prodname_pages %} see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)" which dives deeper into specifics such as handling custom domains and explanations for each type (e.g user, organization). ## Using a subdomain for your {% data variables.product.prodname_pages %} site From aea4c4fab6fcfc3305e603d98605f84746200ff6 Mon Sep 17 00:00:00 2001 From: Alex Deschamps Date: Thu, 8 Sep 2022 17:58:41 -0600 Subject: [PATCH 03/30] Change the ssh key default scope to github.com With the current host wildcard default configuration, the new key applies to all ssh connection attempts regardless of host. This can become an issue on older systems that leverage existing keys in the ssh config and don't have knowledge of the "newer" recommended ed25519 algorithm. While this key can be reused for multiple purposes outside of github, I still propose to scope the default host to github.com to avoid a default that can pollute the global key namespace in the ssh config. --- ...nerating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md b/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md index e6c655b322..4625fd4622 100644 --- a/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md +++ b/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md @@ -125,7 +125,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav * Open your `~/.ssh/config` file, then modify the file to contain the following lines. If your SSH key file has a different name or path than the example code, modify the filename or path to match your current setup. ``` - Host * + Host *.github.com AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_{% ifversion ghae %}ecdsa{% else %}ed25519{% endif %} @@ -137,10 +137,10 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav - If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line. - - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *` section. + - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.github.com` section. ``` - Host * + Host *.github.com IgnoreUnknown UseKeychain ``` {% endnote %} From 01f982ab7c4878e6661c2d2b2805f38365b4c9c7 Mon Sep 17 00:00:00 2001 From: Michael Maxwell Date: Tue, 18 Oct 2022 15:13:52 -0700 Subject: [PATCH 04/30] Update troubleshooting-required-status-checks.md remove extra space --- .../troubleshooting-required-status-checks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md index 9a2ca2a765..474cc4705d 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md @@ -97,7 +97,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - run: 'echo "No build required" ' + - run: 'echo "No build required"' ``` Now the checks will always pass whenever someone sends a pull request that doesn't change the files listed under `paths` in the first workflow. From 278493bb86692e778d81a14b8bde091485fdab85 Mon Sep 17 00:00:00 2001 From: Kristl Yuen Date: Tue, 18 Oct 2022 18:43:19 -0400 Subject: [PATCH 05/30] Delete old UI set-status-on-profile.png --- .../help/profile/set-status-on-profile.png | Bin 10276 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 assets/images/help/profile/set-status-on-profile.png diff --git a/assets/images/help/profile/set-status-on-profile.png b/assets/images/help/profile/set-status-on-profile.png deleted file mode 100644 index ef1597be928085d1beef58fbb50bbcd2f2911e23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10276 zcmZvCWmsEV({`Y^Yk}Y{#R*PvcPmnyQV8xvi@O$g2$Vt#6fN%V5S#$T-Cc^koO7P@ zeD8Z*U;gYh$?VDOS?j(>l1Oz`IZQMl8UO&mRFId}e7Uv&0B`{)@Gq< zT0+|s?huCPx~K@>adyAWn>zTZftblPOK4<-tevNZEjm><5&ypKmI>2vV$bI3Yr-$v zr;KNOu#KPwcZM`=64(MSR=FTS0mL0C%kcjsOs%QdW8t+?uV{^Za4+d&x%>c(IfJ7;zS^pe1UbI#Sza;yo&B~ z6I&SYcsoXgqvyirJ)AY6m3H&{id;4L>6JW~Cfs9+e{D2udm^cKt4DRjKiK^uy% zY)PsY#ZOJYMN~Qz=Q8hAV_mM{AUaD}&b`ER+c*a7)zEsDtN0 zBhJ!K2CG7U27;ZIP~%{oRUQZJ4#>Gbd1vh-(=M~aR-Cya&~}rEDk$IjBn)k(phYmc zoLQ8YWek%V@C!HZ%<&P*_xvgdyI@f!)Q;TVZSp>D_q=*s03ay!AdU zRz?&nBquN)s<@j#(TTF^SIw} zp?kvBjIQa@Y0KLnO<>*$4Cnx8NV9g8*pexhdFklMrtkA5RnK zLc0iGB^OT}h|A@x;O52c>olG8+UMoik5mj3zE!4LN;DaGI#2IGzyng^mMIw9B?trz zU>zU>ze}(WNAA*Pza8=IQnnNBP1lN92z?gX3IVRL(|_IZ&F%dr(?zb#7LfrLDSgrF z;PDBSKAcYU_`wr&fgXM3&$hlADK@pss>_GY!UQ(;{?vB0KvDo*<^Iv&D`fD zRLwJakX)TMo@cTUMet7Vdw`t+$HDEJ@^Ndqi%nQ`_e6`|#q~i7SsU53`n(YV$pP^TVp^P>toSq4j@MlJee z1WAdC{sRv$$xfVg4BeaWT01)A7c7N!k&Q?LYjZm{G8gCW6{gM>Yfphlk5px5SP?Sc zN4-)E?$vTzeJ?kybv>*&p}u!RSJAo^Mwq$V?Pra#}E*z{t22?)o`z=zm+SKNQlsBsCtk-8AYhcz- zLeO0XF6zK^NlQ4NcIE8CD9SeSJzso>#;Gai()-Tn)7G}Ch&c55pjnC{zMiEJZQd$r z*O7{qaSvMmh@QT^2AL8G3~?%&FHSi}GAwQ~KUE2HPF2lVVv8p?kLtJ$HcNrgOkt`a z#KR%V>RMa=YVG!jh+qaTIJoqT5oVe=O?~D&ribNV6&yk{Fzb$*+!yTi)jz21+ApcQ38h4GPkPP?<`WWa-UJj65Vt zU)(cLJS7&iyT0O-B*s@}3XH+GxOb_ztGje(%LB_$JluspWymH(S&CkEOi^0z%6 zwytw1WhSXk5kw z3BIQ2sN~j+{dGnjK8`E?%|#Yd30oCq`}OR zkEh*3x&3@v<*pF(Yssg?`LDCzi`P~vskR6}?S$e%qZNVze^NpD$*Q zR{WkH514Bj8?P*_1tpdiSNu;;H9DunK;Wn6=Vvu#6+tS+Buip#Hsv6zBKGIKyCig!n+O-v@ z6M;C4TMiE>L4ra;<+kAWEAwCn`+7evkF6bFlLtKmlM_lZ7PgARBTCQ5KPuB*-kLM~ zd@y>)W2j6-fF|BiL_l_7Dxzo~q(cz5q`uduLir%*N*FVFCnYwjDr#@o|V z&f7h6jlq$nhspEmG)t2u3-!i;Ap7*cNB4$6$b1 zNC@%vcK-DkyAYi?ZJYIgeMD#4E-pwFmnj?X(+kt_<8DBa0uMvFiW)>@N}$zr$gi=_E*EE|(X99Gtax|2)Mi>G!^YZ&NjEY>Xr1 zBfrD)`4S!3q>P1&cc0mO9J@uIx;LNlce2T>Q%J4bF0}Uk{(j8`r_oST_USOCSinh} z=#sw>dpi!I0TwZTD*OF$10}O4wN5@w5+OrjrGu(To9qc*{ks77T~hJ*x_ADAF%-%J zHEHvvhZWMNy*F<0 zq%jJBS3$XqE2p@kdBTj`*K|f*>AyO^@R7hLMPz2g1gfXfex&k>kcX0qf7m64n6ztZ z>U5?>Zn9u_zSVR>0lX7drVG0XLK;inP{+h%p4C^G$@)f*Z>j8x!j^oCE5EIeh{-g- zF5KLlaQFV{awy{3K4j5Gihv3aE8&MwHdOfh)(4FG{_UDa@yyfpK zg|fnZTr6Ylit?ZND~&$j2C;lIUSR$(LP9@sw8uQ zgh`*q zs2G0N@62A8Ky-~YVwxfzLXJYY`^e18ZdhGc=aA8+LhjK})yUjLXEf~Aa9OLNXT46a z-YplO9zAsEr<+h_RA%B2#Y7oMX*mB4^(H<1HS3 zrdc;7J>EEj&3L#;pdokdlP`=)5U&%1dShG9c4w0#8RNj32xA1z_T<-7L`gw1sjev0ib%s0sd*=np zH8ctrmWjNXKm6vN(jbvp&`1h6DC9S6d3jkTrL+ zBioQ~%1a@tmnZ>91LAA>eU&~b=Tb*|?4x62Sn-1wEik)2XEKDq9k1u7$NT146dDHb zI)ht*8~`L9*4-`DGFY9RFuVYiEuEXBdY?$AL2xE5=J#;>=jxzXEl>1iB~ivJtqko^ z*_Dn5fCDf*rCJpdlZ*Ogzq3y|%{dZEQU$xlIhPnas=IhA2AeM#$Qd92sibmuF8Q4e zKlnG-@){N9gA{;flT@!BV_n%XX!#B&m)z3As8uFWl8{JtqxbBBs4Tt|5Xk}!O1!8s ze|{;%Wx(X-%rmDrzVAFfE?0px$xETLS%)YDW9069)Zg|Jo%)_T$$6Cs>ME2#nsxjV zCPP+eHv8KMSag^un+_Tf=NR#>D#RV88(n_tY-ap4*7Vka3}u6|W@L$z=f5x4r?wSW zZ&myC*tj3f4oNYaRjjtg<1JrjO6n%MIWCWgl%8nS3pK+_);I&gLWw&Q&eWED5t+PX zwmt{bK1zK>Sq@xNTLC(wAqJCRKpJcGqkl%<2-B9XO`smZT7#ur4Ri_oHkK>r=J?%) zO=~F0K#|t4S=C&|Vk>ONH_lJ6B??}5;Upf{<2LHl>*GEhRcZ}X)>oQ<(z>cE6Ef&R z*lRx3`(QLA=&F2fJHMcis77g3#|})GHkr^Q;m*`<>Nh{rX2|qm*JMd}GB#Gca#_xE zFC1^Ro3>cBVkZC?fu1ZgkkKdu1-5@-%ISrEM@S~j`rPtl(NadT^`#6*o9tGeok z;(s=nQ6`4KWioPSo9RRr*8Uu9aDHiySK^~M1!+h<2sw&Q|I53)oyvN&G1P(V~p zy0lyk7`uEv*ajtxJ%`{CM3_gNy7@VC35YO6>t%+Z=a+f_6wekTIrko)I`czYvzQpZ z?L-_qV_?K~mEt7wxO}^ZOSXXyJQkaYAt=f!nMeqN4AKyJ(u4Jz=h8& z_dV)^%s-02ij`5(r)v))9khbZ)dy*!y3H|{ycCiogmN{r&sW5+}CvQMnT5GPT&a{lJJ1^ zM4cw<`6pcCp?$pQxo4StoeD>q3()#}1bDTEw8^;9rxltrZF>C{(}v}yo@kYpH3TVN z0*sUS6oSae`dCF4xAmvSFnfyy0AUBH^GX`=7EDJpP0N1_h6X@=7lluD>fBk;PW;>39h^^E`5SMR zmAnnNdQyFsv>vMO_xU?F*~9S!-IkMdi^fUf!-M2;2t-W+xW^HRK6$$Rx;_*nP1DtN zTrO`e zKYf<$DbE{EJQb@KX~=3S1@b(Cyi$~UL&breYu97aT4`A1WTP~%UOcuf z=~{~=@!=~TXkI|($O}=1G|Rw_HW%@$&-L|9cYa2W$$*}qBV1r>p$B!hgp_@1dTanl zh|jF~-Q27}XivQMen4yt^i*P#@HPGpleCC5W*YmG0xUQzu+J>Pg~Mw$IgP;EyJ-z} zL9_;S^27mEth7|6;U{TD9vdU8xY{3ir;D}T+ zr*DR;<5Ggg8Jg3Ii>;oAI3D&D#s*M&2e!huH{>`#_nlBX2YWBaP@$$Ka*#C98xAIx zDsZ5so zx3<(#g;L!jX#!>(q?zv-ii*C9Z@fQ{Rb%9T^j1d&PKyah*MGypswl63u~(FQs;9g3 zuqw#1T2WI~6Bfe9&1Yt=SdA7qU*KS?=%DN`lIqq@`@LN5SV@X+vrWHLBoi2Bzpbn- zbAP8UklL`zV1>;h(JknGkF+cJ6p=y2#0sfAQKXH;`Ae=q#-Aa0&OaP zjb;1wYm&n6_=>E#f0DWv^-7~&n=)+GcJPmx+SmEtoR@);< zC%t~!&KN9<2h!;Ev?vu(40>56LK5gCXiavoyMwnaRI$B0}t6Vv=z6B|wao z;$2(k@J+-w1i;OS3s3NR_d5KEy8tDXk@7YNNLvEaJ6eYgUSMF@!v7W^niaIJS-`;N){Qwv%pNklHVq1} zocHnyX)MnlBoVS^>?0TEIC-6#Y_?d#sPn_#&Nry9-rY?I-&Cg%0dTGJMW51x5GlDR zRRlXm4v{{h<@sN5xY3+=4`8$eI&LF|uYzM2R2U-`8tEN4hHR zqOPo}(tKgwpHC6f-Qdc!b`mm^G(Z3O2Fp-qE_cGtGe~ugBKxiOaNw^za=_a+k7fUS zW1c94W!CW0dl<$>#{~#;BK-`0)khS}@Y$0lRXzVJW*}>lpm0SaPb(B>hH6Hn=0yjfJiqv#ZLzw;PYmn>_q5fe?RlH9oc4u$crJa;66^L)lZz1Iyf)K7F?rP zIqxh~kSxrR_dy7hU0+<0C)-51ly{7uo|{9vfEgdNuK1~n@r~xc#^S$N%5hn+R+NP? zBCU#7Qi*eWz|_7;LITCY7)wL=TmxflsiES1ySE|rIlh<4w06C#s_YC;sfTI@9I1GK zc>@W{&vRa7g2!lUDQ33O0Q^kijvj>22^Ml7>FW%CC*!eWV@c}b57Ov?VHYl*@|tjQ z>xQdL;Oay`$1)oCLGu``C8y)+b?g&6bE#?gmma`~Ylha83(AKqDPL%%tE(;Po07A} zO45cKYz*gumnq-1vsbDl#BAEt&wUw@dqLb{%aGvQN-Aeb%^6$f0zpORzg{i%Phi?X zJLUTO*COG>!?TQ!O?Jlu^UcCgDM2G&0>X-_ahNy;+qM&NoNO50fM^kb_cj3%QIB`` zW@sOOz@thkhr^PpxY75RlL1tj`YS@?XTY~yfIP`tyXk;RSWJpEZi>|df^TThcK+61 z5J~7U%v!{cCV9cfKOmr0_zztE78Rftss9%#m}>UR<5L{WZ~)uLwT#CqLL@ITqiB5= zxQ<5)rOCIV%y1oNgQ&K7nuOzL8_Jdaf0#F!)eNm3u(*T8Oj zRpZ`B0tn!PR{my54;1quaAe4u`U*e;;Xz)PT8rvHF~Lhlro$L8d+`uwUP%apn+!DF zN4sSgPW*@ojHw^#7#ZN^5ynO+&$iTK!NJfKNUZdfkuBG z=}=f)@`F(b#ZBXUmwTDz1TljvPX$%}qw3iYZx`(edQ@UXCVeq%IE4Wj@oN!FzQ`gb z!TMK;bM5MMPLkkE3g7Ou73CgX|=rIm_8olVl!VRoHgTmC!ObV8C zV*XhXGi5%jgEqQw!lbCK!R{SpcffgTAgpE}A=U zcaJEk2G;Un%P=!vx?ySWFaXAz>`=zIe4J-(mCwP5^2|D@fS}Zo`nAEJRNR0gOk|4} z9ZB@SFLf~32eeo`00L{qNpM(^s~Nh|Fl%BQITnw>i^jFJjrEqa_Q04VbsH)GK6T`! zN_kCdsWehRjD!ES6)9GqGdAlehwj9@=a;ga=HcIVut9X+xohl=&8qYT^QlpQ7PJiE zV0N-`1b~FnHjfFzdv(FBLZJ_6y$jC*R|*a?oWm%Xuqc7--W9>k$7NAHlWN6gf^Gx= zoYMA`B@LP@c|XotI8Z#?5NGKNvJCLJu_LV{La%BRzZ3zmrnKE$wCGE3UJD!eKo6$- zPbT{(@c%pH<{bY`Y%h85FZ6cfw|QG=p#qNWclb6eWz7l;Lha;VcHkYT@3l;7?h8%F zFgx7&@AmA6O{{!_>sa_bwKy&-Yb7R|@shRb=f$>lb0OgBe2C>q)fs08 z0Wdu%y3C9c48hK%vTB$3FjYasVZuE}jn>rnmpdKJOEWwdwI`Mj-CC73lwfWwuk5rt z6}zM2N<>loKjyn$7!cOKG(_I_w1!-HwQ%f; zwZA%tDbv_c)}PxMW$|U3a_9p0$XD?3k{SXkU(rcOy}9GpdhSp!XimdyPD(>isrQnWje)`9%h*Tl7czp1 zj}=iQ&lJAK%CaAZU`cuY#QFB4_22wX=kReWr7N+z{Fvem2z)z=_U7c~TE17ldNpCf z*`;1|?+F*Qxq(3Ry2jL=uzFl~Zq}8Z1GJgM@XXP}IqY?I{!afRAx3XIJ_065kv>AN zpWb5!#O(98y$pS&PikG>K~dPiPi+kizfierd&M?NA=IvqXM>TCm9uFQQr=Fp$C;VA z&SIOfmTa#nL7Rxz<(BecuJzS{m(t;k@Yuu7Ki~Q|h-EJ$V}3~G-x5gJR@i|Mfv#dz zmfh9u5;QqLbv)iTY>IF9E+>P+QaF~nNU|f%qSqpMb6*nhA3S~?W!rSt8Zsp7!92HT z6kthiMwZnVbLd@NTc?9}q1m8T>XsQCVVt=;IU5176}TY!4^MfoIaHvcVDbt5E)i z6=bY<7GCsH9UjPbwE4Tb9@Moj{l2=!ew~)8J2U;(|12@Fxmmc*nPC;?;9!5zY7uVX zQeRx3hdF{#h}lsAo1T;<&N9*KnNbof@Z;=lM$I8gOVcYYcXU|#0mD2X*9i~p{kDXu z8)Ru_o$+L#Z`9m;Kgd7a*)yH7t4dBLiLv`dG>GT(t&{2}l(77ZX!I4OH1nXZ^9@aH zPr80)a=PY>89j%Z`bGzp8#n?lRVaNez)z)*JH5H3Ws~hwKxGX!rK+mxOS|QIGx0&9 zdxgKJ1M~CJ>_p>B3Lm=BVm^G5og6t7c?%R3xr1~fg|1DeaImxC8$DTdKJeLd2Nwk+ zrI9D}rEG*%X(bPhG`Mw$qPn~3{} zWDi~Kp*2HHVzJ9{h)bEm12Js#FG*?O3R<(2*zA5d8ULK0|9Sh24{WnfdN{whXn-8c zg-{)%9}^ZLjD`teK4cEQ158r%#a33zhVmBDcjIEuBSzSJ&{NB9or2lWFK=M71!@@F9@O5{^w!2dKLxgF! zDVKh8>On(IrSr3VojxcBoVCXQFoQZf*Kiy5D9M^0ZzmwstInS+RX2+u3PZYy2d=;p z0kQUhTO&^Y8j$x*u5;i_o{SL$Q|IH@<@XNoH^?&nEreQK3ApHVmCty~oEj$?z zfXr1@dHVgN+a&)ZK}7sZHLB!&NrL$DK{z*;kt>$&0N#;jT~)K)30WJJBNYKJTDFR{m3W>6vJOOu%DhD;IxfL6c{EaJN%~93|>)h zFi~UV431qobh!;K5uwtUpMf|VsqIfvb2Dq;VASc4;NZ4EiMkvuEM%*K;<-;R6;S`> z<~Y-7!%JI*gvl&Y~0k}?_Xs$A-%CG zvV-cqJS-hO;8Z1~pRp)CyV_hhxl%ZvNeHBDeP($vgFZMfZ{I^Uz!mk5R49Xm>ofs9 z9F-e-%Y!CD!weUI4OH!5<7&W3#lpgR`Ca*|l+@xsjdU!IIlc{o)TtaXEk2-8CZI1* zV>Lk$6@a5p&N@odNE<;mdxI-89Kl2~Zi`DV(Ahzo{A8v;L$Xa%Xh??+T&cyO087ln zB|_Ff$|~|#;-6Ufk_G$zX2<{2H%MGuk%Gj~GutJDwh#RMua4OiOgnAlH-nKf^Zfb1 zOix&&=hwAIYzhw6{7+RVAOv7=UxZnB`(vv+x`W@JagINgbgQ@LTgR7|$ Date: Tue, 18 Oct 2022 18:43:54 -0400 Subject: [PATCH 06/30] Add new UI set-status-on-profile screenshot --- .../help/profile/set-status-on-profile.png | Bin 0 -> 76467 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/images/help/profile/set-status-on-profile.png diff --git a/assets/images/help/profile/set-status-on-profile.png b/assets/images/help/profile/set-status-on-profile.png new file mode 100644 index 0000000000000000000000000000000000000000..81f90fc8cfda8518bece875331f6032e2847e077 GIT binary patch literal 76467 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 literal 0 HcmV?d00001 From 62736228ec7c643b0cd0d4aaee286d8f4137a9c4 Mon Sep 17 00:00:00 2001 From: Laura Coursen Date: Wed, 19 Oct 2022 16:42:19 -0500 Subject: [PATCH 07/30] Enterprise bug fixes for the week of October 10, 2022 (#31691) Co-authored-by: Joe Clark <31087804+jc-clark@users.noreply.github.com> --- .../cluster-network-configuration.md | 2 +- ...-availability-replication-for-a-cluster.md | 2 +- .../creating-a-high-availability-replica.md | 2 ++ ...siderations-for-external-authentication.md | 27 ++++++++++++------- .../about-enterprise-managed-users.md | 4 ++- ...ails-within-the-enterprise-can-conflict.md | 6 ++++- .../enterprise_clustering/network-latency.md | 1 + 7 files changed, 30 insertions(+), 14 deletions(-) create mode 100644 data/reusables/enterprise_clustering/network-latency.md diff --git a/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md b/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md index 9ae58ffd19..3bca1364de 100644 --- a/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md +++ b/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md @@ -19,7 +19,7 @@ shortTitle: Configure a cluster network The simplest network design for clustering is to place the nodes on a single LAN. If a cluster must span subnetworks, we do not recommend configuring any firewall rules between the networks. The latency between nodes should be less than 1 millisecond. -{% ifversion ghes %}For high availability, the latency between the network with the active nodes and the network with the passive nodes must be less than 70 milliseconds. We don't recommend configuring a firewall between the two networks.{% endif %} +{% data reusables.enterprise_clustering.network-latency %} ### Application ports for end users diff --git a/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md b/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md index 1291e253e1..a4a6b01075 100644 --- a/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md +++ b/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md @@ -41,7 +41,7 @@ On each new virtual machine, install the same version of {% data variables.produ You must assign a static IP address to each new node that you provision, and you must configure a load balancer to accept connections and direct them to the nodes in your cluster's front-end tier. -We don't recommend configuring a firewall between the network with your active cluster and the network with your passive cluster. The latency between the network with the active nodes and the network with the passive nodes must be less than 70 milliseconds. For more information about network connectivity between nodes in the passive cluster, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration)." +{% data reusables.enterprise_clustering.network-latency %} For more information about network connectivity between nodes in the passive cluster, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration)." ## Creating a high availability replica for a cluster diff --git a/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md b/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md index 0f2952586c..b3f1c3ec05 100644 --- a/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md +++ b/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md @@ -39,6 +39,8 @@ shortTitle: Create HA replica This example configuration uses a primary and two replicas, which are located in three different geographic regions. While the three nodes can be in different networks, all nodes are required to be reachable from all the other nodes. At the minimum, the required administrative ports should be open to all the other nodes. For more information about the port requirements, see "[Network Ports](/enterprise/admin/guides/installation/network-ports/#administrative-ports)." +{% data reusables.enterprise_clustering.network-latency %}{% ifversion ghes > 3.2 %} If latency is more than 70 milliseconds, we recommend cache replica nodes instead. For more information, see "[Configuring a repository cache](/admin/enterprise-management/caching-repositories/configuring-a-repository-cache)."{% endif %} + 1. Create the first replica the same way you would for a standard two node configuration by running `ghe-repl-setup` on the first replica. ```shell (replica1)$ ghe-repl-setup PRIMARY_IP diff --git a/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md b/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md index 2eaaa11272..138d9b40d8 100644 --- a/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md +++ b/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md @@ -36,7 +36,9 @@ When you use external authentication, {% data variables.location.product_locatio If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" and "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)." -{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique. +{% data variables.product.prodname_dotcom %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP, then adding an underscore and short code. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username problems by making a change in your IdP so that the normalized usernames will be unique and within the 39-character limit. + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} {% elsif ghae %} @@ -62,7 +64,7 @@ These rules may result in your IdP providing the same _IDP-USERNAME_ for multipl - `bob@fabrikam.com` - `bob#EXT#fabrikamcom@contoso.com` -This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username conflicts](#resolving-username-conflicts)." +This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username problems](#resolving-username-problems)." {% endif %} Usernames{% ifversion ghec %}, including underscore and short code,{% endif %} must not exceed 39 characters. @@ -83,7 +85,7 @@ When you configure SAML authentication, {% data variables.product.product_name % 1. Usernames created from email addresses are created from the normalized characters that precede the `@` character. -1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username conflicts](#resolving-username-conflicts)."{% endif %} +1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username problems](#resolving-username-problems)."{% endif %} ### Examples of username normalization @@ -121,11 +123,16 @@ When you configure SAML authentication, {% data variables.product.product_name % {% endif %} {% ifversion ghec %} -## Resolving username conflicts +## Resolving username problems -When a new user is being provisioned, if the user's normalized username conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. +When a new user is being provisioned, if the username is longer than 39 characters (including underscore and short code), or conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. -To resolve this problem, you must make a change in your IdP so that the normalized usernames will be unique. If you cannot change the identifier that's being normalized, you can change the attribute mapping for the `userName` attribute. If you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. +To resolve this problem, you must make one of the following changes in your IdP so that all normalized usernames will be within the character limit and unique. +- Change the `userName` attribute value for individual users that are causing problems +- Change the `userName` attribute mapping for all users +- Configure a custom `userName` attribute for all users + +When you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. {% note %} @@ -133,9 +140,9 @@ To resolve this problem, you must make a change in your IdP so that the normaliz {% endnote %} -### Resolving username conflicts with Azure AD +### Resolving username problems with Azure AD -To resolve username conflicts in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. +To resolve username problems in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. 1. In Azure AD, open the {% data variables.product.prodname_emu_idp_application %} application. 1. In the left sidebar, click **Provisioning**. @@ -146,9 +153,9 @@ To resolve username conflicts in Azure AD, either modify the User Principal Name - To map an existing attribute in Azure AD to the `userName` attribute in {% data variables.product.prodname_dotcom %}, click your desired attribute field. Then, save and wait for a provisioning cycle to occur within about 40 minutes. - To use an expression instead of an existing attribute, change the Mapping type to "Expression", then add a custom expression that will make this value unique for all users. For example, you could use `[FIRST NAME]-[LAST NAME]-[EMPLOYEE ID]`. For more information, see [Reference for writing expressions for attribute mappings in Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/app-provisioning/functions-for-customizing-application-data) in Microsoft Docs. -### Resolving username conflicts with Okta +### Resolving username problems with Okta -To resolve username conflicts in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. +To resolve username problems in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. 1. In Okta, open the {% data variables.product.prodname_emu_idp_application %} application. 1. Click **Sign On**. diff --git a/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 90a11171f2..a448aa318d 100644 --- a/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -136,7 +136,9 @@ By default, when an unauthenticated user attempts to access an enterprise that u {% data variables.product.product_name %} automatically creates a username for each person by normalizing an identifier provided by your IdP. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)." -A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." +A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username problems](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-problems)." + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} The profile name and email address of a {% data variables.enterprise.prodname_managed_user %} is also provided by the IdP. {% data variables.enterprise.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. diff --git a/data/reusables/enterprise-accounts/emu-only-emails-within-the-enterprise-can-conflict.md b/data/reusables/enterprise-accounts/emu-only-emails-within-the-enterprise-can-conflict.md index 09811213e2..fc9b61015f 100644 --- a/data/reusables/enterprise-accounts/emu-only-emails-within-the-enterprise-can-conflict.md +++ b/data/reusables/enterprise-accounts/emu-only-emails-within-the-enterprise-can-conflict.md @@ -1 +1,5 @@ -{% data variables.product.prodname_dotcom %} only checks for conflicts within an {% data variables.enterprise.prodname_emu_enterprise %}. {% data variables.enterprise.prodname_managed_users_caps %} can have the same username or email address as a user account outside of the enterprise on {% data variables.product.prodname_dotcom_the_website %}. +{% note %} + +**Note:** Because {% data variables.product.prodname_dotcom %} adds an underscore and short code to the normalized identifier provided by your IdP when creating each username, conflicts can only occur within each {% data variables.enterprise.prodname_emu_enterprise %}. {% data variables.enterprise.prodname_managed_users_caps %} can share IdP identifiers or email addresses with other user accounts on {% data variables.product.prodname_dotcom_the_website %} that are outside the enterprise. + +{% endnote %} diff --git a/data/reusables/enterprise_clustering/network-latency.md b/data/reusables/enterprise_clustering/network-latency.md new file mode 100644 index 0000000000..f5178140f5 --- /dev/null +++ b/data/reusables/enterprise_clustering/network-latency.md @@ -0,0 +1 @@ +For high availability, the latency between the network with the active nodes and the network with the passive nodes must be less than 70 milliseconds. We don't recommend configuring a firewall between the two networks. \ No newline at end of file From c7e06251e0998b3c30fac834625e0fcd55215aea Mon Sep 17 00:00:00 2001 From: Robert Sese <734194+rsese@users.noreply.github.com> Date: Wed, 19 Oct 2022 17:03:13 -0500 Subject: [PATCH 08/30] Get the category from x-github subcategory (#31846) --- script/rest/utils/webhook.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/rest/utils/webhook.js b/script/rest/utils/webhook.js index 3bcbdd94ba..f04e6dcbe2 100644 --- a/script/rest/utils/webhook.js +++ b/script/rest/utils/webhook.js @@ -28,7 +28,7 @@ export default class Webhook { `requestBody.content['application/json'].schema.properties.action.enum[0]`, null ) - this.category = webhook.tags[0] + this.category = webhook['x-github'].subcategory return this } From 3043ca41d2591ec17f46e4b17ec64f3dcad2a55e Mon Sep 17 00:00:00 2001 From: Mariam <15mariams@github.com> Date: Wed, 19 Oct 2022 15:25:43 -0700 Subject: [PATCH 09/30] Update token-expiration-and-revocation.md (#31870) --- .../token-expiration-and-revocation.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md b/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md index 7dae72fd34..877fedd33b 100644 --- a/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md +++ b/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md @@ -35,8 +35,6 @@ When you create a {% data variables.product.pat_generic %}, we recommend that yo If a valid OAuth token, {% data variables.product.prodname_github_app %} token, or {% data variables.product.pat_generic %} is pushed to a public repository or public gist, the token will be automatically revoked. -OAuth tokens and personal {% data variables.product.pat_v1_plural %} pushed to public repositories and public gists will only be revoked if the token has scopes.{% ifversion pat-v2 %} {% data variables.product.pat_v2_caps %}s will always be revoked.{% endif %} - {% endif %} {% ifversion fpt or ghec %} From 5c12ab83c76f8994cbe81ea38df6bae96d322add Mon Sep 17 00:00:00 2001 From: Vanessa Date: Thu, 20 Oct 2022 09:01:37 +1000 Subject: [PATCH 10/30] Apply suggestions from code review --- ...nerating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md b/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md index 4625fd4622..e95ef98441 100644 --- a/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md +++ b/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md @@ -125,7 +125,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav * Open your `~/.ssh/config` file, then modify the file to contain the following lines. If your SSH key file has a different name or path than the example code, modify the filename or path to match your current setup. ``` - Host *.github.com + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_{% ifversion ghae %}ecdsa{% else %}ed25519{% endif %} @@ -137,10 +137,10 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav - If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line. - - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.github.com` section. + - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}` section. ``` - Host *.github.com + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} IgnoreUnknown UseKeychain ``` {% endnote %} From d948ef9b4525df2e89127324e031001e4c1c289e Mon Sep 17 00:00:00 2001 From: Vanessa Date: Thu, 20 Oct 2022 09:45:36 +1000 Subject: [PATCH 11/30] Apply suggestions from code review --- .../about-custom-domains-and-github-pages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index adebb587e1..264d7bd5dc 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -31,7 +31,7 @@ You can set up either or both of apex and `www` subdomain configurations for you We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." After you configure a custom domain for a user or organization site, the custom domain will replace the `.github.io` or `.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`. -For more information about the types of {% data variables.product.prodname_pages %} see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)" which dives deeper into specifics such as handling custom domains and explanations for each type (e.g user, organization). +For more information about each type of site and handling custom domains, see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." ## Using a subdomain for your {% data variables.product.prodname_pages %} site From 75763af38524b8118169e4c77c080455e9a60b51 Mon Sep 17 00:00:00 2001 From: "Roger D. Winans" Date: Wed, 19 Oct 2022 20:11:46 -0400 Subject: [PATCH 12/30] Update 2022-09-hotpatch-issue.md with non-interactive workaround (#31699) Co-authored-by: Vanessa --- .../release-notes/2022-09-hotpatch-issue.md | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/data/reusables/release-notes/2022-09-hotpatch-issue.md b/data/reusables/release-notes/2022-09-hotpatch-issue.md index a29caa46a2..ed64a97c43 100644 --- a/data/reusables/release-notes/2022-09-hotpatch-issue.md +++ b/data/reusables/release-notes/2022-09-hotpatch-issue.md @@ -1,13 +1,7 @@ -Hotpatch upgrades to GitHub Enterprise Server {% ifversion ghes = 3.4 %}3.4.9{% elsif ghes = 3.5 %}3.5.6{% elsif ghes = 3.6 %}3.6.2{% endif %} may fail. Upgrades with the full `.pkg` are unaffected. If the upgrade fails for your instance, either run the full `.pkg` upgrade, or work around the issue by performing the following steps. +Hotpatch upgrades to GitHub Enterprise Server {% ifversion ghes = 3.4 %}3.4.9{% elsif ghes = 3.5 %}3.5.6{% elsif ghes = 3.6 %}3.6.2{% endif %} may fail. Upgrades with the full `.pkg` are unaffected. If the upgrade fails for your instance, workaround this issue by connecting to the administrative shell (ssh) and running the following non-interactive command: -1. SSH into the affected node. -1. To launch GRUB, run the following command. +``` +echo "grub-pc grub-pc/install_devices_empty boolean true" | sudo debconf-set-selections +``` - ``` - sudo dpkg --configure -a - ``` -1. In the first GRUB window, you will see a list of devices. Do not modify the selection. Press the Tab key to highlight ``, then press Return/Enter to accept. -1. In the second GRUB window, to continue without installing GRUB, use the arrow keys to highlight ``, then press Return/Enter to accept. -1. After you are returned to the prompt, use `ghe-upgrade` to start the hotpatch installation again. - -If you're unable to upgrade, or if you need further assistance, contact GitHub Support. For more information, see "[Creating a support ticket](/support/contacting-github-support/creating-a-support-ticket)." [Updated: 2022-09-27] +If you're unable to upgrade, or if you need further assistance, contact GitHub Support. For more information, see "[Creating a support ticket](/support/contacting-github-support/creating-a-support-ticket)." [Updated: 2022-10-14] From 519c7da3d852f298cc821e31e4bdaed96f7b59cb Mon Sep 17 00:00:00 2001 From: github-openapi-bot <69533958+github-openapi-bot@users.noreply.github.com> Date: Wed, 19 Oct 2022 23:53:20 -0700 Subject: [PATCH 13/30] Update OpenAPI Descriptions (#31888) Co-authored-by: github-openapi-bot --- lib/rest/static/decorated/api.github.com.json | 107 +++++++++-- lib/rest/static/decorated/ghec.json | 107 +++++++++-- lib/rest/static/decorated/ghes-3.2.json | 61 ++++++- lib/rest/static/decorated/ghes-3.3.json | 72 +++++++- lib/rest/static/decorated/ghes-3.4.json | 72 +++++++- lib/rest/static/decorated/ghes-3.5.json | 72 +++++++- lib/rest/static/decorated/ghes-3.6.json | 72 +++++++- lib/rest/static/decorated/github.ae.json | 61 ++++++- .../dereferenced/api.github.com.deref.json | 168 +++++++++++++++++- lib/rest/static/dereferenced/ghec.deref.json | 168 +++++++++++++++++- .../static/dereferenced/ghes-3.2.deref.json | 88 ++++++++- .../static/dereferenced/ghes-3.3.deref.json | 95 +++++++++- .../static/dereferenced/ghes-3.4.deref.json | 95 +++++++++- .../static/dereferenced/ghes-3.5.deref.json | 95 +++++++++- .../static/dereferenced/ghes-3.6.deref.json | 95 +++++++++- .../static/dereferenced/github.ae.deref.json | 81 ++++++++- 16 files changed, 1387 insertions(+), 122 deletions(-) diff --git a/lib/rest/static/decorated/api.github.com.json b/lib/rest/static/decorated/api.github.com.json index f20c395201..6c1c540924 100644 --- a/lib/rest/static/decorated/api.github.com.json +++ b/lib/rest/static/decorated/api.github.com.json @@ -130069,6 +130069,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -130520,6 +130525,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -130971,6 +130981,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -139176,7 +139191,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -148134,7 +148158,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -161895,6 +161928,10 @@ { "httpStatusCode": "404", "description": "

Resource not found

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "codespaces" @@ -165666,6 +165703,10 @@ { "httpStatusCode": "404", "description": "

Resource not found

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "codespaces" @@ -170977,6 +171018,10 @@ { "httpStatusCode": "404", "description": "

Resource not found

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "codespaces" @@ -186264,7 +186309,7 @@ "enabledForGitHubApps": true, "codeExamples": [ { - "key": "201", + "key": "default", "request": { "contentType": "application/json", "description": "Example 1: Status Code 201", @@ -186281,7 +186326,16 @@ }, "response": { "statusCode": "201", - "description": "

Response when creating a secret

" + "contentType": "application/json", + "description": "

Response when creating a secret

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } }, { @@ -186723,7 +186777,7 @@ "enabledForGitHubApps": false, "codeExamples": [ { - "key": "201", + "key": "default", "request": { "contentType": "application/json", "description": "Example 1: Status Code 201", @@ -186742,7 +186796,16 @@ }, "response": { "statusCode": "201", - "description": "

Response after successfully creaing a secret

" + "contentType": "application/json", + "description": "

Response after successfully creating a secret

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } }, { @@ -186773,7 +186836,7 @@ "statusCodes": [ { "httpStatusCode": "201", - "description": "

Response after successfully creaing a secret

" + "description": "

Response after successfully creating a secret

" }, { "httpStatusCode": "204", @@ -243911,7 +243974,11 @@ "request": { "contentType": "application/json", "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "limit": "collaborators_only", + "expiry": "one_month" + } }, "response": { "statusCode": "200", @@ -480845,8 +480912,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -484594,8 +484664,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -496707,8 +496780,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -503487,8 +503564,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/ghec.json b/lib/rest/static/decorated/ghec.json index bea98858a0..2ddeb77762 100644 --- a/lib/rest/static/decorated/ghec.json +++ b/lib/rest/static/decorated/ghec.json @@ -130519,6 +130519,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -130970,6 +130975,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -131421,6 +131431,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -139626,7 +139641,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -148584,7 +148608,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -162345,6 +162378,10 @@ { "httpStatusCode": "404", "description": "

Resource not found

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "codespaces" @@ -166116,6 +166153,10 @@ { "httpStatusCode": "404", "description": "

Resource not found

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "codespaces" @@ -171427,6 +171468,10 @@ { "httpStatusCode": "404", "description": "

Resource not found

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "codespaces" @@ -186714,7 +186759,7 @@ "enabledForGitHubApps": true, "codeExamples": [ { - "key": "201", + "key": "default", "request": { "contentType": "application/json", "description": "Example 1: Status Code 201", @@ -186731,7 +186776,16 @@ }, "response": { "statusCode": "201", - "description": "

Response when creating a secret

" + "contentType": "application/json", + "description": "

Response when creating a secret

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } }, { @@ -187173,7 +187227,7 @@ "enabledForGitHubApps": false, "codeExamples": [ { - "key": "201", + "key": "default", "request": { "contentType": "application/json", "description": "Example 1: Status Code 201", @@ -187192,7 +187246,16 @@ }, "response": { "statusCode": "201", - "description": "

Response after successfully creaing a secret

" + "contentType": "application/json", + "description": "

Response after successfully creating a secret

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } }, { @@ -187223,7 +187286,7 @@ "statusCodes": [ { "httpStatusCode": "201", - "description": "

Response after successfully creaing a secret

" + "description": "

Response after successfully creating a secret

" }, { "httpStatusCode": "204", @@ -245296,7 +245359,11 @@ "request": { "contentType": "application/json", "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "limit": "collaborators_only", + "expiry": "one_month" + } }, "response": { "statusCode": "200", @@ -485163,8 +485230,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -488912,8 +488982,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -502593,8 +502666,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -509373,8 +509450,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/ghes-3.2.json b/lib/rest/static/decorated/ghes-3.2.json index 4fa449aced..0a9f41409a 100644 --- a/lib/rest/static/decorated/ghes-3.2.json +++ b/lib/rest/static/decorated/ghes-3.2.json @@ -111907,6 +111907,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -112358,6 +112363,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -112809,6 +112819,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129847,7 +129862,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -273510,8 +273534,17 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating scopes and note", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + }, "parameters": { "authorization_id": "AUTHORIZATION_ID" } @@ -402227,8 +402260,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -405857,8 +405893,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -417318,8 +417357,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -422954,8 +422997,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/ghes-3.3.json b/lib/rest/static/decorated/ghes-3.3.json index b68ee86685..16dbd3d40b 100644 --- a/lib/rest/static/decorated/ghes-3.3.json +++ b/lib/rest/static/decorated/ghes-3.3.json @@ -112383,6 +112383,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -112834,6 +112839,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -113285,6 +113295,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -121490,7 +121505,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -130402,7 +130426,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -274468,8 +274501,17 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating scopes and note", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + }, "parameters": { "authorization_id": "AUTHORIZATION_ID" } @@ -399955,8 +399997,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -403594,8 +403639,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -415023,8 +415071,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -420659,8 +420711,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/ghes-3.4.json b/lib/rest/static/decorated/ghes-3.4.json index b461c61715..afc10b03ac 100644 --- a/lib/rest/static/decorated/ghes-3.4.json +++ b/lib/rest/static/decorated/ghes-3.4.json @@ -117679,6 +117679,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -118130,6 +118135,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -118581,6 +118591,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -126786,7 +126801,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -135696,7 +135720,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -292558,8 +292591,17 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating scopes and note", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + }, "parameters": { "authorization_id": "AUTHORIZATION_ID" } @@ -419496,8 +419538,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -423135,8 +423180,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -434573,8 +434621,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -440209,8 +440261,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/ghes-3.5.json b/lib/rest/static/decorated/ghes-3.5.json index d6b681c238..5224abaa3d 100644 --- a/lib/rest/static/decorated/ghes-3.5.json +++ b/lib/rest/static/decorated/ghes-3.5.json @@ -123351,6 +123351,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -123802,6 +123807,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -124253,6 +124263,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -132458,7 +132473,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -141392,7 +141416,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -299720,8 +299753,17 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating scopes and note", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + }, "parameters": { "authorization_id": "AUTHORIZATION_ID" } @@ -427150,8 +427192,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -430803,8 +430848,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -442241,8 +442289,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -447877,8 +447929,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/ghes-3.6.json b/lib/rest/static/decorated/ghes-3.6.json index 3580cd39ce..c8fedd33d7 100644 --- a/lib/rest/static/decorated/ghes-3.6.json +++ b/lib/rest/static/decorated/ghes-3.6.json @@ -125868,6 +125868,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -126319,6 +126324,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -126770,6 +126780,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -134975,7 +134990,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -143933,7 +143957,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -309051,8 +309084,17 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating scopes and note", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + }, "parameters": { "authorization_id": "AUTHORIZATION_ID" } @@ -439531,8 +439573,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -443280,8 +443325,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -455482,8 +455530,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -461216,8 +461268,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/decorated/github.ae.json b/lib/rest/static/decorated/github.ae.json index aa955193cc..dcfebd265b 100644 --- a/lib/rest/static/decorated/github.ae.json +++ b/lib/rest/static/decorated/github.ae.json @@ -89279,6 +89279,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -89730,6 +89735,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "octoapp" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -90181,6 +90191,11 @@ "contentType": "application/json", "description": "Example", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "apps": [ + "my-app" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -98386,7 +98401,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -107344,7 +107368,16 @@ }, "response": { "statusCode": "201", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": null, + "schema": { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false + } } } ], @@ -372689,8 +372722,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to read", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "read" + }, "parameters": { "team_id": "TEAM_ID", "project_id": "PROJECT_ID" @@ -376361,8 +376397,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of setting permission to pull", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permission": "push" + }, "parameters": { "team_id": "TEAM_ID", "owner": "OWNER", @@ -388442,8 +388481,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", - "acceptHeader": "application/vnd.github.v3+json" + "description": "Example of updating blog and name", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } }, "response": { "statusCode": "200", @@ -393637,8 +393680,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example of updating content type and URL", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "content_type": "json", + "url": "https://example.com/webhook" + }, "parameters": { "owner": "OWNER", "repo": "REPO", diff --git a/lib/rest/static/dereferenced/api.github.com.deref.json b/lib/rest/static/dereferenced/api.github.com.deref.json index f1ca4930a9..56282ff24d 100644 --- a/lib/rest/static/dereferenced/api.github.com.deref.json +++ b/lib/rest/static/dereferenced/api.github.com.deref.json @@ -191066,6 +191066,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -191611,6 +191620,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -192155,6 +192173,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -203022,10 +203049,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -210762,10 +210796,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -220868,6 +220909,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -222221,10 +222283,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -274869,12 +274938,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -381538,6 +381610,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -437893,6 +437986,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -441868,6 +441969,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -443305,6 +443414,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } @@ -450091,6 +450209,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -450469,14 +450608,21 @@ }, "responses": { "201": { - "description": "Response after successfully creaing a secret", + "description": "Response after successfully creating a secret", "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -466740,6 +466886,14 @@ "required": [ "limit" ] + }, + "examples": { + "default": { + "value": { + "limit": "collaborators_only", + "expiry": "one_month" + } + } } } } diff --git a/lib/rest/static/dereferenced/ghec.deref.json b/lib/rest/static/dereferenced/ghec.deref.json index ce4a219953..a4a3516956 100644 --- a/lib/rest/static/dereferenced/ghec.deref.json +++ b/lib/rest/static/dereferenced/ghec.deref.json @@ -194559,6 +194559,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -195104,6 +195113,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -195648,6 +195666,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -206515,10 +206542,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -214255,10 +214289,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -224361,6 +224402,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -225714,10 +225776,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -278362,12 +278431,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -385031,6 +385103,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -445074,6 +445167,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -449049,6 +449150,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -450975,6 +451084,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } @@ -457761,6 +457879,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -458139,14 +458278,21 @@ }, "responses": { "201": { - "description": "Response after successfully creaing a secret", + "description": "Response after successfully creating a secret", "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -474410,6 +474556,14 @@ "required": [ "limit" ] + }, + "examples": { + "default": { + "value": { + "limit": "collaborators_only", + "expiry": "one_month" + } + } } } } diff --git a/lib/rest/static/dereferenced/ghes-3.2.deref.json b/lib/rest/static/dereferenced/ghes-3.2.deref.json index d9cf4deeba..0974d86d54 100644 --- a/lib/rest/static/dereferenced/ghes-3.2.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.2.deref.json @@ -26777,6 +26777,20 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating scopes and note", + "value": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + } + } } } } @@ -156354,6 +156368,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -156899,6 +156922,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -157443,6 +157475,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -175134,10 +175175,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -226295,12 +226343,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -380592,6 +380643,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -384451,6 +384510,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -385886,6 +385953,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } diff --git a/lib/rest/static/dereferenced/ghes-3.3.deref.json b/lib/rest/static/dereferenced/ghes-3.3.deref.json index 2edf42a85e..88ae26b1ba 100644 --- a/lib/rest/static/dereferenced/ghes-3.3.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.3.deref.json @@ -26642,6 +26642,20 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating scopes and note", + "value": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + } + } } } } @@ -158227,6 +158241,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -158772,6 +158795,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -159316,6 +159348,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -169457,10 +169498,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -177155,10 +177203,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -228266,12 +228321,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -382953,6 +383011,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -386818,6 +386884,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -388253,6 +388327,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } diff --git a/lib/rest/static/dereferenced/ghes-3.4.deref.json b/lib/rest/static/dereferenced/ghes-3.4.deref.json index fc3ba1aa69..01d73d0bd7 100644 --- a/lib/rest/static/dereferenced/ghes-3.4.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.4.deref.json @@ -24645,6 +24645,20 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating scopes and note", + "value": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + } + } } } } @@ -172480,6 +172494,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -173025,6 +173048,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -173569,6 +173601,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -184436,10 +184477,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -192128,10 +192176,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -243493,12 +243548,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -398398,6 +398456,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -402263,6 +402329,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -403698,6 +403772,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } diff --git a/lib/rest/static/dereferenced/ghes-3.5.deref.json b/lib/rest/static/dereferenced/ghes-3.5.deref.json index 09c00fae11..899696fbc0 100644 --- a/lib/rest/static/dereferenced/ghes-3.5.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.5.deref.json @@ -24645,6 +24645,20 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating scopes and note", + "value": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + } + } } } } @@ -179605,6 +179619,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -180150,6 +180173,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -180694,6 +180726,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -191561,10 +191602,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -199277,10 +199325,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -250856,12 +250911,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -406249,6 +406307,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -410128,6 +410194,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -411563,6 +411637,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } diff --git a/lib/rest/static/dereferenced/ghes-3.6.deref.json b/lib/rest/static/dereferenced/ghes-3.6.deref.json index d8d8858326..a9bb30beb6 100644 --- a/lib/rest/static/dereferenced/ghes-3.6.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.6.deref.json @@ -24727,6 +24727,20 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating scopes and note", + "value": { + "add_scopes": [ + "public_repo" + ], + "remove_scopes": [ + "user" + ], + "note": "optional note" + } + } } } } @@ -183639,6 +183653,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -184184,6 +184207,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -184728,6 +184760,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -195595,10 +195636,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -203335,10 +203383,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -255821,12 +255876,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -420541,6 +420599,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -424516,6 +424582,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -425951,6 +426025,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } diff --git a/lib/rest/static/dereferenced/github.ae.deref.json b/lib/rest/static/dereferenced/github.ae.deref.json index 61cc5c5b23..795b95727b 100644 --- a/lib/rest/static/dereferenced/github.ae.deref.json +++ b/lib/rest/static/dereferenced/github.ae.deref.json @@ -144141,6 +144141,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -144686,6 +144695,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "octoapp" + ] + } + } } } } @@ -145230,6 +145248,15 @@ } } ] + }, + "examples": { + "default": { + "value": { + "apps": [ + "my-app" + ] + } + } } } } @@ -153115,10 +153142,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -160855,10 +160889,17 @@ "content": { "application/json": { "schema": { + "title": "Empty Object", + "description": "An object without any properties.", "type": "object", "properties": { }, "additionalProperties": false + }, + "examples": { + "default": { + "value": null + } } } } @@ -212001,12 +212042,15 @@ } ] } - }, - "example": { - "content_type": "json", - "insecure_ssl": "0", - "secret": "********", - "url": "https://example.com/webhook" + } + }, + "examples": { + "default": { + "summary": "Example of updating content type and URL", + "value": { + "content_type": "json", + "url": "https://example.com/webhook" + } } } } @@ -361879,6 +361923,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to read", + "value": { + "permission": "read" + } + } } } } @@ -365777,6 +365829,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example of setting permission to pull", + "value": { + "permission": "push" + } + } } } } @@ -367214,6 +367274,15 @@ "type": "string" } } + }, + "examples": { + "default": { + "summary": "Example of updating blog and name", + "value": { + "blog": "https://github.com/blog", + "name": "monalisa octocat" + } + } } } } From 4211384489c957eece4646a3078753034c633c76 Mon Sep 17 00:00:00 2001 From: Siara <108543037+SiaraMist@users.noreply.github.com> Date: Thu, 20 Oct 2022 06:02:33 -0700 Subject: [PATCH 14/30] Adds content for Actions cache UI (#31738) Co-authored-by: github-actions Co-authored-by: Lucas Costi Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com> --- .../help/repository/actions-cache-delete.png | Bin 0 -> 106428 bytes .../repository/actions-cache-entry-list.png | Bin 0 -> 94753 bytes ...hing-dependencies-to-speed-up-workflows.md | 54 +++++++++++++++++- ...s-for-github-actions-in-your-enterprise.md | 16 +++++- ...ng-github-actions-for-your-organization.md | 34 +++++++++++ ...ithub-actions-settings-for-a-repository.md | 13 ++++- data/features/actions-cache-admin-ui.yml | 6 ++ data/features/actions-cache-org-ui.yml | 8 +++ data/features/actions-cache-ui.yml | 8 +++ .../actions/change-cache-size-limit.md | 2 + .../repositories/actions-cache-list.md | 1 + 11 files changed, 137 insertions(+), 5 deletions(-) create mode 100644 assets/images/help/repository/actions-cache-delete.png create mode 100644 assets/images/help/repository/actions-cache-entry-list.png create mode 100644 data/features/actions-cache-admin-ui.yml create mode 100644 data/features/actions-cache-org-ui.yml create mode 100644 data/features/actions-cache-ui.yml create mode 100644 data/reusables/actions/change-cache-size-limit.md create mode 100644 data/reusables/repositories/actions-cache-list.md diff --git a/assets/images/help/repository/actions-cache-delete.png b/assets/images/help/repository/actions-cache-delete.png new file mode 100644 index 0000000000000000000000000000000000000000..67737d48b1223ca0d3f96ee2edfa9c6f1fc5f0c4 GIT binary patch literal 106428 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
fG7b>#wINGfh}yTS2--xt%9)W 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�E3IoQ^s>bMK`ukB)E;SI4(qDv5HBv>&QMZ5*PoT>y3?rE5Z8}zK|s-NBOmC-Z0!#!64WQJ6mo)V#((3(fjG0 zc6>+fgPsXY9IEGKqwQwIv>4LCS(2+~P(L9R#{*o8ctfq|CUOLNgMl#TKazw^CAd$;2Z za(K4S>6Obm*L4QVPCG>3;!H#u@JT*;?VI(1>qq3#_kltheB1LHFlBzj3b)mrYf<;- zci<+M&8p_FT*ra7aPUVBfbTudzW)=_`LO7hl}X#;S$GxS8;8&|{Y4J1j;n9n^2*6C z7;^VY@wJcZmKOe{0k%gJ{9kCa=l|)>{`w!-VJOFxkUuKK$=0RhjoX>rIsU3^fp|gG zp6>(sLkpbGSpR47x;u$95u+f_RX(1l?AQo_53}hjlo{&s?xDY3%unygDa0y=gUYsq zoJ022r{{l4>yJ@?qmD7=1l)Oqv7PMgprjxp^lzJb9E!i%$1TlrsJ?i+-amU1Tts0AT0 zGUVd1%#oDQrQV~cJvZMz`Wz&ns5L`dqzVIZ1~9s#+)7 zvN1fkUkY5Dyv*0aT^3zkXC^|r=y4ntE~R0)`32%Oe#N7BC;x#R@d1fGfhxeC70%znB~}Z_vESS zj53d7u-@MX^2gTxb^e7r26_a99{48zBxsmmv{6CL)4ijl@+%O^DeSbeEpTS((i~CuIHj{Z#N8?fUV+d8nwp zdM|Q+sO6%}p*PWXQ3^k-L;u#HZ6gGXzmfx@@A92@OVIA^$+VUHY54!?B2pkA$~pvV zrPO)IDOq2xRekitKR^7bfk4wVCwOGF4_~y!R-;^#mN|x{fBMKjUBuj?=2+KEWk}SL4UOuY>9x0Q>+ZUTC{uj%6Ma^)9rp$ zEn5jui0ZLbW&&l+jut<;nsdACSG(B_>a5M#WSK*CF8V718Fqyrp6OTR#UoIjZQs`9 z{VxAnljk@leJ}3 zSs?;)xqk8bHo4!DV88v91RIW%6=M7KGz|UcqN+a;bMD`4@Q3C%gLD*(RLr=0J(*)z zX;bPK*Pw*3`yN$YEdCZ%6*(LuvhSC}HVK8Yhn)TbnG_a@d=wk~W%)2Xmbsh4+Wc2khLHP10DH@WxwZuX~E%Wh(KuJ&7=`A(wYo4p}< zvWK9*+RDyyZi9F7ogF!N_K{4=U$l*Y|clohX!YU7|eg` z(0maBT(@M35m(xsO9_kC{3jgG|MKsqphD{LbCXu)&4-XiLZ09O^S{4P6PV9Mt9;E{ zn7O{9Ek2(Pmpxr}>z2qbJ%P?FZjVmo-3azN!?_P= 3.8' diff --git a/data/features/actions-cache-org-ui.yml b/data/features/actions-cache-org-ui.yml new file mode 100644 index 0000000000..8c082a844e --- /dev/null +++ b/data/features/actions-cache-org-ui.yml @@ -0,0 +1,8 @@ +# Reference: #8112 +# Documentation for the Actions cache list UI for organizations +# Related feature flags are actions-cache-admin-ui and actions-cache-ui +# All features released at the same time, but have different versions +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.8' diff --git a/data/features/actions-cache-ui.yml b/data/features/actions-cache-ui.yml new file mode 100644 index 0000000000..8df98f9b48 --- /dev/null +++ b/data/features/actions-cache-ui.yml @@ -0,0 +1,8 @@ +# Reference: #8112 +# Documentation for Actions cache management via the UI for repositories +# Related feature flags are actions-cache-admin-ui and actions-cache-org-ui +# All features released at the same time, but have different versions +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.8' diff --git a/data/reusables/actions/change-cache-size-limit.md b/data/reusables/actions/change-cache-size-limit.md new file mode 100644 index 0000000000..de5464182a --- /dev/null +++ b/data/reusables/actions/change-cache-size-limit.md @@ -0,0 +1,2 @@ +1. Under **Cache size limit**, enter a new value. +1. Click **Save** to apply the change. \ No newline at end of file diff --git a/data/reusables/repositories/actions-cache-list.md b/data/reusables/repositories/actions-cache-list.md new file mode 100644 index 0000000000..496afe194e --- /dev/null +++ b/data/reusables/repositories/actions-cache-list.md @@ -0,0 +1 @@ +1. In the left sidebar, under the "Management" section, click {% octicon "cache" aria-label="The Cache icon" %} **Caches**. \ No newline at end of file From 63da7833886bb45129f7a9a55631bca0095d67a0 Mon Sep 17 00:00:00 2001 From: Siara <108543037+SiaraMist@users.noreply.github.com> Date: Thu, 20 Oct 2022 06:26:50 -0700 Subject: [PATCH 15/30] =?UTF-8?q?[2022-10-17]:=20=F0=9F=8E=81=20Repo=20Adm?= =?UTF-8?q?ins=20can=20prevent=20the=20last=20pusher=20from=20approving=20?= =?UTF-8?q?their=20PR-=20[GA]=20(#31336)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: github-actions --- .../repository/last-pusher-review-required.png | Bin 0 -> 79989 bytes .../about-protected-branches.md | 4 ++++ .../managing-a-branch-protection-rule.md | 4 ++++ data/features/last-pusher-require-approval.yml | 7 +++++++ 4 files changed, 15 insertions(+) create mode 100644 assets/images/help/repository/last-pusher-review-required.png create mode 100644 data/features/last-pusher-require-approval.yml diff --git a/assets/images/help/repository/last-pusher-review-required.png b/assets/images/help/repository/last-pusher-review-required.png new file mode 100644 index 0000000000000000000000000000000000000000..a5baa85e1038990890e4c830d8cdb5f1e8d5d3dc GIT binary patch literal 79989 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�A@ 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.8' + ghae: '>=3.8' From 4ced151df1919c9eac39fa89caa21895e8ca684f Mon Sep 17 00:00:00 2001 From: Patrick Knight Date: Thu, 20 Oct 2022 08:44:36 -0500 Subject: [PATCH 16/30] Documentation update and screenshot for Lock Branch branch protection (#31739) Co-authored-by: github-actions Co-authored-by: Sophie <29382425+sophietheking@users.noreply.github.com> Co-authored-by: David Staheli <1767415+davidstaheli@users.noreply.github.com> --- .../help/repository/lock-branch-forksync.png | Bin 0 -> 9669 bytes assets/images/help/repository/lock-branch.png | Bin 0 -> 4808 bytes .../about-protected-branches.md | 10 ++++++++++ .../managing-a-branch-protection-rule.md | 6 ++++++ data/features/lock-branch.yml | 7 +++++++ 5 files changed, 23 insertions(+) create mode 100644 assets/images/help/repository/lock-branch-forksync.png create mode 100644 assets/images/help/repository/lock-branch.png create mode 100644 data/features/lock-branch.yml diff --git a/assets/images/help/repository/lock-branch-forksync.png b/assets/images/help/repository/lock-branch-forksync.png new file mode 100644 index 0000000000000000000000000000000000000000..309f2e944fb2f2ce1850775c5cf4e2358338d3fd GIT binary patch literal 9669 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.8' + ghae: '>= 3.8' From 85b6951eb1778240199a2b00dbb0f5ee94e74e4b Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Thu, 20 Oct 2022 17:18:05 +0200 Subject: [PATCH 17/30] cope better with redirects to / (#31903) --- lib/get-redirect.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/get-redirect.js b/lib/get-redirect.js index d26551b710..f4f6e84c07 100644 --- a/lib/get-redirect.js +++ b/lib/get-redirect.js @@ -1,12 +1,12 @@ import { languageKeys } from './languages.js' import nonEnterpriseDefaultVersion from './non-enterprise-default-version.js' - import { allVersions } from './all-versions.js' import { latest, supported, deprecatedWithFunctionalRedirects, } from './enterprise-server-releases.js' +import { getPathWithLanguage } from './path-utils.js' const languagePrefixRegex = new RegExp(`^/(${languageKeys.join('|')})/`) const nonEnterpriseDefaultVersionPrefix = `/${nonEnterpriseDefaultVersion}` @@ -33,7 +33,7 @@ export default function getRedirect(uri, context) { // `redirects` is sourced from more than one thing. The primary use // case is gathering up the `redirect_from` frontmatter key. - // But we also has `developer.json` which contains legacy redirects. + // But we also have `developer.json` which contains legacy redirects. // For example, the `developer.json` will have entries such // `/enterprise/v4/enum/auditlogorderfield` which clearly is using // the old formatting of the version. So to leverage the redirects @@ -43,7 +43,7 @@ export default function getRedirect(uri, context) { if (redirects[withoutLanguage].includes('://')) { return redirects[withoutLanguage] } - return `/${language}` + redirects[withoutLanguage] + return getPathWithLanguage(redirects[withoutLanguage], language) } let basicCorrection From 9410a39986a9380118b744ec768fa553e4cf0d38 Mon Sep 17 00:00:00 2001 From: Laura Coursen Date: Thu, 20 Oct 2022 10:45:34 -0500 Subject: [PATCH 18/30] Clarify "Configuring IP allow lists for migrations" documentation for GEI (#31902) From 56bb42b36f77ece7c9845a350d3764807de00eac Mon Sep 17 00:00:00 2001 From: Larissa Fortuna <56982181+lkfortuna@users.noreply.github.com> Date: Thu, 20 Oct 2022 08:58:12 -0700 Subject: [PATCH 19/30] Adding wording about default runner group (#31734) Co-authored-by: Martin Lopes --- .../actions/using-github-hosted-runners/using-larger-runners.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/content/actions/using-github-hosted-runners/using-larger-runners.md b/content/actions/using-github-hosted-runners/using-larger-runners.md index d4f33140a6..ed6b379be2 100644 --- a/content/actions/using-github-hosted-runners/using-larger-runners.md +++ b/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -12,6 +12,8 @@ versions: In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. +When {% data variables.actions.hosted_runner %}s are enabled for your organization, a default runner group is automatically created for you with a set of four pre-configured {% data variables.actions.hosted_runner %}s. + When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. ## Machine specs for {% data variables.actions.hosted_runner %}s From fa24498f8614dc6b4d2b2020173be1bcc376781a Mon Sep 17 00:00:00 2001 From: hubwriter Date: Thu, 20 Oct 2022 17:19:10 +0100 Subject: [PATCH 20/30] Codespaces: Org-level allowed images policy (#30802) Co-authored-by: github-actions Co-authored-by: Jules <19994093+jules-p@users.noreply.github.com> --- .../add-constraint-dropdown-image.png | Bin 0 -> 117157 bytes .../add-constraint-dropdown-retention.png | Bin 70827 -> 86695 bytes .../add-constraint-dropdown-timeout.png | Bin 60010 -> 72909 bytes .../help/codespaces/edit-image-constraint.png | Bin 0 -> 19451 bytes .../help/codespaces/image-allowed-values.png | Bin 0 -> 41152 bytes .../help/codespaces/selected-repositories.png | Bin 0 -> 70899 bytes .../customizing-your-codespace/index.md | 1 + .../renaming-a-codespace.md | 6 +- .../codespaces-lifecycle.md | 2 + .../developing-in-codespaces/index.md | 1 - ...using-github-codespaces-with-github-cli.md | 14 ++- .../codespaces/getting-started/deep-dive.md | 2 +- .../codespaces/getting-started/quickstart.md | 3 +- content/codespaces/guides.md | 3 +- .../index.md | 1 + .../restricting-access-to-machine-types.md | 20 +++- ...stricting-the-base-image-for-codespaces.md | 101 ++++++++++++++++++ .../restricting-the-idle-timeout-period.md | 17 +-- ...ing-the-retention-period-for-codespaces.md | 17 +-- ...cting-the-visibility-of-forwarded-ports.md | 18 +++- ...g-encrypted-secrets-for-your-codespaces.md | 6 +- .../introduction-to-dev-containers.md | 2 +- ...um-specification-for-codespace-machines.md | 2 +- ...g-up-your-dotnet-project-for-codespaces.md | 12 +-- ...ing-up-your-java-project-for-codespaces.md | 2 +- .../codespaces-org-policies-note.md | 2 +- .../codespaces/codespaces-policy-targets.md | 13 ++- 27 files changed, 196 insertions(+), 49 deletions(-) create mode 100644 assets/images/help/codespaces/add-constraint-dropdown-image.png create mode 100644 assets/images/help/codespaces/edit-image-constraint.png create mode 100644 assets/images/help/codespaces/image-allowed-values.png create mode 100644 assets/images/help/codespaces/selected-repositories.png rename content/codespaces/{developing-in-codespaces => customizing-your-codespace}/renaming-a-codespace.md (84%) create mode 100644 content/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md diff --git a/assets/images/help/codespaces/add-constraint-dropdown-image.png b/assets/images/help/codespaces/add-constraint-dropdown-image.png new file mode 100644 index 0000000000000000000000000000000000000000..506719e14309363ae3a49fe7674a1bbced63a720 GIT binary patch literal 117157 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%0A@tqmJpQoqeTM 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
dj|& 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 literal 0 HcmV?d00001 diff --git a/content/codespaces/customizing-your-codespace/index.md b/content/codespaces/customizing-your-codespace/index.md index b12348b6ae..a61b3514f7 100644 --- a/content/codespaces/customizing-your-codespace/index.md +++ b/content/codespaces/customizing-your-codespace/index.md @@ -11,6 +11,7 @@ topics: - Codespaces children: - /personalizing-github-codespaces-for-your-account + - /renaming-a-codespace - /changing-the-machine-type-for-your-codespace - /setting-your-default-editor-for-github-codespaces - /setting-your-default-region-for-github-codespaces diff --git a/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/content/codespaces/customizing-your-codespace/renaming-a-codespace.md similarity index 84% rename from content/codespaces/developing-in-codespaces/renaming-a-codespace.md rename to content/codespaces/customizing-your-codespace/renaming-a-codespace.md index e27f565ffc..4f123b2687 100644 --- a/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ b/content/codespaces/customizing-your-codespace/renaming-a-codespace.md @@ -50,7 +50,9 @@ Changing the display name of a codespace can be useful if you have multiple code To rename a codespace, use the `gh codespace edit` subcommand: ```shell -gh codespace edit -c PERMANENT-NAME-OF-CODESPACE -d NEW-DISPLAY-NAME +gh codespace edit -c PERMANENT-CODESPACE-NAME -d NEW-DISPLAY-NAME ``` -In this example, replace `permanent name of the codespace` with the permanent name of the codespace. Replace `new display name` with the desired display name. \ No newline at end of file +In this example, replace `PERMANENT-CODESPACE-NAME` with the permanent name of the codespace whose display name you want to change. Replace `NEW-DISPLAY-NAME` with the display name you want to use for this codespace. + +For more information, see "[Using {% data variables.product.prodname_github_codespaces %} with {% data variables.product.prodname_cli %}](/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli#rename-a-codespace)." \ No newline at end of file diff --git a/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md b/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md index d3ec7e7ef3..16b6cd571d 100644 --- a/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md +++ b/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md @@ -59,6 +59,8 @@ In the example `postCreate.sh` file below, the contents of the `config` director ln -sf $PWD/.devcontainer/config $HOME/config && set +x ``` +For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)." + ## Stopping a codespace {% data reusables.codespaces.stopping-a-codespace %} For more information, see "[Stopping and starting a codespace](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)." diff --git a/content/codespaces/developing-in-codespaces/index.md b/content/codespaces/developing-in-codespaces/index.md index 7e5085d2ea..8fa2bf2ff4 100644 --- a/content/codespaces/developing-in-codespaces/index.md +++ b/content/codespaces/developing-in-codespaces/index.md @@ -16,7 +16,6 @@ children: - /using-source-control-in-your-codespace - /using-github-codespaces-for-pull-requests - /stopping-and-starting-a-codespace - - /renaming-a-codespace - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network diff --git a/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md b/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md index 14283811fc..bd2907401d 100644 --- a/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md +++ b/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces @@ -24,6 +25,7 @@ You can work with {% data variables.product.prodname_github_codespaces %} in the - [Create a new codespace](#create-a-new-codespace) - [Stop a codespace](#stop-a-codespace) - [Delete a codespace](#delete-a-codespace) + - [Rename a codespace](#rename-a-codespace) - [SSH into a codespace](#ssh-into-a-codespace) - [Open a codespace in {% data variables.product.prodname_vscode %}](#open-a-codespace-in--data-variablesproductprodname_vscode-) - [Open a codespace in JupyterLab](#open-a-codespace-in-jupyterlab) @@ -74,6 +76,8 @@ gh codespace list The list includes the unique name of each codespace, which you can use in other `gh codespace` commands. +An asterisk at the end of the branch name for a codespace indicates that there are uncommitted or unpushed changes in that codespace. + ### Create a new codespace ```shell @@ -98,6 +102,14 @@ gh codespace delete -c CODESPACE-NAME For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)." +### Rename a codespace + +```shell +gh codespace edit -c CODESPACE-NAME -d DISPLAY-NAME +``` + +For more information, see "[Renaming a codespace](/codespaces/customizing-your-codespace/renaming-a-codespace)." + ### SSH into a codespace To run commands on the remote codespace machine, from your terminal, you can SSH into the codespace. @@ -215,4 +227,4 @@ You can use the {% data variables.product.prodname_cli %} extension to create a gh codespace edit -m machine-type-name ``` -For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." \ No newline at end of file +For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." diff --git a/content/codespaces/getting-started/deep-dive.md b/content/codespaces/getting-started/deep-dive.md index c6a2e16f8a..4c12712121 100644 --- a/content/codespaces/getting-started/deep-dive.md +++ b/content/codespaces/getting-started/deep-dive.md @@ -35,7 +35,7 @@ When you create a codespace, a [shallow clone](https://github.blog/2020-12-21-ge ### Step 2: Container is created -{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't [configure a container](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project), {% data variables.product.prodname_github_codespaces %} uses a [default image](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project#using-the-default-configuration), which has many languages and runtimes available. For information on what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. +{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't specify a custom Docker image in your configuration, {% data variables.product.prodname_codespaces %} uses a default image, which has many languages and runtimes available. For information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)." For details of what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. {% note %} diff --git a/content/codespaces/getting-started/quickstart.md b/content/codespaces/getting-started/quickstart.md index 213fec6823..ec2abfcbed 100644 --- a/content/codespaces/getting-started/quickstart.md +++ b/content/codespaces/getting-started/quickstart.md @@ -92,11 +92,10 @@ Within a codespace, you have access to the {% data variables.product.prodname_vs 1. In the left sidebar, click the Extensions icon. -1. In the search bar, enter `fairyfloss` and install the fairyfloss extension. +1. In the search bar, type `fairyfloss` and click **Install**. ![Add an extension](/assets/images/help/codespaces/add-extension.png) -1. Click **Install in Codespaces**. 1. Select the `fairyfloss` theme by selecting it from the list. ![Select the fairyfloss theme](/assets/images/help/codespaces/fairyfloss.png) diff --git a/content/codespaces/guides.md b/content/codespaces/guides.md index dfd638d247..60fb6c4782 100644 --- a/content/codespaces/guides.md +++ b/content/codespaces/guides.md @@ -44,7 +44,8 @@ includeGuides: - /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization - /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types - - /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period + - /codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md + - /codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period - /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports - /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces diff --git a/content/codespaces/managing-codespaces-for-your-organization/index.md b/content/codespaces/managing-codespaces-for-your-organization/index.md index 3bb76dbf6d..d71e4021e0 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/index.md +++ b/content/codespaces/managing-codespaces-for-your-organization/index.md @@ -17,6 +17,7 @@ children: - /managing-repository-access-for-your-organizations-codespaces - /reviewing-your-organizations-audit-logs-for-github-codespaces - /restricting-access-to-machine-types + - /restricting-the-base-image-for-codespaces - /restricting-the-visibility-of-forwarded-ports - /restricting-the-idle-timeout-period - /restricting-the-retention-period-for-codespaces diff --git a/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 33f95043ad..7e52316c87 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -14,7 +14,9 @@ topics: ## Overview -Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." +Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." + +If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. The compute cost for a codespace is proportional to the number of processor cores in the machine type you choose. For example, the compute cost of using a codespace for an hour on a 16-core machine is eight times greater than a 2-core machine. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." As an organization owner, you may want to configure constraints on the types of machine that are available. For example, if the work in your organization doesn't require significant compute power or storage space, you can remove the highly resourced machines from the list of options that people can choose from. You do this by defining one or more policies in the {% data variables.product.prodname_github_codespaces %} settings for your organization. @@ -52,21 +54,29 @@ If you add an organization-wide policy, you should set it to the largest choice {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Machine types**. - ![Add a constraint for machine types](/assets/images/help/codespaces/add-constraint-dropdown.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint, then clear the selection of any machine types that you don't want to be available. - ![Edit the machine type constraint](/assets/images/help/codespaces/edit-machine-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-machine-constraint.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The machine type constraint is also applied to existing codespaces when someone attempts to restart a stopped codespace or reconnect to an active codespace. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Machine types" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -74,7 +84,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) ## Further reading diff --git a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md new file mode 100644 index 0000000000..c33fbe2090 --- /dev/null +++ b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md @@ -0,0 +1,101 @@ +--- +title: Restricting the base image for codespaces +shortTitle: Restrict base image +intro: You can specify which base images can be used for new codespaces created within your organization. +product: '{% data reusables.gated-features.codespaces %}' +permissions: 'To manage image constraints for an organization''s codespaces, you must be an owner of the organization.' +versions: + fpt: '*' + ghec: '*' +type: how_to +topics: + - Codespaces +--- + +## Overview + +When you create a codespace, a Docker container is automatically created on a remote virtual machine. The Docker container is created from a Docker image. The image is effectively a template for Docker containers and it determines many aspects of the resulting environment provided by the codespace. + +You can choose which image you want to use for your codespaces by specifying it in the dev container configuration for a repository. You can do this, for example, by using the `image` property in the `devcontainer.json` file. + +```json{:copy} +"image": "mcr.microsoft.com/vscode/devcontainers/javascript-node:18", +``` + +For more information, see the [dev containers specification](https://containers.dev/implementors/json_reference/) on containers.dev. + +If you don't specify an image in the dev container configuration for a repository, the default image is used. The default image contains a number of runtime versions for popular languages and commonly used tools. For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)." + +As an organization owner, you can add a policy to restrict which images can be used for codespaces created within your organization. + +If the image specified in the dev container configuration does not match one of the allowed images, the following message is displayed when someone tries to create a codespace for the repository: + +> Codespace could not be created: Base image 'DETAILS FROM DEV CONTAINER CONFIGURATION' is not allowed based on an organization policy set by your organization administrator. + +{% note %} + +**Notes**: +* The base image policy is only applied when a codespace is created. It is currently not applied when you rebuild a container. This will change in a future release. For more information, see "[Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle#rebuilding-a-codespace)." +* The base image policy does not apply to the default image, or the image that's used to recover a codespace if an error is introduced into a dev container configuration which prevents the container from being rebuilt. + +{% endnote %} + +### Setting organization-wide and repository-specific policies + +When you create a policy you choose whether it applies to all repositories in your organization, or only to specified repositories. If you set an organization-wide policy then any policies you set for individual repositories must fall within the restriction set at the organization level. Adding policies makes the choice of image more, not less, restrictive. + +For example, you could create an organization-wide policy that restricts the base image to any of ten specified images. You can then set a policy for Repository A that restricts the image to a subset of just two of the images specified at the organization level. Specifying additional images for Repository A will have no effect because these images are not specified in the organization-level policy. If you add an organization-wide policy, you should set it to the largest choice of images that will be available for any repository in your organization. You can then add repository-specific policies to further restrict the choice. + +{% data reusables.codespaces.codespaces-org-policies-note %} + +## Adding a policy to define the allowed images + +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.codespaces.codespaces-org-policies %} +1. Click **Add constraint** and choose **Base images**. + + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-image.png) + +1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. + + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-image-constraint.png) + +1. In the "Allowed values" field, enter the complete URL of an image you want to allow. + + ![Screenshot of an entry in the 'Allowed values' field](/assets/images/help/codespaces/image-allowed-values.png) + + {% note %} + + **Note**: You must specify an image URL that exactly matches the value specified in a dev container configuration. + + {% endnote %} + +1. Click the plus button ({% octicon "plus" aria-label="The plus icon" %}) to add the value. +1. If required, repeat the previous two steps to add more image URLs. +{% data reusables.codespaces.codespaces-policy-targets %} +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" +1. After you've finished adding constraints to your policy, click **Save**. + +The policy is applied when anyone attempts to create a new codespace that is billable to your organization. The base image constraint does not affect existing codespaces, either active or stopped. + +## Editing a policy + +You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. + +1. Display the "Codespace policies" page. For more information, see "[Adding a policy to define the allowed images](#adding-a-policy-to-define-the-allowed-images)." +1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Base images" constraint. +1. Add or remove image URLs. +1. Click **Save**. + +## Deleting a policy + +1. Display the "Codespace policies" page. For more information, see "[Adding a policy to define the allowed images](#adding-a-policy-to-define-the-allowed-images)." +1. Click the delete button to the right of the policy you want to delete. + + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index 685dfd1db2..db81c6347d 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -49,21 +49,25 @@ If you add an organization-wide policy with a timeout constraint, you should set {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Maximum idle timeout**. - ![Add a constraint for idle timeout](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**. - ![Set the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) + ![Screenshot of setting the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created, and to existing codespaces the next time they are started. +The policy will be applied to all new codespaces that are billable to your organization. The timeout constraint is also applied to existing codespaces the next time they are started. ## Editing a policy @@ -71,6 +75,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Maximum idle timeout" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -78,4 +83,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index a940a80a50..f49dd49a4a 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -35,15 +35,15 @@ If you add an organization-wide policy with a retention constraint, you should s {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Retention period**. - ![Add a constraint for retention periods](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of days codespaces can remain stopped before they are automatically deleted, then click **Save**. - ![Set the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) + ![Screenshot of setting the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) {% note %} @@ -55,10 +55,14 @@ If you add an organization-wide policy with a retention constraint, you should s {% endnote %} {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created. +The policy will be applied to all new codespaces that are billable to your organization. The retention period constraint is only applied on codespace creation. ## Editing a policy @@ -68,6 +72,7 @@ The retention period constraint is only applied to codespaces when they are crea 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Retention period" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -77,4 +82,4 @@ You can delete a policy at any time. Deleting a policy has no effect on existing 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 852eb3b8ba..74c626756f 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -45,25 +45,33 @@ If you add an organization-wide policy, you should set it to the most lenient vi {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Port visibility**. - ![Add a constraint for port visibility](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the port visibility constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) 1. Clear the selection of the port visibility options (**Org** or **Public**) that you don't want to be available. - ![Choose the port visibility options](/assets/images/help/codespaces/choose-port-visibility-options.png) + ![Screenshot of clearing a port visibility option](/assets/images/help/codespaces/choose-port-visibility-options.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The port visibility constraint is also applied to existing codespaces the next time they are started. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Port visibility" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -71,4 +79,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md b/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md index 253b3ea97e..07be49175c 100644 --- a/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md +++ b/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md @@ -93,10 +93,10 @@ You can use secrets in a codespace after the codespace is built and is running. * When launching an application from the integrated terminal or ssh session. * Within a dev container lifecycle script that is run after the codespace is running. For more information about dev container lifecycle scripts, see the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#lifecycle-scripts). -Codespace secrets cannot be used during: +Codespace secrets cannot be used: -* Codespace build time (that is, within a Dockerfile or custom entry point). -* Within a dev container feature. For more information, see the `features` attribute in the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#general-properties). +* During codespace build time (that is, within a Dockerfile or custom entry point). +* Within a dev container feature. For more information, see the `features` property in the [dev containers specification](https://containers.dev/implementors/json_reference/#general-properties) on containers.dev. ## Further reading diff --git a/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 03f5eefc01..7e4d85e0b7 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -65,7 +65,7 @@ The Dockerfile for a dev container is typically located in the `.devcontainer` f {% note %} -**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." +**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. The image you specify here must be allowed by any organization image policy that has been set. For more information, see "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)." If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." {% endnote %} diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-a-minimum-specification-for-codespace-machines.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-a-minimum-specification-for-codespace-machines.md index ae71c65c68..6c4a927d39 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-a-minimum-specification-for-codespace-machines.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-a-minimum-specification-for-codespace-machines.md @@ -15,7 +15,7 @@ product: '{% data reusables.gated-features.codespaces %}' ## Overview -Each codespace that you create is hosted on a separate virtual machine, and you can usually choose from different types of virtual machines. Each machine type has different resources (CPUs, memory, storage) and, by default, the machine type with the least resources is used. For more information, see "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace#about-machine-types)." +Each codespace that you create is hosted on a separate virtual machine, and you can usually choose from different types of virtual machines. Each machine type has different resources (processor cores, memory, storage) and, by default, the machine type with the least resources is used. For more information, see "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace#about-machine-types)." If your project needs a certain level of compute power, you can configure {% data variables.product.prodname_github_codespaces %} so that only machine types that meet these requirements can be used by default, or selected by users. You configure this in a `devcontainer.json` file. diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md index 68db9a04e5..1d0c70d64c 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md @@ -104,14 +104,12 @@ The newly added `devcontainer.json` file defines a few properties that are descr // "ASPNETCORE_Kestrel__Certificates__Default__Path": "/home/vscode/.aspnet/https/aspnetapp.pfx", // }, // - // 3. Do one of the following depending on your scenario: - // * When using GitHub Codespaces and/or Remote - Containers: - // 1. Start the container - // 2. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer - // 3. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https" + // 3. Start the container. + // + // 4. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer. + // + // 5. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https". // - // * If only using Remote - Containers with a local container, uncomment this line instead: - // "mounts": [ "source=${env:HOME}${env:USERPROFILE}/.aspnet/https,target=/home/vscode/.aspnet/https,type=bind" ], // Use 'postCreateCommand' to run commands after the container is created. // "postCreateCommand": "dotnet restore", diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md index 42811fded0..c5f6b582f0 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md @@ -32,7 +32,7 @@ This guide shows you how to set up your Java project in {% data variables.produc If you don’t see this option, {% data variables.product.prodname_github_codespaces %} isn't available for your project. See [Access to {% data variables.product.prodname_github_codespaces %}](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces) for more information. -When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a common set of tools like git, wget, rsync, openssh, and nano. +When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a set of commonly used tools such as git, wget, rsync, openssh, and nano. {% data reusables.codespaces.customize-vcpus-and-ram %} diff --git a/data/reusables/codespaces/codespaces-org-policies-note.md b/data/reusables/codespaces/codespaces-org-policies-note.md index 9060454948..8ca2465442 100644 --- a/data/reusables/codespaces/codespaces-org-policies-note.md +++ b/data/reusables/codespaces/codespaces-org-policies-note.md @@ -1,5 +1,5 @@ {% note %} -**Note**: Organization policies you define for {% data variables.product.prodname_codespaces %} only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." +**Note**: Codespace policies only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." {% endnote %} \ No newline at end of file diff --git a/data/reusables/codespaces/codespaces-policy-targets.md b/data/reusables/codespaces/codespaces-policy-targets.md index df251db6c4..3cda0cb3b9 100644 --- a/data/reusables/codespaces/codespaces-policy-targets.md +++ b/data/reusables/codespaces/codespaces-policy-targets.md @@ -1,11 +1,14 @@ -1. In the "Change policy target" area, click the dropdown button. -1. Choose either **All repositories** or **Selected repositories** to determine which repositories this policy will apply to. -1. If you chose **Selected repositories**: +1. Click outside of the dialog box to close it. +1. By default the policy is set to apply to all repositories, if you want it to apply only to some of the repositories in your organization, click **All repositories** and then click **Selected repositories** in the dropdown menu. + + ![Screenshot of choosing 'Selected repositories'](/assets/images/help/codespaces/selected-repositories.png) + + With **Selected repositories** selected: 1. Click {% octicon "gear" aria-label="The settings icon" %}. - ![Edit the settings for the policy](/assets/images/help/codespaces/policy-edit.png) + ![Screenshot of the gear icon for editing the settings](/assets/images/help/codespaces/policy-edit.png) 2. Select the repositories you want this policy to apply to. 3. At the bottom of the repository list, click **Select repositories**. - ![Select repositories for this policy](/assets/images/help/codespaces/policy-select-repos.png) + ![Screenshot of selected repositories for this policy](/assets/images/help/codespaces/policy-select-repos.png) From 58d7e10dd745a052b96e0434c19e74df2249d6e7 Mon Sep 17 00:00:00 2001 From: Kevin Heis Date: Thu, 20 Oct 2022 09:23:26 -0700 Subject: [PATCH 21/30] Fix annoying warning for updated npm (#31909) --- .npmrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.npmrc b/.npmrc index 9b816f6d44..4d08d0c167 100644 --- a/.npmrc +++ b/.npmrc @@ -1,2 +1,2 @@ # skip installing optional dependencies to avoid issues with troublesome `fsevents` module -optional=false \ No newline at end of file +omit=optional From 0e03452f9c9eac751fb4016085035b23c8c0de84 Mon Sep 17 00:00:00 2001 From: Anne-Marie <102995847+am-stead@users.noreply.github.com> Date: Thu, 20 Oct 2022 18:24:05 +0200 Subject: [PATCH 22/30] [2022-10-20]: Dependabot updates for Yarn v3 - [GA] (#31471) Co-authored-by: Jurre --- .../configuration-options-for-the-dependabot.yml-file.md | 4 +++- data/features/dependabot-yarn-v3-update.yml | 7 +++++++ data/reusables/dependabot/supported-package-managers.md | 6 +++++- 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 data/features/dependabot-yarn-v3-update.yml diff --git a/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 189fa330a7..322dadf5f3 100644 --- a/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -860,7 +860,7 @@ registries: The `npm-registry` type supports username and password, or token. -When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. +When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. {% raw %} ```yaml @@ -882,6 +882,8 @@ registries: token: ${{secrets.MY_GITHUB_PERSONAL_TOKEN}} ``` {% endraw %} +{% ifversion dependabot-yarn-v3-update %} +For security reasons, {% data variables.product.prodname_dependabot %} does not set environment variables. Yarn (v2 and later) requires that any accessed environment variables are set. When accessing environment variables in your `.yarnrc.yml` file, you should provide a fallback value such as {% raw %}`${ENV_VAR-fallback}`{% endraw %} or {% raw %}`${ENV_VAR:-fallback}`{% endraw %}. For more information, see [Yarnrc files](https://yarnpkg.com/configuration/yarnrc) in the Yarn documentation.{% endif %} ### `nuget-feed` diff --git a/data/features/dependabot-yarn-v3-update.yml b/data/features/dependabot-yarn-v3-update.yml new file mode 100644 index 0000000000..4f566adbec --- /dev/null +++ b/data/features/dependabot-yarn-v3-update.yml @@ -0,0 +1,7 @@ +# Reference: issue #8323 +# Updating supported versions of yarn +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.8' + ghae: '>= 3.8' diff --git a/data/reusables/dependabot/supported-package-managers.md b/data/reusables/dependabot/supported-package-managers.md index a29a092ea8..3e651d2f5e 100644 --- a/data/reusables/dependabot/supported-package-managers.md +++ b/data/reusables/dependabot/supported-package-managers.md @@ -25,7 +25,8 @@ pip-compile | `pip` | 6.1.0 | | **✓** | | poetry | `pip` | v1 | | **✓** | |{% ifversion fpt or ghec or ghes > 3.4 %} pub | `pub` | v2 [4] | | | |{% endif %} Terraform | `terraform` | >= 0.13, <= 1.2.x | **✓** | **✓** | | -yarn | `npm` | v1 | **✓** | **✓** | | +{% ifversion dependabot-yarn-v3-update %}yarn | `npm` | v1, v2, v3 | **✓** | **✓** | **✓**[5] |{% else %}yarn | `npm` | v1 | **✓** | **✓** | | +{% endif %} {% tip %} @@ -47,3 +48,6 @@ yarn | `npm` | v1 | **✓** | **✓** | | For information about configuring your _dependabot.yml_ file for `pub`, see "[Enabling support for beta-level ecosystems](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)." {%- else %}{% data variables.product.prodname_dependabot %} won't perform an update for `pub` when the version that it tries to update to is ignored, even if an earlier version is available.{% endif %} {% endif %} + +{% ifversion dependabot-yarn-v3-update %} +[5] Dependabot supports vendored dependencies for v2 onwards.{% endif %} From ff20457d5433d34d9dd018f7bfa5a59740b588da Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Thu, 20 Oct 2022 18:32:21 +0200 Subject: [PATCH 23/30] notice potential repeated children key entries immediately (#31898) --- lib/create-tree.js | 13 +++++++++++++ tests/unit/pages.js | 27 +-------------------------- 2 files changed, 14 insertions(+), 26 deletions(-) diff --git a/lib/create-tree.js b/lib/create-tree.js index aa83243649..5847edbfbb 100644 --- a/lib/create-tree.js +++ b/lib/create-tree.js @@ -56,6 +56,7 @@ export default async function createTree(originalPath, langObj) { // Process frontmatter children recursively. if (item.page.children) { + assertUniqueChildren(item.page) item.childPages = ( await Promise.all( item.page.children.map( @@ -67,3 +68,15 @@ export default async function createTree(originalPath, langObj) { return item } + +function assertUniqueChildren(page) { + if (page.children.length !== new Set(page.children).size) { + const count = {} + page.children.forEach((entry) => (count[entry] = 1 + (count[entry] || 0))) + let msg = `${page.relativePath} has duplicates in the 'children' key.` + for (const [entry, times] of Object.entries(count)) { + if (times > 1) msg += ` '${entry}' is repeated ${times} times. ` + } + throw new Error(msg) + } +} diff --git a/tests/unit/pages.js b/tests/unit/pages.js index 271afeeb2b..9b8792d7b1 100644 --- a/tests/unit/pages.js +++ b/tests/unit/pages.js @@ -1,6 +1,6 @@ import { jest } from '@jest/globals' import path from 'path' -import { loadPages, loadPageMap, correctTranslationOrphans } from '../../lib/page-data.js' +import { loadPages, correctTranslationOrphans } from '../../lib/page-data.js' import libLanguages from '../../lib/languages.js' import { liquid } from '../../lib/render-content/index.js' import patterns from '../../lib/patterns.js' @@ -152,29 +152,4 @@ describe('pages module', () => { expect(liquidErrors.length, failureMessage).toBe(0) }) }) - - describe('loadPageMap', () => { - let pageMap - beforeAll(async () => { - pageMap = await loadPageMap(pages) - }) - - test('yields a non-empty object with more unique entries than pages', async () => { - // Why does it contain MORE unique entries, you ask? - // TL;DR: The pages array contains one item per Page + language, with a `permalinks` array - // property for each product version supported (free-pro-team, enterprise-server@3.0, etc.) - // The pageMap, on the other hand, is keyed by unique URLs, so it has 1-N (where N is the - // number of product versions supported) keys pointing to the same Page + language object - - expect(Array.isArray(pageMap)).toBe(false) - expect(Object.keys(pageMap).length).toBeGreaterThan(pages.length) - }) - - test('has an identical key list to the deep permalinks of the array', async () => { - const allPermalinks = pages.flatMap((page) => page.permalinks.map((pl) => pl.href)).sort() - const allPageUrls = Object.keys(pageMap).sort() - - expect(allPageUrls).toEqual(allPermalinks) - }) - }) }) From 4e3c4cd0aaf6b17ad231be14ded93a40136701a4 Mon Sep 17 00:00:00 2001 From: Octomerger Bot <63058869+Octomerger@users.noreply.github.com> Date: Thu, 20 Oct 2022 09:44:49 -0700 Subject: [PATCH 24/30] GraphQL schema update (#31912) Co-authored-by: rachmari --- lib/graphql/static/previews.json | 2 +- lib/graphql/static/schema-dotcom.json | 2 +- lib/graphql/static/schema-ghec.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/graphql/static/previews.json b/lib/graphql/static/previews.json index 74db056213..be292a94a3 100644 --- a/lib/graphql/static/previews.json +++ b/lib/graphql/static/previews.json @@ -1097,4 +1097,4 @@ "href": "/graphql/overview/schema-previews#team-review-assignments-preview" } ] -} +} \ No newline at end of file diff --git a/lib/graphql/static/schema-dotcom.json b/lib/graphql/static/schema-dotcom.json index 93975ddd30..b67ce01dcd 100644 --- a/lib/graphql/static/schema-dotcom.json +++ b/lib/graphql/static/schema-dotcom.json @@ -92221,4 +92221,4 @@ "description": "

A valid x509 certificate string.

" } ] -} +} \ No newline at end of file diff --git a/lib/graphql/static/schema-ghec.json b/lib/graphql/static/schema-ghec.json index 93975ddd30..b67ce01dcd 100644 --- a/lib/graphql/static/schema-ghec.json +++ b/lib/graphql/static/schema-ghec.json @@ -92221,4 +92221,4 @@ "description": "

A valid x509 certificate string.

" } ] -} +} \ No newline at end of file From ff20707a9c71ab6d86a9f24bdf5f5b746bfaa031 Mon Sep 17 00:00:00 2001 From: Siara <108543037+SiaraMist@users.noreply.github.com> Date: Thu, 20 Oct 2022 09:46:18 -0700 Subject: [PATCH 25/30] Update Actions Cache UI screenshots (#31908) Co-authored-by: github-actions --- .../help/repository/actions-cache-delete.png | Bin 106428 -> 104332 bytes .../repository/actions-cache-entry-list.png | Bin 94753 -> 92803 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/images/help/repository/actions-cache-delete.png b/assets/images/help/repository/actions-cache-delete.png index 67737d48b1223ca0d3f96ee2edfa9c6f1fc5f0c4..59a6d05e7a7a9c16cefd5df6e2cebd83a306fd04 100644 GIT binary patch literal 104332 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 literal 106428 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
fG7b>#wINGfh}yTS2--xt%9)W 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%0D^h^%=&@#xr% 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�E3IoQ^s>bMK`ukB)E;SI4(qDv5HBv>&QMZ5*PoT>y3?rE5Z8}zK|s-NBOmC-Z0!#!64WQJ6mo)V#((3(fjG0 zc6>+fgPsXY9IEGKqwQwIv>4LCS(2+~P(L9R#{*o8ctfq|CUOLNgMl#TKazw^CAd$;2Z za(K4S>6Obm*L4QVPCG>3;!H#u@JT*;?VI(1>qq3#_kltheB1LHFlBzj3b)mrYf<;- zci<+M&8p_FT*ra7aPUVBfbTudzW)=_`LO7hl}X#;S$GxS8;8&|{Y4J1j;n9n^2*6C z7;^VY@wJcZmKOe{0k%gJ{9kCa=l|)>{`w!-VJOFxkUuKK$=0RhjoX>rIsU3^fp|gG zp6>(sLkpbGSpR47x;u$95u+f_RX(1l?AQo_53}hjlo{&s?xDY3%unygDa0y=gUYsq zoJ022r{{l4>yJ@?qmD7=1l)Oqv7PMgprjxp^lzJb9E!i%$1TlrsJ?i+-amU1Tts0AT0 zGUVd1%#oDQrQV~cJvZMz`Wz&ns5L`dqzVIZ1~9s#+)7 zvN1fkUkY5Dyv*0aT^3zkXC^|r=y4ntE~R0)`32%Oe#N7BC;x#R@d1fGfhxeC70%znB~}Z_vESS zj53d7u-@MX^2gTxb^e7r26_a99{48zBxsmmv{6CL)4ijl@+%O^DeSbeEpTS((i~CuIHj{Z#N8?fUV+d8nwp zdM|Q+sO6%}p*PWXQ3^k-L;u#HZ6gGXzmfx@@A92@OVIA^$+VUHY54!?B2pkA$~pvV zrPO)IDOq2xRekitKR^7bfk4wVCwOGF4_~y!R-;^#mN|x{fBMKjUBuj?=2+KEWk}SL4UOuY>9x0Q>+ZUTC{uj%6Ma^)9rp$ zEn5jui0ZLbW&&l+jut<;nsdACSG(B_>a5M#WSK*CF8V718Fqyrp6OTR#UoIjZQs`9 z{VxAnljk@leJ}3 zSs?;)xqk8bHo4!DV88v91RIW%6=M7KGz|UcqN+a;bMD`4@Q3C%gLD*(RLr=0J(*)z zX;bPK*Pw*3`yN$YEdCZ%6*(LuvhSC}HVK8Yhn)TbnG_a@d=wk~W%)2Xmbsh4+Wc2khLHP10DH@WxwZuX~E%Wh(KuJ&7=`A(wYo4p}< zvWK9*+RDyyZi9F7ogF!N_K{4=U$l*Y|clohX!YU7|eg` z(0maBT(@M35m(xsO9_kC{3jgG|MKsqphD{LbCXu)&4-XiLZ09O^S{4P6PV9Mt9;E{ zn7O{9Ek2(Pmpxr}>z2qbJ%P?FZjVmo-3azN!?_P Date: Thu, 20 Oct 2022 19:00:32 +0200 Subject: [PATCH 26/30] [2022-10-06]: Secret scanning: Custom link on block - [GA] (#31856) Co-authored-by: github-actions Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com> --- ...nning-enable-push-protection-enterprise.png | Bin 0 -> 44740 bytes ...ed-security-features-for-your-enterprise.md | 13 ++++++++++++- .../protecting-pushes-with-secret-scanning.md | 17 ++++++++++------- ...hing-a-branch-blocked-by-push-protection.md | 3 --- .../secret-scanning-custom-link-on-block.yml | 6 ++++++ ...cret-scanning-push-protection-enterprise.md | 8 ++++++++ .../secret-scanning-push-protection-org.md | 1 - 7 files changed, 36 insertions(+), 12 deletions(-) create mode 100644 assets/images/enterprise/security/secret-scanning-enable-push-protection-enterprise.png create mode 100644 data/features/secret-scanning-custom-link-on-block.yml create mode 100644 data/reusables/advanced-security/secret-scanning-push-protection-enterprise.md diff --git a/assets/images/enterprise/security/secret-scanning-enable-push-protection-enterprise.png b/assets/images/enterprise/security/secret-scanning-enable-push-protection-enterprise.png new file mode 100644 index 0000000000000000000000000000000000000000..ed9f1dc4cd7be5d7c14a45f91d5aaa971dbf2d3c GIT binary patch literal 44740 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.8' + ghae: '>=3.8' diff --git a/data/reusables/advanced-security/secret-scanning-push-protection-enterprise.md b/data/reusables/advanced-security/secret-scanning-push-protection-enterprise.md new file mode 100644 index 0000000000..71da70dbf4 --- /dev/null +++ b/data/reusables/advanced-security/secret-scanning-push-protection-enterprise.md @@ -0,0 +1,8 @@ +1. Under "{% data variables.product.prodname_secret_scanning_caps %}", under "Push protection", click **Enable all**. + + ![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an enterprise](/assets/images/enterprise/security/secret-scanning-enable-push-protection-enterprise.png) + +2. Optionally, click "Automatically enable for repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion secret-scanning-custom-link-on-block %} +3. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, click **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. + + ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} diff --git a/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 7960cd746d..5efcabdade 100644 --- a/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -2,6 +2,5 @@ {% ifversion ghec %}![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org.png){% elsif ghes > 3.4 or ghae > 3.4 %} ![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org-ghes.png){% endif %} 1. Optionally, click "Automatically enable for repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %} 1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. - {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} From d6e1a6651927c7a5c38b4b0d83909bd53a0deca8 Mon Sep 17 00:00:00 2001 From: Kevin Heis Date: Thu, 20 Oct 2022 10:21:29 -0700 Subject: [PATCH 27/30] Fix code scanning alert (#31914) --- middleware/api/search.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/middleware/api/search.js b/middleware/api/search.js index b4dcb4099e..a764e98460 100644 --- a/middleware/api/search.js +++ b/middleware/api/search.js @@ -277,7 +277,7 @@ async function handleGetSearchResultsError(req, res, error, options) { // where you might not have a HATSTACK_URL configured. if (reports) await Promise.all(reports) } - res.status(500).send(error.message) + res.status(500).json({ error: error.message }) } // Alias for the latest version From 028319051f4e9c79a0367a0ed643b846dbdfffab Mon Sep 17 00:00:00 2001 From: docubot <67483024+docubot@users.noreply.github.com> Date: Thu, 20 Oct 2022 10:42:43 -0700 Subject: [PATCH 28/30] New translation batch for ja (#31919) --- .../using-larger-runners.md | 2 + ...hing-dependencies-to-speed-up-workflows.md | 208 +++++++++------ .../cluster-network-configuration.md | 101 ++++--- ...-availability-replication-for-a-cluster.md | 250 +++++++++--------- .../creating-a-high-availability-replica.md | 90 +++---- ...siderations-for-external-authentication.md | 27 +- .../about-enterprise-managed-users.md | 4 +- ...s-for-github-actions-in-your-enterprise.md | 16 +- ...-ssh-key-and-adding-it-to-the-ssh-agent.md | 6 +- .../token-expiration-and-revocation.md | 2 - ...ion-options-for-the-dependabot.yml-file.md | 4 +- .../protecting-pushes-with-secret-scanning.md | 121 +++++---- ...ing-a-branch-blocked-by-push-protection.md | 53 ++-- .../customizing-your-codespace/index.md | 1 + .../codespaces-lifecycle.md | 2 + .../developing-in-codespaces/index.md | 1 - .../renaming-a-codespace.md | 61 ----- ...using-github-codespaces-with-github-cli.md | 14 +- .../codespaces/getting-started/deep-dive.md | 2 +- .../codespaces/getting-started/quickstart.md | 3 +- .../ja-JP/content/codespaces/guides.md | 3 +- .../index.md | 1 + .../restricting-access-to-machine-types.md | 20 +- .../restricting-the-idle-timeout-period.md | 17 +- ...ing-the-retention-period-for-codespaces.md | 17 +- ...cting-the-visibility-of-forwarded-ports.md | 18 +- ...g-encrypted-secrets-for-your-codespaces.md | 6 +- .../introduction-to-dev-containers.md | 2 +- ...g-up-your-dotnet-project-for-codespaces.md | 12 +- ...ing-up-your-java-project-for-codespaces.md | 2 +- ...ng-github-actions-for-your-organization.md | 34 +++ .../about-custom-domains-and-github-pages.md | 68 +++-- .../about-protected-branches.md | 14 + .../managing-a-branch-protection-rule.md | 10 + .../troubleshooting-required-status-checks.md | 2 +- ...ithub-actions-settings-for-a-repository.md | 13 +- .../secret-scanning-push-protection-org.md | 1 - .../codespaces-org-policies-note.md | 10 +- .../codespaces/codespaces-policy-targets.md | 13 +- .../dependabot/supported-package-managers.md | 60 ++--- translations/log/msft-ja-resets.csv | 10 + 41 files changed, 703 insertions(+), 598 deletions(-) delete mode 100644 translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md diff --git a/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md index d4f33140a6..ed6b379be2 100644 --- a/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md +++ b/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -12,6 +12,8 @@ versions: In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. +When {% data variables.actions.hosted_runner %}s are enabled for your organization, a default runner group is automatically created for you with a set of four pre-configured {% data variables.actions.hosted_runner %}s. + When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. ## Machine specs for {% data variables.actions.hosted_runner %}s diff --git a/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index 6e7bb0e4f3..e743a41842 100644 --- a/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -1,7 +1,7 @@ --- -title: 依存関係をキャッシュしてワークフローのスピードを上げる -shortTitle: Caching dependencies -intro: ワークフローを高速化して効率を上げるために、依存関係や広く再利用されるファイルに対するキャッシュを作成して利用できます。 +title: Caching dependencies to speed up workflows +shortTitle: Cache dependencies +intro: 'To make your workflows faster and more efficient, you can create and use caches for dependencies and other commonly reused files.' redirect_from: - /github/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows - /actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows @@ -14,65 +14,60 @@ type: tutorial topics: - Workflows miniTocMaxHeadingLevel: 3 -ms.openlocfilehash: efae730b48d2423821bb95ac639df355e6b9b5d9 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/05/2022 -ms.locfileid: '147710308' --- -## ワークフローの依存関係のキャッシングについて -ワークフローの実行は、しばしば他の実行と同じ出力あるいはダウンロードされた依存関係を再利用します。 たとえばMaven、Gradle、npm、Yarnといったパッケージ及び依存関係管理ツールは、ダウンロードされた依存関係のローカルキャッシュを保持します。 +## About caching workflow dependencies -{% ifversion fpt or ghec %} {% data variables.product.prodname_dotcom %} ホステッド ランナー上のジョブは、クリーンなランナー イメージで開始されますが、依存関係を毎回ダウンロードする必要があるため、ネットワークの利用率が増大し、実行時間が長くなり、コストが高くなります。 {% endif %}依存関係などのファイルの再生成にかかる時間を短縮しやすくするために、{% data variables.product.prodname_dotcom %} ではワークフロー内で頻繁に使われるファイルをキャッシュできます。 +Workflow runs often reuse the same outputs or downloaded dependencies from one run to another. For example, package and dependency management tools such as Maven, Gradle, npm, and Yarn keep a local cache of downloaded dependencies. -ジョブの依存関係をキャッシュするには、{% data variables.product.prodname_dotcom %} の [`cache` アクション](https://github.com/actions/cache)を使用できます。 このアクションは、一意のキーによって識別されるキャッシュを作成し、復元します。 なお、以下に示すパッケージ マネージャーをキャッシュする場合、それぞれの setup-* アクションを使用するには、最小構成が必要となります。これにより、依存関係キャッシュが作成され、復元されます。 +{% ifversion fpt or ghec %} Jobs on {% data variables.product.prodname_dotcom %}-hosted runners start in a clean runner image and must download dependencies each time, causing increased network utilization, longer runtime, and increased cost. {% endif %}To help speed up the time it takes to recreate files like dependencies, {% data variables.product.prodname_dotcom %} can cache files you frequently use in workflows. -| パッケージ マネージャー | キャッシュの setup-* アクション | +To cache dependencies for a job, you can use {% data variables.product.prodname_dotcom %}'s [`cache` action](https://github.com/actions/cache). The action creates and restores a cache identified by a unique key. Alternatively, if you are caching the package managers listed below, using their respective setup-* actions requires minimal configuration and will create and restore dependency caches for you. + +| Package managers | setup-* action for caching | |---|---| -| npm、Yarn、pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) | -| pip、pipenv、Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) | -| Gradle、Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) | +| npm, Yarn, pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) | +| pip, pipenv, Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) | +| Gradle, Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) | | RubyGems | [setup-ruby](https://github.com/ruby/setup-ruby#caching-bundle-install-automatically) | | Go `go.sum` | [setup-go](https://github.com/actions/setup-go#caching-dependency-files-and-build-outputs) | {% warning %} -**警告**: {% ifversion fpt or ghec %}{% data variables.product.prodname_actions %} でキャッシュを使用する場合は、次の点に注意してください。 +**Warning**: {% ifversion fpt or ghec %}Be mindful of the following when using caching with {% data variables.product.prodname_actions %}: -* {% endif %}キャッシュには、機密情報を保存しないことをお勧めします。 たとえばキャッシュパス内のファイルに保存されたアクセストークンあるいはログインクレデンシャルなどがセンシティブな情報です。 また、`docker login` のようなコマンド ライン インターフェイス (CLI) プログラムでは、アクセス資格情報を構成ファイルに保存できます。 読み取りアクセスを持つ人は誰でも、リポジトリに pull request を作成し、キャッシュの内容にアクセスできます。 リポジトリのフォークも、ベースブランチ上にPull Requestを作成し、ベースブランチ上のキャッシュにアクセスできます。 +* {% endif %}We recommend that you don't store any sensitive information in the cache. For example, sensitive information can include access tokens or login credentials stored in a file in the cache path. Also, command line interface (CLI) programs like `docker login` can save access credentials in a configuration file. Anyone with read access can create a pull request on a repository and access the contents of a cache. Forks of a repository can also create pull requests on the base branch and access caches on the base branch. {%- ifversion fpt or ghec %} -* セルフホステッド ランナーを使用する場合、ワークフロー実行のキャッシュは、{% data variables.product.company_short %} 所有のクラウド ストレージに保存されます。 顧客所有のストレージ ソリューションは、{% data variables.product.prodname_ghe_server %} でのみ使用できます。 +* When using self-hosted runners, caches from workflow runs are stored on {% data variables.product.company_short %}-owned cloud storage. A customer-owned storage solution is only available with {% data variables.product.prodname_ghe_server %}. {%- endif %} {% endwarning %} {% data reusables.actions.comparing-artifacts-caching %} -ワークフロー実行のアーティファクトについて詳しくは、「[アーティファクトを使用してワークフロー データを永続化する](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)」を参照してください。 +For more information on workflow run artifacts, see "[Persisting workflow data using artifacts](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)." -## キャッシュへのアクセスについての制限 +## Restrictions for accessing a cache -ワークフローは、現在のブランチ、ベース ブランチ (フォークされたリポジトリのベース ブランチを含む)、または既定のブランチ (通常 `main`) で作成されたキャッシュにアクセスして復元できます。 たとえば、デフォルトブランチで作成されたキャッシュは、どのPull Requestからもアクセスできます。 また、ブランチ `feature-b` にベース ブランチ `feature-a` がある場合、`feature-b` でトリガーされたワークフローは、既定のブランチ (`main`)、`feature-a`、および `feature-b` で作成されたキャッシュにアクセスすることができます。 +A workflow can access and restore a cache created in the current branch, the base branch (including base branches of forked repositories), or the default branch (usually `main`). For example, a cache created on the default branch would be accessible from any pull request. Also, if the branch `feature-b` has the base branch `feature-a`, a workflow triggered on `feature-b` would have access to caches created in the default branch (`main`), `feature-a`, and `feature-b`. -アクセス制限を使用すると、さまざまなブランチまたはタグ間に論理境界を作成することで、キャッシュを分離しセキュリティで保護することができます。 たとえば、ブランチ `feature-a` (ベース `main` を使用) のために作成されたキャッシュは、ブランチ `feature-c` (ベース`main` を使用) の pull request にはアクセスできません。 同様の行上で、(ベースの `main` からの) タグ `release-a` 用に作成されるキャッシュは、(ベース `main` を使用して) タグ `release-b` に対してトリガーされるワークフローにアクセスできません。 +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). -リポジトリ内の複数のワークフローは、キャッシュ エントリを共有します。 ワークフロー内のブランチ用に作成されたキャッシュは、同じリポジトリとブランチの別のワークフローからアクセスおよび復元できます。 +Multiple workflows within a repository share cache entries. A cache created for a branch within a workflow can be accessed and restored from another workflow for the same repository and branch. -## `cache` アクションの使用 +## Using the `cache` action -[`cache` action](https://github.com/actions/cache) アクションは、指定した `key` に基づいてキャッシュの復元を試みます。 アクションでキャッシュが見つかると、アクションは、キャッシュされたファイルを構成した `path` に復元します。 +The [`cache` action](https://github.com/actions/cache) will attempt to restore a cache based on the `key` you provide. When the action finds a cache, the action restores the cached files to the `path` you configure. -完全に一致するものがない場合、ジョブが正常に完了すると、このアクションによって新しいキャッシュが自動的に作成されます。 新しいキャッシュでは、指定した `key` が使用され、`path` で指定したファイルが含められます。 +If there is no exact match, the action automatically creates a new cache if the job completes successfully. The new cache will use the `key` you provided and contains the files you specify in `path`. -必要に応じて、`key` が既存のキャッシュと一致しない場合に使用する `restore-keys` のリストを指定できます。 `restore-keys` はキャッシュ キーと部分的に一致する可能性があるため、`restore-keys` のリストは別のブランチからキャッシュを復元する場合に便利です。 `restore-keys` の照合の詳細については、「[キャッシュ キーのマッチング](#matching-a-cache-key)」を参照してください。 +You can optionally provide a list of `restore-keys` to use when the `key` doesn't match an existing cache. A list of `restore-keys` is useful when you are restoring a cache from another branch because `restore-keys` can partially match cache keys. For more information about matching `restore-keys`, see "[Matching a cache key](#matching-a-cache-key)." -### `cache` アクションの入力パラメーター +### Input parameters for the `cache` action -- `key`: **必須** キャッシュの保存時に作成されたキーと、キャッシュの検索に使用されるキー。 変数、コンテキスト値、静的な文字列、関数の任意の組み合わせが使えます。 キーの長さは最大で512文字であり、キーが最大長よりも長いとアクションは失敗します。 -- `path`: **必須** キャッシュまたは復元するランナー上のパス。 - - 1 つのパスを指定することも、複数のパスを別々の行に追加することもできます。 たとえば次のような点です。 +- `key`: **Required** The key created when saving a cache and the key used to search for a cache. It can be any combination of variables, context values, static strings, and functions. Keys have a maximum length of 512 characters, and keys longer than the maximum length will cause the action to fail. +- `path`: **Required** The path(s) on the runner to cache or restore. + - You can specify a single path, or you can add multiple paths on separate lines. For example: ``` - name: Cache Gradle packages @@ -82,9 +77,9 @@ ms.locfileid: '147710308' ~/.gradle/caches ~/.gradle/wrapper ``` - - ディレクトリまたは単一ファイルのいずれかを指定できます。glob パターンがサポートされています。 - - 絶対パス、またはワークスペース ディレクトリに対する相対パスを指定できます。 -- `restore-keys`: **オプション** 代替の復元キーを含んだ文字列。各復元キーは新しい行に配置されます。 `key` に対するキャッシュ ヒットが発生しない場合は、キャッシュを検索して復元するために、これらの復元キーが指定された順序で使用されます。 たとえば次のような点です。 + - You can specify either directories or single files, and glob patterns are supported. + - You can specify absolute paths, or paths relative to the workspace directory. +- `restore-keys`: **Optional** A string containing alternative restore keys, with each restore key placed on a new line. If no cache hit occurs for `key`, these restore keys are used sequentially in the order provided to find and restore a cache. For example: {% raw %} ```yaml @@ -95,13 +90,13 @@ ms.locfileid: '147710308' ``` {% endraw %} -### `cache` アクションの出力パラメーター +### Output parameters for the `cache` action -- `cache-hit`: キーに対して完全一致が見つかったかどうかを示すブール値。 +- `cache-hit`: A boolean value to indicate an exact match was found for the key. -### `cache` アクションの使用例 +### Example using the `cache` action -次の例では、`package-lock.json` ファイル内のパッケージが変更されたとき、またはランナーのオペレーティング システムが変更されたときに、新しいキャッシュを作成します。 キャッシュ キーは、コンテキストと式を使用して、ランナーのオペレーティング システムと `package-lock.json` ファイルの SHA-256 ハッシュを含むキーを生成します。 +This example creates a new cache when the packages in `package-lock.json` file change, or when the runner's operating system changes. The cache key uses contexts and expressions to generate a key that includes the runner's operating system and a SHA-256 hash of the `package-lock.json` file. ```yaml{:copy} name: Caching with npm @@ -141,27 +136,27 @@ jobs: run: npm test ``` -`key` が既存のキャッシュと一致した場合 (これは _キャッシュ ヒット_ と呼ばれます)、アクションはキャッシュされたファイルを `path` ディレクトリに復元します。 +When `key` matches an existing cache, it's called a _cache hit_, and the action restores the cached files to the `path` directory. -`key` が既存のキャッシュと一致しない場合 (これは _キャッシュ ミス_ と呼ばれます)、ジョブが正常に完了すると、新しいキャッシュが作成されます。 +When `key` doesn't match an existing cache, it's called a _cache miss_, and a new cache is automatically created if the job completes successfully. -キャッシュ ミスが発生した場合、アクションはユーザーが指定した `restore-keys` の一致も検索します。 +When a cache miss occurs, the action also searches your specified `restore-keys` for any matches: -1. `restore-keys` を指定した場合、`cache` アクションは `restore-keys` のリストに一致するすべてのキャッシュを順次検索します。 - - 完全に一致する場合、アクションはキャッシュ内のファイルを `path` ディレクトリに復元します。 - - 完全なマッチがなかった場合、アクションはリストアキーに対する部分一致を検索します。 アクションで部分的な一致が見つかると、最新のキャッシュが `path` ディレクトリに復元されます。 -1. `cache` アクションが完了し、ジョブの次のステップが実行されます。 -1. ジョブが正常に完了すると、アクションは `path` ディレクトリのコンテンツを含んだ新しいキャッシュを自動的に作成します。 +1. If you provide `restore-keys`, the `cache` action sequentially searches for any caches that match the list of `restore-keys`. + - When there is an exact match, the action restores the files in the cache to the `path` directory. + - If there are no exact matches, the action searches for partial matches of the restore keys. When the action finds a partial match, the most recent cache is restored to the `path` directory. +1. The `cache` action completes and the next step in the job runs. +1. If the job completes successfully, the action automatically creates a new cache with the contents of the `path` directory. -キャッシュ照合プロセスの詳細については、「[キャッシュキーのマッチング](#matching-a-cache-key)」を参照してください。 キャッシュをいったん作成すると、既存のキャッシュの内容を変更することはできませんが、新しいキーで新しいキャッシュを作成することはできます。 +For a more detailed explanation of the cache matching process, see "[Matching a cache key](#matching-a-cache-key)." Once you create a cache, you cannot change the contents of an existing cache but you can create a new cache with a new key. -### コンテキストを使ったキャッシュキーの作成 +### Using contexts to create cache keys -キャッシュキーには、コンテキスト、関数、リテラル、{% data variables.product.prodname_actions %}がサポートする演算子を含めることができます。 詳細については、「[コンテキスト](/actions/learn-github-actions/contexts)」および「[式](/actions/learn-github-actions/expressions)」を参照してください。 +A cache key can include any of the contexts, functions, literals, and operators supported by {% data variables.product.prodname_actions %}. For more information, see "[Contexts](/actions/learn-github-actions/contexts)" and "[Expressions](/actions/learn-github-actions/expressions)." -式を使用して `key` を作成すると、依存関係が変更されたときに新しいキャッシュを自動的に作成できます。 +Using expressions to create a `key` allows you to automatically create a new cache when dependencies change. -たとえば、npm `package-lock.json` ファイルのハッシュを計算する式を使用して `key` を作成できます。 その場合、`package-lock.json` ファイルを構成する依存関係が変更されると、キャッシュ キーが変更され、新しいキャッシュが自動的に作成されます。 +For example, you can create a `key` using an expression that calculates the hash of an npm `package-lock.json` file. So, when the dependencies that make up the `package-lock.json` file change, the cache key changes and a new cache is automatically created. {% raw %} ```yaml @@ -169,17 +164,17 @@ npm-${{ hashFiles('package-lock.json') }} ``` {% endraw %} -{% data variables.product.prodname_dotcom %} は、式 `hash "package-lock.json"` を評価して最終的な `key` を導き出します。 +{% data variables.product.prodname_dotcom %} evaluates the expression `hash "package-lock.json"` to derive the final `key`. ```yaml npm-d5ea0750 ``` -### `cache` アクションの出力の使用 +### Using the output of the `cache` action -`cache` アクションの出力を使用すると、キャッシュ ヒットやキャッシュ ミスが発生したどうかに基づいて操作を実行することができます。 指定した `key` のキャッシュに完全一致が見つかった場合、`cache-hit` の出力は `true` に設定されます。 +You can use the output of the `cache` action to do something based on whether a cache hit or miss occurred. When an exact match is found for a cache for the specified `key`, the `cache-hit` output is set to `true`. -上記のワークフロー例では、キャッシュ ミスが発生した場合に、Node モジュールの状態をリストする手順があります。 +In the example workflow above, there is a step that lists the state of the Node modules if a cache miss occurred: ```yaml - if: {% raw %}${{ steps.cache-npm.outputs.cache-hit != 'true' }}{% endraw %} @@ -188,13 +183,13 @@ npm-d5ea0750 run: npm list ``` -## キャッシュキーのマッチング +## Matching a cache key -`cache` アクションは、最初にワークフロー実行を含むブランチで、`key` および `restore-keys` のキャッシュ ヒットを検索します。 現在のブランチにヒットがない場合、`cache` アクションは親ブランチとアップストリーム ブランチの `key` および `restore-keys` を検索します。 +The `cache` action first searches for cache hits for `key` and `restore-keys` in the branch containing the workflow run. If there are no hits in the current branch, the `cache` action searches for `key` and `restore-keys` in the parent branch and upstream branches. -`restore-keys` では、`key` でキャッシュ ミスが発生した場合に使用する代替復元キーのリストを指定できます。 特定の度合いが強いものから弱いものへ並べて複数のリストアキーを作成できます。 `cache` アクションは `restore-keys` を順番に検索します。 キーが直接マッチしなかった場合、アクションはリストアキーでプレフィックスされたキーを検索します。 リストアキーに対して複数の部分一致があった場合、アクションは最も最近に作成されたキャッシュを返します。 +`restore-keys` allows you to specify a list of alternate restore keys to use when there is a cache miss on `key`. You can create multiple restore keys ordered from the most specific to least specific. The `cache` action searches the `restore-keys` in sequential order. When a key doesn't match directly, the action searches for keys prefixed with the restore key. If there are multiple partial matches for a restore key, the action returns the most recently created cache. -### 複数のリストアキーの利用例 +### Example using multiple restore keys {% raw %} ```yaml @@ -205,7 +200,7 @@ restore-keys: | ``` {% endraw %} -ランナーは式を評価し、次の `restore-keys` に解決します。 +The runner evaluates the expressions, which resolve to these `restore-keys`: {% raw %} ```yaml @@ -216,13 +211,13 @@ restore-keys: | ``` {% endraw %} -復元キー `npm-feature-` は、文字列 `npm-feature-` で始まるすべてのキーと一致します。 たとえば、`npm-feature-fd3052de` および `npm-feature-a9b253ff` の両方のキーと復元キーが一致します。 最も最近の期日に作成されたキャッシュが使われます。 この例でのキーは、以下の順序で検索されます。 +The restore key `npm-feature-` matches any key that starts with the string `npm-feature-`. For example, both of the keys `npm-feature-fd3052de` and `npm-feature-a9b253ff` match the restore key. The cache with the most recent creation date would be used. The keys in this example are searched in the following order: -1. **`npm-feature-d5ea0750`** は特定のハッシュと一致します。 -1. **`npm-feature-`** は `npm-feature-` というプレフィックスが付いたキャッシュ キーと一致します。 -1. **`npm-`** は `npm-` というプレフィックスが付いたすべてのキーと一致します。 +1. **`npm-feature-d5ea0750`** matches a specific hash. +1. **`npm-feature-`** matches cache keys prefixed with `npm-feature-`. +1. **`npm-`** matches any keys prefixed with `npm-`. -#### 検索の優先度の例 +#### Example of search priority ```yaml key: @@ -232,30 +227,81 @@ restore-keys: | npm- ``` -たとえば、pull request が `feature` ブランチを含んでいて、既定のブランチ (`main`) をターゲットとしている場合、アクションは `key` と `restore-keys` を次の順序で検索します。 +For example, if a pull request contains a `feature` branch and targets the default branch (`main`), the action searches for `key` and `restore-keys` in the following order: -1. `feature` ブランチ内のキー `npm-feature-d5ea0750` -1. `feature` ブランチ内のキー `npm-feature-` -1. `feature` ブランチ内のキー `npm-` -1. `main` ブランチ内のキー `npm-feature-d5ea0750` -1. `main` ブランチ内のキー `npm-feature-` -1. `main` ブランチ内のキー `npm-` +1. Key `npm-feature-d5ea0750` in the `feature` branch +1. Key `npm-feature-` in the `feature` branch +1. Key `npm-` in the `feature` branch +1. Key `npm-feature-d5ea0750` in the `main` branch +1. Key `npm-feature-` in the `main` branch +1. Key `npm-` in the `main` branch -## 利用制限と退去のポリシー +## Usage limits and eviction policy -{% data variables.product.prodname_dotcom %}は、7日間以上アクセスされていないキャッシュエントリを削除します。 保存できるキャッシュの数に制限はありませんが、リポジトリ内のすべてのキャッシュの合計サイズは制限されています{% ifversion actions-cache-policy-apis %}。 既定では、リポジトリあたり 10 GB の制限ですが、この制限は、エンタープライズ所有者やリポジトリ管理者が設定したポリシーによって変わる場合があります。{% else %} (最大 10 GB)。{% endif %} +{% data variables.product.prodname_dotcom %} will remove any cache entries that have not been accessed in over 7 days. There is no limit on the number of caches you can store, but the total size of all caches in a repository is limited{% ifversion actions-cache-policy-apis %}. By default, the limit is 10 GB per repository, but this limit might be different depending on policies set by your enterprise owners or repository administrators.{% else %} to 10 GB.{% endif %} -{% data reusables.actions.cache-eviction-process %} +{% data reusables.actions.cache-eviction-process %} {% ifversion actions-cache-ui %}The cache eviction process may cause cache thrashing, where caches are created and deleted at a high frequency. To reduce this, you can review the caches for a repository and take corrective steps, such as removing caching from specific workflows. For more information, see "[Managing caches](#managing-caches)."{% endif %}{% ifversion actions-cache-admin-ui %} You can also increase the cache size limit for a repository. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)." + +{% elsif actions-cache-policy-apis %} + +For information on changing the policies for the repository cache size limit, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)" and "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)." -{% ifversion actions-cache-policy-apis %} リポジトリのキャッシュ サイズ制限のポリシー変更については、「[エンタープライズで {% data variables.product.prodname_actions %} のポリシーを適用する](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)」および「[リポジトリの {% data variables.product.prodname_actions %} の設定を管理する](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)」をご覧ください。 {% endif %} {% ifversion actions-cache-management %} -## キャッシュの管理 +## Managing caches -{% data variables.product.product_name %} REST API を使用してキャッシュを管理できます。 {% ifversion actions-cache-list-delete-apis %}API を使って、キャッシュ エントリの一覧表示と削除を行い、キャッシュの使用状況を確認できます。{% elsif actions-cache-management %}現時点では、API を使ってキャッシュの使用状況を確認できます。今後の更新で、さらに多くの機能が追加される予定です。{% endif %}詳しくは、REST API のドキュメント「[{% data variables.product.prodname_actions %} キャッシュ](/rest/actions/cache)」をご覧ください。 +{% ifversion actions-cache-ui %} -{% data variables.product.prodname_cli %} 拡張機能をインストールして、コマンド ラインからキャッシュを管理することもできます。 拡張機能について詳しくは、[拡張機能のドキュメント](https://github.com/actions/gh-actions-cache#readme)を参照してください。 {% data variables.product.prodname_cli %} 拡張機能について詳しくは、「[GitHub CLI 拡張機能を使用する](/github-cli/github-cli/using-github-cli-extensions)」を参照してください。 +To manage caches created from your workflows, you can: + +- View a list of all cache entries for a repository. +- Filter and sort the list of caches using specific metadata such as cache size, creation time, or last accessed time. +- Delete cache entries from a repository. +- Monitor aggregate cache usage for repositories and organizations. + +There are multiple ways to manage caches for your repositories: + +- Using the {% data variables.product.prodname_dotcom %} web interface, as shown below. +- Using the REST API. For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation. +- Installing a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information, see the [gh-actions-cache](https://github.com/actions/gh-actions-cache) extension. + +{% else %} + +You can use the {% data variables.product.product_name %} REST API to manage your caches. {% ifversion actions-cache-list-delete-apis %}You can use the API to list and delete cache entries, and see your cache usage.{% elsif actions-cache-management %}At present, you can use the API to see your cache usage, with more functionality expected in future updates.{% endif %} For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation. + +You can also install a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information about the extension, see [the extension documentation](https://github.com/actions/gh-actions-cache#readme). For more information about {% data variables.product.prodname_cli %} extensions, see "[Using GitHub CLI extensions](/github-cli/github-cli/using-github-cli-extensions)." + +{% endif %} + +{% ifversion actions-cache-ui %} + +### Viewing cache entries + +You can use the web interface to view a list of cache entries for a repository. In the cache list, you can see how much disk space each cache is using, when the cache was created, and when the cache was last used. + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.actions-tab %} +{% data reusables.repositories.actions-cache-list %} +1. Review the list of cache entries for the repository. + + * To search for cache entries used for a specific branch, click the **Branch** dropdown menu and select a branch. The cache list will display all of the caches used for the selected branch. + * To search for cache entries with a specific cache key, use the syntax `key: key-name` in the **Filter caches** field. The cache list will display caches from all branches where the key was used. + + ![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-entry-list.png) + +### Deleting cache entries + +Users with `write` access to a repository can use the {% data variables.product.prodname_dotcom %} web interface to delete cache entries. + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.actions-tab %} +{% data reusables.repositories.actions-cache-list %} +1. To the right of the cache entry you want to delete, click {% octicon "trash" aria-label="The trash icon" %}. + + ![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-delete.png) + +{% endif %} {% endif %} diff --git a/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md b/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md index 8d251302a1..3bca1364de 100644 --- a/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md +++ b/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md @@ -1,6 +1,6 @@ --- -title: クラスタのネットワーク設定 -intro: '{% data variables.product.prodname_ghe_server %} クラスタリングが適切に動作するためには、DNS の名前解決、ロードバランシング、ノード間の通信が適切に行われなければなりません。' +title: Cluster network configuration +intro: '{% data variables.product.prodname_ghe_server %} clustering relies on proper DNS name resolution, load balancing, and communication between nodes to operate properly.' redirect_from: - /enterprise/admin/clustering/cluster-network-configuration - /enterprise/admin/enterprise-management/cluster-network-configuration @@ -14,68 +14,62 @@ topics: - Infrastructure - Networking shortTitle: Configure a cluster network -ms.openlocfilehash: d6e4d50077cccc3e5582be0af39bdae0046cd8c8 -ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/10/2022 -ms.locfileid: '145112765' --- -## ネットワークに関する考慮事項 +## Network considerations -クラスタリングのための最もシンプルなネットワーク設計は、ノード群を単一のLANに置くことです。 クラスタがサブネットワークにまたがる必要がある場合は、ネットワーク間にファイアウォールルールを設定することはお勧めしません。 ノード間の遅延は 1 ミリ秒未満である必要があります。 +The simplest network design for clustering is to place the nodes on a single LAN. If a cluster must span subnetworks, we do not recommend configuring any firewall rules between the networks. The latency between nodes should be less than 1 millisecond. -{% ifversion ghes %}高可用性を実現するには、アクティブ ノードを備えたネットワークとパッシブ ノードを備えたネットワーク間の待ち時間が 70 ミリ秒未満である必要があります。 2 つのネットワーク間にファイアウォールを設定することはお勧めしません。{% endif %} +{% data reusables.enterprise_clustering.network-latency %} -### エンドユーザーのためのアプリケーションポート +### Application ports for end users -アプリケーションのポートは、エンドユーザーにWebアプリケーションとGitへのアクセスを提供します。 +Application ports provide web application and Git access for end users. -| Port | 説明 | Encrypted | +| Port | Description | Encrypted | | :------------- | :------------- | :------------- | | 22/TCP | Git over SSH | Yes | -| 25/TCP | SMTP | STARTTLSが必要 | -| 80/TCP | HTTP | No
(SSL が有効になっている場合、このポートは HTTPS にリダイレクトされます) | +| 25/TCP | SMTP | Requires STARTTLS | +| 80/TCP | HTTP | No
(When SSL is enabled this port redirects to HTTPS) | | 443/TCP | HTTPS | Yes | -| 9418/TCP | 単純な Git プロトコル ポート
(プライベート モードでは無効) | No | +| 9418/TCP | Simple Git protocol port
(Disabled in private mode) | No | -### 管理ポート +### Administrative ports -管理ポートは、エンドユーザが基本的なアプリケーションを利用するためには必要ありません。 +Administrative ports are not required for basic application use by end users. -| Port | 説明 | Encrypted | +| Port | Description | Encrypted | | :------------- | :------------- | :------------- | | ICMP | ICMP Ping | No | -| 122/TCP | 管理SSH | Yes | +| 122/TCP | Administrative SSH | Yes | | 161/UDP | SNMP | No | -| 8080/TCP | Management Console HTTP | No
(SSL が有効になっている場合、このポートは HTTPS にリダイレクトされます) | +| 8080/TCP | Management Console HTTP | No
(When SSL is enabled this port redirects to HTTPS) | | 8443/TCP | Management Console HTTPS | Yes | -### クラスタ通信ポート +### Cluster communication ports -ネットワークレベルのファイアウォールがノード間にある場合は、これらのポートがアクセス可能である必要があります。 ノード間の通信は暗号化されていません。 これらのポートは外部からアクセスできません。 +If a network level firewall is in place between nodes, these ports will need to be accessible. The communication between nodes is not encrypted. These ports should not be accessible externally. -| Port | 説明 | +| Port | Description | | :------------- | :------------- | -| 1336/TCP | 内部 API | -| 3033/TCP | 内部 SVN アクセス | -| 3037/TCP | 内部 SVN アクセス | +| 1336/TCP | Internal API | +| 3033/TCP | Internal SVN access | +| 3037/TCP | Internal SVN access | | 3306/TCP | MySQL | -| 4486/TCP | Governor アクセス | -| 5115/TCP | ストレージ バックエンド | -| 5208/TCP | 内部 SVN アクセス | +| 4486/TCP | Governor access | +| 5115/TCP | Storage backend | +| 5208/TCP | Internal SVN access | | 6379/TCP | Redis | | 8001/TCP | Grafana | -| 8090/TCP | 内部 GPG アクセス | -| 8149/TCP | GitRPC ファイルサーバーアクセス | +| 8090/TCP | Internal GPG access | +| 8149/TCP | GitRPC file server access | | 8300/TCP | Consul | | 8301/TCP | Consul | | 8302/TCP | Consul | -| 9000/TCP | Git デーモン | -| 9102/TCP | Pages ファイルサーバー | -| 9105/TCP | LFS サーバー | +| 9000/TCP | Git Daemon | +| 9102/TCP | Pages file server | +| 9105/TCP | LFS server | | 9200/TCP | Elasticsearch | -| 9203/TCP | セマンティックコードサービス | +| 9203/TCP | Semantic code service | | 9300/TCP | Elasticsearch | | 11211/TCP | Memcache | | 161/UDP | SNMP | @@ -84,42 +78,42 @@ ms.locfileid: '145112765' | 8302/UDP | Consul | | 25827/UDP | Collectd | -## ロードバランサの設定 +## Configuring a load balancer - ノード間のトラフィックの分配には、PROXY プロトコルをサポートする TCP ベースの外部ロードバランサをおすすめします。 以下のロードバランサ設定を検討してください: + We recommend an external TCP-based load balancer that supports the PROXY protocol to distribute traffic across nodes. Consider these load balancer configurations: - - TCP ポート (以下に示す) は、`web-server` サービスを実行しているノードに転送する必要があります。 これらは、外部クライアント要求を処理する唯一のノードです。 - - スティッキーセッションは有効化してはなりません。 + - TCP ports (shown below) should be forwarded to nodes running the `web-server` service. These are the only nodes that serve external client requests. + - Sticky sessions shouldn't be enabled. {% data reusables.enterprise_installation.terminating-tls %} -## クライアントの接続情報の処理 +## Handling client connection information -クラスタへのクライアント接続はロードバランサから行われるため、クライアントの IP アドレスが失われる可能性があります。 クライアント接続情報を正しく取り込むには、追加の検討が必要です。 +Because client connections to the cluster come from the load balancer, the client IP address can be lost. To properly capture the client connection information, additional consideration is required. {% data reusables.enterprise_clustering.proxy_preference %} {% data reusables.enterprise_clustering.proxy_xff_firewall_warning %} -### {% data variables.product.prodname_ghe_server %}での PROXY サポートの有効化 +### Enabling PROXY support on {% data variables.product.prodname_ghe_server %} -インスタンスとロードバランサの双方でPROXYサポートを有効化することを強くおすすめします。 +We strongly recommend enabling PROXY support for both your instance and the load balancer. {% data reusables.enterprise_installation.proxy-incompatible-with-aws-nlbs %} - - インスタンスにはこのコマンドを使用してください: + - For your instance, use this command: ```shell $ ghe-config 'loadbalancer.proxy-protocol' 'true' && ghe-cluster-config-apply ``` - - ロードバランサでは、ベンダーから提供された手順書に従ってください。 + - For the load balancer, use the instructions provided by your vendor. {% data reusables.enterprise_clustering.proxy_protocol_ports %} -### {% data variables.product.prodname_ghe_server %}での X-Forwarded-For サポートの有効化 +### Enabling X-Forwarded-For support on {% data variables.product.prodname_ghe_server %} {% data reusables.enterprise_clustering.x-forwarded-for %} -`X-Forwarded-For` ヘッダーを有効にするには、次のコマンドを使用します。 +To enable the `X-Forwarded-For` header, use this command: ```shell $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply @@ -127,11 +121,12 @@ $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply {% data reusables.enterprise_clustering.without_proxy_protocol_ports %} -### ヘルスチェックの設定 -ロードバランサは健全性チェックによって、事前に設定されたチェックが失敗するようになったノードがあれば、反応しなくなったノードへのトラフィックの送信を止めます。 クラスタのノードに障害が起きた場合、冗長なノードと組み合わさったヘルスチェックが高可用性を提供してくれます。 +### Configuring Health Checks +Health checks allow a load balancer to stop sending traffic to a node that is not responding if a pre-configured check fails on that node. If a cluster node fails, health checks paired with redundant nodes provides high availability. -{% data reusables.enterprise_clustering.health_checks %} {% data reusables.enterprise_site_admin_settings.maintenance-mode-status %} +{% data reusables.enterprise_clustering.health_checks %} +{% data reusables.enterprise_site_admin_settings.maintenance-mode-status %} -## DNS の要件 +## DNS Requirements {% data reusables.enterprise_clustering.load_balancer_dns %} diff --git a/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md b/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md index ce235b3641..a4a6b01075 100644 --- a/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md +++ b/translations/ja-JP/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md @@ -1,6 +1,6 @@ --- -title: クラスタの High Availability レプリケーションを設定する -intro: '{% data variables.product.prodname_ghe_server %} クラスタ全体のパッシブレプリカを別の場所に設定することで、クラスタを冗長ノードにフェイルオーバーできるようにします。' +title: Configuring high availability replication for a cluster +intro: 'You can configure a passive replica of your entire {% data variables.product.prodname_ghe_server %} cluster in a different location, allowing your cluster to fail over to redundant nodes.' miniTocMaxHeadingLevel: 3 redirect_from: - /enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster @@ -14,86 +14,80 @@ topics: - High availability - Infrastructure shortTitle: Configure HA replication -ms.openlocfilehash: 3663fe290fab6644c5650c3f1ff435dfae87bcf4 -ms.sourcegitcommit: fb047f9450b41b24afc43d9512a5db2a2b750a2a -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/11/2022 -ms.locfileid: '145120630' --- -## クラスタの High Availability レプリケーションについて +## About high availability replication for clusters -High Availability を実現するために、{% data variables.product.prodname_ghe_server %} のクラスタデプロイメントを設定できます。この場合、パッシブノードの同一のセットがアクティブクラスタ内のノードと同期されます。 ハードウェアまたはソフトウェアの障害がアクティブなクラスタのデータセンターに影響を与える場合は、手動でレプリカノードにフェイルオーバーし、ユーザリクエストの処理を続行して、停止の影響を最小限に抑えることができます。 +You can configure a cluster deployment of {% data variables.product.prodname_ghe_server %} for high availability, where an identical set of passive nodes sync with the nodes in your active cluster. If hardware or software failures affect the datacenter with your active cluster, you can manually fail over to the replica nodes and continue processing user requests, minimizing the impact of the outage. -High Availability モードでは、各アクティブノードは対応するパッシブノードと定期的に同期します。 パッシブノードはスタンバイで実行され、アプリケーションへのサービス提供や、ユーザ要求の処理は行われません。 +In high availability mode, each active node syncs regularly with a corresponding passive node. The passive node runs in standby and does not serve applications or process user requests. -{% data variables.product.prodname_ghe_server %} の包括的なシステム災害復旧計画の一部として High Availability を設定することをお勧めします。 また、定期的なバックアップを実行することをお勧めします。 詳細については、「[アプライアンスでのバックアップの設定](/enterprise/admin/configuration/configuring-backups-on-your-appliance)」を参照してください。 +We recommend configuring high availability as a part of a comprehensive disaster recovery plan for {% data variables.product.prodname_ghe_server %}. We also recommend performing regular backups. For more information, see "[Configuring backups on your appliance](/enterprise/admin/configuration/configuring-backups-on-your-appliance)." -## 前提条件 +## Prerequisites -### ハードウェアとソフトウェア +### Hardware and software -アクティブなクラスタ内の既存のノードごとに、同一のハードウェアリソースを使用して2番目の仮想マシンをプロビジョニングする必要があります。 たとえば、クラスターに 11 個のノードがあり、各ノードに 12 個の vCPU、96 GB の RAM、および 750 GB の接続ストレージがある場合、それぞれが 12 個の vCPU、96 GB の RAM、および 750 GB の接続ストレージを備えた 11 個の新しい仮想マシンをプロビジョニングする必要があります。 +For each existing node in your active cluster, you'll need to provision a second virtual machine with identical hardware resources. For example, if your cluster has 11 nodes and each node has 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage, you must provision 11 new virtual machines that each have 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage. -新しい仮想マシンごとに、アクティブクラスタ内のノードで実行されているものと同じバージョンの {% data variables.product.prodname_ghe_server %} をインストールします。 ライセンスをアップロードしたり、追加の設定を実行したりする必要はありません。 詳細については、「[{% data variables.product.prodname_ghe_server %} インスタンスをセットアップする](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)」を参照してください。 +On each new virtual machine, install the same version of {% data variables.product.prodname_ghe_server %} that runs on the nodes in your active cluster. You don't need to upload a license or perform any additional configuration. For more information, see "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)." {% note %} -**注**: High Availability レプリケーションに使用する予定のノードは、スタンドアロンの {% data variables.product.prodname_ghe_server %} インスタンスである必要があります。 パッシブノードを2番目のクラスタとして初期化しないでください。 +**Note**: The nodes that you intend to use for high availability replication should be standalone {% data variables.product.prodname_ghe_server %} instances. Don't initialize the passive nodes as a second cluster. {% endnote %} -### ネットワーク +### Network -プロビジョニングする新しいノードごとに静的 IP アドレスを割り当てる必要があります。また、接続を受け入れてクラスタのフロントエンド層のノードに転送するようにロードバランサを設定する必要があります。 +You must assign a static IP address to each new node that you provision, and you must configure a load balancer to accept connections and direct them to the nodes in your cluster's front-end tier. -アクティブクラスタを使用するネットワークとパッシブクラスタを使用するネットワークの間にファイアウォールを設定することはお勧めしません。 アクティブノードのあるネットワークとパッシブノードのあるネットワークの間の遅延は、70 ミリ秒未満である必要があります。 パッシブ クラスター内のノード間のネットワーク接続の詳細については、「[クラスターのネットワーク構成](/enterprise/admin/enterprise-management/cluster-network-configuration)」を参照してください。 +{% data reusables.enterprise_clustering.network-latency %} For more information about network connectivity between nodes in the passive cluster, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration)." -## クラスタの High Availability レプリカを作成する +## Creating a high availability replica for a cluster -- [アクティブ ノードをプライマリ データセンターに割り当てる](#assigning-active-nodes-to-the-primary-datacenter) -- [パッシブ ノードをクラスター構成ファイルに追加する](#adding-passive-nodes-to-the-cluster-configuration-file) -- [構成例](#example-configuration) +- [Assigning active nodes to the primary datacenter](#assigning-active-nodes-to-the-primary-datacenter) +- [Adding passive nodes to the cluster configuration file](#adding-passive-nodes-to-the-cluster-configuration-file) +- [Example configuration](#example-configuration) -### アクティブノードをプライマリデータセンターに割り当てる +### Assigning active nodes to the primary datacenter -パッシブノードのセカンダリデータセンターを定義する前に、アクティブノードをプライマリデータセンターに割り当てていることを確認してください。 +Before you define a secondary datacenter for your passive nodes, ensure that you assign your active nodes to the primary datacenter. {% data reusables.enterprise_clustering.ssh-to-a-node %} {% data reusables.enterprise_clustering.open-configuration-file %} -3. クラスタのプライマリデータセンターの名前に注意します。 クラスター構成ファイルの上部にある `[cluster]` セクションでは、キーと値のペア `primary-datacenter` を使用して、プライマリ データセンターの名前を定義します。 既定では、クラスターのプライマリ データセンターの名前は `default` です。 +3. Note the name of your cluster's primary datacenter. The `[cluster]` section at the top of the cluster configuration file defines the primary datacenter's name, using the `primary-datacenter` key-value pair. By default, the primary datacenter for your cluster is named `default`. ```shell [cluster] - mysql-master = HOSTNAME - redis-master = HOSTNAME + mysql-master = HOSTNAME + redis-master = HOSTNAME primary-datacenter = default ``` - - 必要に応じて、`primary-datacenter` の値を編集して、プライマリ データセンター名をよりわかりやすい名前に変更します。 + - Optionally, change the name of the primary datacenter to something more descriptive or accurate by editing the value of `primary-datacenter`. -4. {% data reusables.enterprise_clustering.configuration-file-heading %} 各ノードの見出しの下に、新しいキー/値ペアのペアを追加して、ノードをデータセンターに割り当てます。 上記のステップ 3 と同じ値 `primary-datacenter` を使用します。 たとえば、既定の名前 (`default`) を使用する場合は、次のキーと値のペアを各ノードのセクションに追加します。 +4. {% data reusables.enterprise_clustering.configuration-file-heading %} Under each node's heading, add a new key-value pair to assign the node to a datacenter. Use the same value as `primary-datacenter` from step 3 above. For example, if you want to use the default name (`default`), add the following key-value pair to the section for each node. ``` datacenter = default ``` - 完了すると、クラスタ設定ファイルの各ノードのセクションは次の例のようになります。 {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %} + When you're done, the section for each node in the cluster configuration file should look like the following example. {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %} ```shell - [cluster "HOSTNAME"] + [cluster "HOSTNAME"] datacenter = default - hostname = HOSTNAME - ipv4 = IP ADDRESS + hostname = HOSTNAME + ipv4 = IP-ADDRESS ... ... ``` {% note %} - **注**: ステップ 3 でプライマリ データセンター名を変更した場合は、各ノードのセクションでキーと値のペア `consul-datacenter` を見つけ、その値を名前変更したプライマリ データセンターに変更します。 たとえば、プライマリ データセンターに `primary` という名前を付けた場合は、ノードごとに次のキーと値のペアを使用します。 + **Note**: If you changed the name of the primary datacenter in step 3, find the `consul-datacenter` key-value pair in the section for each node and change the value to the renamed primary datacenter. For example, if you named the primary datacenter `primary`, use the following key-value pair for each node. ``` consul-datacenter = primary @@ -105,123 +99,123 @@ High Availability モードでは、各アクティブノードは対応する {% data reusables.enterprise_clustering.configuration-finished %} -{% data variables.product.prodname_ghe_server %} がプロンプトに戻ったら、ノードをクラスタのプライマリデータセンターに割り当てます。 +After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished assigning your nodes to the cluster's primary datacenter. -### パッシブノードをクラスタ設定ファイルに追加する +### Adding passive nodes to the cluster configuration file -High Availability を設定するには、クラスタ内のすべてのアクティブノードに対応するパッシブノードを定義する必要があります。 次の手順では、アクティブノードとパッシブノードの両方を定義する新しいクラスタ設定を作成します。 このチュートリアルの内容は次のとおりです。 +To configure high availability, you must define a corresponding passive node for every active node in your cluster. The following instructions create a new cluster configuration that defines both active and passive nodes. You will: -- アクティブなクラスタ設定ファイルのコピーを作成します。 -- コピーを編集して、アクティブノードに対応するパッシブノードを定義し、プロビジョニングした新しい仮想マシンの IP アドレスを追加します。 -- クラスタ設定の変更されたコピーをアクティブな設定にマージします。 -- 新しい設定を適用してレプリケーションを開始します。 +- Create a copy of the active cluster configuration file. +- Edit the copy to define passive nodes that correspond to the active nodes, adding the IP addresses of the new virtual machines that you provisioned. +- Merge the modified copy of the cluster configuration back into your active configuration. +- Apply the new configuration to start replication. -構成例については、「[構成例](#example-configuration)」を参照してください。 +For an example configuration, see "[Example configuration](#example-configuration)." -1. クラスタ内のノードごとに、同じバージョンの {% data variables.product.prodname_ghe_server %} を実行して、同じ仕様で一致する仮想マシンをプロビジョニングします。 新しい各クラスターノードの IPv4 アドレスとホスト名に注意してください。 詳しい情報については、「[前提条件](#prerequisites)」を参照してください。 +1. For each node in your cluster, provision a matching virtual machine with identical specifications, running the same version of {% data variables.product.prodname_ghe_server %}. Note the IPv4 address and hostname for each new cluster node. For more information, see "[Prerequisites](#prerequisites)." {% note %} - **注**: フェイルオーバー後に High Availability を再構成する場合は、代わりにプライマリ データセンターの古いノードを使用できます。 + **Note**: If you're reconfiguring high availability after a failover, you can use the old nodes from the primary datacenter instead. {% endnote %} {% data reusables.enterprise_clustering.ssh-to-a-node %} -3. 既存のクラスタ設定をバックアップします。 +3. Back up your existing cluster configuration. ``` cp /data/user/common/cluster.conf ~/$(date +%Y-%m-%d)-cluster.conf.backup ``` -4. _/home/admin/cluster-passive.conf_ などの一時的な場所に、既存のクラスター設定ファイルのコピーを作成します。 IP アドレス (`ipv*`)、UUID (`uuid`)、WireGuard の公開キー (`wireguard-pubkey`) に対するキーと値のペアを削除します。 +4. Create a copy of your existing cluster configuration file in a temporary location, like _/home/admin/cluster-passive.conf_. Delete unique key-value pairs for IP addresses (`ipv*`), UUIDs (`uuid`), and public keys for WireGuard (`wireguard-pubkey`). ``` grep -Ev "(?:|ipv|uuid|vpn|wireguard\-pubkey)" /data/user/common/cluster.conf > ~/cluster-passive.conf ``` -5. 前のステップでコピーした一時クラスター構成ファイルから `[cluster]` セクションを削除します。 +5. Remove the `[cluster]` section from the temporary cluster configuration file that you copied in the previous step. ``` git config -f ~/cluster-passive.conf --remove-section cluster ``` -6. パッシブノードをプロビジョニングしたセカンダリデータセンターの名前を決定してから、一時クラスタ設定ファイルを新しいデータセンター名で更新します。 `SECONDARY` を、選んだ名前に置き換えます。 +6. Decide on a name for the secondary datacenter where you provisioned your passive nodes, then update the temporary cluster configuration file with the new datacenter name. Replace `SECONDARY` with the name you choose. ```shell - sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf + sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf ``` -7. パッシブノードのホスト名のパターンを決定します。 +7. Decide on a pattern for the passive nodes' hostnames. {% warning %} - **警告**: パッシブ ノードのホスト名は一意であり、対応するアクティブ ノードのホスト名とは違うものにする必要があります。 + **Warning**: Hostnames for passive nodes must be unique and differ from the hostname for the corresponding active node. {% endwarning %} -8. ステップ 3 の一時クラスタ設定ファイルをテキストエディタで開きます。 たとえばVimを利用できます。 +8. Open the temporary cluster configuration file from step 3 in a text editor. For example, you can use Vim. ```shell sudo vim ~/cluster-passive.conf ``` -9. 一時クラスタ設定ファイル内の各セクションで、ノードの設定を更新します。 {% data reusables.enterprise_clustering.configuration-file-heading %} +9. In each section within the temporary cluster configuration file, update the node's configuration. {% data reusables.enterprise_clustering.configuration-file-heading %} - - 上記のステップ 7 で選んだパターンに従って、セクション見出しの引用符で囲まれたホスト名とセクション内の `hostname` の値をパッシブ ノードのホスト名に変更します。 - - `ipv4` という名前の新しいキーを追加し、その値をパッシブノードの静的 IPv4 アドレスに設定します。 - - 新しいキーと値のペア `replica = enabled` を追加します。 + - Change the quoted hostname in the section heading and the value for `hostname` within the section to the passive node's hostname, per the pattern you chose in step 7 above. + - Add a new key named `ipv4`, and set the value to the passive node's static IPv4 address. + - Add a new key-value pair, `replica = enabled`. ```shell - [cluster "NEW PASSIVE NODE HOSTNAME"] + [cluster "NEW PASSIVE NODE HOSTNAME"] ... - hostname = NEW PASSIVE NODE HOSTNAME - ipv4 = NEW PASSIVE NODE IPV4 ADDRESS + hostname = NEW PASSIVE NODE HOSTNAME + ipv4 = NEW PASSIVE NODE IPV4 ADDRESS replica = enabled ... ... ``` -10. ステップ 4 で作成した一時クラスタ設定ファイルの内容をアクティブ設定ファイルに追加します。 +10. Append the contents of the temporary cluster configuration file that you created in step 4 to the active configuration file. ```shell cat ~/cluster-passive.conf >> /data/user/common/cluster.conf ``` -11. セカンダリデータセンターのプライマリ MySQL ノードと Redis ノードを指定します。 `REPLICA MYSQL PRIMARY HOSTNAME` と `REPLICA REDIS PRIMARY HOSTNAME` を、既存の MySQL および Redis プライマリと一致するようにプロビジョニングしたパッシブ ノードのホスト名に置き換えます。 +11. Designate the primary MySQL and Redis nodes in the secondary datacenter. Replace `REPLICA MYSQL PRIMARY HOSTNAME` and `REPLICA REDIS PRIMARY HOSTNAME` with the hostnames of the passives node that you provisioned to match your existing MySQL and Redis primaries. ```shell - git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA MYSQL PRIMARY HOSTNAME - git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA REDIS PRIMARY HOSTNAME + git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA-MYSQL-PRIMARY-HOSTNAME + git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA-REDIS-PRIMARY-HOSTNAME ``` {% warning %} - **警告**: 続ける前に、クラスター構成ファイルを確認してください。 + **Warning**: Review your cluster configuration file before proceeding. - - トップレベルの `[cluster]` セクションで、`mysql-master-replica` と `redis-master-replica` の値が、フェイルオーバー後に MySQL と Redis のプライマリとして機能するセカンダリ データセンター内のパッシブ ノードに対する正しいホスト名であることを保証します。 - - [cluster "ACTIVE NODE HOSTNAME"] という名前の付いたアクティブ ノードの各セクションで、次のキーと値のペアをもう一度確認します。 - - `datacenter` は、最上位セクション `primary-datacenter` の `[cluster]` 値と一致する必要があります。 - - `consul-datacenter` は、`datacenter` の値と一致する必要があります。これは、最上位セクション `[cluster]` にある `primary-datacenter` の値と同じです。 - - アクティブ ノードごとに、構成には、同じロールを持つ **1 つ** のパッシブ ノードに対応するセクションが構成に **1 つ** 確実に存在するようにします。 パッシブノードの各セクションで、各キー/値ペアを再確認します。 - - `datacenter` は、他のすべてのパッシブ ノードと一致する必要があります。 - - `consul-datacenter` は、他のすべてのパッシブ ノードと一致する必要があります。 - - `hostname` は、セクション見出しのホスト名と一致する必要があります。 - - `ipv4` は、ノードの一意の静的 IPv4 アドレスと一致する必要があります。 - - `replica` は `enabled` として構成する必要があります。 - - 必要に応じて、使用されなくなったオフラインノードのセクションを削除してください。 + - In the top-level `[cluster]` section, ensure that the values for `mysql-master-replica` and `redis-master-replica` are the correct hostnames for the passive nodes in the secondary datacenter that will serve as the MySQL and Redis primaries after a failover. + - In each section for an active node named [cluster "ACTIVE NODE HOSTNAME"], double-check the following key-value pairs. + - `datacenter` should match the value of `primary-datacenter` in the top-level `[cluster]` section. + - `consul-datacenter` should match the value of `datacenter`, which should be the same as the value for `primary-datacenter` in the top-level `[cluster]` section. + - Ensure that for each active node, the configuration has **one** corresponding section for **one** passive node with the same roles. In each section for a passive node, double-check each key-value pair. + - `datacenter` should match all other passive nodes. + - `consul-datacenter` should match all other passive nodes. + - `hostname` should match the hostname in the section heading. + - `ipv4` should match the node's unique, static IPv4 address. + - `replica` should be configured as `enabled`. + - Take the opportunity to remove sections for offline nodes that are no longer in use. - 構成例を確認するには、「[構成例](#example-configuration)」を参照してください。 + To review an example configuration, see "[Example configuration](#example-configuration)." {% endwarning %} -13. 新しいクラスタ設定を初期化します。 {% data reusables.enterprise.use-a-multiplexer %} +13. Initialize the new cluster configuration. {% data reusables.enterprise.use-a-multiplexer %} ```shell ghe-cluster-config-init ``` -14. 初期化が完了すると、{% data variables.product.prodname_ghe_server %} は次のメッセージを表示します。 +14. After the initialization finishes, {% data variables.product.prodname_ghe_server %} displays the following message. ```shell Finished cluster initialization @@ -231,33 +225,33 @@ High Availability を設定するには、クラスタ内のすべてのアク {% data reusables.enterprise_clustering.configuration-finished %} -17. パッシブノードにフェイルオーバーした場合にユーザからの接続を受け入れるロードバランサを設定します。 詳細については、[クラスター ネットワーク構成](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)に関する記事を参照してください。 +17. Configure a load balancer that will accept connections from users if you fail over to the passive nodes. For more information, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)." -クラスタ内のノードの High Availability レプリケーションの設定が完了しました。 各アクティブノードは、対応するパッシブノードへの設定とデータの複製を開始します。障害が発生した場合は、トラフィックをセカンダリデータセンターのロードバランサに転送できます。 フェールオーバーの詳細については、「[レプリカ クラスターへのフェールオーバーの開始](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)」を参照してください。 +You've finished configuring high availability replication for the nodes in your cluster. Each active node begins replicating configuration and data to its corresponding passive node, and you can direct traffic to the load balancer for the secondary datacenter in the event of a failure. For more information about failing over, see "[Initiating a failover to your replica cluster](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)." -### 構成例 +### Example configuration -最上位の `[cluster]` 構成は、次の例のようになります。 +The top-level `[cluster]` configuration should look like the following example. ```shell [cluster] - mysql-master = HOSTNAME OF ACTIVE MYSQL MASTER - redis-master = HOSTNAME OF ACTIVE REDIS MASTER - primary-datacenter = PRIMARY DATACENTER NAME - mysql-master-replica = HOSTNAME OF PASSIVE MYSQL MASTER - redis-master-replica = HOSTNAME OF PASSIVE REDIS MASTER + mysql-master = HOSTNAME-OF-ACTIVE-MYSQL-MASTER + redis-master = HOSTNAME-OF-ACTIVE-REDIS-MASTER + primary-datacenter = PRIMARY-DATACENTER-NAME + mysql-master-replica = HOSTNAME-OF-PASSIVE-MYSQL-MASTER + redis-master-replica = HOSTNAME-OF-PASSIVE-REDIS-MASTER mysql-auto-failover = false ... ``` -クラスタのストレージ層のアクティブノードの設定は、次の例のようになります。 +The configuration for an active node in your cluster's storage tier should look like the following example. ```shell ... -[cluster "UNIQUE ACTIVE NODE HOSTNAME"] +[cluster "UNIQUE ACTIVE NODE HOSTNAME"] datacenter = default - hostname = UNIQUE ACTIVE NODE HOSTNAME - ipv4 = IPV4 ADDRESS + hostname = UNIQUE-ACTIVE-NODE-HOSTNAME + ipv4 = IPV4-ADDRESS consul-datacenter = default consul-server = true git-server = true @@ -268,26 +262,26 @@ High Availability を設定するには、クラスタ内のすべてのアク memcache-server = true metrics-server = true storage-server = true - vpn = IPV4 ADDRESS SET AUTOMATICALLY - uuid = UUID SET AUTOMATICALLY - wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY + vpn = IPV4 ADDRESS SET AUTOMATICALLY + uuid = UUID SET AUTOMATICALLY + wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY ... ``` -ストレージ層内の対応するパッシブノードの設定は、次の例のようになります。 +The configuration for the corresponding passive node in the storage tier should look like the following example. -- 対応するアクティブ ノードとの大きな違いは **太字** であることです。 -- {% data variables.product.prodname_ghe_server %} は、`vpn`、`uuid`、および `wireguard-pubkey` の値を自動的に割り当てるため、初期化するパッシブ ノードの値を定義しないでください。 -- `*-server` キーで定義されたサーバー ロールは、対応するアクティブ ノードと一致します。 +- Important differences from the corresponding active node are **bold**. +- {% data variables.product.prodname_ghe_server %} assigns values for `vpn`, `uuid`, and `wireguard-pubkey` automatically, so you shouldn't define the values for passive nodes that you will initialize. +- The server roles, defined by `*-server` keys, match the corresponding active node. ```shell ... -[cluster "UNIQUE PASSIVE NODE HOSTNAME"] +[cluster "UNIQUE PASSIVE NODE HOSTNAME"] replica = enabled - ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES - datacenter = SECONDARY DATACENTER NAME - hostname = UNIQUE PASSIVE NODE HOSTNAME - consul-datacenter = SECONDARY DATACENTER NAME + ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES + datacenter = SECONDARY DATACENTER NAME + hostname = UNIQUE PASSIVE NODE HOSTNAME + consul-datacenter = SECONDARY DATACENTER NAME consul-server = true git-server = true pages-server = true @@ -297,73 +291,73 @@ High Availability を設定するには、クラスタ内のすべてのアク memcache-server = true metrics-server = true storage-server = true - vpn = DO NOT DEFINE - uuid = DO NOT DEFINE - wireguard-pubkey = DO NOT DEFINE + vpn = DO NOT DEFINE + uuid = DO NOT DEFINE + wireguard-pubkey = DO NOT DEFINE ... ``` -## アクティブクラスターノードとパッシブクラスターノード間のレプリケーションを監視する +## Monitoring replication between active and passive cluster nodes -クラスタ内のアクティブノードとパッシブノード間の初期レプリケーションには時間がかかります。 時間は、複製するデータの量と {% data variables.product.prodname_ghe_server %} のアクティビティレベルによって異なります。 +Initial replication between the active and passive nodes in your cluster takes time. The amount of time depends on the amount of data to replicate and the activity levels for {% data variables.product.prodname_ghe_server %}. -{% data variables.product.prodname_ghe_server %} 管理シェルから利用できるコマンドラインツールを使用して、クラスタ内の任意のノードの進行状況を監視できます。 管理シェルの詳細については、「[管理シェル (SSH) にアクセスする](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)」を参照してください。 +You can monitor the progress on any node in the cluster, using command-line tools available via the {% data variables.product.prodname_ghe_server %} administrative shell. For more information about the administrative shell, see "[Accessing the administrative shell (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)." -- データベースのレプリケーションの監視する: +- Monitor replication of databases: ``` /usr/local/share/enterprise/ghe-cluster-status-mysql ``` -- リポジトリと Gist データのレプリケーションを監視する: +- Monitor replication of repository and Gist data: ``` ghe-spokes status ``` -- 添付ファイルと LFS データのレプリケーションを監視する: +- Monitor replication of attachment and LFS data: ``` ghe-storage replication-status ``` -- Pages データのレプリケーションを監視する: +- Monitor replication of Pages data: ``` ghe-dpages replication-status ``` -`ghe-cluster-status` を使用すると、クラスターの全体的な正常性を確認することができます。 詳細については、「[コマンド ライン ユーティリティ](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)」を参照してください。 +You can use `ghe-cluster-status` to review the overall health of your cluster. For more information, see "[Command-line utilities](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)." -## フェイルオーバー後の High Availability レプリケーションを再設定する +## Reconfiguring high availability replication after a failover -クラスタのアクティブノードからクラスタのパッシブノードにフェイルオーバーした後、2 つの方法で High Availability レプリケーションを再設定できます。 +After you fail over from the cluster's active nodes to the cluster's passive nodes, you can reconfigure high availability replication in two ways. -### 新しいパッシブノードのプロビジョニングと設定 +### Provisioning and configuring new passive nodes -フェイルオーバー後、2 つの方法で High Availability を再設定できます。 選択する方法は、フェイルオーバーした理由と元のアクティブノードの状態によって異なります。 +After a failover, you can reconfigure high availability in two ways. The method you choose will depend on the reason that you failed over, and the state of the original active nodes. -1. セカンダリデータセンターの新しいアクティブノードごとに、パッシブノードの新しいセットをプロビジョニングして設定します。 +1. Provision and configure a new set of passive nodes for each of the new active nodes in your secondary datacenter. -2. 古いアクティブノードを新しいパッシブノードとして使用します。 +2. Use the old active nodes as the new passive nodes. -High Availability を再設定するプロセスは、High Availability の初期設定と同じです。 詳細については、「[クラスターの High Availability レプリカを作成する](#creating-a-high-availability-replica-for-a-cluster)」を参照してください。 +The process for reconfiguring high availability is identical to the initial configuration of high availability. For more information, see "[Creating a high availability replica for a cluster](#creating-a-high-availability-replica-for-a-cluster)." -## クラスタの High Availability レプリケーションを無効化する +## Disabling high availability replication for a cluster -{% data variables.product.prodname_ghe_server %} のクラスタデプロイメントのパッシブノードへのレプリケーションを停止できます。 +You can stop replication to the passive nodes for your cluster deployment of {% data variables.product.prodname_ghe_server %}. {% data reusables.enterprise_clustering.ssh-to-a-node %} {% data reusables.enterprise_clustering.open-configuration-file %} -3. 最上位のセクション `[cluster]` で、`redis-master-replica` と `mysql-master-replica` のキーと値のペアを削除します。 +3. In the top-level `[cluster]` section, delete the `redis-master-replica`, and `mysql-master-replica` key-value pairs. -4. パッシブノードの各セクションを削除します。 パッシブ ノードの場合、`replica` は `enabled` として構成されます。 +4. Delete each section for a passive node. For passive nodes, `replica` is configured as `enabled`. {% data reusables.enterprise_clustering.apply-configuration %} {% data reusables.enterprise_clustering.configuration-finished %} -{% data variables.product.prodname_ghe_server %} がプロンプトに戻ったら、High Availability レプリケーションの無効化が完了したことになります。 +After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished disabling high availability replication. diff --git a/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md b/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md index 5e4c2db252..b3f1c3ec05 100644 --- a/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md +++ b/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md @@ -1,6 +1,6 @@ --- -title: High Availabilityレプリカの作成 -intro: アクティブ/パッシブ設定では、レプリカアプライアンスはプライマリアプライアンスの冗長コピーです。 プライマリアプライアンスに障害が起こると、High Availabilityモードではレプリカがプライマリアプライアンスとして動作し、サービスの中断を最小限にできます。 +title: Creating a high availability replica +intro: 'In an active/passive configuration, the replica appliance is a redundant copy of the primary appliance. If the primary appliance fails, high availability mode allows the replica to act as the primary appliance, allowing minimal service disruption.' redirect_from: - /enterprise/admin/installation/creating-a-high-availability-replica - /enterprise/admin/enterprise-management/creating-a-high-availability-replica @@ -13,94 +13,92 @@ topics: - High availability - Infrastructure shortTitle: Create HA replica -ms.openlocfilehash: 115295bd685284c9bd96eab9990c7619c1a0a8d3 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/05/2022 -ms.locfileid: '147648224' --- {% data reusables.enterprise_installation.replica-limit %} -## High Availabilityレプリカの作成 +## Creating a high availability replica -1. 新しい {% data variables.product.prodname_ghe_server %} アプライアンスを希望するプラットフォームにセットアップします。 レプリカアプライアンスのCPU、RAM、ストレージ設定は、プライマリアプライアンスと同じにするべきです。 レプリカアプライアンスは、独立した環境にインストールすることをお勧めします。 下位層のハードウェア、ソフトウェア、ネットワークコンポーネントは、プライマリアプライアンスのそれらとは分離されているべきです。 クラウドプロバイダを利用している場合には、別個のリージョンもしくはゾーンを使ってください。 詳細については、「[{% data variables.product.prodname_ghe_server %} インスタンスをセットアップする](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance)」を参照してください。 -1. 新しいアプライアンスが、ポート 122/TCP と 1194/UDP 経由で、この高可用性環境の他のすべてのアプライアンスと通信できることを確認します。 詳細については、「[ネットワーク ポート](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)」を参照してください。 -1. ブラウザで新しいレプリカアプライアンスのIPアドレスにアクセスして、所有する{% data variables.product.prodname_enterprise %}のライセンスをアップロードしてください。 +1. Set up a new {% data variables.product.prodname_ghe_server %} appliance on your desired platform. The replica appliance should mirror the primary appliance's CPU, RAM, and storage settings. We recommend that you install the replica appliance in an independent environment. The underlying hardware, software, and network components should be isolated from those of the primary appliance. If you are a using a cloud provider, use a separate region or zone. For more information, see ["Setting up a {% data variables.product.prodname_ghe_server %} instance"](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance). +1. Ensure that the new appliance can communicate with all other appliances in this high availability environment over ports 122/TCP and 1194/UDP. For more information, see "[Network ports](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)." +1. In a browser, navigate to the new replica appliance's IP address and upload your {% data variables.product.prodname_enterprise %} license. {% data reusables.enterprise_installation.replica-steps %} -1. SSHを使ってレプリカアプライアンスのIPアドレスに接続してください。 +1. Connect to the replica appliance's IP address using SSH. ```shell - $ ssh -p 122 admin@REPLICA IP + $ ssh -p 122 admin@REPLICA_IP ``` -{% data reusables.enterprise_installation.generate-replication-key-pair %} {% data reusables.enterprise_installation.add-ssh-key-to-primary %} -1. 新しいレプリカに対して、プライマリへの接続を確認してレプリカ モードを有効にするには、`ghe-repl-setup` をもう一度実行します。 +{% data reusables.enterprise_installation.generate-replication-key-pair %} +{% data reusables.enterprise_installation.add-ssh-key-to-primary %} +1. To verify the connection to the primary and enable replica mode for the new replica, run `ghe-repl-setup` again. ```shell - $ ghe-repl-setup PRIMARY IP + $ ghe-repl-setup PRIMARY_IP ``` -{% data reusables.enterprise_installation.replication-command %} {% data reusables.enterprise_installation.verify-replication-channel %} +{% data reusables.enterprise_installation.replication-command %} +{% data reusables.enterprise_installation.verify-replication-channel %} -## Geo-replicationレプリカの作成 +## Creating geo-replication replicas -レプリカを作成する以下の例の設定では、1 つのプライマリと 2 つのレプリカを使用しており、これらは 3 つの異なる地域にあります。 3 つのノードは別のネットワークに配置できますが、すべてのノードは他のすべてのノードから到達可能である必要があります。 最低限、必要な管理ポートは他のすべてのノードに対して開かれている必要があります。 ポート要件の詳細については、「[ネットワーク ポート](/enterprise/admin/guides/installation/network-ports/#administrative-ports)」を参照してください。 +This example configuration uses a primary and two replicas, which are located in three different geographic regions. While the three nodes can be in different networks, all nodes are required to be reachable from all the other nodes. At the minimum, the required administrative ports should be open to all the other nodes. For more information about the port requirements, see "[Network Ports](/enterprise/admin/guides/installation/network-ports/#administrative-ports)." -1. 最初のレプリカで `ghe-repl-setup` を実行することで、標準の 2 ノード構成の場合と同じ方法で最初のレプリカを作成します。 +{% data reusables.enterprise_clustering.network-latency %}{% ifversion ghes > 3.2 %} If latency is more than 70 milliseconds, we recommend cache replica nodes instead. For more information, see "[Configuring a repository cache](/admin/enterprise-management/caching-repositories/configuring-a-repository-cache)."{% endif %} + +1. Create the first replica the same way you would for a standard two node configuration by running `ghe-repl-setup` on the first replica. ```shell - (replica1)$ ghe-repl-setup PRIMARY IP + (replica1)$ ghe-repl-setup PRIMARY_IP (replica1)$ ghe-repl-start ``` -2. 2 つ目のレプリカを作成し、`ghe-repl-setup --add` コマンドを使用します。 `--add` フラグは、既存のレプリケーション構成を上書きするのを防ぎ、新しいレプリカを構成に追加します。 +2. Create a second replica and use the `ghe-repl-setup --add` command. The `--add` flag prevents it from overwriting the existing replication configuration and adds the new replica to the configuration. ```shell - (replica2)$ ghe-repl-setup --add PRIMARY IP + (replica2)$ ghe-repl-setup --add PRIMARY_IP (replica2)$ ghe-repl-start ``` -3. デフォルトでは、レプリカは同じデータセンターに設定され、同じノードにある既存のノードからシードを試行します。 レプリカを別のデータセンターに設定するには、datacenter オプションに異なる値を設定します。 具体的な値は、それらが互いに異なる限り、どのようなものでもかまいません。 各ノードで `ghe-repl-node` コマンドを実行し、データセンターを指定します。 +3. By default, replicas are configured to the same datacenter, and will now attempt to seed from an existing node in the same datacenter. Configure the replicas for different datacenters by setting a different value for the datacenter option. The specific values can be anything you would like as long as they are different from each other. Run the `ghe-repl-node` command on each node and specify the datacenter. - プライマリでは以下のコマンドを実行します。 + On the primary: ```shell - (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME] + (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME] ``` - 1 番目のレプリカでは以下のコマンドを実行します。 + On the first replica: ```shell - (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME] + (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME] ``` - 2 番目のレプリカでは以下のコマンドを実行します。 + On the second replica: ```shell - (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME] + (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME] ``` {% tip %} - **ヒント:** `--datacenter` および `--active` オプションは同時に設定できます。 + **Tip:** You can set the `--datacenter` and `--active` options at the same time. {% endtip %} -4. アクティブなレプリカノードは、アプライアンスデータのコピーを保存し、エンドユーザーのリクエストに応じます。 アクティブではないノードは、アプライアンスデータのコピーを保存しますが、エンドユーザーのリクエストに応じることはできません。 `--active` フラグを使用してアクティブ モードを有効にするか、`--inactive` フラグを使用して非アクティブ モードを有効にします。 +4. An active replica node will store copies of the appliance data and service end user requests. An inactive node will store copies of the appliance data but will be unable to service end user requests. Enable active mode using the `--active` flag or inactive mode using the `--inactive` flag. - 1 番目のレプリカでは以下のコマンドを実行します。 + On the first replica: ```shell (replica1)$ ghe-repl-node --active ``` - 2 番目のレプリカでは以下のコマンドを実行します。 + On the second replica: ```shell (replica2)$ ghe-repl-node --active ``` -5. 構成を適用するには、プライマリで `ghe-config-apply` コマンドを使用します。 +5. To apply the configuration, use the `ghe-config-apply` command on the primary. ```shell (primary)$ ghe-config-apply ``` -## Geo-replicationのためのDNSの設定 +## Configuring DNS for geo-replication -プライマリとレプリカノードの IP アドレスを使って、Geo DNS を設定します。 SSH でプライマリ ノードにアクセスしたり、`backup-utils` でバックアップしたりするために、プライマリ ノード (たとえば、`primary.github.example.com`) に対して DNS CNAME を作成することもできます。 +Configure Geo DNS using the IP addresses of the primary and replica nodes. You can also create a DNS CNAME for the primary node (e.g. `primary.github.example.com`) to access the primary node via SSH or to back it up via `backup-utils`. -テストのために、ローカル ワークステーションの `hosts` ファイル (たとえば、`/etc/hosts`) にエントリを追加することができます。 以下の例のエントリでは、`HOSTNAME` に対する要求が `replica2` に解決されることになります。 別の行をコメントアウトすることで、特定のホストをターゲットにすることができます。 +For testing, you can add entries to the local workstation's `hosts` file (for example, `/etc/hosts`). These example entries will resolve requests for `HOSTNAME` to `replica2`. You can target specific hosts by commenting out different lines. ``` -# HOSTNAME -# HOSTNAME - HOSTNAME +# HOSTNAME +# HOSTNAME + HOSTNAME ``` -## 参考資料 +## Further reading -- "[高可用性構成について](/enterprise/admin/guides/installation/about-high-availability-configuration)" -- 「[Utilities for replication management](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)」 (レプリケーション管理のユーティリティ) -- "[geo レプリケーションについて](/enterprise/admin/guides/installation/about-geo-replication/)" +- "[About high availability configuration](/enterprise/admin/guides/installation/about-high-availability-configuration)" +- "[Utilities for replication management](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)" +- "[About geo-replication](/enterprise/admin/guides/installation/about-geo-replication/)" diff --git a/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md b/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md index 2eaaa11272..138d9b40d8 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md @@ -36,7 +36,9 @@ When you use external authentication, {% data variables.location.product_locatio If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" and "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)." -{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique. +{% data variables.product.prodname_dotcom %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP, then adding an underscore and short code. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username problems by making a change in your IdP so that the normalized usernames will be unique and within the 39-character limit. + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} {% elsif ghae %} @@ -62,7 +64,7 @@ These rules may result in your IdP providing the same _IDP-USERNAME_ for multipl - `bob@fabrikam.com` - `bob#EXT#fabrikamcom@contoso.com` -This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username conflicts](#resolving-username-conflicts)." +This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username problems](#resolving-username-problems)." {% endif %} Usernames{% ifversion ghec %}, including underscore and short code,{% endif %} must not exceed 39 characters. @@ -83,7 +85,7 @@ When you configure SAML authentication, {% data variables.product.product_name % 1. Usernames created from email addresses are created from the normalized characters that precede the `@` character. -1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username conflicts](#resolving-username-conflicts)."{% endif %} +1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username problems](#resolving-username-problems)."{% endif %} ### Examples of username normalization @@ -121,11 +123,16 @@ When you configure SAML authentication, {% data variables.product.product_name % {% endif %} {% ifversion ghec %} -## Resolving username conflicts +## Resolving username problems -When a new user is being provisioned, if the user's normalized username conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. +When a new user is being provisioned, if the username is longer than 39 characters (including underscore and short code), or conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. -To resolve this problem, you must make a change in your IdP so that the normalized usernames will be unique. If you cannot change the identifier that's being normalized, you can change the attribute mapping for the `userName` attribute. If you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. +To resolve this problem, you must make one of the following changes in your IdP so that all normalized usernames will be within the character limit and unique. +- Change the `userName` attribute value for individual users that are causing problems +- Change the `userName` attribute mapping for all users +- Configure a custom `userName` attribute for all users + +When you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. {% note %} @@ -133,9 +140,9 @@ To resolve this problem, you must make a change in your IdP so that the normaliz {% endnote %} -### Resolving username conflicts with Azure AD +### Resolving username problems with Azure AD -To resolve username conflicts in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. +To resolve username problems in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. 1. In Azure AD, open the {% data variables.product.prodname_emu_idp_application %} application. 1. In the left sidebar, click **Provisioning**. @@ -146,9 +153,9 @@ To resolve username conflicts in Azure AD, either modify the User Principal Name - To map an existing attribute in Azure AD to the `userName` attribute in {% data variables.product.prodname_dotcom %}, click your desired attribute field. Then, save and wait for a provisioning cycle to occur within about 40 minutes. - To use an expression instead of an existing attribute, change the Mapping type to "Expression", then add a custom expression that will make this value unique for all users. For example, you could use `[FIRST NAME]-[LAST NAME]-[EMPLOYEE ID]`. For more information, see [Reference for writing expressions for attribute mappings in Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/app-provisioning/functions-for-customizing-application-data) in Microsoft Docs. -### Resolving username conflicts with Okta +### Resolving username problems with Okta -To resolve username conflicts in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. +To resolve username problems in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. 1. In Okta, open the {% data variables.product.prodname_emu_idp_application %} application. 1. Click **Sign On**. diff --git a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 90a11171f2..a448aa318d 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -136,7 +136,9 @@ By default, when an unauthenticated user attempts to access an enterprise that u {% data variables.product.product_name %} automatically creates a username for each person by normalizing an identifier provided by your IdP. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)." -A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." +A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username problems](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-problems)." + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} The profile name and email address of a {% data variables.enterprise.prodname_managed_user %} is also provided by the IdP. {% data variables.enterprise.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. diff --git a/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md b/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md index 82c8463b34..30948b0de1 100644 --- a/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md +++ b/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md @@ -168,9 +168,19 @@ By default, when you create a new enterprise, workflows are not allowed to creat {% data reusables.actions.cache-default-size %} {% data reusables.actions.cache-eviction-process %} -However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow repository administrators to configure a total cache size up to 15 GB if necessary. +However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow {% ifversion actions-cache-admin-ui %}organization owners and{% endif %} repository administrators to configure a total cache size up to 15 GB if necessary. -People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise policy setting. +{% ifversion actions-cache-admin-ui %}Organization owners can set a lower total cache size that applies to each repository in their organization. {% endif %}People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise {% ifversion actions-cache-admin-ui %}or organization{% endif %} policy setting. + +{% ifversion actions-cache-admin-ui %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +1. In the "Artifact, cache and log settings" section, under **Maximum cache size limit**, enter a value, then click **Save** to apply the setting. +1. In the "Artifact, cache and log settings" section, under **Default cache size limit**, enter a value, then click **Save** to apply the setting. + +{% else %} The policy settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API: @@ -180,3 +190,5 @@ The policy settings for {% data variables.product.prodname_actions %} cache stor {% data reusables.actions.cache-no-org-policy %} {% endif %} + +{% endif %} diff --git a/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md b/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md index e6c655b322..e95ef98441 100644 --- a/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md +++ b/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md @@ -125,7 +125,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav * Open your `~/.ssh/config` file, then modify the file to contain the following lines. If your SSH key file has a different name or path than the example code, modify the filename or path to match your current setup. ``` - Host * + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_{% ifversion ghae %}ecdsa{% else %}ed25519{% endif %} @@ -137,10 +137,10 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav - If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line. - - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *` section. + - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}` section. ``` - Host * + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} IgnoreUnknown UseKeychain ``` {% endnote %} diff --git a/translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md b/translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md index 7dae72fd34..877fedd33b 100644 --- a/translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md +++ b/translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md @@ -35,8 +35,6 @@ When you create a {% data variables.product.pat_generic %}, we recommend that yo If a valid OAuth token, {% data variables.product.prodname_github_app %} token, or {% data variables.product.pat_generic %} is pushed to a public repository or public gist, the token will be automatically revoked. -OAuth tokens and personal {% data variables.product.pat_v1_plural %} pushed to public repositories and public gists will only be revoked if the token has scopes.{% ifversion pat-v2 %} {% data variables.product.pat_v2_caps %}s will always be revoked.{% endif %} - {% endif %} {% ifversion fpt or ghec %} diff --git a/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 189fa330a7..322dadf5f3 100644 --- a/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -860,7 +860,7 @@ registries: The `npm-registry` type supports username and password, or token. -When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. +When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. {% raw %} ```yaml @@ -882,6 +882,8 @@ registries: token: ${{secrets.MY_GITHUB_PERSONAL_TOKEN}} ``` {% endraw %} +{% ifversion dependabot-yarn-v3-update %} +For security reasons, {% data variables.product.prodname_dependabot %} does not set environment variables. Yarn (v2 and later) requires that any accessed environment variables are set. When accessing environment variables in your `.yarnrc.yml` file, you should provide a fallback value such as {% raw %}`${ENV_VAR-fallback}`{% endraw %} or {% raw %}`${ENV_VAR:-fallback}`{% endraw %}. For more information, see [Yarnrc files](https://yarnpkg.com/configuration/yarnrc) in the Yarn documentation.{% endif %} ### `nuget-feed` diff --git a/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index 607389444a..e7ef382b5d 100644 --- a/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -1,6 +1,6 @@ --- -title: シークレット スキャンによるプッシュの保護 -intro: '{% data variables.product.prodname_secret_scanning %} を使って、プッシュ保護を有効にすることで、サポートされているシークレットが組織またはリポジトリにプッシュされないようにすることができます。' +title: Protecting pushes with secret scanning +intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository by enabling push protection.' product: '{% data reusables.gated-features.secret-scanning %}' miniTocMaxHeadingLevel: 3 versions: @@ -14,118 +14,127 @@ topics: - Alerts - Repositories shortTitle: Enable push protection -ms.openlocfilehash: 4c6aefb5614fff741f7c94fe0ca6fd34029e2129 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/05/2022 -ms.locfileid: '147683744' --- -{% data reusables.secret-scanning.beta %} {% data reusables.secret-scanning.enterprise-enable-secret-scanning %} {% data reusables.secret-scanning.push-protection-beta %} -## シークレットのプッシュ保護について +{% data reusables.secret-scanning.beta %} +{% data reusables.secret-scanning.enterprise-enable-secret-scanning %} +{% data reusables.secret-scanning.push-protection-beta %} -これまで、{% data variables.product.prodname_secret_scanning_GHAS %}は、プッシュ "_後_" にシークレットをチェックし、公開されたシークレットに対してユーザーに警告します。 {% data reusables.secret-scanning.push-protection-overview %} +## About push protection for secrets -共同作成者がシークレットのプッシュ保護ブロックをバイパスする場合、{% data variables.product.prodname_dotcom %} では次のことが行われます。 -- アラートを生成する。 -- リポジトリの [セキュリティ] タブでアラートを作成する。 -- バイパス イベントを監査ログに追加する。{% ifversion secret-scanning-push-protection-email %} -- 関連するシークレットへのリンクとそれが許可された理由を含む、電子メール アラートを Organization の所有者、セキュリティ マネージャー、リポジトリ管理者に送信する。{% endif %} +Up to now, {% data variables.product.prodname_secret_scanning_GHAS %} checks for secrets _after_ a push and alerts users to exposed secrets. {% data reusables.secret-scanning.push-protection-overview %} -プッシュ保護に対応しているシークレットとサービス プロバイダーの詳細については、「[{% data variables.product.prodname_secret_scanning_caps %} パターン](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)」を参照してください。 +If a contributor bypasses a push protection block for a secret, {% data variables.product.prodname_dotcom %}: +- generates an alert. +- creates an alert in the "Security" tab of the repository. +- adds the bypass event to the audit log.{% ifversion secret-scanning-push-protection-email %} +- sends an email alert to organization owners, security managers, and repository administrators, with a link to the related secret and the reason why it was allowed.{% endif %} -## プッシュ保護としての {% data variables.product.prodname_secret_scanning %} の有効化 +For information on the secrets and service providers supported for push protection, see "[{% data variables.product.prodname_secret_scanning_caps %} patterns](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)." -プッシュ保護として {% data variables.product.prodname_secret_scanning %} を使用するには、組織またはリポジトリで {% data variables.product.prodname_GH_advanced_security %} と {% data variables.product.prodname_secret_scanning %} の両方が有効になっている必要があります。 詳細については、「[組織のセキュリティと分析の設定の管理](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)」、「[リポジトリのセキュリティと分析の設定の管理](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)」、「[{% data variables.product.prodname_GH_advanced_security %} について](/get-started/learning-about-github/about-github-advanced-security)」を参照してください。 +## Enabling {% data variables.product.prodname_secret_scanning %} as a push protection -組織の所有者、セキュリティ マネージャー、リポジトリ管理者は、UI と API を介して {% data variables.product.prodname_secret_scanning %} のプッシュ保護を有効にすることができます。 詳細については、「[リポジトリ](/rest/reference/repos#update-a-repository)」を参照し、REST API ドキュメントの "`security_and_analysis` オブジェクトのプロパティ" セクションを展開します。 +For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see {% ifversion secret-scanning-enterprise-level %}"[Managing security and analysis settings for your enterprise](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise),"{% endif %} "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)." -### 組織のプッシュ保護としての {% data variables.product.prodname_secret_scanning %} の有効化 +Organization owners, security managers, and repository administrators can enable push protection for {% data variables.product.prodname_secret_scanning %} via the UI and API. For more information, see "[Repositories](/rest/reference/repos#update-a-repository)" and expand the "Properties of the `security_and_analysis` object" section in the REST API documentation. -{% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.organizations.security-and-analysis %} {% data reusables.repositories.navigate-to-ghas-settings %} {% data reusables.advanced-security.secret-scanning-push-protection-org %} +{% ifversion secret-scanning-enterprise-level %} +### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for your enterprise +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +1. In the left sidebar, click **Code security and analysis**. +{% data reusables.advanced-security.secret-scanning-push-protection-enterprise %} +{% endif %} -### リポジトリのプッシュ保護としての {% data variables.product.prodname_secret_scanning %} の有効化 +### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for an organization -{% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-code-security-and-analysis %} {% data reusables.repositories.navigate-to-ghas-settings %} {% data reusables.advanced-security.secret-scanning-push-protection-repo %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.security-and-analysis %} +{% data reusables.repositories.navigate-to-ghas-settings %} +{% data reusables.advanced-security.secret-scanning-push-protection-org %} -## コマンド ラインからのプッシュ保護としてシークレット スキャンを使用する +### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for a repository + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-settings %} +{% data reusables.repositories.navigate-to-code-security-and-analysis %} +{% data reusables.repositories.navigate-to-ghas-settings %} +{% data reusables.advanced-security.secret-scanning-push-protection-repo %} + +## Using secret scanning as a push protection from the command line {% data reusables.secret-scanning.push-protection-command-line-choice %} -検出されたシークレットは、コマンド ラインに一度に最大 5 つ表示されます。 リポジトリで特定のシークレットが既に検出されていて、アラートが既に存在する場合、{% data variables.product.prodname_dotcom %} はそのシークレットをブロックしません。 +Up to five detected secrets will be displayed at a time on the command line. If a particular secret has already been detected in the repository and an alert already exists, {% data variables.product.prodname_dotcom %} will not block that secret. {% ifversion push-protection-custom-link-orgs %} -Organization の管理者は、push がブロックされると表示されるカスタム リンクを指定できます。 このカスタム リンクには、推奨されるシークレット コンテナーの使用についての指示や、ブロックされたシークレットに関連する質問を問い合わせるユーザーなど、Organization 固有のリソースやアドバイスを含めることができます。 +Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain organization-specific resources and advice, such as directions on using a recommended secrets vault or who to contact for questions relating to the blocked secret. -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - -![ユーザーがリポジトリにシークレットをプッシュしようとしたときにプッシュがブロックされることを示すスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) +![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) {% else %} -![ユーザーがリポジトリにシークレットをプッシュしようとしたときにプッシュがブロックされることを示すスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) +![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) {% endif %} -{% data reusables.secret-scanning.push-protection-remove-secret %} ブロックされたシークレットの修復について詳しくは、「[プッシュ保護によってブロックされたブランチのプッシュ](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)」を参照してください。 +{% data reusables.secret-scanning.push-protection-remove-secret %} For more information about remediating blocked secrets, see "[Pushing a branch blocked by push protection](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)." -シークレットが本物で、後で修正する予定であることを確認する場合は、できるだけ早くシークレットの修復を目指す必要があります。 たとえば、シークレットを取り消し、リポジトリのコミット履歴からシークレットを削除できます。 不正アクセスを回避するために、公開されている実際のシークレットを取り消す必要があります。 取り消す前に、まずシークレットをローテーションすることを検討できます。 詳細については、「[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)」 (リポジトリからの機密データの削除) を参照してください。 +If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. For example, you might revoke the secret and remove the secret from the repository's commit history. Real secrets that have been exposed must be revoked to avoid unauthorized access. You might consider first rotating the secret before revoking it. For more information, see "[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)." {% data reusables.secret-scanning.push-protection-multiple-branch-note %} -### ブロックされたシークレットのプッシュを許可する +### Allowing a blocked secret to be pushed -{% data variables.product.prodname_dotcom %} が、プッシュしても安全であると思われるシークレットをブロックする場合は、シークレットを許可し、許可する必要がある理由を指定できます。 +If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. {% data reusables.secret-scanning.push-protection-allow-secrets-alerts %} {% data reusables.secret-scanning.push-protection-allow-email %} -1. プッシュがブロックされたときに {% data variables.product.prodname_dotcom %} から返される URL にアクセスします。 - ![シークレットのプッシュをブロック解除するためのオプションを含むフォームを示すスクリーンショット](/assets/images/help/repository/secret-scanning-unblock-form.png) {% data reusables.secret-scanning.push-protection-choose-allow-secret-options %} -1. **[このシークレットをプッシュできるようにする]** をクリックします。 -2. 3 時間以内にコマンド ラインでプッシュを再試行します。 3 時間以内にプッシュしていない場合は、このプロセスを繰り返す必要があります。 +1. Visit the URL returned by {% data variables.product.prodname_dotcom %} when your push was blocked. + ![Screenshot showing form with options for unblocking the push of a secret](/assets/images/help/repository/secret-scanning-unblock-form.png) +{% data reusables.secret-scanning.push-protection-choose-allow-secret-options %} +1. Click **Allow me to push this secret**. +2. Reattempt the push on the command line within three hours. If you have not pushed within three hours, you will need to repeat this process. {% ifversion secret-scanning-push-protection-web-ui %} -## Web UI からのプッシュ保護としてシークレット スキャンを使用する +## Using secret scanning as a push protection from the web UI {% data reusables.secret-scanning.push-protection-web-ui-choice %} -{% data variables.product.prodname_dotcom %} では、Web UI で検出されたシークレットを一度に 1 つのみ表示します。 リポジトリで特定のシークレットが既に検出されていて、アラートが既に存在する場合、{% data variables.product.prodname_dotcom %} はそのシークレットをブロックしません。 +{% data variables.product.prodname_dotcom %} will only display one detected secret at a time in the web UI. If a particular secret has already been detected in the repository and an alert already exists, {% data variables.product.prodname_dotcom %} will not block that secret. {% ifversion push-protection-custom-link-orgs %} -Organization の管理者は、push がブロックされると表示されるカスタム リンクを指定できます。 このカスタム リンクには、Organization 固有のリソースとアドバイスを含めることができます。 たとえば、Organization のシークレット コンテナー、質問をエスカレートするチームや個人、シークレットの操作とコミット履歴の書き換えに関して Organization で承認されたポリシーに関する情報を含む README ファイルをカスタム リンクが指すようにすることができます。 - -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - +Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain resources and advice specific to your organization. For example, the custom link can point to a README file with information about the organization's secret vault, which teams and individuals to escalate questions to, or the organization's approved policy for working with secrets and rewriting commit history. {% endif %} -Web UI を使用して、ファイルからシークレットを削除できます。 シークレットを削除すると、ページ上部のバナーが変更され、変更をコミットできるようになったことが通知されます。 +You can remove the secret from the file using the web UI. Once you remove the secret, the banner at the top of the page will change and tell you that you can now commit your changes. - ![シークレットの修正後に許可される Web UI でのコミットを示すスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) + ![Screenshot showing commit in web ui allowed after secret fixed](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) -### シークレットのプッシュ保護をバイパスする +### Bypassing push protection for a secret -{% data reusables.secret-scanning.push-protection-remove-secret %} ブロックされたシークレットの修復について詳しくは、「[プッシュ保護によってブロックされたブランチのプッシュ](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)」を参照してください。 +{% data reusables.secret-scanning.push-protection-remove-secret %} For more information about remediating blocked secrets, see "[Pushing a branch blocked by push protection](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)." -シークレットが本物で、後で修正する予定であることを確認する場合は、できるだけ早くシークレットの修復を目指す必要があります。 詳細については、「[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)」 (リポジトリからの機密データの削除) を参照してください。 +If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. For more information, see "[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)." -{% data variables.product.prodname_dotcom %} が、プッシュしても安全であると思われるシークレットをブロックする場合は、シークレットを許可し、許可する必要がある理由を指定できます。 +If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. {% data reusables.secret-scanning.push-protection-allow-secrets-alerts %} {% data reusables.secret-scanning.push-protection-allow-email %} -シークレットが本物で、後で修正する予定であることを確認する場合は、できるだけ早くシークレットの修復を目指す必要があります。 +If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. -1. {% data variables.product.prodname_dotcom %} がコミットをブロックしたときにページの上部に表示されるバナーで、 **[保護のバイパス]** をクリックします。 +1. In the banner that appeared at the top of the page when {% data variables.product.prodname_dotcom %} blocked your commit, click **Bypass protection**. {% data reusables.secret-scanning.push-protection-choose-allow-secret-options %} - ![シークレットのプッシュをブロック解除するためのオプションを含むフォームを示すスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-web-ui-allow-secret-options.png) + ![Screenshot showing form with options for unblocking the push of a secret](/assets/images/help/repository/secret-scanning-push-protection-web-ui-allow-secret-options.png) -1. **[シークレットの許可]** をクリックします。 +1. Click **Allow secret**. -{% endif %} +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index f3e5f163bd..5a7987c33c 100644 --- a/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -1,6 +1,6 @@ --- -title: プッシュ保護によってブロックされたブランチをプッシュする -intro: '{% data variables.product.prodname_secret_scanning %}のプッシュ保護機能を使用すると、リポジトリでのシークレットの漏洩を予防することができます。 ブロックされたプッシュを解決でき、検出されたシークレットが削除されたら、コマンド ラインまたは Web UI から作業ブランチに変更をプッシュできます。' +title: Pushing a branch blocked by push protection +intro: 'The push protection feature of {% data variables.product.prodname_secret_scanning %} proactively protects you against leaked secrets in your repositories. You can resolve blocked pushes and, once the detected secret is removed, you can push changes to your working branch from the command line or the web UI.' product: '{% data reusables.gated-features.secret-scanning %}' miniTocMaxHeadingLevel: 3 versions: @@ -12,58 +12,51 @@ topics: - Alerts - Repositories shortTitle: Push a blocked branch -ms.openlocfilehash: 743cdc094acfd2465d4bb97f1ae7ec0a7f8b86f0 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/05/2022 -ms.locfileid: '147683789' --- -## {% data variables.product.prodname_secret_scanning %}のプッシュ保護について -{% data variables.product.prodname_secret_scanning %} のプッシュ保護機能を使用すると、リポジトリに変更をプッシュする前にシークレットをスキャンすることで、セキュリティ リークを防ぐことができます。 {% data reusables.secret-scanning.push-protection-overview %} プッシュ保護に対応しているシークレットとサービス プロバイダーの詳細については、「[{% data variables.product.prodname_secret_scanning_caps %} パターン](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)」を参照してください。 +## About push protection for {% data variables.product.prodname_secret_scanning %} + +The push protection feature of {% data variables.product.prodname_secret_scanning %} helps to prevent security leaks by scanning for secrets before you push changes to your repository. {% data reusables.secret-scanning.push-protection-overview %} For information on the secrets and service providers supported for push protection, see "[{% data variables.product.prodname_secret_scanning_caps %} patterns](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)." {% data reusables.secret-scanning.push-protection-remove-secret %} {% tip %} -**ヒント** {% data variables.product.prodname_dotcom %} が、プッシュしても安全であると思われるシークレットをブロックする場合は、シークレットを許可し、許可する必要がある理由を指定できます。 シークレットのプッシュ保護をバイパスする方法の詳細については、コマンド ラインと Web UI についてそれぞれ「[ブロックされたシークレットのプッシュを許可する](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#allowing-a-blocked-secret-to-be-pushed)」と「[シークレットのプッシュ保護をバイパスする](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)」を参照してください。 +**Tip** +If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. For more information about bypassing push protection for a secret, see "[Allowing a blocked secret to be pushed](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#allowing-a-blocked-secret-to-be-pushed)" and "[Bypassing push protection for a secret](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)" for the command line and the web UI, respectively. {% endtip %} {% ifversion push-protection-custom-link-orgs %} -Organization の管理者は、push がブロックされると {% data variables.product.product_name %} からのメッセージに含まれるカスタム リンクを指定できます。 このカスタム リンクには、Organization およびそのポリシーに固有のリソースとアドバイスを含めることができます。 - -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - +Organization admins can provide a custom link that will be included in the message from {% data variables.product.product_name %} when your push is blocked. This custom link can contain resources and advice specific to your organization and its policies. {% endif %} -## コマンド ラインでのブロックされたプッシュの解決 +## Resolving a blocked push on the command line {% data reusables.secret-scanning.push-protection-command-line-choice %} {% data reusables.secret-scanning.push-protection-multiple-branch-note %} -ブロックされたシークレットがブランチ上で最新のコミットによって導入された場合は、次のガイダンスに従うことができます。 +If the blocked secret was introduced by the latest commit on your branch, you can follow the guidance below. -1. コードからシークレットを削除します。 -1. `git commit --amend` を使用して変更をコミットします。 -1. `git push` を使用して変更をプッシュします。 +1. Remove the secret from your code. +1. Commit the changes, by using `git commit --amend`. +1. Push your changes with `git push`. -シークレットが Git 履歴の以前のコミットに表示される場合は、シークレットを削除することもできます。 +You can also remove the secret if the secret appears in an earlier commit in the Git history. -1. `git log` を使用して、プッシュ エラーで表面化したどのコミットが履歴で最初に発生したかを判断します。 -1. `git rebase -i ~1` を使用して、インタラクティブなリベースを開始します。 は、手順 1 のコミットの ID です。 -1. エディターに表示されるテキストの最初の行の `pick` を `edit` に変更して、編集するコミットを特定します。 -1. コードからシークレットを削除します。 -1. `git commit --amend` を使用して、変更をコミットします。 -1. `git rebase --continue` を実行して、リベースを完了します。 +1. Use `git log` to determine which commit surfaced in the push error came first in history. +1. Start an interactive rebase with `git rebase -i ~1`. is the id of the commit from step 1. +1. Identify your commit to edit by changing `pick` to `edit` on the first line of the text that appears in the editor. +1. Remove the secret from your code. +1. Commit the change with `git commit --amend`. +1. Run `git rebase --continue` to finish the rebase. -## Web UI でのブロックされたコミットの解決 +## Resolving a blocked commit in the web UI {% data reusables.secret-scanning.push-protection-web-ui-choice %} -Web UI でブロックされたコミットを解決するには、ファイルからシークレットを削除するか、 **[保護のバイパス]** ドロップダウンを使用してシークレットを許可します。 プッシュ保護のバイパスについて詳しくは、「[シークレット スキャンによるプッシュの保護](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)」を参照してください。 +To resolve a blocked commit in the web UI, you need to remove the secret from the file, or use the **Bypass protection** dropdown to allow the secret. For more information about bypassing push protection from the web UI, see "[Protecting pushes with secret scanning](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)." -シークレットが本物であることを確認したら、ファイルからシークレットを削除する必要があります。 シークレットを削除すると、ページ上部のバナーが変更され、変更をコミットできるようになったことが通知されます。 +If you confirm a secret is real, you need to remove the secret from the file. Once you remove the secret, the banner at the top of the page will change and tell you that you can now commit your changes. diff --git a/translations/ja-JP/content/codespaces/customizing-your-codespace/index.md b/translations/ja-JP/content/codespaces/customizing-your-codespace/index.md index 6dab358ebf..fd78a35ee4 100644 --- a/translations/ja-JP/content/codespaces/customizing-your-codespace/index.md +++ b/translations/ja-JP/content/codespaces/customizing-your-codespace/index.md @@ -11,6 +11,7 @@ topics: - Codespaces children: - /personalizing-github-codespaces-for-your-account + - /renaming-a-codespace - /changing-the-machine-type-for-your-codespace - /setting-your-default-editor-for-github-codespaces - /setting-your-default-region-for-github-codespaces diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md index d3ec7e7ef3..16b6cd571d 100644 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md @@ -59,6 +59,8 @@ In the example `postCreate.sh` file below, the contents of the `config` director ln -sf $PWD/.devcontainer/config $HOME/config && set +x ``` +For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)." + ## Stopping a codespace {% data reusables.codespaces.stopping-a-codespace %} For more information, see "[Stopping and starting a codespace](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)." diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md index 2068d092f9..af593221ac 100644 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md @@ -16,7 +16,6 @@ children: - /using-source-control-in-your-codespace - /using-github-codespaces-for-pull-requests - /stopping-and-starting-a-codespace - - /renaming-a-codespace - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md deleted file mode 100644 index a606efe6ad..0000000000 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -title: codespace の名前を変更する -intro: '{% data variables.product.prodname_cli %} を使用して、codespace の表示名を任意の名前に変更できます。' -product: '{% data reusables.gated-features.codespaces %}' -versions: - fpt: '*' - ghec: '*' -type: how_to -topics: - - Codespaces - - Fundamentals - - Developer -shortTitle: Rename a codespace -ms.openlocfilehash: 83a5ce0064a8f8deed752eaef0cd49be538ff9be -ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/09/2022 -ms.locfileid: '147682504' ---- -## codespace の名前変更について - -各 codespace には、自動生成された表示名が割り当てられます。 複数の codespace がある場合、表示名は codespace を区別するのに役立ちます。 (例: `literate space parakeet`)。 codespace の表示名を変更できます。 - -codespace の表示名を見つけるには: - -- {% data variables.product.product_name %} の https://github.com/codespaces で、codespace の一覧を表示します。 - - ![GitHub の codespace の一覧のスクリーンショット](/assets/images/help/codespaces/codespaces-list-display-name.png) - -- {% data variables.product.prodname_vscode %} デスクトップ アプリケーションまたは {% data variables.product.prodname_vscode_shortname %} Web クライアントで、[リモート エクスプローラー] をクリックします。 表示名は、リポジトリ名の下に表示されます。 たとえば、次のスクリーンショットの `symmetrical space telegram`。 - - ![VS Code のリモート エクスプローラーのスクリーンショット](/assets/images/help/codespaces/codespaces-remote-explorer.png) - -{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} -- ローカル コンピューターのターミナル ウィンドウで、次の {% data variables.product.prodname_cli %} コマンドを使用します: `gh codespace list`。 - -### 永続的な codespace 名 - -表示名に加えて、codespace を作成するときに、永続的な名前も codespace に割り当てられます。 名前は、{% data variables.product.company_short %} ハンドル、リポジトリ名、およびいくつかのランダムな文字の組み合わせです。 (例: `octocat-myrepo-gmc7`)。 この名前は変更できません。 - -codespace の永続的な名前を見つけるには: - -* {% data variables.product.product_name %} では、 https://github.com/codespaces で **[ブラウザーで開く]** オプションにカーソルを合わせると、永続的な名前がポップアップに表示されます。 - - ![カーソルを合わせると表示される codespace 名のスクリーンショット](/assets/images/help/codespaces/find-codespace-name-github.png) - -* codespace では、ターミナルで次のコマンドを使用します: `echo $CODESPACE_NAME`。 -* ローカル コンピューターのターミナル ウィンドウで、次の {% data variables.product.prodname_cli %} コマンドを使用します: `gh codespace list`。 - -## codespace の名前を変更する - -codespace の表示名を変更すると、長期間使用する複数の codespace がある場合に便利です。 適切な名前は、特定の目的に使用する codespace を識別するのに役立ちます。 {% data variables.product.prodname_cli %} を使用して、codespace の表示名を変更できます。 - -codespace の名前を変更するには、`gh codespace edit` サブコマンドを使用します。 - -```shell -gh codespace edit -c permanent name of the codespace -d new display name -``` - -この例では、`permanent name of the codespace` を codespace の永続的な名前に置き換えます。 `new display name` を必要な表示名に置き換えます。 diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md index 14283811fc..bd2907401d 100644 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces @@ -24,6 +25,7 @@ You can work with {% data variables.product.prodname_github_codespaces %} in the - [Create a new codespace](#create-a-new-codespace) - [Stop a codespace](#stop-a-codespace) - [Delete a codespace](#delete-a-codespace) + - [Rename a codespace](#rename-a-codespace) - [SSH into a codespace](#ssh-into-a-codespace) - [Open a codespace in {% data variables.product.prodname_vscode %}](#open-a-codespace-in--data-variablesproductprodname_vscode-) - [Open a codespace in JupyterLab](#open-a-codespace-in-jupyterlab) @@ -74,6 +76,8 @@ gh codespace list The list includes the unique name of each codespace, which you can use in other `gh codespace` commands. +An asterisk at the end of the branch name for a codespace indicates that there are uncommitted or unpushed changes in that codespace. + ### Create a new codespace ```shell @@ -98,6 +102,14 @@ gh codespace delete -c CODESPACE-NAME For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)." +### Rename a codespace + +```shell +gh codespace edit -c CODESPACE-NAME -d DISPLAY-NAME +``` + +For more information, see "[Renaming a codespace](/codespaces/customizing-your-codespace/renaming-a-codespace)." + ### SSH into a codespace To run commands on the remote codespace machine, from your terminal, you can SSH into the codespace. @@ -215,4 +227,4 @@ You can use the {% data variables.product.prodname_cli %} extension to create a gh codespace edit -m machine-type-name ``` -For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." \ No newline at end of file +For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." diff --git a/translations/ja-JP/content/codespaces/getting-started/deep-dive.md b/translations/ja-JP/content/codespaces/getting-started/deep-dive.md index c6a2e16f8a..4c12712121 100644 --- a/translations/ja-JP/content/codespaces/getting-started/deep-dive.md +++ b/translations/ja-JP/content/codespaces/getting-started/deep-dive.md @@ -35,7 +35,7 @@ When you create a codespace, a [shallow clone](https://github.blog/2020-12-21-ge ### Step 2: Container is created -{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't [configure a container](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project), {% data variables.product.prodname_github_codespaces %} uses a [default image](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project#using-the-default-configuration), which has many languages and runtimes available. For information on what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. +{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't specify a custom Docker image in your configuration, {% data variables.product.prodname_codespaces %} uses a default image, which has many languages and runtimes available. For information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)." For details of what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. {% note %} diff --git a/translations/ja-JP/content/codespaces/getting-started/quickstart.md b/translations/ja-JP/content/codespaces/getting-started/quickstart.md index 213fec6823..ec2abfcbed 100644 --- a/translations/ja-JP/content/codespaces/getting-started/quickstart.md +++ b/translations/ja-JP/content/codespaces/getting-started/quickstart.md @@ -92,11 +92,10 @@ Within a codespace, you have access to the {% data variables.product.prodname_vs 1. In the left sidebar, click the Extensions icon. -1. In the search bar, enter `fairyfloss` and install the fairyfloss extension. +1. In the search bar, type `fairyfloss` and click **Install**. ![Add an extension](/assets/images/help/codespaces/add-extension.png) -1. Click **Install in Codespaces**. 1. Select the `fairyfloss` theme by selecting it from the list. ![Select the fairyfloss theme](/assets/images/help/codespaces/fairyfloss.png) diff --git a/translations/ja-JP/content/codespaces/guides.md b/translations/ja-JP/content/codespaces/guides.md index 14ca173bf8..670ce75cde 100644 --- a/translations/ja-JP/content/codespaces/guides.md +++ b/translations/ja-JP/content/codespaces/guides.md @@ -44,7 +44,8 @@ includeGuides: - /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization - /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types - - /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period + - /codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md + - /codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period - /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports - /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/index.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/index.md index 427e5e8323..4cf47158c1 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/index.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/index.md @@ -16,6 +16,7 @@ children: - /managing-repository-access-for-your-organizations-codespaces - /reviewing-your-organizations-audit-logs-for-github-codespaces - /restricting-access-to-machine-types + - /restricting-the-base-image-for-codespaces - /restricting-the-visibility-of-forwarded-ports - /restricting-the-idle-timeout-period - /restricting-the-retention-period-for-codespaces diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 33f95043ad..7e52316c87 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -14,7 +14,9 @@ topics: ## Overview -Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." +Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." + +If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. The compute cost for a codespace is proportional to the number of processor cores in the machine type you choose. For example, the compute cost of using a codespace for an hour on a 16-core machine is eight times greater than a 2-core machine. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." As an organization owner, you may want to configure constraints on the types of machine that are available. For example, if the work in your organization doesn't require significant compute power or storage space, you can remove the highly resourced machines from the list of options that people can choose from. You do this by defining one or more policies in the {% data variables.product.prodname_github_codespaces %} settings for your organization. @@ -52,21 +54,29 @@ If you add an organization-wide policy, you should set it to the largest choice {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Machine types**. - ![Add a constraint for machine types](/assets/images/help/codespaces/add-constraint-dropdown.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint, then clear the selection of any machine types that you don't want to be available. - ![Edit the machine type constraint](/assets/images/help/codespaces/edit-machine-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-machine-constraint.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The machine type constraint is also applied to existing codespaces when someone attempts to restart a stopped codespace or reconnect to an active codespace. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Machine types" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -74,7 +84,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) ## Further reading diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index 685dfd1db2..db81c6347d 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -49,21 +49,25 @@ If you add an organization-wide policy with a timeout constraint, you should set {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Maximum idle timeout**. - ![Add a constraint for idle timeout](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**. - ![Set the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) + ![Screenshot of setting the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created, and to existing codespaces the next time they are started. +The policy will be applied to all new codespaces that are billable to your organization. The timeout constraint is also applied to existing codespaces the next time they are started. ## Editing a policy @@ -71,6 +75,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Maximum idle timeout" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -78,4 +83,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index a940a80a50..f49dd49a4a 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -35,15 +35,15 @@ If you add an organization-wide policy with a retention constraint, you should s {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Retention period**. - ![Add a constraint for retention periods](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of days codespaces can remain stopped before they are automatically deleted, then click **Save**. - ![Set the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) + ![Screenshot of setting the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) {% note %} @@ -55,10 +55,14 @@ If you add an organization-wide policy with a retention constraint, you should s {% endnote %} {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created. +The policy will be applied to all new codespaces that are billable to your organization. The retention period constraint is only applied on codespace creation. ## Editing a policy @@ -68,6 +72,7 @@ The retention period constraint is only applied to codespaces when they are crea 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Retention period" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -77,4 +82,4 @@ You can delete a policy at any time. Deleting a policy has no effect on existing 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 852eb3b8ba..74c626756f 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -45,25 +45,33 @@ If you add an organization-wide policy, you should set it to the most lenient vi {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Port visibility**. - ![Add a constraint for port visibility](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the port visibility constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) 1. Clear the selection of the port visibility options (**Org** or **Public**) that you don't want to be available. - ![Choose the port visibility options](/assets/images/help/codespaces/choose-port-visibility-options.png) + ![Screenshot of clearing a port visibility option](/assets/images/help/codespaces/choose-port-visibility-options.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The port visibility constraint is also applied to existing codespaces the next time they are started. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Port visibility" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -71,4 +79,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md b/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md index 253b3ea97e..07be49175c 100644 --- a/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md +++ b/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md @@ -93,10 +93,10 @@ You can use secrets in a codespace after the codespace is built and is running. * When launching an application from the integrated terminal or ssh session. * Within a dev container lifecycle script that is run after the codespace is running. For more information about dev container lifecycle scripts, see the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#lifecycle-scripts). -Codespace secrets cannot be used during: +Codespace secrets cannot be used: -* Codespace build time (that is, within a Dockerfile or custom entry point). -* Within a dev container feature. For more information, see the `features` attribute in the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#general-properties). +* During codespace build time (that is, within a Dockerfile or custom entry point). +* Within a dev container feature. For more information, see the `features` property in the [dev containers specification](https://containers.dev/implementors/json_reference/#general-properties) on containers.dev. ## Further reading diff --git a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 03f5eefc01..7e4d85e0b7 100644 --- a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -65,7 +65,7 @@ The Dockerfile for a dev container is typically located in the `.devcontainer` f {% note %} -**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." +**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. The image you specify here must be allowed by any organization image policy that has been set. For more information, see "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)." If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." {% endnote %} diff --git a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md index 68db9a04e5..1d0c70d64c 100644 --- a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md +++ b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md @@ -104,14 +104,12 @@ The newly added `devcontainer.json` file defines a few properties that are descr // "ASPNETCORE_Kestrel__Certificates__Default__Path": "/home/vscode/.aspnet/https/aspnetapp.pfx", // }, // - // 3. Do one of the following depending on your scenario: - // * When using GitHub Codespaces and/or Remote - Containers: - // 1. Start the container - // 2. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer - // 3. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https" + // 3. Start the container. + // + // 4. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer. + // + // 5. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https". // - // * If only using Remote - Containers with a local container, uncomment this line instead: - // "mounts": [ "source=${env:HOME}${env:USERPROFILE}/.aspnet/https,target=/home/vscode/.aspnet/https,type=bind" ], // Use 'postCreateCommand' to run commands after the container is created. // "postCreateCommand": "dotnet restore", diff --git a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md index 42811fded0..c5f6b582f0 100644 --- a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md +++ b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md @@ -32,7 +32,7 @@ This guide shows you how to set up your Java project in {% data variables.produc If you don’t see this option, {% data variables.product.prodname_github_codespaces %} isn't available for your project. See [Access to {% data variables.product.prodname_github_codespaces %}](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces) for more information. -When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a common set of tools like git, wget, rsync, openssh, and nano. +When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a set of commonly used tools such as git, wget, rsync, openssh, and nano. {% data reusables.codespaces.customize-vcpus-and-ram %} diff --git a/translations/ja-JP/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md b/translations/ja-JP/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md index e370ae0345..fa245c2915 100644 --- a/translations/ja-JP/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md +++ b/translations/ja-JP/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md @@ -154,3 +154,37 @@ By default, when you create a new organization, workflows are not allowed to {% 1. Click **Save** to apply the settings. {% endif %} + +{% ifversion actions-cache-org-ui %} + +## Managing {% data variables.product.prodname_actions %} cache storage for your organization + +Organization administrators can view {% ifversion actions-cache-admin-ui %}and manage {% endif %}{% data variables.product.prodname_actions %} cache storage for all repositories in the organization. + +### Viewing {% data variables.product.prodname_actions %} cache storage by repository + +For each repository in your organization, you can see how much cache storage a repository is using, the number of active caches, and if a repository is near the total cache size limit. For more information about the cache usage and eviction process, see "[Caching dependencies to speed up workflows](/actions/using-workflows/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy)." + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +1. In the left sidebar, click {% octicon "play" aria-label="The {% data variables.product.prodname_actions %} icon" %} **Actions**, then click **Caches**. +1. Review the list of repositories for information about their {% data variables.product.prodname_actions %} caches. You can click on a repository name to see more detail about the repository's caches. + +{% ifversion actions-cache-admin-ui %} + +### Configuring {% data variables.product.prodname_actions %} cache storage for your organization + +{% data reusables.actions.cache-default-size %} + +You can configure the size limit for {% data variables.product.prodname_actions %} caches that will apply to each repository in your organization. The cache size limit for an organization cannot exceed the cache size limit set in the enterprise policy. Repository admins will be able to set a smaller limit in their repositories. + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-general %} +{% data reusables.actions.change-cache-size-limit %} + +{% endif %} + +{% endif %} diff --git a/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index 9c6d07ec47..264d7bd5dc 100644 --- a/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -1,6 +1,6 @@ --- -title: カスタムドメインとGitHub Pagesについて -intro: '{% data variables.product.prodname_pages %} では、カスタム ドメインを使用する、つまりサイトの URL のルートを `octocat.github.io` などの既定値からあなたが所有するドメインに変更することができます。' +title: About custom domains and GitHub Pages +intro: '{% data variables.product.prodname_pages %} supports using custom domains, or changing the root of your site''s URL from the default, like `octocat.github.io`, to any domain you own.' redirect_from: - /articles/about-custom-domains-for-github-pages-sites - /articles/about-supported-custom-domains @@ -14,62 +14,58 @@ versions: topics: - Pages shortTitle: Custom domains in GitHub Pages -ms.openlocfilehash: a2c5ae3df0e2dd6248db6e03fd7c64e973b14f3d -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/05/2022 -ms.locfileid: '145140372' --- -## サポートされているカスタムドメイン -{% data variables.product.prodname_pages %} では、サブドメインとApexドメインの 2 種類のドメインを使用できます。 サポートされていないカスタム ドメインの一覧については、「[カスタム ドメインと {% data variables.product.prodname_pages %} のトラブルシューティング](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)」を参照してください。 +## Supported custom domains -| サポートされているカスタムドメインの種類 | 例 | +{% data variables.product.prodname_pages %} works with two types of domains: subdomains and apex domains. For a list of unsupported custom domains, see "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)." + +| Supported custom domain type | Example | |---|---| -| `www` サブドメイン | `www.example.com` | -| カスタム サブドメイン | `blog.example.com` | -|   Apex ドメイン | `example.com` | +| `www` subdomain | `www.example.com` | +| Custom subdomain | `blog.example.com` | +| Apex domain | `example.com` | -サイトには、頂点および `www` サブドメインのいずれか、あるいは両方の構成を設定できます。 頂点ドメインの詳細については、「[{% data variables.product.prodname_pages %} サイトに頂点ドメインを使用する](#using-an-apex-domain-for-your-github-pages-site)」を参照してください。 +You can set up either or both of apex and `www` subdomain configurations for your site. For more information on apex domains, see "[Using an apex domain for your {% data variables.product.prodname_pages %} site](#using-an-apex-domain-for-your-github-pages-site)." -頂点ドメインを使用している場合でも、`www` サブドメインを使用することをお勧めします。 頂点ドメインで新しいサイトを作成すると、サイトのコンテンツを提供する際に使用するために `www` サブドメインのセキュリティ保護が自動的に試みられますが、`www` サブドメインを使うための DNS の変更はユーザーが行わなければなりません。 `www` サブドメインを設定すれば、関連する頂点ドメインのセキュリティ保護が自動的に試みられます。 詳細については、「[{% data variables.product.prodname_pages %} サイトのカスタム ドメインを管理する](/articles/managing-a-custom-domain-for-your-github-pages-site)」を参照してください。 +We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." -ユーザーまたは Organization サイトのカスタム ドメインを設定すると、カスタム ドメインを設定していないアカウントが所有するプロジェクト サイトの URL で、`.github.io` または `.github.io` の部分がカスタム ドメインによって置き換えられます。 たとえば、サイトのカスタム ドメインが `www.octocat.com` で、`octo-project` というリポジトリから公開されているプロジェクト サイトにカスタム ドメインをまだ設定していない場合、そのリポジトリの {% data variables.product.prodname_pages %} サイトは、`www.octocat.com/octo-project` で公開されます。 +After you configure a custom domain for a user or organization site, the custom domain will replace the `.github.io` or `.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`. +For more information about each type of site and handling custom domains, see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." -## あなたの {% data variables.product.prodname_pages %} サイトに Apex ドメインを使用する +## Using a subdomain for your {% data variables.product.prodname_pages %} site -サブドメインは、URL のうちルートドメインの前の部分です。 サブドメインは `www` として、またはサイトの個別のセクションとして `blog.example.com` のように構成できます。 +A subdomain is the part of a URL before the root domain. You can configure your subdomain as `www` or as a distinct section of your site, like `blog.example.com`. -サブドメインは、DNS プロバイダーを通じて `CNAME` レコードで設定されます。 詳細については、「[{% data variables.product.prodname_pages %} サイトのカスタム ドメインを管理する](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)」を参照してください。 +Subdomains are configured with a `CNAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)." -### `www` サブドメイン +### `www` subdomains -サブドメインの種類として最もよく使われているのは、`www` サブドメインです。 たとえば、`www.example.com` には `www` サブドメインが含まれています。 +A `www` subdomain is the most commonly used type of subdomain. For example, `www.example.com` includes a `www` subdomain. -`www` サブドメインは、最も安定している種類のカスタム ドメインです。{% data variables.product.product_name %} のサーバーの IP アドレスが変更されても、`www` サブドメインは影響を受けないからです。 +`www` subdomains are the most stable type of custom domain because `www` subdomains are not affected by changes to the IP addresses of {% data variables.product.product_name %}'s servers. -### カスタム サブドメイン +### Custom subdomains -カスタム サブドメインは、標準の `www` 形式を使わない種類のサブドメインです。 カスタムサブドメインは、サイトに 2 つの独自セクションを作成したい場合に最もよく使われます。 たとえば、`blog.example.com` というサイトを作成し、`www.example.com` から個別にそのセクションをカスタマイズできます。 +A custom subdomain is a type of subdomain that doesn't use the standard `www` variant. Custom subdomains are mostly used when you want two distinct sections of your site. For example, you can create a site called `blog.example.com` and customize that section independently from `www.example.com`. -## あなたの {% data variables.product.prodname_pages %} サイトに Apex ドメインを使用する +## Using an apex domain for your {% data variables.product.prodname_pages %} site -頂点ドメインは、`example.com` のようにサブドメインを含まないカスタム ドメインです。 Apex ドメインは、ベースドメイン、ベアドメイン、裸ドメイン、ルート Apex ドメイン、ゾーン Apex ドメインなどとも呼ばれます。 +An apex domain is a custom domain that does not contain a subdomain, such as `example.com`. Apex domains are also known as base, bare, naked, root apex, or zone apex domains. -頂点ドメインは、DNS プロバイダーを通じて、`A`、`ALIAS`、または `ANAME` のレコードを使用して設定されます。 詳細については、「[{% data variables.product.prodname_pages %} サイトのカスタム ドメインを管理する](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)」を参照してください。 +An apex domain is configured with an `A`, `ALIAS`, or `ANAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)." -{% data reusables.pages.www-and-apex-domain-recommendation %}詳細については、「[{% data variables.product.prodname_pages %} サイトのカスタム ドメインを管理する](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)」を参照してください。 +{% data reusables.pages.www-and-apex-domain-recommendation %} For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)." -## {% data variables.product.prodname_pages %}サイトのためのカスタムドメインの保護 +## Securing the custom domain for your {% data variables.product.prodname_pages %} site -{% data reusables.pages.secure-your-domain %}詳細については、「[{% data variables.product.prodname_pages %} のカスタム ドメインの検証](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)」および「[{% data variables.product.prodname_pages %} サイトのカスタム ドメインを管理する](/articles/managing-a-custom-domain-for-your-github-pages-site)」を参照してください。 +{% data reusables.pages.secure-your-domain %} For more information, see "[Verifying your custom domain for {% data variables.product.prodname_pages %}](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)" and "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." -サイトが自動的に無効化される理由は、いくつかあります。 +There are a couple of reasons your site might be automatically disabled. -- {% data variables.product.prodname_pro %} から {% data variables.product.prodname_free_user %} へダウングレードすると、アカウント内のプライベートリポジトリから公開されている {% data variables.product.prodname_pages %} のサイトは公開されなくなります。 詳細については、[{% data variables.product.prodname_dotcom %} 課金プランのダウングレード](/articles/downgrading-your-github-billing-plan)に関するページを参照してください。 -- {% data variables.product.prodname_free_user %} を利用している個人アカウントへプライベートリポジトリを移譲した場合、そのリポジトリからは {% data variables.product.prodname_pages %} の機能を利用できなくなり、公開されている {% data variables.product.prodname_pages %} は公開されなくなります。 詳細については、「[リポジトリを移譲する](/articles/transferring-a-repository)」を参照してください。 +- If you downgrade from {% data variables.product.prodname_pro %} to {% data variables.product.prodname_free_user %}, any {% data variables.product.prodname_pages %} sites that are currently published from private repositories in your account will be unpublished. For more information, see "[Downgrading your {% data variables.product.prodname_dotcom %} billing plan](/articles/downgrading-your-github-billing-plan)." +- If you transfer a private repository to a personal account that is using {% data variables.product.prodname_free_user %}, the repository will lose access to the {% data variables.product.prodname_pages %} feature, and the currently published {% data variables.product.prodname_pages %} site will be unpublished. For more information, see "[Transferring a repository](/articles/transferring-a-repository)." -## 参考資料 +## Further reading -- "[カスタム ドメインと {% data variables.product.prodname_pages %} のトラブルシューティング](/articles/troubleshooting-custom-domains-and-github-pages)" +- "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages)" diff --git a/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md b/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md index 6e4dea54e6..ae7c873c86 100644 --- a/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md +++ b/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md @@ -54,6 +54,9 @@ For each branch protection rule, you can choose to enable or disable the followi {%- ifversion required-deployments %} - [Require deployments to succeed before merging](#require-deployments-to-succeed-before-merging) {%- endif %} +{%- ifversion lock-branch %} +- [Lock branch](#lock-branch) +{%- endif %} {% ifversion bypass-branch-protections %}- [Do not allow bypassing the above settings](#do-not-allow-bypassing-the-above-settings){% else %}- [Include administrators](#include-administrators){% endif %} - [Restrict who can push to matching branches](#restrict-who-can-push-to-matching-branches) - [Allow force pushes](#allow-force-pushes) @@ -84,6 +87,10 @@ Optionally, you can restrict the ability to dismiss pull request reviews to spec Optionally, you can choose to require reviews from code owners. If you do, any pull request that affects code with a code owner must be approved by that code owner before the pull request can be merged into the protected branch. +{% ifversion last-pusher-require-approval %} +Optionally, you can require approvals from someone other than the last person to push to a branch before a pull request can be merged. This ensures more than one person sees pull requests in their final state before they are merged into a protected branch. If you enable this feature, the most recent user to push their changes will need an approval regardless of the required approvals branch protection. Users who have already reviewed a pull request can reapprove after the most recent push to meet this requirement. +{% endif %} + ### Require status checks before merging Required status checks ensure that all required CI tests are passing before collaborators can make changes to a protected branch. Required status checks can be checks or statuses. For more information, see "[About status checks](/github/collaborating-with-issues-and-pull-requests/about-status-checks)." @@ -151,6 +158,13 @@ Before you can require a linear commit history, your repository must allow squas You can require that changes are successfully deployed to specific environments before a branch can be merged. For example, you can use this rule to ensure that changes are successfully deployed to a staging environment before the changes merge to your default branch. +{% ifversion lock-branch %} +### Lock branch + +Locking a branch ensures that no commits can be made to the branch. +By default, a forked repository does not support syncing from its upstream repository. You can enable **Allow fork syncing** to pull changes from the upstream repository while preventing other contributions to the fork's branch. +{% endif %} + {% ifversion bypass-branch-protections %}### Do not allow bypassing the above settings{% else %} ### Include administrators{% endif %} diff --git a/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md b/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md index 872d6e08f0..bef4499ff6 100644 --- a/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md +++ b/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md @@ -73,6 +73,10 @@ When you create a branch rule, the branch you specify doesn't have to exist yet {% endif %} - Optionally, if the repository is part of an organization, select **Restrict who can dismiss pull request reviews**. Then, search for and select the actors who are allowed to dismiss pull request reviews. For more information, see "[Dismissing a pull request review](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review)." ![Restrict who can dismiss pull request reviews checkbox]{% ifversion integration-branch-protection-exceptions %}(/assets/images/help/repository/PR-review-required-dismissals-with-apps.png){% else %}(/assets/images/help/repository/PR-review-required-dismissals.png){% endif %} +{% ifversion last-pusher-require-approval %} + - Optionally, to require someone other than the last person to push to a branch to approve a pull request prior to merging, select **Require approval from someone other than the last pusher**. For more information, see "[About protected branches](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-pull-request-reviews-before-merging)." + ![Require review from someone other than the last pusher](/assets/images/help/repository/last-pusher-review-required.png) +{% endif %} 1. Optionally, enable required status checks. For more information, see "[About status checks](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." - Select **Require status checks to pass before merging**. ![Required status checks option](/assets/images/help/repository/required-status-checks.png) @@ -99,6 +103,12 @@ When you create a branch rule, the branch you specify doesn't have to exist yet 1. Optionally, to choose which environments the changes must be successfully deployed to before merging, select **Require deployments to succeed before merging**, then select the environments. ![Require successful deployment option](/assets/images/help/repository/require-successful-deployment.png) {%- endif %} +{% ifversion lock-branch %} +1. Optionally, select **Lock branch** to make branch read-only. +![Screenshot of the checkbox to lock a branch](/assets/images/help/repository/lock-branch.png) + - Optionally, to allow fork syncing, select **Allow fork syncing**. +![Screenshot of the checkbox to allow fork syncing](/assets/images/help/repository/lock-branch-forksync.png) +{%- endif %} 1. Optionally, select {% ifversion bypass-branch-protections %}**Do not allow bypassing the above settings**. ![Do not allow bypassing the above settings checkbox](/assets/images/help/repository/do-not-allow-bypassing-the-above-settings.png){% else %}**Apply the rules above to administrators**. ![Apply the rules above to administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png){% endif %} diff --git a/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md b/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md index 9a2ca2a765..474cc4705d 100644 --- a/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md +++ b/translations/ja-JP/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md @@ -97,7 +97,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - run: 'echo "No build required" ' + - run: 'echo "No build required"' ``` Now the checks will always pass whenever someone sends a pull request that doesn't change the files listed under `paths` in the first workflow. diff --git a/translations/ja-JP/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md b/translations/ja-JP/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md index 03e5eef696..f6bff21e91 100644 --- a/translations/ja-JP/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md +++ b/translations/ja-JP/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md @@ -185,7 +185,16 @@ You can also define a custom retention period for a specific artifact created by {% data reusables.actions.cache-default-size %} However, these default sizes might be different if an enterprise owner has changed them. {% data reusables.actions.cache-eviction-process %} -You can set a total cache storage size for your repository up to the maximum size allowed by the enterprise policy setting. +You can set a total cache storage size for your repository up to the maximum size allowed by the {% ifversion actions-cache-admin-ui %}organization or{% endif %} enterprise policy setting{% ifversion actions-cache-admin-ui %}s{% endif %}. + +{% ifversion actions-cache-admin-ui %} + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-settings %} +{% data reusables.repositories.settings-sidebar-actions-general %} +{% data reusables.actions.change-cache-size-limit %} + +{% else %} The repository settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API: @@ -195,3 +204,5 @@ The repository settings for {% data variables.product.prodname_actions %} cache {% data reusables.actions.cache-no-org-policy %} {% endif %} + +{% endif %} diff --git a/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 7960cd746d..5efcabdade 100644 --- a/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -2,6 +2,5 @@ {% ifversion ghec %}![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org.png){% elsif ghes > 3.4 or ghae > 3.4 %} ![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org-ghes.png){% endif %} 1. Optionally, click "Automatically enable for repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %} 1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. - {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} diff --git a/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md b/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md index cc40cae50d..8ca2465442 100644 --- a/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md +++ b/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md @@ -1,13 +1,5 @@ ---- -ms.openlocfilehash: 5f71b486e450ec53e4f144c7cabd87e1e7e8a257 -ms.sourcegitcommit: 478f2931167988096ae6478a257f492ecaa11794 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/09/2022 -ms.locfileid: "147717638" ---- {% note %} -**注**: {% data variables.product.prodname_codespaces %} に対して定義した Organization ポリシーは、Organization に課金される codespace にのみ適用されます。 個々のユーザーが Organization 内のリポジトリ用の codespace を作成し、その Organization に課金されない場合、codespace はそれらのポリシーに制約されません。 Organization に課金される codespace を作成できるユーザーを選ぶ方法については、「[Organization に対して{% data variables.product.prodname_github_codespaces %} を有効にする](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)」を参照してください。 +**Note**: Codespace policies only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." {% endnote %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/codespaces/codespaces-policy-targets.md b/translations/ja-JP/data/reusables/codespaces/codespaces-policy-targets.md index df251db6c4..3cda0cb3b9 100644 --- a/translations/ja-JP/data/reusables/codespaces/codespaces-policy-targets.md +++ b/translations/ja-JP/data/reusables/codespaces/codespaces-policy-targets.md @@ -1,11 +1,14 @@ -1. In the "Change policy target" area, click the dropdown button. -1. Choose either **All repositories** or **Selected repositories** to determine which repositories this policy will apply to. -1. If you chose **Selected repositories**: +1. Click outside of the dialog box to close it. +1. By default the policy is set to apply to all repositories, if you want it to apply only to some of the repositories in your organization, click **All repositories** and then click **Selected repositories** in the dropdown menu. + + ![Screenshot of choosing 'Selected repositories'](/assets/images/help/codespaces/selected-repositories.png) + + With **Selected repositories** selected: 1. Click {% octicon "gear" aria-label="The settings icon" %}. - ![Edit the settings for the policy](/assets/images/help/codespaces/policy-edit.png) + ![Screenshot of the gear icon for editing the settings](/assets/images/help/codespaces/policy-edit.png) 2. Select the repositories you want this policy to apply to. 3. At the bottom of the repository list, click **Select repositories**. - ![Select repositories for this policy](/assets/images/help/codespaces/policy-select-repos.png) + ![Screenshot of selected repositories for this policy](/assets/images/help/codespaces/policy-select-repos.png) diff --git a/translations/ja-JP/data/reusables/dependabot/supported-package-managers.md b/translations/ja-JP/data/reusables/dependabot/supported-package-managers.md index 4868ab2a17..3e651d2f5e 100644 --- a/translations/ja-JP/data/reusables/dependabot/supported-package-managers.md +++ b/translations/ja-JP/data/reusables/dependabot/supported-package-managers.md @@ -1,18 +1,10 @@ ---- -ms.openlocfilehash: 073c21c1480e0f9f699687c730aef2bb670654e7 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: ja-JP -ms.lasthandoff: 09/05/2022 -ms.locfileid: "146689022" ---- -以下の表は、各パッケージマネージャについて以下の項目を示しています。 -- *dependabot.yml* ファイル中で使う YAML 値 -- パッケージマネージャのサポートされているバージョン -- プライベートの{% data variables.product.prodname_dotcom %}リポジトリあるいはレジストリ内の依存関係がサポートされているか -- ベンダーの依存関係がサポートされているか +The following table shows, for each package manager: +- The YAML value to use in the *dependabot.yml* file +- The supported versions of the package manager +- Whether dependencies in private {% data variables.product.prodname_dotcom %} repositories or registries are supported +- Whether vendored dependencies are supported -パッケージ マネージャー | YAML値 | サポートされているバージョン | プライベートリポジトリ | プライベート レジストリ | ベンダー +Package manager | YAML value | Supported versions | Private repositories | Private registries | Vendoring ---------------|------------------|------------------|:---:|:---:|:---: Bundler | `bundler` | v1, v2 | | **✓** | **✓** | Cargo | `cargo` | v1 | **✓** | **✓** | | @@ -20,36 +12,42 @@ Composer | `composer` | v1, v2 | **✓** | **✓** | | Docker | `docker` | v1 | **✓** | **✓** | | Hex | `mix` | v1 | | **✓** | | elm-package | `elm` | v0.19 | **✓** | **✓** | | -Gitサブモジュール | `gitsubmodule` | N/A (バージョンなし) | **✓** | **✓** | | -GitHub のアクション | `github-actions` | N/A (バージョンなし) | **✓** | **✓** | | -Go モジュール | `gomod` | v1 | **✓** | **✓** | **✓** | -Gradle | `gradle` | N/A (バージョンなし)[1] | **✓** | **✓** | | -Maven | `maven` | N/A (バージョンなし)[2] | **✓** | **✓** | | -npm | `npm` | v6、v7、v8 | **✓** | **✓** | | +git submodule | `gitsubmodule` | N/A (no version) | **✓** | **✓** | | +GitHub Actions | `github-actions` | N/A (no version) | **✓** | **✓** | | +Go modules | `gomod` | v1 | **✓** | **✓** | **✓** | +Gradle | `gradle` | N/A (no version)[1] | **✓** | **✓** | | +Maven | `maven` | N/A (no version)[2] | **✓** | **✓** | | +npm | `npm` | v6, v7, v8 | **✓** | **✓** | | NuGet | `nuget` | <= 4.8[3] | **✓** | **✓** | | pip | `pip` | v21.1.2 | | **✓** | | pipenv | `pip` | <= 2021-05-29 | | **✓** | | pip-compile | `pip` | 6.1.0 | | **✓** | | poetry | `pip` | v1 | | **✓** | |{% ifversion fpt or ghec or ghes > 3.4 %} pub | `pub` | v2 [4] | | | |{% endif %} -Terraform | `terraform` | >= 0.13、<= 1.2.x | **✓** | **✓** | | -yarn | `npm` | v1 | **✓** | **✓** | | +Terraform | `terraform` | >= 0.13, <= 1.2.x | **✓** | **✓** | | +{% ifversion dependabot-yarn-v3-update %}yarn | `npm` | v1, v2, v3 | **✓** | **✓** | **✓**[5] |{% else %}yarn | `npm` | v1 | **✓** | **✓** | | +{% endif %} {% tip %} -**ヒント:** `pipenv` や `poetry` などのパッケージ マネージャでは、`pip` の YAML 値を使う必要があります。 たとえば Python の依存関係を管理するのに `poetry` を使っており、{% data variables.product.prodname_dependabot %} に新しいバージョンのために依存関係のマニフェスト ファイルをモニターさせたい場合は、*dependabot.yml* ファイル中で `package-ecosystem: "pip"` を使ってください。 +**Tip:** For package managers such as `pipenv` and `poetry`, you need to use the `pip` YAML value. For example, if you use `poetry` to manage your Python dependencies and want {% data variables.product.prodname_dependabot %} to monitor your dependency manifest file for new versions, use `package-ecosystem: "pip"` in your *dependabot.yml* file. {% endtip %} -[1] {% data variables.product.prodname_dependabot %} では Gradle は実行されませんが、次のファイルのアップデートがサポートされます: `build.gradle`、`build.gradle.kts`(Kotlin プロジェクトの場合)、および `apply` 宣言を使用して組み込まれた、ファイル名に `dependencies` を含むファイル。 `apply` では、`apply to`、再帰、または高度な構文 (たとえば、ファイル名がプロパティで定義された、Kotlin の `mapOf` 付き `apply`) はサポートされていないことに注意してください。 +[1] {% data variables.product.prodname_dependabot %} doesn't run Gradle but supports updates to the following files: `build.gradle`, `build.gradle.kts` (for Kotlin projects), and files included via the `apply` declaration that have `dependencies` in the filename. Note that `apply` does not support `apply to`, recursion, or advanced syntaxes (for example, Kotlin's `apply` with `mapOf`, filenames defined by property). -[2] {% data variables.product.prodname_dependabot %} は Maven を実行しませんが、`pom.xml` ファイルの更新はサポートします。 +[2] {% data variables.product.prodname_dependabot %} doesn't run Maven but supports updates to `pom.xml` files. -[3] {% data variables.product.prodname_dependabot %}はNuGet CLIを実行しませんが、バージョン4.8までのほとんどの機能をサポートします。 +[3] {% data variables.product.prodname_dependabot %} doesn't run the NuGet CLI but does support most features up until version 4.8. -{% ifversion fpt or ghec or ghes > 3.4 %} [4] {% ifversion ghes = 3.5 %}`pub` のサポートは、現在ベータ版です。 既知の制限事項は変更される可能性があります。 {% data variables.product.prodname_dependabot %} では、次のことに注意してください。 - - `pub` の git 依存関係の更新はサポートされていません。 - - 以前のバージョンが使用可能な場合でも、更新を試みるバージョンが無視されても更新は実行されません。 +{% ifversion fpt or ghec or ghes > 3.4 %} +[4] {% ifversion ghes = 3.5 %}`pub` support is currently in beta. Any known limitations are subject to change. Note that {% data variables.product.prodname_dependabot %}: + - Doesn't support updating git dependencies for `pub`. + - Won't perform an update when the version that it tries to update to is ignored, even if an earlier version is available. - `pub` の _dependabot.yml_ ファイルを構成する方法の詳細については、「[ベータ レベルのエコシステムのサポートを有効にする](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)」を参照してください。 - {%- else %}{% data variables.product.prodname_dependabot %} は、以前のバージョンが使用可能な場合でも、更新を試みるバージョンが無視されているときは `pub` の更新を実行しません。{% endif %} {% endif %} + For information about configuring your _dependabot.yml_ file for `pub`, see "[Enabling support for beta-level ecosystems](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)." + {%- else %}{% data variables.product.prodname_dependabot %} won't perform an update for `pub` when the version that it tries to update to is ignored, even if an earlier version is available.{% endif %} +{% endif %} + +{% ifversion dependabot-yarn-v3-update %} +[5] Dependabot supports vendored dependencies for v2 onwards.{% endif %} diff --git a/translations/log/msft-ja-resets.csv b/translations/log/msft-ja-resets.csv index f8f2f1926f..845c796d5d 100644 --- a/translations/log/msft-ja-resets.csv +++ b/translations/log/msft-ja-resets.csv @@ -89,6 +89,7 @@ translations/ja-JP/content/codespaces/customizing-your-codespace/personalizing-c translations/ja-JP/content/codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces.md,file deleted because it no longer exists in main translations/ja-JP/content/codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces.md,file deleted because it no longer exists in main translations/ja-JP/content/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces.md,file deleted because it no longer exists in main +translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,file deleted because it no longer exists in main translations/ja-JP/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md,file deleted because it no longer exists in main translations/ja-JP/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md,file deleted because it no longer exists in main translations/ja-JP/content/codespaces/developing-in-codespaces/using-codespaces-with-github-cli.md,file deleted because it no longer exists in main @@ -353,6 +354,7 @@ translations/ja-JP/content/actions/security-guides/encrypted-secrets.md,renderin translations/ja-JP/content/actions/security-guides/security-hardening-for-github-actions.md,rendering error translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error translations/ja-JP/content/actions/using-workflows/about-workflows.md,rendering error +translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md,broken liquid tags translations/ja-JP/content/actions/using-workflows/creating-starter-workflows-for-your-organization.md,rendering error translations/ja-JP/content/actions/using-workflows/events-that-trigger-workflows.md,rendering error translations/ja-JP/content/actions/using-workflows/reusing-workflows.md,rendering error @@ -403,6 +405,9 @@ translations/ja-JP/content/admin/configuration/configuring-your-enterprise/initi translations/ja-JP/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,rendering error translations/ja-JP/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md,broken liquid tags translations/ja-JP/content/admin/configuration/configuring-your-enterprise/troubleshooting-tls-errors.md,broken liquid tags +translations/ja-JP/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md,broken liquid tags +translations/ja-JP/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md,broken liquid tags +translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md,broken liquid tags translations/ja-JP/content/admin/enterprise-management/monitoring-your-appliance/accessing-the-monitor-dashboard.md,broken liquid tags translations/ja-JP/content/admin/enterprise-management/monitoring-your-appliance/configuring-collectd.md,broken liquid tags translations/ja-JP/content/admin/enterprise-management/monitoring-your-appliance/generating-a-health-check-for-your-enterprise.md,broken liquid tags @@ -600,6 +605,8 @@ translations/ja-JP/content/code-security/secret-scanning/about-secret-scanning.m translations/ja-JP/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md,rendering error translations/ja-JP/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md,rendering error translations/ja-JP/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md,rendering error +translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md,broken liquid tags +translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md,broken liquid tags translations/ja-JP/content/code-security/security-overview/about-the-security-overview.md,rendering error translations/ja-JP/content/code-security/security-overview/filtering-alerts-in-the-security-overview.md,rendering error translations/ja-JP/content/code-security/security-overview/viewing-the-security-overview.md,rendering error @@ -796,6 +803,7 @@ translations/ja-JP/content/packages/working-with-a-github-packages-registry/work translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,rendering error translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,rendering error translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,rendering error +translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md,broken liquid tags translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md,rendering error translations/ja-JP/content/pages/getting-started-with-github-pages/about-github-pages.md,broken liquid tags translations/ja-JP/content/pages/index.md,broken liquid tags @@ -1000,6 +1008,7 @@ translations/ja-JP/data/reusables/code-scanning/enterprise-enable-code-scanning- translations/ja-JP/data/reusables/code-scanning/enterprise-enable-code-scanning.md,broken liquid tags translations/ja-JP/data/reusables/code-scanning/what-is-codeql-cli.md,broken liquid tags translations/ja-JP/data/reusables/codespaces/codespaces-api-beta-note.md,broken liquid tags +translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md,broken liquid tags translations/ja-JP/data/reusables/codespaces/codespaces-policy-targets.md,rendering error translations/ja-JP/data/reusables/codespaces/codespaces-spending-limit-requirement.md,broken liquid tags translations/ja-JP/data/reusables/codespaces/creating-a-codespace-in-vscode.md,broken liquid tags @@ -1018,6 +1027,7 @@ translations/ja-JP/data/reusables/dependabot/default-dependencies-allow-ignore.m translations/ja-JP/data/reusables/dependabot/dependabot-alerts-filters.md,rendering error translations/ja-JP/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error translations/ja-JP/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error +translations/ja-JP/data/reusables/dependabot/supported-package-managers.md,broken liquid tags translations/ja-JP/data/reusables/desktop/get-an-account.md,rendering error translations/ja-JP/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags translations/ja-JP/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags From dcb7cf9b87addd55ad727acc6b6dcdf2e5a421f6 Mon Sep 17 00:00:00 2001 From: docubot <67483024+docubot@users.noreply.github.com> Date: Thu, 20 Oct 2022 10:49:14 -0700 Subject: [PATCH 29/30] New translation batch for pt (#31920) --- translations/log/msft-pt-resets.csv | 8 +- .../using-larger-runners.md | 2 + ...hing-dependencies-to-speed-up-workflows.md | 204 ++++++++------ .../cluster-network-configuration.md | 111 ++++---- ...-availability-replication-for-a-cluster.md | 250 +++++++++--------- .../creating-a-high-availability-replica.md | 90 +++---- ...siderations-for-external-authentication.md | 27 +- .../about-enterprise-managed-users.md | 4 +- ...s-for-github-actions-in-your-enterprise.md | 16 +- ...-ssh-key-and-adding-it-to-the-ssh-agent.md | 6 +- .../token-expiration-and-revocation.md | 2 - ...ion-options-for-the-dependabot.yml-file.md | 4 +- .../protecting-pushes-with-secret-scanning.md | 17 +- ...ing-a-branch-blocked-by-push-protection.md | 3 - .../customizing-your-codespace/index.md | 1 + .../codespaces-lifecycle.md | 2 + .../developing-in-codespaces/index.md | 1 - .../renaming-a-codespace.md | 56 ---- ...using-github-codespaces-with-github-cli.md | 14 +- .../codespaces/getting-started/deep-dive.md | 2 +- .../codespaces/getting-started/quickstart.md | 3 +- .../pt-BR/content/codespaces/guides.md | 3 +- .../index.md | 1 + .../restricting-access-to-machine-types.md | 20 +- .../restricting-the-idle-timeout-period.md | 17 +- ...ing-the-retention-period-for-codespaces.md | 17 +- ...cting-the-visibility-of-forwarded-ports.md | 18 +- ...g-encrypted-secrets-for-your-codespaces.md | 6 +- .../introduction-to-dev-containers.md | 2 +- ...g-up-your-dotnet-project-for-codespaces.md | 12 +- ...ing-up-your-java-project-for-codespaces.md | 2 +- ...ng-github-actions-for-your-organization.md | 34 +++ .../about-custom-domains-and-github-pages.md | 68 +++-- .../about-protected-branches.md | 14 + .../managing-a-branch-protection-rule.md | 10 + .../troubleshooting-required-status-checks.md | 2 +- ...ithub-actions-settings-for-a-repository.md | 13 +- .../secret-scanning-push-protection-org.md | 1 - .../dependabot/supported-package-managers.md | 60 ++--- 39 files changed, 616 insertions(+), 507 deletions(-) delete mode 100644 translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md diff --git a/translations/log/msft-pt-resets.csv b/translations/log/msft-pt-resets.csv index 8b4c68d1eb..3a3901a0dc 100644 --- a/translations/log/msft-pt-resets.csv +++ b/translations/log/msft-pt-resets.csv @@ -82,6 +82,7 @@ translations/pt-BR/content/codespaces/customizing-your-codespace/personalizing-c translations/pt-BR/content/codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces.md,file deleted because it no longer exists in main translations/pt-BR/content/codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces.md,file deleted because it no longer exists in main translations/pt-BR/content/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces.md,file deleted because it no longer exists in main +translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,file deleted because it no longer exists in main translations/pt-BR/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md,file deleted because it no longer exists in main translations/pt-BR/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md,file deleted because it no longer exists in main translations/pt-BR/content/codespaces/developing-in-codespaces/using-codespaces-with-github-cli.md,file deleted because it no longer exists in main @@ -340,6 +341,7 @@ translations/pt-BR/content/actions/security-guides/security-hardening-for-github translations/pt-BR/content/actions/using-github-hosted-runners/about-github-hosted-runners.md,rendering error translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error translations/pt-BR/content/actions/using-workflows/about-workflows.md,rendering error +translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md,broken liquid tags translations/pt-BR/content/actions/using-workflows/creating-starter-workflows-for-your-organization.md,rendering error translations/pt-BR/content/actions/using-workflows/events-that-trigger-workflows.md,rendering error translations/pt-BR/content/actions/using-workflows/reusing-workflows.md,rendering error @@ -390,6 +392,9 @@ translations/pt-BR/content/admin/configuration/configuring-your-enterprise/manag translations/pt-BR/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md,broken liquid tags translations/pt-BR/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md,broken liquid tags translations/pt-BR/content/admin/configuration/configuring-your-enterprise/troubleshooting-tls-errors.md,broken liquid tags +translations/pt-BR/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md,broken liquid tags +translations/pt-BR/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md,broken liquid tags +translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md,broken liquid tags translations/pt-BR/content/admin/enterprise-management/monitoring-your-appliance/accessing-the-monitor-dashboard.md,broken liquid tags translations/pt-BR/content/admin/enterprise-management/monitoring-your-appliance/configuring-collectd.md,broken liquid tags translations/pt-BR/content/admin/enterprise-management/monitoring-your-appliance/generating-a-health-check-for-your-enterprise.md,broken liquid tags @@ -619,7 +624,6 @@ translations/pt-BR/content/codespaces/developing-in-codespaces/creating-a-codesp translations/pt-BR/content/codespaces/developing-in-codespaces/deleting-a-codespace.md,broken liquid tags translations/pt-BR/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md,broken liquid tags translations/pt-BR/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md,broken liquid tags -translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,broken liquid tags translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-for-pull-requests.md,broken liquid tags translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code.md,broken liquid tags translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md,broken liquid tags @@ -794,6 +798,7 @@ translations/pt-BR/content/packages/working-with-a-github-packages-registry/work translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,rendering error translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,rendering error translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,rendering error +translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md,broken liquid tags translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md,rendering error translations/pt-BR/content/pages/getting-started-with-github-pages/about-github-pages.md,broken liquid tags translations/pt-BR/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md,rendering error @@ -1025,6 +1030,7 @@ translations/pt-BR/data/reusables/dependabot/beta-security-and-version-updates.m translations/pt-BR/data/reusables/dependabot/default-dependencies-allow-ignore.md,broken liquid tags translations/pt-BR/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error translations/pt-BR/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error +translations/pt-BR/data/reusables/dependabot/supported-package-managers.md,broken liquid tags translations/pt-BR/data/reusables/desktop/get-an-account.md,broken liquid tags translations/pt-BR/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags translations/pt-BR/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags diff --git a/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md index d4f33140a6..ed6b379be2 100644 --- a/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md +++ b/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -12,6 +12,8 @@ versions: In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. +When {% data variables.actions.hosted_runner %}s are enabled for your organization, a default runner group is automatically created for you with a set of four pre-configured {% data variables.actions.hosted_runner %}s. + When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. ## Machine specs for {% data variables.actions.hosted_runner %}s diff --git a/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index b1afbd636a..e743a41842 100644 --- a/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -1,7 +1,7 @@ --- -title: Memorizar dependências para acelerar os fluxos de trabalho -shortTitle: Caching dependencies -intro: 'Para agilizar os seus fluxos de trabalho e torná-los mais eficientes, você pode criar e usar caches para dependências e outros arquivos reutilizados geralmente.' +title: Caching dependencies to speed up workflows +shortTitle: Cache dependencies +intro: 'To make your workflows faster and more efficient, you can create and use caches for dependencies and other commonly reused files.' redirect_from: - /github/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows - /actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows @@ -14,24 +14,19 @@ type: tutorial topics: - Workflows miniTocMaxHeadingLevel: 3 -ms.openlocfilehash: 558d5f186ce75d9ace6f6c6be63e2e3eaeff3230 -ms.sourcegitcommit: b0323777cfe4324a09552d0ea268d1afacc3da37 -ms.translationtype: HT -ms.contentlocale: pt-BR -ms.lasthandoff: 08/17/2022 -ms.locfileid: '147580668' --- -##
Sobre a memorização das dependências do fluxo de trabalho -As execuções do fluxo de trabalho geralmente reutilizam as mesmas saídas ou dependências baixadas de uma execução para outra. Por exemplo, as ferramentas de gerenciamento de pacotes e de dependência, como, por exemplo, Maven, Gradle, npm e Yarn mantêm uma cache local de dependências baixadas. +## About caching workflow dependencies -{% ifversion fpt or ghec %} Os trabalhos nos executores hospedados em {% data variables.product.prodname_dotcom %} começam em uma imagem do executor limpa e devem baixar as dependências todas as vezes, o que gera maior utilização da rede, maior tempo de execução e aumento dos custos. {% endif %}Para ajudar a acelerar o tempo que leva para recriar arquivos como dependências, o {% data variables.product.prodname_dotcom %} pode armazenar em cache os arquivos que você usa frequentemente nos fluxos de trabalho. +Workflow runs often reuse the same outputs or downloaded dependencies from one run to another. For example, package and dependency management tools such as Maven, Gradle, npm, and Yarn keep a local cache of downloaded dependencies. -Para armazenar em cache as dependências de um trabalho, você pode usar a [ação `cache`](https://github.com/actions/cache) do {% data variables.product.prodname_dotcom %}. A ação cria e restaura um cache identificado por uma chave exclusiva. Como alternativa, se você estiver armazenando em cache os gerenciadores de pacotes listados abaixo, o uso das respectivas ações setup-* exigirá configuração mínima e criará e restaurará caches de dependência para você. +{% ifversion fpt or ghec %} Jobs on {% data variables.product.prodname_dotcom %}-hosted runners start in a clean runner image and must download dependencies each time, causing increased network utilization, longer runtime, and increased cost. {% endif %}To help speed up the time it takes to recreate files like dependencies, {% data variables.product.prodname_dotcom %} can cache files you frequently use in workflows. -| Gerenciadores de pacotes | ação setup-* para cache | +To cache dependencies for a job, you can use {% data variables.product.prodname_dotcom %}'s [`cache` action](https://github.com/actions/cache). The action creates and restores a cache identified by a unique key. Alternatively, if you are caching the package managers listed below, using their respective setup-* actions requires minimal configuration and will create and restore dependency caches for you. + +| Package managers | setup-* action for caching | |---|---| -| npm, YARN, pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) | +| npm, Yarn, pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) | | pip, pipenv, Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) | | Gradle, Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) | | RubyGems | [setup-ruby](https://github.com/ruby/setup-ruby#caching-bundle-install-automatically) | @@ -39,40 +34,40 @@ Para armazenar em cache as dependências de um trabalho, você pode usar a [aç {% warning %} -**Aviso**: {% ifversion fpt or ghec %}Esteja atento ao seguinte ao usar o cache com o {% data variables.product.prodname_actions %}: +**Warning**: {% ifversion fpt or ghec %}Be mindful of the following when using caching with {% data variables.product.prodname_actions %}: -* {% endif %}Recomendamos que você não armazene nenhuma informação confidencial no cache. Por exemplo, as informações confidenciais podem incluir tokens de acesso ou credenciais de login armazenadas em um arquivo no caminho da cache. Além disso, os programas de CLI (interface de linha de comando) como o `docker login` podem salvar as credenciais de acesso em um arquivo de configuração. Qualquer pessoa com acesso de leitura pode criar uma solicitação de pull em um repositório e acessar o conteúdo de um cache. As bifurcações de um repositório também podem criar pull requests no branch-base e acessar as caches no branch-base. +* {% endif %}We recommend that you don't store any sensitive information in the cache. For example, sensitive information can include access tokens or login credentials stored in a file in the cache path. Also, command line interface (CLI) programs like `docker login` can save access credentials in a configuration file. Anyone with read access can create a pull request on a repository and access the contents of a cache. Forks of a repository can also create pull requests on the base branch and access caches on the base branch. {%- ifversion fpt or ghec %} -* Ao usar executores auto-hospedados, os caches de execuções de fluxo de trabalho são armazenados em armazenamento em nuvem de propriedade do {% data variables.product.company_short %}. Uma solução de armazenamento de propriedade do cliente só está disponível com {% data variables.product.prodname_ghe_server %}. +* When using self-hosted runners, caches from workflow runs are stored on {% data variables.product.company_short %}-owned cloud storage. A customer-owned storage solution is only available with {% data variables.product.prodname_ghe_server %}. {%- endif %} {% endwarning %} {% data reusables.actions.comparing-artifacts-caching %} -Para obter mais informações sobre artefatos de execução de fluxo, confira "[Como persistir dados de fluxo de trabalho usando artefatos](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)". +For more information on workflow run artifacts, see "[Persisting workflow data using artifacts](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)." -## Restrições para acessar uma cache +## Restrictions for accessing a cache -Um fluxo de trabalho pode acessar e restaurar um cache criado no branch atual, no branch base (incluindo os branches base de repositórios com fork) ou no branch padrão (geralmente, `main`). Por exemplo, um cache criado no branch-padrão pode ser acessado a partir de qualquer pull request. Além disso, se o branch `feature-b` tiver o branch base `feature-a`, um fluxo de trabalho disparado em `feature-b` terá acesso aos caches criados no branch padrão (`main`) `feature-a` e `feature-b`. +A workflow can access and restore a cache created in the current branch, the base branch (including base branches of forked repositories), or the default branch (usually `main`). For example, a cache created on the default branch would be accessible from any pull request. Also, if the branch `feature-b` has the base branch `feature-a`, a workflow triggered on `feature-b` would have access to caches created in the default branch (`main`), `feature-a`, and `feature-b`. -As restrições de acesso fornecem o isolamento da cache e a segurança ao criar um limite lógico entre os diferentes branches. Por exemplo, um cache criado para o branch `feature-a` (com o `main` base) não ficará acessível para uma solicitação de pull para o branch `feature-c` (com o `main` base). +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). -Vários fluxos de trabalho dentro de um repositório compartilham entradas de cache. Uma cache criada para um branch de um fluxo de trabalho pode ser acessada e restaurada a partir de outro fluxo de trabalho para o mesmo repositório e branch. +Multiple workflows within a repository share cache entries. A cache created for a branch within a workflow can be accessed and restored from another workflow for the same repository and branch. -## Como usar a ação `cache` +## Using the `cache` action -A [ação `cache`](https://github.com/actions/cache) tentará restaurar um cache com base na `key` que você fornecer. Quando a ação encontrar um cache, ela vai restaurar os arquivos armazenados em cache no `path` que você configurar. +The [`cache` action](https://github.com/actions/cache) will attempt to restore a cache based on the `key` you provide. When the action finds a cache, the action restores the cached files to the `path` you configure. -Se não houver uma correspondência perfeita, a ação criará automaticamente um cache se o trabalho for concluído com sucesso. O novo cache usará a `key` fornecida e conterá os arquivos especificados no `path`. +If there is no exact match, the action automatically creates a new cache if the job completes successfully. The new cache will use the `key` you provided and contains the files you specify in `path`. -Opcionalmente, você pode fornecer uma lista de `restore-keys` a serem usadas quando a `key` não corresponder a um cache existente. Uma lista de `restore-keys` é útil quando você restaura um cache de outro branch, porque as `restore-keys` podem corresponder parcialmente às chaves do cache. Para obter mais informações sobre as `restore-keys` correspondentes, confira "[Como fazer a correspondência de uma chave de cache](#matching-a-cache-key)". +You can optionally provide a list of `restore-keys` to use when the `key` doesn't match an existing cache. A list of `restore-keys` is useful when you are restoring a cache from another branch because `restore-keys` can partially match cache keys. For more information about matching `restore-keys`, see "[Matching a cache key](#matching-a-cache-key)." -### Os parâmetros de entrada da ação `cache` +### Input parameters for the `cache` action -- `key`: **Obrigatório** A chave criada ao salvar um cache, e a chave usada para pesquisar um cache. Pode ser qualquer combinação de variáveis, valores de contexto, cadeias de caracteres estáticas e funções. As chaves têm um tamanho máximo de 512 caracteres e as chaves maiores que o tamanho máximo gerarão uma falha na ação. -- `path`: **Obrigatório** Os caminhos no executor para armazenamento em cache ou restauração. - - Você pode especificar um só caminho ou adicionar vários caminhos em linhas separadas. Por exemplo: +- `key`: **Required** The key created when saving a cache and the key used to search for a cache. It can be any combination of variables, context values, static strings, and functions. Keys have a maximum length of 512 characters, and keys longer than the maximum length will cause the action to fail. +- `path`: **Required** The path(s) on the runner to cache or restore. + - You can specify a single path, or you can add multiple paths on separate lines. For example: ``` - name: Cache Gradle packages @@ -82,9 +77,9 @@ Opcionalmente, você pode fornecer uma lista de `restore-keys` a serem usadas qu ~/.gradle/caches ~/.gradle/wrapper ``` - - Você pode especificar diretórios ou arquivos únicos e os padrões glob são compatíveis. - - Você pode especificar caminhos absolutos ou caminhos relativos ao diretório do espaço de trabalho. -- `restore-keys`: **Opcional** Uma cadeia de caracteres que contém chaves de restauração alternativas, com cada chave de restauração colocada em uma nova linha. Se não houver nenhuma ocorrência da `key`no cache, essas chaves de restauração serão usadas sequencialmente na ordem fornecida para localizar e restaurar um cache. Por exemplo: + - You can specify either directories or single files, and glob patterns are supported. + - You can specify absolute paths, or paths relative to the workspace directory. +- `restore-keys`: **Optional** A string containing alternative restore keys, with each restore key placed on a new line. If no cache hit occurs for `key`, these restore keys are used sequentially in the order provided to find and restore a cache. For example: {% raw %} ```yaml @@ -95,13 +90,13 @@ Opcionalmente, você pode fornecer uma lista de `restore-keys` a serem usadas qu ``` {% endraw %} -### Parâmetros de saída para a ação `cache` +### Output parameters for the `cache` action -- `cache-hit`: um valor booliano para indicar que uma correspondência exata foi encontrada para a chave. +- `cache-hit`: A boolean value to indicate an exact match was found for the key. -### Exemplo que usa a ação `cache` +### Example using the `cache` action -Este exemplo cria um cache quando os pacotes do arquivo `package-lock.json` são alterados ou quando o sistema operacional do executor é alterado. A chave de cache usa contextos e expressões para gerar uma chave que inclui o sistema operacional do executor e um hash SHA-256 do arquivo `package-lock.json`. +This example creates a new cache when the packages in `package-lock.json` file change, or when the runner's operating system changes. The cache key uses contexts and expressions to generate a key that includes the runner's operating system and a SHA-256 hash of the `package-lock.json` file. ```yaml{:copy} name: Caching with npm @@ -141,27 +136,27 @@ jobs: run: npm test ``` -Quando a `key` corresponde a um cache existente, isso é chamado de _ocorrência no cache_ e a ação restaura os arquivos armazenados em cache no diretório `path`. +When `key` matches an existing cache, it's called a _cache hit_, and the action restores the cached files to the `path` directory. -Quando `key` não corresponde a um cache existente, isso é chamado de _perda no cache_ e um cache é criado automaticamente se o trabalho for concluído com sucesso. +When `key` doesn't match an existing cache, it's called a _cache miss_, and a new cache is automatically created if the job completes successfully. -Quando ocorre uma perda no cache, a ação também pesquisa o `restore-keys` especificado para encontrar correspondências: +When a cache miss occurs, the action also searches your specified `restore-keys` for any matches: -1. Se você fornecer `restore-keys`, a ação `cache` vai procurar sequencialmente os caches que correspondem à lista de `restore-keys`. - - Se houver uma correspondência exata, a ação vai restaurar os arquivos no cache no diretório `path`. - - Se não houver correspondências exatas, a ação pesquisará correspondências parciais das chaves de restauração. Quando uma ação encontra uma correspondência parcial, o último cache é restaurado no diretório `path`. -1. A ação `cache` é concluída e a próxima etapa é executada no trabalho. -1. Se o trabalho for concluído com sucesso, a ação criará automaticamente um cache com o conteúdo do diretório `path`. +1. If you provide `restore-keys`, the `cache` action sequentially searches for any caches that match the list of `restore-keys`. + - When there is an exact match, the action restores the files in the cache to the `path` directory. + - If there are no exact matches, the action searches for partial matches of the restore keys. When the action finds a partial match, the most recent cache is restored to the `path` directory. +1. The `cache` action completes and the next step in the job runs. +1. If the job completes successfully, the action automatically creates a new cache with the contents of the `path` directory. -Para obter uma explicação mais detalhada do processo de correspondência de cache, confira "[Correspondência de uma chave de cache](#matching-a-cache-key)". Após criar uma cache, você não poderá alterar o conteúdo de uma cache existente, mas você poderá criar uma nova cache com uma nova chave. +For a more detailed explanation of the cache matching process, see "[Matching a cache key](#matching-a-cache-key)." Once you create a cache, you cannot change the contents of an existing cache but you can create a new cache with a new key. -### Usar contextos para criar chaves da cache +### Using contexts to create cache keys -Uma chave da cache pode incluir quaisquer contextos, funções, literais e operadores suportados por {% data variables.product.prodname_actions %}. Para obter mais informações, confira "[Contextos](/actions/learn-github-actions/contexts)" e "[Expressões](/actions/learn-github-actions/expressions)". +A cache key can include any of the contexts, functions, literals, and operators supported by {% data variables.product.prodname_actions %}. For more information, see "[Contexts](/actions/learn-github-actions/contexts)" and "[Expressions](/actions/learn-github-actions/expressions)." -O uso de expressões para criar uma `key` permite que você crie automaticamente um cache quando as dependências são alteradas. +Using expressions to create a `key` allows you to automatically create a new cache when dependencies change. -Por exemplo, você pode criar uma `key` usando uma expressão que calcula o hash de um arquivo `package-lock.json` npm. Portanto, quando as dependências que compõem o arquivo `package-lock.json` são alteradas, a chave de cache é alterada e um novo cache é criado automaticamente. +For example, you can create a `key` using an expression that calculates the hash of an npm `package-lock.json` file. So, when the dependencies that make up the `package-lock.json` file change, the cache key changes and a new cache is automatically created. {% raw %} ```yaml @@ -169,17 +164,17 @@ npm-${{ hashFiles('package-lock.json') }} ``` {% endraw %} -O {% data variables.product.prodname_dotcom %} avalia a expressão `hash "package-lock.json"` para obter a `key` final. +{% data variables.product.prodname_dotcom %} evaluates the expression `hash "package-lock.json"` to derive the final `key`. ```yaml npm-d5ea0750 ``` -### Usando a saída da ação `cache` +### Using the output of the `cache` action -Você pode usar a saída da ação `cache` para fazer algo com base na ocorrência ou na perda no cache. Quando uma correspondência exata é encontrada para um cache do `key` especificado, a saída `cache-hit` é definida como `true`. +You can use the output of the `cache` action to do something based on whether a cache hit or miss occurred. When an exact match is found for a cache for the specified `key`, the `cache-hit` output is set to `true`. -No exemplo de fluxo de trabalho acima, há uma etapa que lista o estado dos módulos de nó na ocorrência de uma perda no cache: +In the example workflow above, there is a step that lists the state of the Node modules if a cache miss occurred: ```yaml - if: {% raw %}${{ steps.cache-npm.outputs.cache-hit != 'true' }}{% endraw %} @@ -188,13 +183,13 @@ No exemplo de fluxo de trabalho acima, há uma etapa que lista o estado dos mód run: npm list ``` -## Corresponder uma chave da cache +## Matching a cache key -A ação `cache` primeiro procura `key` e `restore-keys` nas ocorrências no cache, no branch que contém a execução de fluxo de trabalho. Se não houver nenhuma ocorrência no branch atual, a ação `cache` vai procurar `key` e `restore-keys` nos branches pai e upstream. +The `cache` action first searches for cache hits for `key` and `restore-keys` in the branch containing the workflow run. If there are no hits in the current branch, the `cache` action searches for `key` and `restore-keys` in the parent branch and upstream branches. -O `restore-keys` permite que você especifique uma lista de chaves de restauração alternativas a serem usadas quando houver uma perda no cache na `key`. Você pode criar múltiplas chaves de restauração ordenadas da mais específica para a menos específica. A ação `cache` procura o `restore-keys` em ordem sequencial. Quando uma chave não corresponde diretamente, a ação pesquisa as chaves prefixadas com a chave de restauração. Se houver múltiplas correspondências parciais para uma chave de restauração, a ação retornará a cache criada por último. +`restore-keys` allows you to specify a list of alternate restore keys to use when there is a cache miss on `key`. You can create multiple restore keys ordered from the most specific to least specific. The `cache` action searches the `restore-keys` in sequential order. When a key doesn't match directly, the action searches for keys prefixed with the restore key. If there are multiple partial matches for a restore key, the action returns the most recently created cache. -### Exemplo do uso de múltiplas chaves de restauração +### Example using multiple restore keys {% raw %} ```yaml @@ -205,7 +200,7 @@ restore-keys: | ``` {% endraw %} -O executor avalia as expressões, que são resolvidas para estas `restore-keys`: +The runner evaluates the expressions, which resolve to these `restore-keys`: {% raw %} ```yaml @@ -216,13 +211,13 @@ restore-keys: | ``` {% endraw %} -A chave de restauração `npm-feature-` corresponde a qualquer chave que comece com a cadeia de caracteres `npm-feature-`. Por exemplo, as chaves `npm-feature-fd3052de` e `npm-feature-a9b253ff` correspondem à chave de restauração. Será usada a cache com a data de criação mais recente. As chaves neste exemplo são pesquisadas na ordem a seguir: +The restore key `npm-feature-` matches any key that starts with the string `npm-feature-`. For example, both of the keys `npm-feature-fd3052de` and `npm-feature-a9b253ff` match the restore key. The cache with the most recent creation date would be used. The keys in this example are searched in the following order: -1. **`npm-feature-d5ea0750`** corresponde a um hash específico. -1. **`npm-feature-`** corresponde às chaves de cache precedidas com `npm-feature-`. -1. **`npm-`** corresponde a qualquer chave precedida com `npm-`. +1. **`npm-feature-d5ea0750`** matches a specific hash. +1. **`npm-feature-`** matches cache keys prefixed with `npm-feature-`. +1. **`npm-`** matches any keys prefixed with `npm-`. -#### Exemplo de prioridade de pesquisa +#### Example of search priority ```yaml key: @@ -232,30 +227,81 @@ restore-keys: | npm- ``` -Por exemplo, se uma solicitação de pull contiver um branch `feature` e for direcionada ao branch padrão (`main`), a ação vai procurar `key` e `restore-keys` na seguinte ordem: +For example, if a pull request contains a `feature` branch and targets the default branch (`main`), the action searches for `key` and `restore-keys` in the following order: -1. Chave `npm-feature-d5ea0750` no branch `feature` -1. Chave `npm-feature-` no branch `feature` -1. Chave `npm-` no branch `feature` -1. Chave `npm-feature-d5ea0750` no branch `main` -1. Chave `npm-feature-` no branch `main` -1. Chave `npm-` no branch `main` +1. Key `npm-feature-d5ea0750` in the `feature` branch +1. Key `npm-feature-` in the `feature` branch +1. Key `npm-` in the `feature` branch +1. Key `npm-feature-d5ea0750` in the `main` branch +1. Key `npm-feature-` in the `main` branch +1. Key `npm-` in the `main` branch -## Limites de uso e política de eliminação +## Usage limits and eviction policy -{% data variables.product.prodname_dotcom %} removerá todas as entradas da cache não acessadas há mais de 7 dias. Não há limite no número de caches que você pode armazenar, mas o tamanho total de todos os caches em um repositório é limitado{% ifversion actions-cache-policy-apis %}. Por padrão, o limite é de 10 GB por repositório, mas esse limite pode ser diferente dependendo das políticas definidas pelos proprietários corporativos ou administradores de repositório.{% else %} para 10 GB.{% endif %} +{% data variables.product.prodname_dotcom %} will remove any cache entries that have not been accessed in over 7 days. There is no limit on the number of caches you can store, but the total size of all caches in a repository is limited{% ifversion actions-cache-policy-apis %}. By default, the limit is 10 GB per repository, but this limit might be different depending on policies set by your enterprise owners or repository administrators.{% else %} to 10 GB.{% endif %} -{% data reusables.actions.cache-eviction-process %} +{% data reusables.actions.cache-eviction-process %} {% ifversion actions-cache-ui %}The cache eviction process may cause cache thrashing, where caches are created and deleted at a high frequency. To reduce this, you can review the caches for a repository and take corrective steps, such as removing caching from specific workflows. For more information, see "[Managing caches](#managing-caches)."{% endif %}{% ifversion actions-cache-admin-ui %} You can also increase the cache size limit for a repository. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)." + +{% elsif actions-cache-policy-apis %} + +For information on changing the policies for the repository cache size limit, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)" and "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)." -{% ifversion actions-cache-policy-apis %} Para obter informações de como alterar as políticas de limite de tamanho do cache do repositório, confira "[Como impor políticas para o {% data variables.product.prodname_actions %} na empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)" e "[Como gerenciar as configurações do {% data variables.product.prodname_actions %} em um repositório](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)". {% endif %} {% ifversion actions-cache-management %} -## Gerenciando caches +## Managing caches -Você pode usar a API REST de {% data variables.product.product_name %} para gerenciar seus caches. {% ifversion actions-cache-list-delete-apis %}Você pode usar a API para listar e excluir entradas de cache e ver o uso do cache. {% elsif actions-cache-management %}No momento, você pode usar a API para ver o uso do cache. As atualizações futuras trarão mais funcionalidades. {% endif %} Para obter mais informações, confira a documentação da API REST "[Cache do {% data variables.product.prodname_actions %}](/rest/actions/cache)". +{% ifversion actions-cache-ui %} -Você também pode instalar uma extensão do {% data variables.product.prodname_cli %} para gerenciar seus caches da linha de comando. Para obter mais informações sobre a extensão, confira [a documentação da extensão](https://github.com/actions/gh-actions-cache#readme). Para obter mais informações sobre as extensões do {% data variables.product.prodname_cli %}, confira "[Como usar as extensões da CLI do GitHub](/github-cli/github-cli/using-github-cli-extensions)." +To manage caches created from your workflows, you can: + +- View a list of all cache entries for a repository. +- Filter and sort the list of caches using specific metadata such as cache size, creation time, or last accessed time. +- Delete cache entries from a repository. +- Monitor aggregate cache usage for repositories and organizations. + +There are multiple ways to manage caches for your repositories: + +- Using the {% data variables.product.prodname_dotcom %} web interface, as shown below. +- Using the REST API. For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation. +- Installing a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information, see the [gh-actions-cache](https://github.com/actions/gh-actions-cache) extension. + +{% else %} + +You can use the {% data variables.product.product_name %} REST API to manage your caches. {% ifversion actions-cache-list-delete-apis %}You can use the API to list and delete cache entries, and see your cache usage.{% elsif actions-cache-management %}At present, you can use the API to see your cache usage, with more functionality expected in future updates.{% endif %} For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation. + +You can also install a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information about the extension, see [the extension documentation](https://github.com/actions/gh-actions-cache#readme). For more information about {% data variables.product.prodname_cli %} extensions, see "[Using GitHub CLI extensions](/github-cli/github-cli/using-github-cli-extensions)." + +{% endif %} + +{% ifversion actions-cache-ui %} + +### Viewing cache entries + +You can use the web interface to view a list of cache entries for a repository. In the cache list, you can see how much disk space each cache is using, when the cache was created, and when the cache was last used. + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.actions-tab %} +{% data reusables.repositories.actions-cache-list %} +1. Review the list of cache entries for the repository. + + * To search for cache entries used for a specific branch, click the **Branch** dropdown menu and select a branch. The cache list will display all of the caches used for the selected branch. + * To search for cache entries with a specific cache key, use the syntax `key: key-name` in the **Filter caches** field. The cache list will display caches from all branches where the key was used. + + ![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-entry-list.png) + +### Deleting cache entries + +Users with `write` access to a repository can use the {% data variables.product.prodname_dotcom %} web interface to delete cache entries. + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.actions-tab %} +{% data reusables.repositories.actions-cache-list %} +1. To the right of the cache entry you want to delete, click {% octicon "trash" aria-label="The trash icon" %}. + + ![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-delete.png) + +{% endif %} {% endif %} diff --git a/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md b/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md index be6019544b..3bca1364de 100644 --- a/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md +++ b/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md @@ -1,6 +1,6 @@ --- -title: Configuração de rede de cluster -intro: 'O funcionamento correto do clustering do {% data variables.product.prodname_ghe_server %} depende da resolução adequada de nome DNS, do balanceamento de carga e da comunicação entre os nós.' +title: Cluster network configuration +intro: '{% data variables.product.prodname_ghe_server %} clustering relies on proper DNS name resolution, load balancing, and communication between nodes to operate properly.' redirect_from: - /enterprise/admin/clustering/cluster-network-configuration - /enterprise/admin/enterprise-management/cluster-network-configuration @@ -14,112 +14,106 @@ topics: - Infrastructure - Networking shortTitle: Configure a cluster network -ms.openlocfilehash: d6e4d50077cccc3e5582be0af39bdae0046cd8c8 -ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d -ms.translationtype: HT -ms.contentlocale: pt-BR -ms.lasthandoff: 09/10/2022 -ms.locfileid: '145093989' --- -## Considerações de rede +## Network considerations -A composição de rede mais simples para o clustering é deixar os nós em uma única LAN. Se um cluster abranger sub-redes, não recomendamos configurar quaisquer regras de firewall entre as redes. A latência entre os nós deve ser inferior a 1 milissegundo. +The simplest network design for clustering is to place the nodes on a single LAN. If a cluster must span subnetworks, we do not recommend configuring any firewall rules between the networks. The latency between nodes should be less than 1 millisecond. -{% ifversion ghes %}Para alta disponibilidade, a latência entre a rede com os nós ativos e a rede com os nós passivos precisa ser inferior a 70 milissegundos. Não recomendamos configurar um firewall entre as duas redes.{% endif %} +{% data reusables.enterprise_clustering.network-latency %} -### Portas de aplicativo para usuários finais +### Application ports for end users -As portas de aplicativo fornecem aplicativos da web e acesso dos usuários finais ao Git. +Application ports provide web application and Git access for end users. -| Porta | Descrição | Criptografado | +| Port | Description | Encrypted | | :------------- | :------------- | :------------- | -| 22/TCP | Git em SSH | Sim | -| 25/TCP | SMTP | Requer STARTTLS | -| 80/TCP | HTTP | No
(Quando o SSL está habilitado, essa porta é redirecionada para HTTPS) | -| 443/TCP | HTTPS | Sim | -| 9418/TCP | Porta de protocolo simples do Git
(Desabilitada no modo privado) | No | +| 22/TCP | Git over SSH | Yes | +| 25/TCP | SMTP | Requires STARTTLS | +| 80/TCP | HTTP | No
(When SSL is enabled this port redirects to HTTPS) | +| 443/TCP | HTTPS | Yes | +| 9418/TCP | Simple Git protocol port
(Disabled in private mode) | No | -### Portas administrativas +### Administrative ports -Não é preciso haver portas administrativas para os usuários finais aproveitarem os recursos básicos do aplicativo. +Administrative ports are not required for basic application use by end users. -| Porta | Descrição | Criptografado | +| Port | Description | Encrypted | | :------------- | :------------- | :------------- | -| ICMP | Ping ICMP | No | -| 122/TCP | SSH administrativa | Sim | +| ICMP | ICMP Ping | No | +| 122/TCP | Administrative SSH | Yes | | 161/UDP | SNMP | No | -| 8080/TCP | HTTP de console de gerenciamento | No
(Quando o SSL está habilitado, essa porta é redirecionada para HTTPS) | -| 8443/TCP | HTTPS de console de gerenciamento | Sim | +| 8080/TCP | Management Console HTTP | No
(When SSL is enabled this port redirects to HTTPS) | +| 8443/TCP | Management Console HTTPS | Yes | -### Portas de comunicação de cluster +### Cluster communication ports -Se houver um firewall no nível da rede entre os nós, essas portas terão que estar acessíveis. A comunicação entre os nós não é criptografada, e essas portas não devem ficar acessíveis externamente. +If a network level firewall is in place between nodes, these ports will need to be accessible. The communication between nodes is not encrypted. These ports should not be accessible externally. -| Porta | Descrição | +| Port | Description | | :------------- | :------------- | -| 1336/TCP | API Interna | -| 3033/TCP | Acesso SVN interno | -| 3037/TCP | Acesso SVN interno | +| 1336/TCP | Internal API | +| 3033/TCP | Internal SVN access | +| 3037/TCP | Internal SVN access | | 3306/TCP | MySQL | -| 4486/TCP | Acesso do controlador | -| 5115/TCP | Back-end de armazenamento | -| 5208/TCP | Acesso SVN interno | +| 4486/TCP | Governor access | +| 5115/TCP | Storage backend | +| 5208/TCP | Internal SVN access | | 6379/TCP | Redis | | 8001/TCP | Grafana | -| 8090/TCP | Acesso GPG interno | -| 8149/TCP | Acesso GitRPC ao servidor de arquivos | +| 8090/TCP | Internal GPG access | +| 8149/TCP | GitRPC file server access | | 8300/TCP | Consul | | 8301/TCP | Consul | | 8302/TCP | Consul | | 9000/TCP | Git Daemon | -| 9102/TCP | Servidor de arquivos do Pages | -| 9105/TCP | Servidor LFS | +| 9102/TCP | Pages file server | +| 9105/TCP | LFS server | | 9200/TCP | Elasticsearch | -| 9203/TCP | Serviço de código semântico | +| 9203/TCP | Semantic code service | | 9300/TCP | Elasticsearch | | 11211/TCP | Memcache | | 161/UDP | SNMP | | 8125/UDP | Statsd | -| 8301 (UDP) | Consul | -| 8302 (UDP) | Consul | +| 8301/UDP | Consul | +| 8302/UDP | Consul | | 25827/UDP | Collectd | -## Configurar um balanceador de carga +## Configuring a load balancer - É recomendável usar um balanceador de carga baseado em TCP compatível com o protocolo PROXY para distribuir o tráfego entre os nós. Veja estas configurações de balanceador de carga: + We recommend an external TCP-based load balancer that supports the PROXY protocol to distribute traffic across nodes. Consider these load balancer configurations: - - As portas TCP (mostradas abaixo) devem ser encaminhadas para os nós que executam o serviço `web-server`. são os únicos nós que funcionam com solicitações de clientes externos. - - Sessões temporárias não devem ser habilitadas. + - TCP ports (shown below) should be forwarded to nodes running the `web-server` service. These are the only nodes that serve external client requests. + - Sticky sessions shouldn't be enabled. {% data reusables.enterprise_installation.terminating-tls %} -## Informações de conexão do cliente +## Handling client connection information -Como as conexões do cliente com o cluster vêm do balanceador de carga, pode ocorrer a perda do endereço IP do cliente. Para captar as informações de conexão do cliente de maneira adequada, é preciso fazer considerações adicionais. +Because client connections to the cluster come from the load balancer, the client IP address can be lost. To properly capture the client connection information, additional consideration is required. {% data reusables.enterprise_clustering.proxy_preference %} {% data reusables.enterprise_clustering.proxy_xff_firewall_warning %} -### Habilitar o suporte PROXY no {% data variables.product.prodname_ghe_server %} +### Enabling PROXY support on {% data variables.product.prodname_ghe_server %} -É altamente recomendável ativar o suporte PROXY para sua instância e o balanceador de carga. +We strongly recommend enabling PROXY support for both your instance and the load balancer. {% data reusables.enterprise_installation.proxy-incompatible-with-aws-nlbs %} - - Na instância, use este comando: + - For your instance, use this command: ```shell $ ghe-config 'loadbalancer.proxy-protocol' 'true' && ghe-cluster-config-apply ``` - - No balanceador de carga, siga as instruções do seu fornecedor. + - For the load balancer, use the instructions provided by your vendor. {% data reusables.enterprise_clustering.proxy_protocol_ports %} -### Habilitar o suporte X-Forwarded-For no {% data variables.product.prodname_ghe_server %} +### Enabling X-Forwarded-For support on {% data variables.product.prodname_ghe_server %} {% data reusables.enterprise_clustering.x-forwarded-for %} -Para habilitar o cabeçalho `X-Forwarded-For`, use este comando: +To enable the `X-Forwarded-For` header, use this command: ```shell $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply @@ -127,11 +121,12 @@ $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply {% data reusables.enterprise_clustering.without_proxy_protocol_ports %} -### Configurar verificações de integridade -As verificações de integridade permitem que um balanceador de carga pare de enviar tráfego para um nó que não responde em caso de falha na verificação pré-configurada do nó em questão. Em caso de falha em um nó do cluster, as verificações de integridade emparelhadas com nós redundantes fornecerão alta disponibilidade. +### Configuring Health Checks +Health checks allow a load balancer to stop sending traffic to a node that is not responding if a pre-configured check fails on that node. If a cluster node fails, health checks paired with redundant nodes provides high availability. -{% data reusables.enterprise_clustering.health_checks %} {% data reusables.enterprise_site_admin_settings.maintenance-mode-status %} +{% data reusables.enterprise_clustering.health_checks %} +{% data reusables.enterprise_site_admin_settings.maintenance-mode-status %} -## Requisitos de DNS +## DNS Requirements {% data reusables.enterprise_clustering.load_balancer_dns %} diff --git a/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md b/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md index 9ca2d24a36..a4a6b01075 100644 --- a/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md +++ b/translations/pt-BR/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md @@ -1,6 +1,6 @@ --- -title: Configurar alta disponibilidade de replicação de um cluster -intro: 'Você pode configurar uma réplica passiva de todo o seu cluster de {% data variables.product.prodname_ghe_server %} em um local diferente, permitindo que o seu cluster falhe em nós redundantes.' +title: Configuring high availability replication for a cluster +intro: 'You can configure a passive replica of your entire {% data variables.product.prodname_ghe_server %} cluster in a different location, allowing your cluster to fail over to redundant nodes.' miniTocMaxHeadingLevel: 3 redirect_from: - /enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster @@ -14,86 +14,80 @@ topics: - High availability - Infrastructure shortTitle: Configure HA replication -ms.openlocfilehash: 3663fe290fab6644c5650c3f1ff435dfae87bcf4 -ms.sourcegitcommit: fb047f9450b41b24afc43d9512a5db2a2b750a2a -ms.translationtype: HT -ms.contentlocale: pt-BR -ms.lasthandoff: 09/11/2022 -ms.locfileid: '145095956' --- -## Sobre a alta disponibilidade de replicação de clusters +## About high availability replication for clusters -Você pode configurar uma implantação de cluster de {% data variables.product.prodname_ghe_server %} para alta disponibilidade, em que um conjunto idêntico de nós passivos estejam sincronizados com os nós no seu cluster ativo. Se falhas no hardware ou software afetarem o centro de dados com o seu cluster ativo, você poderá transferir a falha manualmente para os nós da réplica e continuar processando as solicitações do usuário, minimizando o impacto da interrupção. +You can configure a cluster deployment of {% data variables.product.prodname_ghe_server %} for high availability, where an identical set of passive nodes sync with the nodes in your active cluster. If hardware or software failures affect the datacenter with your active cluster, you can manually fail over to the replica nodes and continue processing user requests, minimizing the impact of the outage. -Em modo de alta disponibilidade, cada nó ativo é sincronizado regularmente com um nó passivo correspondente. O nó passivo é executado em modo de espera e não atende a aplicativos nem processa solicitações de usuário. +In high availability mode, each active node syncs regularly with a corresponding passive node. The passive node runs in standby and does not serve applications or process user requests. -Recomendamos configurar uma alta disponibilidade como parte de um plano de recuperação de desastres abrangente para {% data variables.product.prodname_ghe_server %}. Também recomendamos realizar backups regulares. Para obter mais informações, confira "[Como configurar backups no seu dispositivo](/enterprise/admin/configuration/configuring-backups-on-your-appliance)". +We recommend configuring high availability as a part of a comprehensive disaster recovery plan for {% data variables.product.prodname_ghe_server %}. We also recommend performing regular backups. For more information, see "[Configuring backups on your appliance](/enterprise/admin/configuration/configuring-backups-on-your-appliance)." -## Pré-requisitos +## Prerequisites -### Hardware e software +### Hardware and software -Para cada nó existente no seu cluster ativo, você precisará fornecer uma segunda máquina virtual com recursos de hardware idênticos. Por exemplo, se o cluster tiver 11 nós e cada nó tiver 12 vCPUs, 96 GB de RAM e 750 GB de armazenamento anexado, você precisará fornecer 11 novas máquinas virtuais, tendo cada uma 12 vCPUs, 96 GB de RAM e 750 GB de armazenamento anexado. +For each existing node in your active cluster, you'll need to provision a second virtual machine with identical hardware resources. For example, if your cluster has 11 nodes and each node has 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage, you must provision 11 new virtual machines that each have 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage. -Em cada nova máquina virtual, instale a mesma versão do {% data variables.product.prodname_ghe_server %} que é executada nos nós do seu cluster ativo. Você não precisa fazer o upload de uma licença ou executar qualquer configuração adicional. Para obter mais informações, confira "[Como configurar uma instância do {% data variables.product.prodname_ghe_server %}](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)". +On each new virtual machine, install the same version of {% data variables.product.prodname_ghe_server %} that runs on the nodes in your active cluster. You don't need to upload a license or perform any additional configuration. For more information, see "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)." {% note %} -**Observação**: os nós que você pretende usar para a replicação de alta disponibilidade devem ser instâncias independentes do {% data variables.product.prodname_ghe_server %}. Não inicialize os nós passivos como um segundo cluster. +**Note**: The nodes that you intend to use for high availability replication should be standalone {% data variables.product.prodname_ghe_server %} instances. Don't initialize the passive nodes as a second cluster. {% endnote %} -### Rede +### Network -Você deve atribuir um endereço IP estático a cada novo nó que você fornecer e você deve configurar um balanceador de carga para aceitar conexões e direcioná-las para os nós na sua camada frontal do cluster. +You must assign a static IP address to each new node that you provision, and you must configure a load balancer to accept connections and direct them to the nodes in your cluster's front-end tier. -Não recomendamos configurar um firewall entre a rede com o seu cluster ativo e a rede com o seu cluster passivo. A latência entre a rede com os nós ativos e a rede com os nós passivos deve ser inferior a 70 milissegundos. Para obter mais informações sobre a conectividade de rede entre os nós no cluster passivo, confira "[Configuração da rede de cluster](/enterprise/admin/enterprise-management/cluster-network-configuration)". +{% data reusables.enterprise_clustering.network-latency %} For more information about network connectivity between nodes in the passive cluster, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration)." -## Criar uma alta réplica de disponibilidade para um cluster +## Creating a high availability replica for a cluster -- [Como atribuir nós ativos ao datacenter primário](#assigning-active-nodes-to-the-primary-datacenter) -- [Como adicionar nós passivos ao arquivo de configuração do cluster](#adding-passive-nodes-to-the-cluster-configuration-file) -- [Configuração de exemplo](#example-configuration) +- [Assigning active nodes to the primary datacenter](#assigning-active-nodes-to-the-primary-datacenter) +- [Adding passive nodes to the cluster configuration file](#adding-passive-nodes-to-the-cluster-configuration-file) +- [Example configuration](#example-configuration) -### Atribuindo nós ativos ao centro de dados primário +### Assigning active nodes to the primary datacenter -Antes de definir um centro de dados secundário para seus nós passivos, certifique-se de atribuir seus nós ativos para o centro de dados primário. +Before you define a secondary datacenter for your passive nodes, ensure that you assign your active nodes to the primary datacenter. {% data reusables.enterprise_clustering.ssh-to-a-node %} {% data reusables.enterprise_clustering.open-configuration-file %} -3. Observe o nome do centro de dados primário do seu cluster. A seção `[cluster]` no início do arquivo de configuração do cluster define o nome do datacenter primário usando o par chave-valor `primary-datacenter`. Por padrão, o datacenter primário do cluster é chamado `default`. +3. Note the name of your cluster's primary datacenter. The `[cluster]` section at the top of the cluster configuration file defines the primary datacenter's name, using the `primary-datacenter` key-value pair. By default, the primary datacenter for your cluster is named `default`. ```shell [cluster] - mysql-master = HOSTNAME - redis-master = HOSTNAME + mysql-master = HOSTNAME + redis-master = HOSTNAME primary-datacenter = default ``` - - Opcionalmente, altere o nome do datacenter primário para algo mais descritivo ou preciso editando o valor de `primary-datacenter`. + - Optionally, change the name of the primary datacenter to something more descriptive or accurate by editing the value of `primary-datacenter`. -4. {% data reusables.enterprise_clustering.configuration-file-heading %} Embaixo do cabeçalho de cada nó, adicione um novo par chave-valor para atribuir o nó a um centro de dados. Use o mesmo valor de `primary-datacenter` da etapa 3 acima. Por exemplo, caso você deseje usar o nome padrão (`default`), adicione o par chave-valor a seguir à seção de cada nó. +4. {% data reusables.enterprise_clustering.configuration-file-heading %} Under each node's heading, add a new key-value pair to assign the node to a datacenter. Use the same value as `primary-datacenter` from step 3 above. For example, if you want to use the default name (`default`), add the following key-value pair to the section for each node. ``` datacenter = default ``` - Ao concluir, a seção para cada nó no arquivo de configuração de cluster deve parecer-se com o exemplo a seguir. {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %} + When you're done, the section for each node in the cluster configuration file should look like the following example. {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %} ```shell - [cluster "HOSTNAME"] + [cluster "HOSTNAME"] datacenter = default - hostname = HOSTNAME - ipv4 = IP ADDRESS + hostname = HOSTNAME + ipv4 = IP-ADDRESS ... ... ``` {% note %} - **Observação**: se você alterou o nome do datacenter primário na etapa 3, localize o par chave-valor `consul-datacenter` na seção de cada nó e altere o valor para o datacenter primário renomeado. Por exemplo, se você nomeou o datacenter primário `primary`, use o par chave-valor a seguir para cada nó. + **Note**: If you changed the name of the primary datacenter in step 3, find the `consul-datacenter` key-value pair in the section for each node and change the value to the renamed primary datacenter. For example, if you named the primary datacenter `primary`, use the following key-value pair for each node. ``` consul-datacenter = primary @@ -105,123 +99,123 @@ Antes de definir um centro de dados secundário para seus nós passivos, certifi {% data reusables.enterprise_clustering.configuration-finished %} -Após {% data variables.product.prodname_ghe_server %} encaminhar você para a instrução, isso significa que você terminou de atribuir seus nós para o centro de dados primário do cluster. +After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished assigning your nodes to the cluster's primary datacenter. -### Adicionar nós passivos ao arquivo de configuração do cluster +### Adding passive nodes to the cluster configuration file -Para configurar a alta disponibilidade, você deve definir um nó passivo correspondente para cada nó ativo no seu cluster. As instruções a seguir criam uma nova configuração de cluster que define tanto nós ativos quanto passivos. Você terá a oportunidade de: +To configure high availability, you must define a corresponding passive node for every active node in your cluster. The following instructions create a new cluster configuration that defines both active and passive nodes. You will: -- Criar uma cópia do arquivo de configuração do cluster ativo. -- Editar a cópia para definir nós passivos que correspondem aos nós ativos, adicionando os endereços IP das novas máquinas virtuais que você forneceu. -- Mescle a cópia modificada da configuração do cluster de volta à sua configuração ativa. -- Aplique a nova configuração para iniciar a replicação. +- Create a copy of the active cluster configuration file. +- Edit the copy to define passive nodes that correspond to the active nodes, adding the IP addresses of the new virtual machines that you provisioned. +- Merge the modified copy of the cluster configuration back into your active configuration. +- Apply the new configuration to start replication. -Para ver um exemplo de configuração, confira "[Exemplo de configuração](#example-configuration)". +For an example configuration, see "[Example configuration](#example-configuration)." -1. Para cada nó no seu cluster, forneça uma máquina virtual correspondente com especificações idênticas, executando a mesma versão do {% data variables.product.prodname_ghe_server %}. Observe o endereço de host e endereço IPv4 para cada novo nó de cluster. Para obter mais informações, confira "[Pré-requisitos](#prerequisites)". +1. For each node in your cluster, provision a matching virtual machine with identical specifications, running the same version of {% data variables.product.prodname_ghe_server %}. Note the IPv4 address and hostname for each new cluster node. For more information, see "[Prerequisites](#prerequisites)." {% note %} - **Observação**: se você estiver reconfigurando a alta disponibilidade após um failover, use os nós antigos do datacenter primário. + **Note**: If you're reconfiguring high availability after a failover, you can use the old nodes from the primary datacenter instead. {% endnote %} {% data reusables.enterprise_clustering.ssh-to-a-node %} -3. Faça o backup da sua configuração de cluster existente. +3. Back up your existing cluster configuration. ``` cp /data/user/common/cluster.conf ~/$(date +%Y-%m-%d)-cluster.conf.backup ``` -4. Crie uma cópia do arquivo de configuração de cluster existente em um local temporário, como _/home/admin/cluster-passive.conf_. Exclua os pares chave-valor exclusivos de endereços IP (`ipv*`), os UUIDs (`uuid`) e as chaves públicas do WireGuard (`wireguard-pubkey`). +4. Create a copy of your existing cluster configuration file in a temporary location, like _/home/admin/cluster-passive.conf_. Delete unique key-value pairs for IP addresses (`ipv*`), UUIDs (`uuid`), and public keys for WireGuard (`wireguard-pubkey`). ``` grep -Ev "(?:|ipv|uuid|vpn|wireguard\-pubkey)" /data/user/common/cluster.conf > ~/cluster-passive.conf ``` -5. Remova a seção `[cluster]` do arquivo de configuração temporário do cluster que você copiou na etapa anterior. +5. Remove the `[cluster]` section from the temporary cluster configuration file that you copied in the previous step. ``` git config -f ~/cluster-passive.conf --remove-section cluster ``` -6. Defina um nome para o centro de dados secundário onde você forneceu seus nós passivos e, em seguida, atualize o arquivo de configuração temporário do cluster com o novo nome do centro de dados. Substitua `SECONDARY` pelo nome escolhido. +6. Decide on a name for the secondary datacenter where you provisioned your passive nodes, then update the temporary cluster configuration file with the new datacenter name. Replace `SECONDARY` with the name you choose. ```shell - sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf + sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf ``` -7. Defina um padrão para os nomes de host dos nós passivos. +7. Decide on a pattern for the passive nodes' hostnames. {% warning %} - **Aviso**: os nomes do host dos nós passivos precisam ser exclusivos e diferentes do nome do host do nó ativo correspondente. + **Warning**: Hostnames for passive nodes must be unique and differ from the hostname for the corresponding active node. {% endwarning %} -8. Abra o arquivo de configuração temporário do cluster da etapa 3 em um editor de texto. Por exemplo, você pode usar o Vim. +8. Open the temporary cluster configuration file from step 3 in a text editor. For example, you can use Vim. ```shell sudo vim ~/cluster-passive.conf ``` -9. Em cada seção dentro do arquivo de configuração temporária, atualize as configurações do nó. {% data reusables.enterprise_clustering.configuration-file-heading %} +9. In each section within the temporary cluster configuration file, update the node's configuration. {% data reusables.enterprise_clustering.configuration-file-heading %} - - Altere o nome do host citado no título da seção e o valor para `hostname` na seção do nome do host do nó passivo pelo padrão escolhido na etapa 7 acima. - - Adicione uma nova chave chamada `ipv4` e defina o valor como o endereço IPv4 estático do nó passivo. - - Adicione um novo par chave-valor, `replica = enabled`. + - Change the quoted hostname in the section heading and the value for `hostname` within the section to the passive node's hostname, per the pattern you chose in step 7 above. + - Add a new key named `ipv4`, and set the value to the passive node's static IPv4 address. + - Add a new key-value pair, `replica = enabled`. ```shell - [cluster "NEW PASSIVE NODE HOSTNAME"] + [cluster "NEW PASSIVE NODE HOSTNAME"] ... - hostname = NEW PASSIVE NODE HOSTNAME - ipv4 = NEW PASSIVE NODE IPV4 ADDRESS + hostname = NEW PASSIVE NODE HOSTNAME + ipv4 = NEW PASSIVE NODE IPV4 ADDRESS replica = enabled ... ... ``` -10. Adicione o conteúdo do arquivo de configuração de cluster temporário que você criou na etapa 4 ao arquivo de configuração ativo. +10. Append the contents of the temporary cluster configuration file that you created in step 4 to the active configuration file. ```shell cat ~/cluster-passive.conf >> /data/user/common/cluster.conf ``` -11. Nomeie os nós primários do MySQL e Redis no centro de dados secundário. Substitua `REPLICA MYSQL PRIMARY HOSTNAME` e `REPLICA REDIS PRIMARY HOSTNAME` pelos nomes do host do nó passivo que você provisionou para corresponder aos primários existentes do MySQL e do Redis. +11. Designate the primary MySQL and Redis nodes in the secondary datacenter. Replace `REPLICA MYSQL PRIMARY HOSTNAME` and `REPLICA REDIS PRIMARY HOSTNAME` with the hostnames of the passives node that you provisioned to match your existing MySQL and Redis primaries. ```shell - git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA MYSQL PRIMARY HOSTNAME - git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA REDIS PRIMARY HOSTNAME + git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA-MYSQL-PRIMARY-HOSTNAME + git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA-REDIS-PRIMARY-HOSTNAME ``` {% warning %} - **Aviso**: revise o arquivo de configuração do cluster antes de prosseguir. + **Warning**: Review your cluster configuration file before proceeding. - - Na seção `[cluster]` de nível superior, verifique se os valores de `mysql-master-replica` e `redis-master-replica` são os nomes do host corretos dos nós passivos no datacenter secundário servirão como os primários do MySQL e do Redis após um failover. - - Em cada seção de um nó ativo chamado [cluster "ACTIVE NODE HOSTNAME"], verifique novamente os pares chave-valor a seguir. - - `datacenter` deve corresponder ao valor de `primary-datacenter` na seção `[cluster]` de nível superior. - - `consul-datacenter` deve corresponder ao valor de `datacenter`, que deve ser o mesmo que o valor de `primary-datacenter` na seção `[cluster]` de nível superior. - - Verifique se, para cada nó ativo, a configuração tem **uma** seção correspondente para **um** nó passivo com as mesmas funções. Em cada seção para um nó passivo, verifique novamente cada par de chave-valor. - - `datacenter` deve corresponder a todos os outros nós passivos. - - `consul-datacenter` deve corresponder a todos os outros nós passivos. - - `hostname` deve corresponder ao nome do host no título da seção. - - `ipv4` deve corresponder ao endereço IPv4 estático exclusivo do nó. - - `replica` deve ser configurado como `enabled`. - - Aproveite a oportunidade para remover seções para nós off-line que não estão mais sendo usados. + - In the top-level `[cluster]` section, ensure that the values for `mysql-master-replica` and `redis-master-replica` are the correct hostnames for the passive nodes in the secondary datacenter that will serve as the MySQL and Redis primaries after a failover. + - In each section for an active node named [cluster "ACTIVE NODE HOSTNAME"], double-check the following key-value pairs. + - `datacenter` should match the value of `primary-datacenter` in the top-level `[cluster]` section. + - `consul-datacenter` should match the value of `datacenter`, which should be the same as the value for `primary-datacenter` in the top-level `[cluster]` section. + - Ensure that for each active node, the configuration has **one** corresponding section for **one** passive node with the same roles. In each section for a passive node, double-check each key-value pair. + - `datacenter` should match all other passive nodes. + - `consul-datacenter` should match all other passive nodes. + - `hostname` should match the hostname in the section heading. + - `ipv4` should match the node's unique, static IPv4 address. + - `replica` should be configured as `enabled`. + - Take the opportunity to remove sections for offline nodes that are no longer in use. - Para revisar um exemplo de configuração, confira "[Exemplo de configuração](#example-configuration)". + To review an example configuration, see "[Example configuration](#example-configuration)." {% endwarning %} -13. Inicializar a nova configuração de cluster. {% data reusables.enterprise.use-a-multiplexer %} +13. Initialize the new cluster configuration. {% data reusables.enterprise.use-a-multiplexer %} ```shell ghe-cluster-config-init ``` -14. Após a conclusão da inicialização , {% data variables.product.prodname_ghe_server %} exibirá a seguinte mensagem. +14. After the initialization finishes, {% data variables.product.prodname_ghe_server %} displays the following message. ```shell Finished cluster initialization @@ -231,33 +225,33 @@ Para ver um exemplo de configuração, confira "[Exemplo de configuração](#exa {% data reusables.enterprise_clustering.configuration-finished %} -17. Configure um balanceador de carga que aceitará conexões de usuários se você gerar uma falha para os nós passivos. Para obter mais informações, confira "[Configuração da rede de cluster](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)". +17. Configure a load balancer that will accept connections from users if you fail over to the passive nodes. For more information, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)." -Você terminou de configurar uma replicação de alta disponibilidade para os nós do seu cluster. Cada nó ativo começa a replicar a configuração e os dados para o seu nó passivo correspondente e você pode direcionar o tráfego para o balanceador de carga para o centro de dados secundário em caso de falha. Para obter mais informações sobre o failover, confira "[Como iniciar um failover para o cluster de réplica](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)". +You've finished configuring high availability replication for the nodes in your cluster. Each active node begins replicating configuration and data to its corresponding passive node, and you can direct traffic to the load balancer for the secondary datacenter in the event of a failure. For more information about failing over, see "[Initiating a failover to your replica cluster](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)." -### Configuração de exemplo +### Example configuration -A configuração de `[cluster]` de nível superior será parecida com o exemplo a seguir. +The top-level `[cluster]` configuration should look like the following example. ```shell [cluster] - mysql-master = HOSTNAME OF ACTIVE MYSQL MASTER - redis-master = HOSTNAME OF ACTIVE REDIS MASTER - primary-datacenter = PRIMARY DATACENTER NAME - mysql-master-replica = HOSTNAME OF PASSIVE MYSQL MASTER - redis-master-replica = HOSTNAME OF PASSIVE REDIS MASTER + mysql-master = HOSTNAME-OF-ACTIVE-MYSQL-MASTER + redis-master = HOSTNAME-OF-ACTIVE-REDIS-MASTER + primary-datacenter = PRIMARY-DATACENTER-NAME + mysql-master-replica = HOSTNAME-OF-PASSIVE-MYSQL-MASTER + redis-master-replica = HOSTNAME-OF-PASSIVE-REDIS-MASTER mysql-auto-failover = false ... ``` -A configuração para um nó ativo no nível de armazenamento do seu grupo deve parecer o seguinte exemplo. +The configuration for an active node in your cluster's storage tier should look like the following example. ```shell ... -[cluster "UNIQUE ACTIVE NODE HOSTNAME"] +[cluster "UNIQUE ACTIVE NODE HOSTNAME"] datacenter = default - hostname = UNIQUE ACTIVE NODE HOSTNAME - ipv4 = IPV4 ADDRESS + hostname = UNIQUE-ACTIVE-NODE-HOSTNAME + ipv4 = IPV4-ADDRESS consul-datacenter = default consul-server = true git-server = true @@ -268,26 +262,26 @@ A configuração para um nó ativo no nível de armazenamento do seu grupo deve memcache-server = true metrics-server = true storage-server = true - vpn = IPV4 ADDRESS SET AUTOMATICALLY - uuid = UUID SET AUTOMATICALLY - wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY + vpn = IPV4 ADDRESS SET AUTOMATICALLY + uuid = UUID SET AUTOMATICALLY + wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY ... ``` -A configuração para o nó passivo correspondente no nível de armazenamento deve parecer-se com o seguinte exemplo. +The configuration for the corresponding passive node in the storage tier should look like the following example. -- Diferenças importantes do nó ativo correspondente são destacadas em **negrito**. -- O {% data variables.product.prodname_ghe_server %} atribui valores para `vpn`, `uuid` e `wireguard-pubkey` automaticamente, ou seja, você não deve definir os valores para os nós passivos que serão inicializados. -- As funções do servidor, definidas pelas chaves `*-server`, correspondem ao nó ativo correspondente. +- Important differences from the corresponding active node are **bold**. +- {% data variables.product.prodname_ghe_server %} assigns values for `vpn`, `uuid`, and `wireguard-pubkey` automatically, so you shouldn't define the values for passive nodes that you will initialize. +- The server roles, defined by `*-server` keys, match the corresponding active node. ```shell ... -[cluster "UNIQUE PASSIVE NODE HOSTNAME"] +[cluster "UNIQUE PASSIVE NODE HOSTNAME"] replica = enabled - ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES - datacenter = SECONDARY DATACENTER NAME - hostname = UNIQUE PASSIVE NODE HOSTNAME - consul-datacenter = SECONDARY DATACENTER NAME + ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES + datacenter = SECONDARY DATACENTER NAME + hostname = UNIQUE PASSIVE NODE HOSTNAME + consul-datacenter = SECONDARY DATACENTER NAME consul-server = true git-server = true pages-server = true @@ -297,73 +291,73 @@ A configuração para o nó passivo correspondente no nível de armazenamento de memcache-server = true metrics-server = true storage-server = true - vpn = DO NOT DEFINE - uuid = DO NOT DEFINE - wireguard-pubkey = DO NOT DEFINE + vpn = DO NOT DEFINE + uuid = DO NOT DEFINE + wireguard-pubkey = DO NOT DEFINE ... ``` -## Monitoramento de replicação entre nós de cluster ativos e passivos +## Monitoring replication between active and passive cluster nodes -A replicação inicial entre os nós ativos e passivos do seu cluster leva tempo. A quantidade de tempo depende da quantidade de dados para a replicação e dos níveis de atividade para {% data variables.product.prodname_ghe_server %}. +Initial replication between the active and passive nodes in your cluster takes time. The amount of time depends on the amount of data to replicate and the activity levels for {% data variables.product.prodname_ghe_server %}. -Você pode monitorar o progresso em qualquer nó do cluster, usando ferramentas de linha de comando disponíveis através do shell administrativo do {% data variables.product.prodname_ghe_server %}. Para obter mais informações sobre o shell administrativo, confira "[Como acessar o shell administrativo (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)". +You can monitor the progress on any node in the cluster, using command-line tools available via the {% data variables.product.prodname_ghe_server %} administrative shell. For more information about the administrative shell, see "[Accessing the administrative shell (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)." -- Monitorar replicação dos bancos de dados: +- Monitor replication of databases: ``` /usr/local/share/enterprise/ghe-cluster-status-mysql ``` -- Monitorar replicação do repositório e dos dados do Gist: +- Monitor replication of repository and Gist data: ``` ghe-spokes status ``` -- Monitorar replicação dos anexo e dos dados de LFS: +- Monitor replication of attachment and LFS data: ``` ghe-storage replication-status ``` -- Monitorar replicação dos dados das páginas: +- Monitor replication of Pages data: ``` ghe-dpages replication-status ``` -Use `ghe-cluster-status` para analisar a integridade geral do cluster. Para obter mais informações, confira "[Utilitários de linha de comando](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)". +You can use `ghe-cluster-status` to review the overall health of your cluster. For more information, see "[Command-line utilities](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)." -## Reconfigurar a replicação de alta disponibilidade após um failover +## Reconfiguring high availability replication after a failover -Após gerar um failover dos nós ativos do cluster para os nós passivos do cluster, você pode reconfigurar a replicação de alta disponibilidade de duas maneiras. +After you fail over from the cluster's active nodes to the cluster's passive nodes, you can reconfigure high availability replication in two ways. -### Provisionamento e configuração de novos nós passivos +### Provisioning and configuring new passive nodes -Após um failover, você pode reconfigurar alta disponibilidade de duas maneiras. O método escolhido dependerá da razão pela qual você gerou o failover e do estado dos nós ativos originais. +After a failover, you can reconfigure high availability in two ways. The method you choose will depend on the reason that you failed over, and the state of the original active nodes. -1. Forneça e configure um novo conjunto de nós passivos para cada um dos novos nós ativos no seu centro de dados secundário. +1. Provision and configure a new set of passive nodes for each of the new active nodes in your secondary datacenter. -2. Use os antigos nós ativos como os novos nós passivos. +2. Use the old active nodes as the new passive nodes. -O processo de reconfiguração de alta disponibilidade é idêntico à configuração inicial de alta disponibilidade. Para obter mais informações, confira "[Como criar uma réplica de alta disponibilidade para um cluster](#creating-a-high-availability-replica-for-a-cluster)". +The process for reconfiguring high availability is identical to the initial configuration of high availability. For more information, see "[Creating a high availability replica for a cluster](#creating-a-high-availability-replica-for-a-cluster)." -## Desabilitar a replicação de alta disponibilidade para um cluster +## Disabling high availability replication for a cluster -Você pode parar a replicação nos nós passivos para a sua implantação de cluster de {% data variables.product.prodname_ghe_server %}. +You can stop replication to the passive nodes for your cluster deployment of {% data variables.product.prodname_ghe_server %}. {% data reusables.enterprise_clustering.ssh-to-a-node %} {% data reusables.enterprise_clustering.open-configuration-file %} -3. Na seção `[cluster]` de nível superior, exclua os pares chave-valor `redis-master-replica` e `mysql-master-replica`. +3. In the top-level `[cluster]` section, delete the `redis-master-replica`, and `mysql-master-replica` key-value pairs. -4. Exclua cada seção para um nó passivo. Para os nós passivos, `replica` é configurado como `enabled`. +4. Delete each section for a passive node. For passive nodes, `replica` is configured as `enabled`. {% data reusables.enterprise_clustering.apply-configuration %} {% data reusables.enterprise_clustering.configuration-finished %} -Após {% data variables.product.prodname_ghe_server %} encaminhar você para a instrução, isso significa que você terminou de desabilitar a replicação de alta disponibilidade. +After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished disabling high availability replication. diff --git a/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md b/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md index e7b6ee0a11..b3f1c3ec05 100644 --- a/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md +++ b/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md @@ -1,6 +1,6 @@ --- -title: Criar réplica de alta disponibilidade -intro: 'Em uma configuração ativa/passiva, o appliance réplica é uma cópia redundante do appliance primário. Em caso de falha no appliance primário, o modo de alta disponibilidade permitirá que a réplica atue como appliance primário, mitigando as interrupções de serviço.' +title: Creating a high availability replica +intro: 'In an active/passive configuration, the replica appliance is a redundant copy of the primary appliance. If the primary appliance fails, high availability mode allows the replica to act as the primary appliance, allowing minimal service disruption.' redirect_from: - /enterprise/admin/installation/creating-a-high-availability-replica - /enterprise/admin/enterprise-management/creating-a-high-availability-replica @@ -13,94 +13,92 @@ topics: - High availability - Infrastructure shortTitle: Create HA replica -ms.openlocfilehash: 0b838049fe0d520be8cb88382314b25c5bba2b28 -ms.sourcegitcommit: dc42bb4a4826b414751ffa9eed38962c3e3fea8e -ms.translationtype: HT -ms.contentlocale: pt-BR -ms.lasthandoff: 07/13/2022 -ms.locfileid: '146332757' --- {% data reusables.enterprise_installation.replica-limit %} -## Criar réplica de alta disponibilidade +## Creating a high availability replica -1. Configure um novo appliance do {% data variables.product.prodname_ghe_server %} na plataforma desejada. O appliance réplica deve refletir as configurações de CPU, RAM e armazenamento do appliance primário. É recomendável instalar o appliance réplica em um ambiente independente. Hardware, software e componentes de rede subjacentes devem ser isolados dos do appliance primário. Se estiver em um provedor de nuvem, use uma região ou zona separada. Para obter mais informações, confira "[Como configurar uma instância do {% data variables.product.prodname_ghe_server %}](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance)". -1. Certifique-se de que o dispositivo primário e o novo dispositivo da réplica possam se comunicar entre si por meio das portas 122/TCP e 1194/UDP. Para obter mais informações, confira "[Portas de rede](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)". -1. Em um navegador, vá até o novo endereço IP do appliance réplica e faça o upload da sua licença do {% data variables.product.prodname_enterprise %}. +1. Set up a new {% data variables.product.prodname_ghe_server %} appliance on your desired platform. The replica appliance should mirror the primary appliance's CPU, RAM, and storage settings. We recommend that you install the replica appliance in an independent environment. The underlying hardware, software, and network components should be isolated from those of the primary appliance. If you are a using a cloud provider, use a separate region or zone. For more information, see ["Setting up a {% data variables.product.prodname_ghe_server %} instance"](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance). +1. Ensure that the new appliance can communicate with all other appliances in this high availability environment over ports 122/TCP and 1194/UDP. For more information, see "[Network ports](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)." +1. In a browser, navigate to the new replica appliance's IP address and upload your {% data variables.product.prodname_enterprise %} license. {% data reusables.enterprise_installation.replica-steps %} -1. Conecte-se ao endereço IP do appliance réplica usando SSH. +1. Connect to the replica appliance's IP address using SSH. ```shell - $ ssh -p 122 admin@REPLICA IP + $ ssh -p 122 admin@REPLICA_IP ``` -{% data reusables.enterprise_installation.generate-replication-key-pair %} {% data reusables.enterprise_installation.add-ssh-key-to-primary %} -1. Para verificar a conexão com o primário e habilitar o modo de réplica para a nova réplica, execute `ghe-repl-setup` novamente. +{% data reusables.enterprise_installation.generate-replication-key-pair %} +{% data reusables.enterprise_installation.add-ssh-key-to-primary %} +1. To verify the connection to the primary and enable replica mode for the new replica, run `ghe-repl-setup` again. ```shell - $ ghe-repl-setup PRIMARY IP + $ ghe-repl-setup PRIMARY_IP ``` -{% data reusables.enterprise_installation.replication-command %} {% data reusables.enterprise_installation.verify-replication-channel %} +{% data reusables.enterprise_installation.replication-command %} +{% data reusables.enterprise_installation.verify-replication-channel %} -## Criar réplicas com replicação geográfica +## Creating geo-replication replicas -Este exemplo de configuração usa um primário e duas réplicas, localizados em três regiões geográficas diferentes. Mesmo que os três nós estejam em redes diferentes, todos os nós precisam estar acessíveis entre si. No mínimo, as portas administrativas necessárias devem ficar abertas para todos os outros nós. Para obter mais informações sobre os requisitos de porta, confira "[Portas de rede](/enterprise/admin/guides/installation/network-ports/#administrative-ports)". +This example configuration uses a primary and two replicas, which are located in three different geographic regions. While the three nodes can be in different networks, all nodes are required to be reachable from all the other nodes. At the minimum, the required administrative ports should be open to all the other nodes. For more information about the port requirements, see "[Network Ports](/enterprise/admin/guides/installation/network-ports/#administrative-ports)." -1. Crie a primeira réplica da mesma forma que você faria para uma configuração padrão de dois nós executando `ghe-repl-setup` na primeira réplica. +{% data reusables.enterprise_clustering.network-latency %}{% ifversion ghes > 3.2 %} If latency is more than 70 milliseconds, we recommend cache replica nodes instead. For more information, see "[Configuring a repository cache](/admin/enterprise-management/caching-repositories/configuring-a-repository-cache)."{% endif %} + +1. Create the first replica the same way you would for a standard two node configuration by running `ghe-repl-setup` on the first replica. ```shell - (replica1)$ ghe-repl-setup PRIMARY IP + (replica1)$ ghe-repl-setup PRIMARY_IP (replica1)$ ghe-repl-start ``` -2. Crie uma segunda réplica e use o comando `ghe-repl-setup --add`. O sinalizador `--add` impede que ele substitua a configuração de replicação existente e adiciona a nova réplica à configuração. +2. Create a second replica and use the `ghe-repl-setup --add` command. The `--add` flag prevents it from overwriting the existing replication configuration and adds the new replica to the configuration. ```shell - (replica2)$ ghe-repl-setup --add PRIMARY IP + (replica2)$ ghe-repl-setup --add PRIMARY_IP (replica2)$ ghe-repl-start ``` -3. Por padrão, as réplicas são configuradas no mesmo centro de dados e agora tentarão propagar a partir de um nó existente no mesmo centro de dados. Configure as réplicas para datacenters diferentes definindo outros valores na opção do datacenter. Você pode especificar os valores que preferir, desde que sejam diferentes uns dos outros. Execute o comando `ghe-repl-node` em cada nó e especifique o datacenter. +3. By default, replicas are configured to the same datacenter, and will now attempt to seed from an existing node in the same datacenter. Configure the replicas for different datacenters by setting a different value for the datacenter option. The specific values can be anything you would like as long as they are different from each other. Run the `ghe-repl-node` command on each node and specify the datacenter. - No primário: + On the primary: ```shell - (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME] + (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME] ``` - Na primeira réplica: + On the first replica: ```shell - (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME] + (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME] ``` - Na segunda réplica: + On the second replica: ```shell - (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME] + (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME] ``` {% tip %} - **Dica:** você pode definir as opções `--datacenter` e `--active` ao mesmo tempo. + **Tip:** You can set the `--datacenter` and `--active` options at the same time. {% endtip %} -4. Um nó de réplica ativo armazenará cópias dos dados do appliance e solicitações do usuário final do serviço. Um nó inativo armazenará cópias dos dados do appliance, mas não as solicitações do usuário final do serviço. Habilite o modo ativo usando o sinalizador `--active` ou o modo inativo usando o sinalizador `--inactive`. +4. An active replica node will store copies of the appliance data and service end user requests. An inactive node will store copies of the appliance data but will be unable to service end user requests. Enable active mode using the `--active` flag or inactive mode using the `--inactive` flag. - Na primeira réplica: + On the first replica: ```shell (replica1)$ ghe-repl-node --active ``` - Na segunda réplica: + On the second replica: ```shell (replica2)$ ghe-repl-node --active ``` -5. Para aplicar a configuração, use o comando `ghe-config-apply` no primário. +5. To apply the configuration, use the `ghe-config-apply` command on the primary. ```shell (primary)$ ghe-config-apply ``` -## Configurar DNS de localização geográfica +## Configuring DNS for geo-replication -Configure o Geo DNS usando os endereços IP dos nós primário e das réplicas. Crie também um DNS CNAME para o nó primário (por exemplo, `primary.github.example.com`) para acessar o nó primário por meio do SSH ou para fazer backup por meio de `backup-utils`. +Configure Geo DNS using the IP addresses of the primary and replica nodes. You can also create a DNS CNAME for the primary node (e.g. `primary.github.example.com`) to access the primary node via SSH or to back it up via `backup-utils`. -Para teste, você pode adicionar entradas ao arquivo `hosts` da estação de trabalho local (por exemplo, `/etc/hosts`). Esses exemplos de entradas resolverão as solicitações de `HOSTNAME` para `replica2`. É possível segmentar hosts específicos comentando linhas diferentes. +For testing, you can add entries to the local workstation's `hosts` file (for example, `/etc/hosts`). These example entries will resolve requests for `HOSTNAME` to `replica2`. You can target specific hosts by commenting out different lines. ``` -# HOSTNAME -# HOSTNAME - HOSTNAME +# HOSTNAME +# HOSTNAME + HOSTNAME ``` -## Leitura adicional +## Further reading -- "[Sobre a configuração de alta disponibilidade](/enterprise/admin/guides/installation/about-high-availability-configuration)" -- "[Utilitários para o gerenciamento de replicações](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)" -- "[Sobre a replicação geográfica](/enterprise/admin/guides/installation/about-geo-replication/)" +- "[About high availability configuration](/enterprise/admin/guides/installation/about-high-availability-configuration)" +- "[Utilities for replication management](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)" +- "[About geo-replication](/enterprise/admin/guides/installation/about-geo-replication/)" diff --git a/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md b/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md index 2eaaa11272..138d9b40d8 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md @@ -36,7 +36,9 @@ When you use external authentication, {% data variables.location.product_locatio If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" and "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)." -{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique. +{% data variables.product.prodname_dotcom %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP, then adding an underscore and short code. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username problems by making a change in your IdP so that the normalized usernames will be unique and within the 39-character limit. + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} {% elsif ghae %} @@ -62,7 +64,7 @@ These rules may result in your IdP providing the same _IDP-USERNAME_ for multipl - `bob@fabrikam.com` - `bob#EXT#fabrikamcom@contoso.com` -This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username conflicts](#resolving-username-conflicts)." +This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username problems](#resolving-username-problems)." {% endif %} Usernames{% ifversion ghec %}, including underscore and short code,{% endif %} must not exceed 39 characters. @@ -83,7 +85,7 @@ When you configure SAML authentication, {% data variables.product.product_name % 1. Usernames created from email addresses are created from the normalized characters that precede the `@` character. -1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username conflicts](#resolving-username-conflicts)."{% endif %} +1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username problems](#resolving-username-problems)."{% endif %} ### Examples of username normalization @@ -121,11 +123,16 @@ When you configure SAML authentication, {% data variables.product.product_name % {% endif %} {% ifversion ghec %} -## Resolving username conflicts +## Resolving username problems -When a new user is being provisioned, if the user's normalized username conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. +When a new user is being provisioned, if the username is longer than 39 characters (including underscore and short code), or conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. -To resolve this problem, you must make a change in your IdP so that the normalized usernames will be unique. If you cannot change the identifier that's being normalized, you can change the attribute mapping for the `userName` attribute. If you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. +To resolve this problem, you must make one of the following changes in your IdP so that all normalized usernames will be within the character limit and unique. +- Change the `userName` attribute value for individual users that are causing problems +- Change the `userName` attribute mapping for all users +- Configure a custom `userName` attribute for all users + +When you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. {% note %} @@ -133,9 +140,9 @@ To resolve this problem, you must make a change in your IdP so that the normaliz {% endnote %} -### Resolving username conflicts with Azure AD +### Resolving username problems with Azure AD -To resolve username conflicts in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. +To resolve username problems in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. 1. In Azure AD, open the {% data variables.product.prodname_emu_idp_application %} application. 1. In the left sidebar, click **Provisioning**. @@ -146,9 +153,9 @@ To resolve username conflicts in Azure AD, either modify the User Principal Name - To map an existing attribute in Azure AD to the `userName` attribute in {% data variables.product.prodname_dotcom %}, click your desired attribute field. Then, save and wait for a provisioning cycle to occur within about 40 minutes. - To use an expression instead of an existing attribute, change the Mapping type to "Expression", then add a custom expression that will make this value unique for all users. For example, you could use `[FIRST NAME]-[LAST NAME]-[EMPLOYEE ID]`. For more information, see [Reference for writing expressions for attribute mappings in Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/app-provisioning/functions-for-customizing-application-data) in Microsoft Docs. -### Resolving username conflicts with Okta +### Resolving username problems with Okta -To resolve username conflicts in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. +To resolve username problems in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. 1. In Okta, open the {% data variables.product.prodname_emu_idp_application %} application. 1. Click **Sign On**. diff --git a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 90a11171f2..a448aa318d 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -136,7 +136,9 @@ By default, when an unauthenticated user attempts to access an enterprise that u {% data variables.product.product_name %} automatically creates a username for each person by normalizing an identifier provided by your IdP. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)." -A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." +A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username problems](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-problems)." + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} The profile name and email address of a {% data variables.enterprise.prodname_managed_user %} is also provided by the IdP. {% data variables.enterprise.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. diff --git a/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md b/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md index 82c8463b34..30948b0de1 100644 --- a/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md +++ b/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md @@ -168,9 +168,19 @@ By default, when you create a new enterprise, workflows are not allowed to creat {% data reusables.actions.cache-default-size %} {% data reusables.actions.cache-eviction-process %} -However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow repository administrators to configure a total cache size up to 15 GB if necessary. +However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow {% ifversion actions-cache-admin-ui %}organization owners and{% endif %} repository administrators to configure a total cache size up to 15 GB if necessary. -People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise policy setting. +{% ifversion actions-cache-admin-ui %}Organization owners can set a lower total cache size that applies to each repository in their organization. {% endif %}People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise {% ifversion actions-cache-admin-ui %}or organization{% endif %} policy setting. + +{% ifversion actions-cache-admin-ui %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +1. In the "Artifact, cache and log settings" section, under **Maximum cache size limit**, enter a value, then click **Save** to apply the setting. +1. In the "Artifact, cache and log settings" section, under **Default cache size limit**, enter a value, then click **Save** to apply the setting. + +{% else %} The policy settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API: @@ -180,3 +190,5 @@ The policy settings for {% data variables.product.prodname_actions %} cache stor {% data reusables.actions.cache-no-org-policy %} {% endif %} + +{% endif %} diff --git a/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md b/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md index e6c655b322..e95ef98441 100644 --- a/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md +++ b/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md @@ -125,7 +125,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav * Open your `~/.ssh/config` file, then modify the file to contain the following lines. If your SSH key file has a different name or path than the example code, modify the filename or path to match your current setup. ``` - Host * + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_{% ifversion ghae %}ecdsa{% else %}ed25519{% endif %} @@ -137,10 +137,10 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav - If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line. - - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *` section. + - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}` section. ``` - Host * + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} IgnoreUnknown UseKeychain ``` {% endnote %} diff --git a/translations/pt-BR/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md b/translations/pt-BR/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md index 7dae72fd34..877fedd33b 100644 --- a/translations/pt-BR/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md +++ b/translations/pt-BR/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md @@ -35,8 +35,6 @@ When you create a {% data variables.product.pat_generic %}, we recommend that yo If a valid OAuth token, {% data variables.product.prodname_github_app %} token, or {% data variables.product.pat_generic %} is pushed to a public repository or public gist, the token will be automatically revoked. -OAuth tokens and personal {% data variables.product.pat_v1_plural %} pushed to public repositories and public gists will only be revoked if the token has scopes.{% ifversion pat-v2 %} {% data variables.product.pat_v2_caps %}s will always be revoked.{% endif %} - {% endif %} {% ifversion fpt or ghec %} diff --git a/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 189fa330a7..322dadf5f3 100644 --- a/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -860,7 +860,7 @@ registries: The `npm-registry` type supports username and password, or token. -When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. +When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. {% raw %} ```yaml @@ -882,6 +882,8 @@ registries: token: ${{secrets.MY_GITHUB_PERSONAL_TOKEN}} ``` {% endraw %} +{% ifversion dependabot-yarn-v3-update %} +For security reasons, {% data variables.product.prodname_dependabot %} does not set environment variables. Yarn (v2 and later) requires that any accessed environment variables are set. When accessing environment variables in your `.yarnrc.yml` file, you should provide a fallback value such as {% raw %}`${ENV_VAR-fallback}`{% endraw %} or {% raw %}`${ENV_VAR:-fallback}`{% endraw %}. For more information, see [Yarnrc files](https://yarnpkg.com/configuration/yarnrc) in the Yarn documentation.{% endif %} ### `nuget-feed` diff --git a/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index 155c455d38..e7ef382b5d 100644 --- a/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -1,6 +1,6 @@ --- title: Protecting pushes with secret scanning -intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your organization or repository by enabling push protection.' +intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository by enabling push protection.' product: '{% data reusables.gated-features.secret-scanning %}' miniTocMaxHeadingLevel: 3 versions: @@ -34,10 +34,18 @@ For information on the secrets and service providers supported for push protecti ## Enabling {% data variables.product.prodname_secret_scanning %} as a push protection -For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the organization or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)." +For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see {% ifversion secret-scanning-enterprise-level %}"[Managing security and analysis settings for your enterprise](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise),"{% endif %} "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)." Organization owners, security managers, and repository administrators can enable push protection for {% data variables.product.prodname_secret_scanning %} via the UI and API. For more information, see "[Repositories](/rest/reference/repos#update-a-repository)" and expand the "Properties of the `security_and_analysis` object" section in the REST API documentation. +{% ifversion secret-scanning-enterprise-level %} +### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for your enterprise +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +1. In the left sidebar, click **Code security and analysis**. +{% data reusables.advanced-security.secret-scanning-push-protection-enterprise %} +{% endif %} + ### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for an organization {% data reusables.organizations.navigate-to-org %} @@ -64,8 +72,6 @@ Up to five detected secrets will be displayed at a time on the command line. If Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain organization-specific resources and advice, such as directions on using a recommended secrets vault or who to contact for questions relating to the blocked secret. -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - ![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) {% else %} @@ -104,9 +110,6 @@ If {% data variables.product.prodname_dotcom %} blocks a secret that you believe {% ifversion push-protection-custom-link-orgs %} Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain resources and advice specific to your organization. For example, the custom link can point to a README file with information about the organization's secret vault, which teams and individuals to escalate questions to, or the organization's approved policy for working with secrets and rewriting commit history. - -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - {% endif %} You can remove the secret from the file using the web UI. Once you remove the secret, the banner at the top of the page will change and tell you that you can now commit your changes. diff --git a/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index e6ece077b1..5a7987c33c 100644 --- a/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -30,9 +30,6 @@ If {% data variables.product.prodname_dotcom %} blocks a secret that you believe {% ifversion push-protection-custom-link-orgs %} Organization admins can provide a custom link that will be included in the message from {% data variables.product.product_name %} when your push is blocked. This custom link can contain resources and advice specific to your organization and its policies. - -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - {% endif %} ## Resolving a blocked push on the command line diff --git a/translations/pt-BR/content/codespaces/customizing-your-codespace/index.md b/translations/pt-BR/content/codespaces/customizing-your-codespace/index.md index 2616c53921..f207764db8 100644 --- a/translations/pt-BR/content/codespaces/customizing-your-codespace/index.md +++ b/translations/pt-BR/content/codespaces/customizing-your-codespace/index.md @@ -11,6 +11,7 @@ topics: - Codespaces children: - /personalizing-github-codespaces-for-your-account + - /renaming-a-codespace - /changing-the-machine-type-for-your-codespace - /setting-your-default-editor-for-github-codespaces - /setting-your-default-region-for-github-codespaces diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md index d3ec7e7ef3..16b6cd571d 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md @@ -59,6 +59,8 @@ In the example `postCreate.sh` file below, the contents of the `config` director ln -sf $PWD/.devcontainer/config $HOME/config && set +x ``` +For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)." + ## Stopping a codespace {% data reusables.codespaces.stopping-a-codespace %} For more information, see "[Stopping and starting a codespace](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)." diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md index 89acc97c82..cbea16fc4a 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md @@ -16,7 +16,6 @@ children: - /using-source-control-in-your-codespace - /using-github-codespaces-for-pull-requests - /stopping-and-starting-a-codespace - - /renaming-a-codespace - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md deleted file mode 100644 index e27f565ffc..0000000000 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Renaming a codespace -intro: You can use the {% data variables.product.prodname_cli %} to change the codespace display name to one of your choice. -product: '{% data reusables.gated-features.codespaces %}' -versions: - fpt: '*' - ghec: '*' -type: how_to -topics: - - Codespaces - - Fundamentals - - Developer -shortTitle: Rename a codespace ---- - -## About renaming a codespace - -Each codespace is assigned an auto-generated display name. If you have multiple codespaces, the display name helps you to differentiate between codespaces. For example: `literate space parakeet`. You can change the display name for your codespace. - -To find the display name of a codespace: - -- On {% data variables.product.product_name %}, view your list of codespaces at https://github.com/codespaces. - - ![Screenshot of the list of codespaces in GitHub](/assets/images/help/codespaces/codespaces-list-display-name.png) - -- In the {% data variables.product.prodname_vscode %} desktop application, or the {% data variables.product.prodname_vscode_shortname %} web client, click the Remote Explorer. The display name is shown below the repository name. For example: `symmetrical space telegram` in the screenshot below. - - ![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) - -{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} -- In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. - -### Permanent codespace names - -In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. For example: `octocat-myrepo-gmc7`. You can't change this name. - -To find the permanent name of a codespace: - -* On {% data variables.product.product_name %}, the permanent name is shown in a pop-up when you hover over the **Open in browser** option on https://github.com/codespaces. - - ![Screenshot of the codespace name shown on hover over](/assets/images/help/codespaces/find-codespace-name-github.png) - -* In a codespace, use this command in the terminal: `echo $CODESPACE_NAME`. -* In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. - -## Renaming a codespace - -Changing the display name of a codespace can be useful if you have multiple codespaces that you will be using for an extended period. An appropriate name helps you identify a codespace that you use for a particular purpose. You can change the display name for your codespace by using the {% data variables.product.prodname_cli %}. - -To rename a codespace, use the `gh codespace edit` subcommand: - -```shell -gh codespace edit -c PERMANENT-NAME-OF-CODESPACE -d NEW-DISPLAY-NAME -``` - -In this example, replace `permanent name of the codespace` with the permanent name of the codespace. Replace `new display name` with the desired display name. \ No newline at end of file diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md index 14283811fc..bd2907401d 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces @@ -24,6 +25,7 @@ You can work with {% data variables.product.prodname_github_codespaces %} in the - [Create a new codespace](#create-a-new-codespace) - [Stop a codespace](#stop-a-codespace) - [Delete a codespace](#delete-a-codespace) + - [Rename a codespace](#rename-a-codespace) - [SSH into a codespace](#ssh-into-a-codespace) - [Open a codespace in {% data variables.product.prodname_vscode %}](#open-a-codespace-in--data-variablesproductprodname_vscode-) - [Open a codespace in JupyterLab](#open-a-codespace-in-jupyterlab) @@ -74,6 +76,8 @@ gh codespace list The list includes the unique name of each codespace, which you can use in other `gh codespace` commands. +An asterisk at the end of the branch name for a codespace indicates that there are uncommitted or unpushed changes in that codespace. + ### Create a new codespace ```shell @@ -98,6 +102,14 @@ gh codespace delete -c CODESPACE-NAME For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)." +### Rename a codespace + +```shell +gh codespace edit -c CODESPACE-NAME -d DISPLAY-NAME +``` + +For more information, see "[Renaming a codespace](/codespaces/customizing-your-codespace/renaming-a-codespace)." + ### SSH into a codespace To run commands on the remote codespace machine, from your terminal, you can SSH into the codespace. @@ -215,4 +227,4 @@ You can use the {% data variables.product.prodname_cli %} extension to create a gh codespace edit -m machine-type-name ``` -For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." \ No newline at end of file +For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." diff --git a/translations/pt-BR/content/codespaces/getting-started/deep-dive.md b/translations/pt-BR/content/codespaces/getting-started/deep-dive.md index c6a2e16f8a..4c12712121 100644 --- a/translations/pt-BR/content/codespaces/getting-started/deep-dive.md +++ b/translations/pt-BR/content/codespaces/getting-started/deep-dive.md @@ -35,7 +35,7 @@ When you create a codespace, a [shallow clone](https://github.blog/2020-12-21-ge ### Step 2: Container is created -{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't [configure a container](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project), {% data variables.product.prodname_github_codespaces %} uses a [default image](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project#using-the-default-configuration), which has many languages and runtimes available. For information on what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. +{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't specify a custom Docker image in your configuration, {% data variables.product.prodname_codespaces %} uses a default image, which has many languages and runtimes available. For information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)." For details of what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. {% note %} diff --git a/translations/pt-BR/content/codespaces/getting-started/quickstart.md b/translations/pt-BR/content/codespaces/getting-started/quickstart.md index 213fec6823..ec2abfcbed 100644 --- a/translations/pt-BR/content/codespaces/getting-started/quickstart.md +++ b/translations/pt-BR/content/codespaces/getting-started/quickstart.md @@ -92,11 +92,10 @@ Within a codespace, you have access to the {% data variables.product.prodname_vs 1. In the left sidebar, click the Extensions icon. -1. In the search bar, enter `fairyfloss` and install the fairyfloss extension. +1. In the search bar, type `fairyfloss` and click **Install**. ![Add an extension](/assets/images/help/codespaces/add-extension.png) -1. Click **Install in Codespaces**. 1. Select the `fairyfloss` theme by selecting it from the list. ![Select the fairyfloss theme](/assets/images/help/codespaces/fairyfloss.png) diff --git a/translations/pt-BR/content/codespaces/guides.md b/translations/pt-BR/content/codespaces/guides.md index 8d4a08dfa8..71bf48a31e 100644 --- a/translations/pt-BR/content/codespaces/guides.md +++ b/translations/pt-BR/content/codespaces/guides.md @@ -44,7 +44,8 @@ includeGuides: - /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization - /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types - - /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period + - /codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md + - /codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period - /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports - /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/index.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/index.md index 70286203b8..2e6b37c44b 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/index.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/index.md @@ -16,6 +16,7 @@ children: - /managing-repository-access-for-your-organizations-codespaces - /reviewing-your-organizations-audit-logs-for-github-codespaces - /restricting-access-to-machine-types + - /restricting-the-base-image-for-codespaces - /restricting-the-visibility-of-forwarded-ports - /restricting-the-idle-timeout-period - /restricting-the-retention-period-for-codespaces diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 33f95043ad..7e52316c87 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -14,7 +14,9 @@ topics: ## Overview -Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." +Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." + +If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. The compute cost for a codespace is proportional to the number of processor cores in the machine type you choose. For example, the compute cost of using a codespace for an hour on a 16-core machine is eight times greater than a 2-core machine. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." As an organization owner, you may want to configure constraints on the types of machine that are available. For example, if the work in your organization doesn't require significant compute power or storage space, you can remove the highly resourced machines from the list of options that people can choose from. You do this by defining one or more policies in the {% data variables.product.prodname_github_codespaces %} settings for your organization. @@ -52,21 +54,29 @@ If you add an organization-wide policy, you should set it to the largest choice {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Machine types**. - ![Add a constraint for machine types](/assets/images/help/codespaces/add-constraint-dropdown.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint, then clear the selection of any machine types that you don't want to be available. - ![Edit the machine type constraint](/assets/images/help/codespaces/edit-machine-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-machine-constraint.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The machine type constraint is also applied to existing codespaces when someone attempts to restart a stopped codespace or reconnect to an active codespace. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Machine types" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -74,7 +84,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) ## Further reading diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index 685dfd1db2..db81c6347d 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -49,21 +49,25 @@ If you add an organization-wide policy with a timeout constraint, you should set {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Maximum idle timeout**. - ![Add a constraint for idle timeout](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**. - ![Set the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) + ![Screenshot of setting the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created, and to existing codespaces the next time they are started. +The policy will be applied to all new codespaces that are billable to your organization. The timeout constraint is also applied to existing codespaces the next time they are started. ## Editing a policy @@ -71,6 +75,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Maximum idle timeout" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -78,4 +83,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index a940a80a50..f49dd49a4a 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -35,15 +35,15 @@ If you add an organization-wide policy with a retention constraint, you should s {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Retention period**. - ![Add a constraint for retention periods](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of days codespaces can remain stopped before they are automatically deleted, then click **Save**. - ![Set the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) + ![Screenshot of setting the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) {% note %} @@ -55,10 +55,14 @@ If you add an organization-wide policy with a retention constraint, you should s {% endnote %} {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created. +The policy will be applied to all new codespaces that are billable to your organization. The retention period constraint is only applied on codespace creation. ## Editing a policy @@ -68,6 +72,7 @@ The retention period constraint is only applied to codespaces when they are crea 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Retention period" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -77,4 +82,4 @@ You can delete a policy at any time. Deleting a policy has no effect on existing 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 852eb3b8ba..74c626756f 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -45,25 +45,33 @@ If you add an organization-wide policy, you should set it to the most lenient vi {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Port visibility**. - ![Add a constraint for port visibility](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the port visibility constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) 1. Clear the selection of the port visibility options (**Org** or **Public**) that you don't want to be available. - ![Choose the port visibility options](/assets/images/help/codespaces/choose-port-visibility-options.png) + ![Screenshot of clearing a port visibility option](/assets/images/help/codespaces/choose-port-visibility-options.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The port visibility constraint is also applied to existing codespaces the next time they are started. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Port visibility" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -71,4 +79,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/pt-BR/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md b/translations/pt-BR/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md index 253b3ea97e..07be49175c 100644 --- a/translations/pt-BR/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md +++ b/translations/pt-BR/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md @@ -93,10 +93,10 @@ You can use secrets in a codespace after the codespace is built and is running. * When launching an application from the integrated terminal or ssh session. * Within a dev container lifecycle script that is run after the codespace is running. For more information about dev container lifecycle scripts, see the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#lifecycle-scripts). -Codespace secrets cannot be used during: +Codespace secrets cannot be used: -* Codespace build time (that is, within a Dockerfile or custom entry point). -* Within a dev container feature. For more information, see the `features` attribute in the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#general-properties). +* During codespace build time (that is, within a Dockerfile or custom entry point). +* Within a dev container feature. For more information, see the `features` property in the [dev containers specification](https://containers.dev/implementors/json_reference/#general-properties) on containers.dev. ## Further reading diff --git a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 03f5eefc01..7e4d85e0b7 100644 --- a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -65,7 +65,7 @@ The Dockerfile for a dev container is typically located in the `.devcontainer` f {% note %} -**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." +**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. The image you specify here must be allowed by any organization image policy that has been set. For more information, see "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)." If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." {% endnote %} diff --git a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md index 68db9a04e5..1d0c70d64c 100644 --- a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md +++ b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md @@ -104,14 +104,12 @@ The newly added `devcontainer.json` file defines a few properties that are descr // "ASPNETCORE_Kestrel__Certificates__Default__Path": "/home/vscode/.aspnet/https/aspnetapp.pfx", // }, // - // 3. Do one of the following depending on your scenario: - // * When using GitHub Codespaces and/or Remote - Containers: - // 1. Start the container - // 2. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer - // 3. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https" + // 3. Start the container. + // + // 4. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer. + // + // 5. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https". // - // * If only using Remote - Containers with a local container, uncomment this line instead: - // "mounts": [ "source=${env:HOME}${env:USERPROFILE}/.aspnet/https,target=/home/vscode/.aspnet/https,type=bind" ], // Use 'postCreateCommand' to run commands after the container is created. // "postCreateCommand": "dotnet restore", diff --git a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md index 42811fded0..c5f6b582f0 100644 --- a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md +++ b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md @@ -32,7 +32,7 @@ This guide shows you how to set up your Java project in {% data variables.produc If you don’t see this option, {% data variables.product.prodname_github_codespaces %} isn't available for your project. See [Access to {% data variables.product.prodname_github_codespaces %}](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces) for more information. -When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a common set of tools like git, wget, rsync, openssh, and nano. +When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a set of commonly used tools such as git, wget, rsync, openssh, and nano. {% data reusables.codespaces.customize-vcpus-and-ram %} diff --git a/translations/pt-BR/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md b/translations/pt-BR/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md index e370ae0345..fa245c2915 100644 --- a/translations/pt-BR/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md +++ b/translations/pt-BR/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md @@ -154,3 +154,37 @@ By default, when you create a new organization, workflows are not allowed to {% 1. Click **Save** to apply the settings. {% endif %} + +{% ifversion actions-cache-org-ui %} + +## Managing {% data variables.product.prodname_actions %} cache storage for your organization + +Organization administrators can view {% ifversion actions-cache-admin-ui %}and manage {% endif %}{% data variables.product.prodname_actions %} cache storage for all repositories in the organization. + +### Viewing {% data variables.product.prodname_actions %} cache storage by repository + +For each repository in your organization, you can see how much cache storage a repository is using, the number of active caches, and if a repository is near the total cache size limit. For more information about the cache usage and eviction process, see "[Caching dependencies to speed up workflows](/actions/using-workflows/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy)." + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +1. In the left sidebar, click {% octicon "play" aria-label="The {% data variables.product.prodname_actions %} icon" %} **Actions**, then click **Caches**. +1. Review the list of repositories for information about their {% data variables.product.prodname_actions %} caches. You can click on a repository name to see more detail about the repository's caches. + +{% ifversion actions-cache-admin-ui %} + +### Configuring {% data variables.product.prodname_actions %} cache storage for your organization + +{% data reusables.actions.cache-default-size %} + +You can configure the size limit for {% data variables.product.prodname_actions %} caches that will apply to each repository in your organization. The cache size limit for an organization cannot exceed the cache size limit set in the enterprise policy. Repository admins will be able to set a smaller limit in their repositories. + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-general %} +{% data reusables.actions.change-cache-size-limit %} + +{% endif %} + +{% endif %} diff --git a/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index a81d8d7785..264d7bd5dc 100644 --- a/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -1,6 +1,6 @@ --- -title: Sobre domínios personalizados e GitHub Pages -intro: 'O {% data variables.product.prodname_pages %} permite o uso de domínios personalizados, ou a alteração da raiz do URL do seu site do padrão, como `octocat.github.io`, para qualquer domínio que você possua.' +title: About custom domains and GitHub Pages +intro: '{% data variables.product.prodname_pages %} supports using custom domains, or changing the root of your site''s URL from the default, like `octocat.github.io`, to any domain you own.' redirect_from: - /articles/about-custom-domains-for-github-pages-sites - /articles/about-supported-custom-domains @@ -14,62 +14,58 @@ versions: topics: - Pages shortTitle: Custom domains in GitHub Pages -ms.openlocfilehash: a2c5ae3df0e2dd6248db6e03fd7c64e973b14f3d -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: pt-BR -ms.lasthandoff: 09/05/2022 -ms.locfileid: '145128237' --- -## Domínios personalizados compatíveis -O {% data variables.product.prodname_pages %} trabalha com dois tipos de domínio: subdomínios e domínios apex. Para ver uma lista dos domínios personalizados sem suporte, confira "[Solução de problemas de domínios personalizados e do {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)". +## Supported custom domains -| Tipo de domínio personalizado compatível | Exemplo | +{% data variables.product.prodname_pages %} works with two types of domains: subdomains and apex domains. For a list of unsupported custom domains, see "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)." + +| Supported custom domain type | Example | |---|---| -| Subdomínio `www` | `www.example.com` | -| Subdomínio personalizado | `blog.example.com` | -| Domínio Apex | `example.com` | +| `www` subdomain | `www.example.com` | +| Custom subdomain | `blog.example.com` | +| Apex domain | `example.com` | -Você pode definir configurações de apex e de subdomínio `www` para seu site. Para obter mais informações sobre os domínios apex, confira "[Como usar um domínio apex para seu site do {% data variables.product.prodname_pages %}](#using-an-apex-domain-for-your-github-pages-site)". +You can set up either or both of apex and `www` subdomain configurations for your site. For more information on apex domains, see "[Using an apex domain for your {% data variables.product.prodname_pages %} site](#using-an-apex-domain-for-your-github-pages-site)." -Recomendamos sempre usar um subdomínio `www`, mesmo que você também use um domínio apex. Quando você cria um site com um domínio apex, tentamos proteger automaticamente o subdomínio `www` para uso ao fornecer o conteúdo do seu site, mas você precisa fazer as alterações de DNS para usar o subdomínio `www`. Se você configurar um subdomínio `www`, tentaremos proteger automaticamente o domínio apex associado. Para obter mais informações, confira "[Como gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/articles/managing-a-custom-domain-for-your-github-pages-site)". +We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." -Depois de configurar um domínio personalizado para um site de usuário ou de organização, o domínio personalizado substituirá a parte `.github.io` ou `.github.io` da URL para os sites de projeto pertencentes à conta que não tenham um domínio personalizado configurado. Por exemplo, se o domínio personalizado para seu site de usuário for `www.octocat.com` e você tiver um site de projeto sem domínio personalizado configurado que seja publicado em um repositório chamado `octo-project`, o site do {% data variables.product.prodname_pages %} para esse repositório estará disponível em `www.octocat.com/octo-project`. +After you configure a custom domain for a user or organization site, the custom domain will replace the `.github.io` or `.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`. +For more information about each type of site and handling custom domains, see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." -## Usar um subdomínio para seu site do {% data variables.product.prodname_pages %} +## Using a subdomain for your {% data variables.product.prodname_pages %} site -Um subdomínio é a parte de um URL antes do domínio raiz. Você pode configurar seu subdomínio como `www` ou como uma seção distinta do seu site, como `blog.example.com`. +A subdomain is the part of a URL before the root domain. You can configure your subdomain as `www` or as a distinct section of your site, like `blog.example.com`. -Os subdomínios são configurados com um registro `CNAME` por meio do provedor DNS. Para obter mais informações, confira "[Como gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)". +Subdomains are configured with a `CNAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)." -### Subdomínios `www` +### `www` subdomains -Um subdomínio `www` é o tipo de subdomínio mais usado. Por exemplo, `www.example.com` inclui um subdomínio `www`. +A `www` subdomain is the most commonly used type of subdomain. For example, `www.example.com` includes a `www` subdomain. -Os subdomínios `www` são o tipo mais estável de domínio personalizado porque os subdomínios `www` não são afetados por alterações nos endereços IP dos servidores do {% data variables.product.product_name %}. +`www` subdomains are the most stable type of custom domain because `www` subdomains are not affected by changes to the IP addresses of {% data variables.product.product_name %}'s servers. -### Subdomínios personalizados +### Custom subdomains -Um subdomínio personalizado é um tipo de subdomínio que não usa a variante padrão `www`. Os subdomínios personalizados são usados mais frequentemente quando você deseja duas seções distintas do site. Por exemplo, você pode criar um site chamado `blog.example.com` e personalizar essa seção independentemente de `www.example.com`. +A custom subdomain is a type of subdomain that doesn't use the standard `www` variant. Custom subdomains are mostly used when you want two distinct sections of your site. For example, you can create a site called `blog.example.com` and customize that section independently from `www.example.com`. -## Usar um domínio apex para seu site do {% data variables.product.prodname_pages %} +## Using an apex domain for your {% data variables.product.prodname_pages %} site -Um domínio apex é um domínio personalizado que não contém um subdomínio, como `example.com`. Os domínios apex também são conhecidos como domínios base, bare, naked, apex raiz ou apex de zona. +An apex domain is a custom domain that does not contain a subdomain, such as `example.com`. Apex domains are also known as base, bare, naked, root apex, or zone apex domains. -Um domínio apex é configurado com um registro `A`, `ALIAS` ou `ANAME` por meio do provedor DNS. Para obter mais informações, confira "[Como gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)". +An apex domain is configured with an `A`, `ALIAS`, or `ANAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)." -{% data reusables.pages.www-and-apex-domain-recommendation %} Para obter mais informações, confira "[Como gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)". +{% data reusables.pages.www-and-apex-domain-recommendation %} For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)." -## Protegendo o domínio personalizado para o seu site do {% data variables.product.prodname_pages %} +## Securing the custom domain for your {% data variables.product.prodname_pages %} site -{% data reusables.pages.secure-your-domain %} Para obter mais informações, confira "[Como verificar seu domínio personalizado para o {% data variables.product.prodname_pages %}](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)" e "[Como gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/articles/managing-a-custom-domain-for-your-github-pages-site)". +{% data reusables.pages.secure-your-domain %} For more information, see "[Verifying your custom domain for {% data variables.product.prodname_pages %}](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)" and "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." -Há alguns motivos para que seu site possa ser desabilitado automaticamente. +There are a couple of reasons your site might be automatically disabled. -- Se você fizer downgrade do {% data variables.product.prodname_pro %} para o {% data variables.product.prodname_free_user %}, qualquer site do {% data variables.product.prodname_pages %} que esteja publicado no momento usando repositórios privados em sua conta terão a publicação cancelada. Para obter mais informações, confira "[Como fazer downgrade do seu plano de cobrança do {% data variables.product.prodname_dotcom %}](/articles/downgrading-your-github-billing-plan)". -- Se você transferir um repositório privado para uma conta pessoal que esteja usando o {% data variables.product.prodname_free_user %}, o repositório perderá o acesso ao recurso {% data variables.product.prodname_pages %} e o site do {% data variables.product.prodname_pages %} atualmente publicado terá a publicação cancelada. Para obter mais informações, confira "[Como transferir um repositório](/articles/transferring-a-repository)". +- If you downgrade from {% data variables.product.prodname_pro %} to {% data variables.product.prodname_free_user %}, any {% data variables.product.prodname_pages %} sites that are currently published from private repositories in your account will be unpublished. For more information, see "[Downgrading your {% data variables.product.prodname_dotcom %} billing plan](/articles/downgrading-your-github-billing-plan)." +- If you transfer a private repository to a personal account that is using {% data variables.product.prodname_free_user %}, the repository will lose access to the {% data variables.product.prodname_pages %} feature, and the currently published {% data variables.product.prodname_pages %} site will be unpublished. For more information, see "[Transferring a repository](/articles/transferring-a-repository)." -## Leitura adicional +## Further reading -- "[Solução de problemas de domínios personalizados e do {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages)" +- "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages)" diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md index 6e4dea54e6..ae7c873c86 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md @@ -54,6 +54,9 @@ For each branch protection rule, you can choose to enable or disable the followi {%- ifversion required-deployments %} - [Require deployments to succeed before merging](#require-deployments-to-succeed-before-merging) {%- endif %} +{%- ifversion lock-branch %} +- [Lock branch](#lock-branch) +{%- endif %} {% ifversion bypass-branch-protections %}- [Do not allow bypassing the above settings](#do-not-allow-bypassing-the-above-settings){% else %}- [Include administrators](#include-administrators){% endif %} - [Restrict who can push to matching branches](#restrict-who-can-push-to-matching-branches) - [Allow force pushes](#allow-force-pushes) @@ -84,6 +87,10 @@ Optionally, you can restrict the ability to dismiss pull request reviews to spec Optionally, you can choose to require reviews from code owners. If you do, any pull request that affects code with a code owner must be approved by that code owner before the pull request can be merged into the protected branch. +{% ifversion last-pusher-require-approval %} +Optionally, you can require approvals from someone other than the last person to push to a branch before a pull request can be merged. This ensures more than one person sees pull requests in their final state before they are merged into a protected branch. If you enable this feature, the most recent user to push their changes will need an approval regardless of the required approvals branch protection. Users who have already reviewed a pull request can reapprove after the most recent push to meet this requirement. +{% endif %} + ### Require status checks before merging Required status checks ensure that all required CI tests are passing before collaborators can make changes to a protected branch. Required status checks can be checks or statuses. For more information, see "[About status checks](/github/collaborating-with-issues-and-pull-requests/about-status-checks)." @@ -151,6 +158,13 @@ Before you can require a linear commit history, your repository must allow squas You can require that changes are successfully deployed to specific environments before a branch can be merged. For example, you can use this rule to ensure that changes are successfully deployed to a staging environment before the changes merge to your default branch. +{% ifversion lock-branch %} +### Lock branch + +Locking a branch ensures that no commits can be made to the branch. +By default, a forked repository does not support syncing from its upstream repository. You can enable **Allow fork syncing** to pull changes from the upstream repository while preventing other contributions to the fork's branch. +{% endif %} + {% ifversion bypass-branch-protections %}### Do not allow bypassing the above settings{% else %} ### Include administrators{% endif %} diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md index 872d6e08f0..bef4499ff6 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md @@ -73,6 +73,10 @@ When you create a branch rule, the branch you specify doesn't have to exist yet {% endif %} - Optionally, if the repository is part of an organization, select **Restrict who can dismiss pull request reviews**. Then, search for and select the actors who are allowed to dismiss pull request reviews. For more information, see "[Dismissing a pull request review](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review)." ![Restrict who can dismiss pull request reviews checkbox]{% ifversion integration-branch-protection-exceptions %}(/assets/images/help/repository/PR-review-required-dismissals-with-apps.png){% else %}(/assets/images/help/repository/PR-review-required-dismissals.png){% endif %} +{% ifversion last-pusher-require-approval %} + - Optionally, to require someone other than the last person to push to a branch to approve a pull request prior to merging, select **Require approval from someone other than the last pusher**. For more information, see "[About protected branches](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-pull-request-reviews-before-merging)." + ![Require review from someone other than the last pusher](/assets/images/help/repository/last-pusher-review-required.png) +{% endif %} 1. Optionally, enable required status checks. For more information, see "[About status checks](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." - Select **Require status checks to pass before merging**. ![Required status checks option](/assets/images/help/repository/required-status-checks.png) @@ -99,6 +103,12 @@ When you create a branch rule, the branch you specify doesn't have to exist yet 1. Optionally, to choose which environments the changes must be successfully deployed to before merging, select **Require deployments to succeed before merging**, then select the environments. ![Require successful deployment option](/assets/images/help/repository/require-successful-deployment.png) {%- endif %} +{% ifversion lock-branch %} +1. Optionally, select **Lock branch** to make branch read-only. +![Screenshot of the checkbox to lock a branch](/assets/images/help/repository/lock-branch.png) + - Optionally, to allow fork syncing, select **Allow fork syncing**. +![Screenshot of the checkbox to allow fork syncing](/assets/images/help/repository/lock-branch-forksync.png) +{%- endif %} 1. Optionally, select {% ifversion bypass-branch-protections %}**Do not allow bypassing the above settings**. ![Do not allow bypassing the above settings checkbox](/assets/images/help/repository/do-not-allow-bypassing-the-above-settings.png){% else %}**Apply the rules above to administrators**. ![Apply the rules above to administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png){% endif %} diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md index 9a2ca2a765..474cc4705d 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md @@ -97,7 +97,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - run: 'echo "No build required" ' + - run: 'echo "No build required"' ``` Now the checks will always pass whenever someone sends a pull request that doesn't change the files listed under `paths` in the first workflow. diff --git a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md index 03e5eef696..f6bff21e91 100644 --- a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md +++ b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md @@ -185,7 +185,16 @@ You can also define a custom retention period for a specific artifact created by {% data reusables.actions.cache-default-size %} However, these default sizes might be different if an enterprise owner has changed them. {% data reusables.actions.cache-eviction-process %} -You can set a total cache storage size for your repository up to the maximum size allowed by the enterprise policy setting. +You can set a total cache storage size for your repository up to the maximum size allowed by the {% ifversion actions-cache-admin-ui %}organization or{% endif %} enterprise policy setting{% ifversion actions-cache-admin-ui %}s{% endif %}. + +{% ifversion actions-cache-admin-ui %} + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-settings %} +{% data reusables.repositories.settings-sidebar-actions-general %} +{% data reusables.actions.change-cache-size-limit %} + +{% else %} The repository settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API: @@ -195,3 +204,5 @@ The repository settings for {% data variables.product.prodname_actions %} cache {% data reusables.actions.cache-no-org-policy %} {% endif %} + +{% endif %} diff --git a/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 7960cd746d..5efcabdade 100644 --- a/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -2,6 +2,5 @@ {% ifversion ghec %}![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org.png){% elsif ghes > 3.4 or ghae > 3.4 %} ![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org-ghes.png){% endif %} 1. Optionally, click "Automatically enable for repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %} 1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. - {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} diff --git a/translations/pt-BR/data/reusables/dependabot/supported-package-managers.md b/translations/pt-BR/data/reusables/dependabot/supported-package-managers.md index 9fd5e72859..3e651d2f5e 100644 --- a/translations/pt-BR/data/reusables/dependabot/supported-package-managers.md +++ b/translations/pt-BR/data/reusables/dependabot/supported-package-managers.md @@ -1,30 +1,22 @@ ---- -ms.openlocfilehash: 073c21c1480e0f9f699687c730aef2bb670654e7 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: pt-BR -ms.lasthandoff: 09/05/2022 -ms.locfileid: "146689018" ---- -A tabela a seguir mostra, para cada gerenciador de pacotes: -- O valor YAML a ser usado no arquivo *dependabot.yml* -- As versões compatíveis do gerenciador de pacotes -- Se as dependências em repositórios ou registros de {% data variables.product.prodname_dotcom %} privados são compatíveis -- Se as dependências delegadas são compatíveis +The following table shows, for each package manager: +- The YAML value to use in the *dependabot.yml* file +- The supported versions of the package manager +- Whether dependencies in private {% data variables.product.prodname_dotcom %} repositories or registries are supported +- Whether vendored dependencies are supported -Gerenciador de pacotes | Valor do YAML | Versões com suporte | Repositórios privados | Registros privados | Delegação +Package manager | YAML value | Supported versions | Private repositories | Private registries | Vendoring ---------------|------------------|------------------|:---:|:---:|:---: -bundler | `bundler` | v1, v2 | | **✓** | **✓** | +Bundler | `bundler` | v1, v2 | | **✓** | **✓** | Cargo | `cargo` | v1 | **✓** | **✓** | | -Compositor | `composer` | v1, v2 | **✓** | **✓** | | +Composer | `composer` | v1, v2 | **✓** | **✓** | | Docker | `docker` | v1 | **✓** | **✓** | | Hex | `mix` | v1 | | **✓** | | elm-package | `elm` | v0.19 | **✓** | **✓** | | -git submodule | `gitsubmodule` | N/A (sem versão) | **✓** | **✓** | | -GitHub Actions | `github-actions` | N/A (sem versão) | **✓** | **✓** | | -Módulos Go | `gomod` | v1 | **✓** | **✓** | **✓** | -Gradle | `gradle` | N/D (sem versão)[1] | **✓** | **✓** | | -Maven | `maven` | N/D (sem versão)[2] | **✓** | **✓** | | +git submodule | `gitsubmodule` | N/A (no version) | **✓** | **✓** | | +GitHub Actions | `github-actions` | N/A (no version) | **✓** | **✓** | | +Go modules | `gomod` | v1 | **✓** | **✓** | **✓** | +Gradle | `gradle` | N/A (no version)[1] | **✓** | **✓** | | +Maven | `maven` | N/A (no version)[2] | **✓** | **✓** | | npm | `npm` | v6, v7, v8 | **✓** | **✓** | | NuGet | `nuget` | <= 4.8[3] | **✓** | **✓** | | pip | `pip` | v21.1.2 | | **✓** | | @@ -33,23 +25,29 @@ pip-compile | `pip` | 6.1.0 | | **✓** | | poetry | `pip` | v1 | | **✓** | |{% ifversion fpt or ghec or ghes > 3.4 %} pub | `pub` | v2 [4] | | | |{% endif %} Terraform | `terraform` | >= 0.13, <= 1.2.x | **✓** | **✓** | | -YARN | `npm` | v1 | **✓** | **✓** | | +{% ifversion dependabot-yarn-v3-update %}yarn | `npm` | v1, v2, v3 | **✓** | **✓** | **✓**[5] |{% else %}yarn | `npm` | v1 | **✓** | **✓** | | +{% endif %} {% tip %} -**Dica:** para gerenciadores de pacotes como `pipenv` e `poetry`, você precisa usar o valor `pip` do YAML. Por exemplo, se você usar `poetry` para gerenciar suas dependências do Python e quiser que o {% data variables.product.prodname_dependabot %} monitore seu arquivo de manifesto de dependência em busca de novas versões, use `package-ecosystem: "pip"` no arquivo *dependabot.yml*. +**Tip:** For package managers such as `pipenv` and `poetry`, you need to use the `pip` YAML value. For example, if you use `poetry` to manage your Python dependencies and want {% data variables.product.prodname_dependabot %} to monitor your dependency manifest file for new versions, use `package-ecosystem: "pip"` in your *dependabot.yml* file. {% endtip %} -[1] O {% data variables.product.prodname_dependabot %} não executa o Gradle, mas dá suporte a atualizações nos seguintes arquivos: `build.gradle`, `build.gradle.kts` (para projetos do Kotlin) e arquivos incluídos por meio da declaração `apply` que têm `dependencies` no nome do arquivo. Observe que `apply` não dá suporte a `apply to`, recursão ou sintaxes avançadas (por exemplo, `apply` do Kotlin com `mapOf` e nomes de arquivo definidos por propriedade). +[1] {% data variables.product.prodname_dependabot %} doesn't run Gradle but supports updates to the following files: `build.gradle`, `build.gradle.kts` (for Kotlin projects), and files included via the `apply` declaration that have `dependencies` in the filename. Note that `apply` does not support `apply to`, recursion, or advanced syntaxes (for example, Kotlin's `apply` with `mapOf`, filenames defined by property). -[2] O {% data variables.product.prodname_dependabot %} não executa o Maven, mas dá suporte a atualizações em arquivos `pom.xml`. +[2] {% data variables.product.prodname_dependabot %} doesn't run Maven but supports updates to `pom.xml` files. -[3] {% data variables.product.prodname_dependabot %} não executa o NuGet CLI, mas é compatível com a maioria dos recursos até a versão 4.8. +[3] {% data variables.product.prodname_dependabot %} doesn't run the NuGet CLI but does support most features up until version 4.8. -O suporte a {% ifversion fpt or ghec or ghes > 3.4 %} [4] {% ifversion ghes = 3.5 %}`pub` está em versão beta. Todas as limitações conhecidas estão sujeitas a alterações. Observe que o {% data variables.product.prodname_dependabot %}: - - Não dá suporte à atualização de dependências do Git em `pub`. - - Não executará uma atualização quando a versão para a qual ele tenta atualizar for ignorada, mesmo que uma versão anterior esteja disponível. +{% ifversion fpt or ghec or ghes > 3.4 %} +[4] {% ifversion ghes = 3.5 %}`pub` support is currently in beta. Any known limitations are subject to change. Note that {% data variables.product.prodname_dependabot %}: + - Doesn't support updating git dependencies for `pub`. + - Won't perform an update when the version that it tries to update to is ignored, even if an earlier version is available. - Para obter informações sobre como configurar o arquivo _dependabot.yml_ para `pub`, confira "[Como habilitar o suporte para ecossistemas de nível beta](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)". - {%- else %}{% data variables.product.prodname_dependabot %} não executará uma atualização para `pub` quando a versão para a qual ele tenta atualizar for ignorada, mesmo se uma versão anterior estiver disponível.{% endif %} {% endif %} + For information about configuring your _dependabot.yml_ file for `pub`, see "[Enabling support for beta-level ecosystems](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)." + {%- else %}{% data variables.product.prodname_dependabot %} won't perform an update for `pub` when the version that it tries to update to is ignored, even if an earlier version is available.{% endif %} +{% endif %} + +{% ifversion dependabot-yarn-v3-update %} +[5] Dependabot supports vendored dependencies for v2 onwards.{% endif %} From 6bc8b888e02cc31ec01464186ed4530889cf2408 Mon Sep 17 00:00:00 2001 From: docubot <67483024+docubot@users.noreply.github.com> Date: Thu, 20 Oct 2022 10:59:06 -0700 Subject: [PATCH 30/30] New translation batch for cn (#31921) --- translations/log/msft-cn-resets.csv | 187 ++++++------- ...-security-hardening-with-openid-connect.md | 28 +- .../environment-variables.md | 2 +- .../using-larger-runners.md | 2 + ...hing-dependencies-to-speed-up-workflows.md | 208 +++++++++------ .../cluster-network-configuration.md | 109 ++++---- ...-availability-replication-for-a-cluster.md | 250 +++++++++--------- .../creating-a-high-availability-replica.md | 90 +++---- ...siderations-for-external-authentication.md | 27 +- .../about-enterprise-managed-users.md | 4 +- ...s-for-github-actions-in-your-enterprise.md | 16 +- ...-ssh-key-and-adding-it-to-the-ssh-agent.md | 6 +- .../token-expiration-and-revocation.md | 2 - ...ion-options-for-the-dependabot.yml-file.md | 4 +- .../protecting-pushes-with-secret-scanning.md | 17 +- ...ing-a-branch-blocked-by-push-protection.md | 3 - .../customizing-your-codespace/index.md | 1 + .../codespaces-lifecycle.md | 2 + .../developing-in-codespaces/index.md | 1 - .../renaming-a-codespace.md | 56 ---- ...using-github-codespaces-with-github-cli.md | 14 +- .../codespaces/getting-started/deep-dive.md | 2 +- .../codespaces/getting-started/quickstart.md | 3 +- .../zh-CN/content/codespaces/guides.md | 3 +- .../index.md | 1 + .../restricting-access-to-machine-types.md | 20 +- .../restricting-the-idle-timeout-period.md | 17 +- ...ing-the-retention-period-for-codespaces.md | 17 +- ...cting-the-visibility-of-forwarded-ports.md | 18 +- ...g-encrypted-secrets-for-your-codespaces.md | 6 +- .../introduction-to-dev-containers.md | 2 +- ...g-up-your-dotnet-project-for-codespaces.md | 12 +- ...ing-up-your-java-project-for-codespaces.md | 2 +- .../webhooks/webhook-events-and-payloads.md | 2 +- .../quickstart/contributing-to-projects.md | 140 ++++++---- ...ng-github-actions-for-your-organization.md | 34 +++ .../about-custom-domains-and-github-pages.md | 68 +++-- .../about-protected-branches.md | 14 + .../managing-a-branch-protection-rule.md | 10 + .../troubleshooting-required-status-checks.md | 2 +- ...ithub-actions-settings-for-a-repository.md | 13 +- .../managing-releases-in-a-repository.md | 55 ++-- .../release-notes/enterprise-server/3-4/6.yml | 3 +- .../secret-scanning-push-protection-org.md | 1 - .../dependabot/supported-package-managers.md | 64 +++-- 45 files changed, 854 insertions(+), 684 deletions(-) delete mode 100644 translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md diff --git a/translations/log/msft-cn-resets.csv b/translations/log/msft-cn-resets.csv index a2b3362433..05a8bb8627 100644 --- a/translations/log/msft-cn-resets.csv +++ b/translations/log/msft-cn-resets.csv @@ -81,6 +81,7 @@ translations/zh-CN/content/codespaces/customizing-your-codespace/personalizing-c translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces.md,file deleted because it no longer exists in main translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces.md,file deleted because it no longer exists in main translations/zh-CN/content/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces.md,file deleted because it no longer exists in main +translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,file deleted because it no longer exists in main translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md,file deleted because it no longer exists in main translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md,file deleted because it no longer exists in main translations/zh-CN/content/codespaces/developing-in-codespaces/using-codespaces-with-github-cli.md,file deleted because it no longer exists in main @@ -263,7 +264,7 @@ translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifi translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md,broken liquid tags translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md,broken liquid tags translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md,rendering error -translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md,broken liquid tags +translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md,broken liquid tags translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md,rendering error @@ -275,13 +276,13 @@ translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-pers translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md,rendering error -translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/adding-an-email-address-to-your-github-account.md,broken liquid tags +translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/adding-an-email-address-to-your-github-account.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/index.md,broken liquid tags translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/remembering-your-github-username-or-email.md,broken liquid tags -translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address.md,broken liquid tags +translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/changing-your-github-username.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-accessibility-settings.md,broken liquid tags -translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md,broken liquid tags +translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/requesting-organization-approval-for-oauth-apps.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md,broken liquid tags translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md,broken liquid tags @@ -312,7 +313,7 @@ translations/zh-CN/content/actions/hosting-your-own-runners/adding-self-hosted-r translations/zh-CN/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md,rendering error translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md,broken liquid tags translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md,rendering error -translations/zh-CN/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,broken liquid tags +translations/zh-CN/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,rendering error translations/zh-CN/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md,rendering error translations/zh-CN/content/actions/hosting-your-own-runners/running-scripts-before-or-after-a-job.md,broken liquid tags translations/zh-CN/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md,rendering error @@ -335,22 +336,23 @@ translations/zh-CN/content/actions/security-guides/security-hardening-for-github translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md,rendering error translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error translations/zh-CN/content/actions/using-workflows/about-workflows.md,rendering error +translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md,broken liquid tags translations/zh-CN/content/actions/using-workflows/creating-starter-workflows-for-your-organization.md,rendering error translations/zh-CN/content/actions/using-workflows/events-that-trigger-workflows.md,rendering error translations/zh-CN/content/actions/using-workflows/reusing-workflows.md,rendering error translations/zh-CN/content/actions/using-workflows/sharing-workflows-secrets-and-runners-with-your-organization.md,rendering error -translations/zh-CN/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,broken liquid tags +translations/zh-CN/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,rendering error translations/zh-CN/content/actions/using-workflows/triggering-a-workflow.md,rendering error translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md,rendering error translations/zh-CN/content/actions/using-workflows/workflow-syntax-for-github-actions.md,rendering error translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md,broken liquid tags -translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md,broken liquid tags +translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-secret-scanning-for-your-appliance.md,rendering error translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/enabling-github-advanced-security-for-your-enterprise.md,broken liquid tags -translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md,broken liquid tags -translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md,broken liquid tags +translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/about-supply-chain-security-for-your-enterprise.md,rendering error +translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/viewing-the-vulnerability-data-for-your-enterprise.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md,broken liquid tags -translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md,broken liquid tags +translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-automatic-user-license-sync-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-github-connect/enabling-unified-contributions-for-your-enterprise.md,broken liquid tags @@ -362,29 +364,32 @@ translations/zh-CN/content/admin/configuration/configuring-network-settings/conf translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-built-in-firewall-rules.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-dns-nameservers.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-tls.md,broken liquid tags -translations/zh-CN/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md,broken liquid tags +translations/zh-CN/content/admin/configuration/configuring-network-settings/enabling-subdomain-isolation.md,rendering error translations/zh-CN/content/admin/configuration/configuring-network-settings/network-ports.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-network-settings/using-github-enterprise-server-with-a-load-balancer.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-network-settings/validating-your-domain-settings.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/accessing-the-management-console.md,broken liquid tags -translations/zh-CN/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md,broken liquid tags +translations/zh-CN/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md,rendering error translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-applications.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-backups-on-your-appliance.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md,broken liquid tags -translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md,broken liquid tags +translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-github-pages-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-rate-limits.md,rendering error -translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md,broken liquid tags +translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance.md,rendering error translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-the-referrer-policy-for-your-enterprise.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/enabling-private-mode.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md,broken liquid tags -translations/zh-CN/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,broken liquid tags +translations/zh-CN/content/admin/configuration/configuring-your-enterprise/managing-github-mobile-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md,broken liquid tags translations/zh-CN/content/admin/configuration/configuring-your-enterprise/troubleshooting-tls-errors.md,broken liquid tags +translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md,broken liquid tags +translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md,broken liquid tags +translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md,broken liquid tags translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/accessing-the-monitor-dashboard.md,broken liquid tags translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/configuring-collectd.md,broken liquid tags translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance/generating-a-health-check-for-your-enterprise.md,broken liquid tags @@ -394,21 +399,21 @@ translations/zh-CN/content/admin/enterprise-management/monitoring-your-appliance translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/enabling-automatic-update-checks.md,broken liquid tags translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-cpu-or-memory-resources.md,broken liquid tags translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-storage-capacity.md,broken liquid tags -translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md,broken liquid tags +translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrade-requirements.md,rendering error translations/zh-CN/content/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server.md,rendering error translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled.md,broken liquid tags -translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md,broken liquid tags +translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/github-actions/advanced-configuration-and-troubleshooting/using-a-staging-environment.md,broken liquid tags translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md,broken liquid tags -translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md,broken liquid tags +translations/zh-CN/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates.md,rendering error translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises.md,rendering error -translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md,broken liquid tags +translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-github-actions-for-github-enterprise-server.md,rendering error translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md,rendering error translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise.md,rendering error translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/about-using-actions-in-your-enterprise.md,broken liquid tags -translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md,broken liquid tags -translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md,broken liquid tags -translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md,broken liquid tags +translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect.md,rendering error +translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md,rendering error +translations/zh-CN/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md,rendering error translations/zh-CN/content/admin/identity-and-access-management/index.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md,broken liquid tags @@ -425,8 +430,8 @@ translations/zh-CN/content/admin/identity-and-access-management/using-enterprise translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-saml-single-sign-on-for-enterprise-managed-users.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md,broken liquid tags -translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md,broken liquid tags -translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md,broken liquid tags +translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-scim-provisioning-for-enterprise-managed-users.md,rendering error +translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups.md,rendering error translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/index.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/using-ldap-for-enterprise-iam/using-ldap.md,broken liquid tags @@ -441,11 +446,11 @@ translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-e translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/troubleshooting-saml-authentication.md,broken liquid tags translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/updating-a-users-saml-nameid.md,broken liquid tags -translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md,broken liquid tags -translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md,broken liquid tags -translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md,broken liquid tags -translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md,broken liquid tags -translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md,broken liquid tags +translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md,rendering error +translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md,rendering error +translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md,rendering error +translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md,rendering error +translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md,rendering error translations/zh-CN/content/admin/installation/setting-up-a-github-enterprise-server-instance/setting-up-a-staging-instance.md,broken liquid tags translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md,broken liquid tags translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/exporting-server-statistics.md,broken liquid tags @@ -461,12 +466,12 @@ translations/zh-CN/content/admin/overview/about-enterprise-accounts.md,rendering translations/zh-CN/content/admin/overview/about-github-enterprise-server.md,broken liquid tags translations/zh-CN/content/admin/overview/about-github-for-enterprises.md,rendering error translations/zh-CN/content/admin/overview/accessing-compliance-reports-for-your-enterprise.md,broken liquid tags -translations/zh-CN/content/admin/overview/system-overview.md,broken liquid tags +translations/zh-CN/content/admin/overview/system-overview.md,rendering error translations/zh-CN/content/admin/packages/enabling-github-packages-with-aws.md,broken liquid tags translations/zh-CN/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md,broken liquid tags translations/zh-CN/content/admin/packages/enabling-github-packages-with-minio.md,broken liquid tags -translations/zh-CN/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md,broken liquid tags -translations/zh-CN/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md,broken liquid tags +translations/zh-CN/content/admin/packages/getting-started-with-github-packages-for-your-enterprise.md,rendering error +translations/zh-CN/content/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry.md,rendering error translations/zh-CN/content/admin/packages/quickstart-for-configuring-your-minio-storage-bucket-for-github-packages.md,broken liquid tags translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/about-enterprise-policies.md,broken liquid tags translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md,broken liquid tags @@ -475,10 +480,10 @@ translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise translations/zh-CN/content/admin/policies/enforcing-policy-with-pre-receive-hooks/about-pre-receive-hooks.md,broken liquid tags translations/zh-CN/content/admin/policies/enforcing-policy-with-pre-receive-hooks/creating-a-pre-receive-hook-script.md,broken liquid tags translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md,broken liquid tags -translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md,broken liquid tags +translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/adding-people-to-teams.md,rendering error translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/continuous-integration-using-jenkins.md,broken liquid tags -translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md,broken liquid tags -translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md,broken liquid tags +translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/creating-teams.md,rendering error +translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/requiring-two-factor-authentication-for-an-organization.md,rendering error translations/zh-CN/content/admin/user-management/managing-organizations-in-your-enterprise/restoring-a-deleted-organization.md,broken liquid tags translations/zh-CN/content/admin/user-management/managing-repositories-in-your-enterprise/configuring-git-large-file-storage-for-your-enterprise.md,broken liquid tags translations/zh-CN/content/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise.md,broken liquid tags @@ -494,24 +499,24 @@ translations/zh-CN/content/authentication/authenticating-with-saml-single-sign-o translations/zh-CN/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md,rendering error translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md,broken liquid tags translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md,rendering error -translations/zh-CN/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md,broken liquid tags +translations/zh-CN/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md,rendering error translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md,rendering error translations/zh-CN/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md,broken liquid tags -translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,broken liquid tags +translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,rendering error translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md,broken liquid tags -translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,broken liquid tags +translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,rendering error translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md,broken liquid tags translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/index.md,broken liquid tags translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md,broken liquid tags translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md,broken liquid tags translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md,rendering error translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md,rendering error -translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md,broken liquid tags +translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md,rendering error translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md,broken liquid tags -translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md,broken liquid tags -translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,broken liquid tags +translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md,rendering error +translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,rendering error translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md,rendering error -translations/zh-CN/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md,broken liquid tags +translations/zh-CN/content/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account.md,rendering error translations/zh-CN/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md,broken liquid tags translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md,rendering error translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md,broken liquid tags @@ -520,7 +525,7 @@ translations/zh-CN/content/authentication/managing-commit-signature-verification translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md,broken liquid tags translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md,broken liquid tags translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md,broken liquid tags -translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,broken liquid tags +translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,rendering error translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md,broken liquid tags translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md,broken liquid tags translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md,broken liquid tags @@ -536,7 +541,7 @@ translations/zh-CN/content/billing/managing-billing-for-github-codespaces/managi translations/zh-CN/content/billing/managing-billing-for-github-codespaces/viewing-your-github-codespaces-usage.md,broken liquid tags translations/zh-CN/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md,broken liquid tags translations/zh-CN/content/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription.md,broken liquid tags -translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md,broken liquid tags +translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md,rendering error translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md,broken liquid tags translations/zh-CN/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md,rendering error translations/zh-CN/content/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise.md,broken liquid tags @@ -564,10 +569,10 @@ translations/zh-CN/content/code-security/code-scanning/integrating-with-code-sca translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md,broken liquid tags translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system.md,rendering error translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md,rendering error -translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md,broken liquid tags +translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md,rendering error translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md,broken liquid tags translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md,broken liquid tags -translations/zh-CN/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md,broken liquid tags +translations/zh-CN/content/code-security/dependabot/dependabot-alerts/about-dependabot-alerts.md,rendering error translations/zh-CN/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md,rendering error translations/zh-CN/content/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts.md,rendering error translations/zh-CN/content/code-security/dependabot/dependabot-alerts/editing-security-advisories-in-the-github-advisory-database.md,broken liquid tags @@ -579,9 +584,9 @@ translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/c translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates.md,rendering error translations/zh-CN/content/code-security/dependabot/working-with-dependabot/automating-dependabot-with-github-actions.md,rendering error translations/zh-CN/content/code-security/dependabot/working-with-dependabot/managing-encrypted-secrets-for-dependabot.md,rendering error -translations/zh-CN/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md,broken liquid tags +translations/zh-CN/content/code-security/dependabot/working-with-dependabot/troubleshooting-the-detection-of-vulnerable-dependencies.md,rendering error translations/zh-CN/content/code-security/getting-started/github-security-features.md,rendering error -translations/zh-CN/content/code-security/getting-started/securing-your-organization.md,broken liquid tags +translations/zh-CN/content/code-security/getting-started/securing-your-organization.md,rendering error translations/zh-CN/content/code-security/getting-started/securing-your-repository.md,rendering error translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md,rendering error translations/zh-CN/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md,rendering error @@ -615,7 +620,6 @@ translations/zh-CN/content/codespaces/developing-in-codespaces/creating-a-codesp translations/zh-CN/content/codespaces/developing-in-codespaces/deleting-a-codespace.md,broken liquid tags translations/zh-CN/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md,broken liquid tags translations/zh-CN/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md,broken liquid tags -translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md,broken liquid tags translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-for-pull-requests.md,broken liquid tags translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-in-visual-studio-code.md,broken liquid tags translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md,broken liquid tags @@ -669,9 +673,9 @@ translations/zh-CN/content/developers/apps/building-github-apps/authenticating-w translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md,rendering error translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md,rendering error translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md,broken liquid tags -translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md,broken liquid tags -translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md,broken liquid tags -translations/zh-CN/content/developers/apps/getting-started-with-apps/about-apps.md,broken liquid tags +translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md,rendering error +translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md,rendering error +translations/zh-CN/content/developers/apps/getting-started-with-apps/about-apps.md,rendering error translations/zh-CN/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md,broken liquid tags translations/zh-CN/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md,rendering error translations/zh-CN/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md,rendering error @@ -702,12 +706,12 @@ translations/zh-CN/content/education/manage-coursework-with-github-classroom/tea translations/zh-CN/content/get-started/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md,broken liquid tags translations/zh-CN/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md,broken liquid tags translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md,broken liquid tags -translations/zh-CN/content/get-started/getting-started-with-git/about-remote-repositories.md,broken liquid tags +translations/zh-CN/content/get-started/getting-started-with-git/about-remote-repositories.md,rendering error translations/zh-CN/content/get-started/getting-started-with-git/associating-text-editors-with-git.md,broken liquid tags -translations/zh-CN/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md,broken liquid tags -translations/zh-CN/content/get-started/getting-started-with-git/managing-remote-repositories.md,broken liquid tags -translations/zh-CN/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md,broken liquid tags -translations/zh-CN/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md,broken liquid tags +translations/zh-CN/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md,rendering error +translations/zh-CN/content/get-started/getting-started-with-git/managing-remote-repositories.md,rendering error +translations/zh-CN/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md,rendering error +translations/zh-CN/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md,rendering error translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md,broken liquid tags translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md,broken liquid tags translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md,broken liquid tags @@ -715,30 +719,31 @@ translations/zh-CN/content/get-started/learning-about-github/about-github-advanc translations/zh-CN/content/get-started/learning-about-github/access-permissions-on-github.md,broken liquid tags translations/zh-CN/content/get-started/learning-about-github/types-of-github-accounts.md,broken liquid tags translations/zh-CN/content/get-started/onboarding/getting-started-with-github-ae.md,broken liquid tags -translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md,broken liquid tags +translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md,rendering error translations/zh-CN/content/get-started/onboarding/getting-started-with-github-enterprise-server.md,broken liquid tags translations/zh-CN/content/get-started/onboarding/getting-started-with-github-team.md,broken liquid tags translations/zh-CN/content/get-started/onboarding/getting-started-with-your-github-account.md,broken liquid tags translations/zh-CN/content/get-started/quickstart/be-social.md,broken liquid tags translations/zh-CN/content/get-started/quickstart/communicating-on-github.md,broken liquid tags +translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md,broken liquid tags translations/zh-CN/content/get-started/quickstart/create-a-repo.md,broken liquid tags translations/zh-CN/content/get-started/quickstart/fork-a-repo.md,broken liquid tags translations/zh-CN/content/get-started/quickstart/git-and-github-learning-resources.md,broken liquid tags -translations/zh-CN/content/get-started/signing-up-for-github/verifying-your-email-address.md,broken liquid tags +translations/zh-CN/content/get-started/signing-up-for-github/verifying-your-email-address.md,rendering error translations/zh-CN/content/get-started/using-git/about-git-rebase.md,broken liquid tags translations/zh-CN/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md,broken liquid tags translations/zh-CN/content/get-started/using-github/github-command-palette.md,broken liquid tags -translations/zh-CN/content/get-started/using-github/github-mobile.md,broken liquid tags +translations/zh-CN/content/get-started/using-github/github-mobile.md,rendering error translations/zh-CN/content/get-started/using-github/keyboard-shortcuts.md,rendering error translations/zh-CN/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md,broken liquid tags translations/zh-CN/content/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md,rendering error translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/attaching-files.md,broken liquid tags translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md,broken liquid tags translations/zh-CN/content/get-started/writing-on-github/working-with-advanced-formatting/writing-mathematical-expressions.md,rendering error -translations/zh-CN/content/github-cli/github-cli/quickstart.md,broken liquid tags -translations/zh-CN/content/graphql/guides/forming-calls-with-graphql.md,broken liquid tags +translations/zh-CN/content/github-cli/github-cli/quickstart.md,rendering error +translations/zh-CN/content/graphql/guides/forming-calls-with-graphql.md,rendering error translations/zh-CN/content/graphql/guides/introduction-to-graphql.md,broken liquid tags -translations/zh-CN/content/graphql/guides/managing-enterprise-accounts.md,broken liquid tags +translations/zh-CN/content/graphql/guides/managing-enterprise-accounts.md,rendering error translations/zh-CN/content/graphql/guides/migrating-from-rest-to-graphql.md,broken liquid tags translations/zh-CN/content/graphql/overview/about-the-graphql-api.md,rendering error translations/zh-CN/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md,broken liquid tags @@ -754,49 +759,50 @@ translations/zh-CN/content/issues/tracking-your-work-with-issues/filtering-and-s translations/zh-CN/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md,rendering error translations/zh-CN/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md,broken liquid tags translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md,broken liquid tags -translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md,broken liquid tags +translations/zh-CN/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md,rendering error translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization.md,rendering error translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md,rendering error translations/zh-CN/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md,rendering error translations/zh-CN/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md,broken liquid tags -translations/zh-CN/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md,broken liquid tags +translations/zh-CN/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md,rendering error translations/zh-CN/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md,broken liquid tags -translations/zh-CN/content/organizations/managing-organization-settings/deleting-an-organization-account.md,broken liquid tags +translations/zh-CN/content/organizations/managing-organization-settings/deleting-an-organization-account.md,rendering error translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md,rendering error translations/zh-CN/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md,rendering error translations/zh-CN/content/organizations/managing-organization-settings/integrating-jira-with-your-organization-project-board.md,rendering error -translations/zh-CN/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md,broken liquid tags +translations/zh-CN/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md,rendering error translations/zh-CN/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md,broken liquid tags translations/zh-CN/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization.md,rendering error translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md,broken liquid tags translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md,broken liquid tags translations/zh-CN/content/organizations/organizing-members-into-teams/about-teams.md,broken liquid tags translations/zh-CN/content/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team.md,rendering error -translations/zh-CN/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md,broken liquid tags +translations/zh-CN/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md,rendering error translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md,rendering error translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md,rendering error -translations/zh-CN/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md,broken liquid tags +translations/zh-CN/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md,rendering error translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md,rendering error -translations/zh-CN/content/packages/learn-github-packages/installing-a-package.md,broken liquid tags +translations/zh-CN/content/packages/learn-github-packages/installing-a-package.md,rendering error translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md,rendering error -translations/zh-CN/content/packages/learn-github-packages/publishing-a-package.md,broken liquid tags +translations/zh-CN/content/packages/learn-github-packages/publishing-a-package.md,rendering error translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md,rendering error translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md,rendering error -translations/zh-CN/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md,broken liquid tags -translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md,broken liquid tags +translations/zh-CN/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md,rendering error +translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md,rendering error translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md,rendering error -translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md,broken liquid tags -translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md,broken liquid tags +translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md,rendering error +translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md,rendering error translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md,rendering error -translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,broken liquid tags -translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,broken liquid tags +translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,rendering error +translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,rendering error +translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md,broken liquid tags translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md,rendering error translations/zh-CN/content/pages/getting-started-with-github-pages/about-github-pages.md,broken liquid tags translations/zh-CN/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md,rendering error translations/zh-CN/content/pages/index.md,broken liquid tags -translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md,broken liquid tags +translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md,rendering error translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md,broken liquid tags -translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md,broken liquid tags +translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md,rendering error translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md,broken liquid tags translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md,broken liquid tags translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md,rendering error @@ -809,7 +815,7 @@ translations/zh-CN/content/pull-requests/committing-changes-to-your-project/crea translations/zh-CN/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md,broken liquid tags translations/zh-CN/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md,broken liquid tags translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md,broken liquid tags -translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md,broken liquid tags +translations/zh-CN/content/pull-requests/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md,rendering error translations/zh-CN/content/repositories/archiving-a-github-repository/archiving-repositories.md,rendering error translations/zh-CN/content/repositories/archiving-a-github-repository/backing-up-a-repository.md,broken liquid tags translations/zh-CN/content/repositories/archiving-a-github-repository/referencing-and-citing-content.md,broken liquid tags @@ -828,7 +834,7 @@ translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your- translations/zh-CN/content/repositories/creating-and-managing-repositories/about-repositories.md,broken liquid tags translations/zh-CN/content/repositories/creating-and-managing-repositories/cloning-a-repository.md,broken liquid tags translations/zh-CN/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md,broken liquid tags -translations/zh-CN/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md,broken liquid tags +translations/zh-CN/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md,rendering error translations/zh-CN/content/repositories/creating-and-managing-repositories/transferring-a-repository.md,rendering error translations/zh-CN/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md,broken liquid tags translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md,rendering error @@ -871,7 +877,7 @@ translations/zh-CN/content/rest/enterprise-admin/users.md,broken liquid tags translations/zh-CN/content/rest/gitignore.md,broken liquid tags translations/zh-CN/content/rest/guides/building-a-ci-server.md,broken liquid tags translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md,rendering error -translations/zh-CN/content/rest/guides/traversing-with-pagination.md,broken liquid tags +translations/zh-CN/content/rest/guides/traversing-with-pagination.md,rendering error translations/zh-CN/content/rest/guides/working-with-comments.md,broken liquid tags translations/zh-CN/content/rest/migrations/source-imports.md,broken liquid tags translations/zh-CN/content/rest/overview/other-authentication-methods.md,broken liquid tags @@ -891,7 +897,7 @@ translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponso translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md,broken liquid tags translations/zh-CN/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-personal-account.md,broken liquid tags translations/zh-CN/content/support/contacting-github-support/providing-data-to-github-support.md,broken liquid tags -translations/zh-CN/content/support/learning-about-github-support/about-github-premium-support.md,broken liquid tags +translations/zh-CN/content/support/learning-about-github-support/about-github-premium-support.md,rendering error translations/zh-CN/content/support/learning-about-github-support/about-github-support.md,rendering error translations/zh-CN/data/learning-tracks/admin.yml,broken liquid tags translations/zh-CN/data/release-notes/enterprise-server/2-20/15.yml,rendering error @@ -971,7 +977,7 @@ translations/zh-CN/data/reusables/advanced-security/secret-scanning-add-custom-p translations/zh-CN/data/reusables/advanced-security/secret-scanning-create-custom-pattern.md,rendering error translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md,broken liquid tags translations/zh-CN/data/reusables/apps/user-to-server-rate-limits.md,broken liquid tags -translations/zh-CN/data/reusables/audit_log/audit-log-action-categories.md,broken liquid tags +translations/zh-CN/data/reusables/audit_log/audit-log-action-categories.md,rendering error translations/zh-CN/data/reusables/audit_log/audit-log-events-workflows.md,rendering error translations/zh-CN/data/reusables/audit_log/audit_log_sidebar_for_org_admins.md,rendering error translations/zh-CN/data/reusables/audit_log/audit_log_sidebar_for_site_admins.md,rendering error @@ -1006,6 +1012,7 @@ translations/zh-CN/data/reusables/dependabot/beta-security-and-version-updates.m translations/zh-CN/data/reusables/dependabot/default-dependencies-allow-ignore.md,broken liquid tags translations/zh-CN/data/reusables/dependabot/enabling-disabling-dependency-graph-private-repo.md,rendering error translations/zh-CN/data/reusables/dependabot/enterprise-enable-dependabot.md,rendering error +translations/zh-CN/data/reusables/dependabot/supported-package-managers.md,broken liquid tags translations/zh-CN/data/reusables/desktop/get-an-account.md,broken liquid tags translations/zh-CN/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md,broken liquid tags translations/zh-CN/data/reusables/discussions/navigate-to-repo-or-org.md,broken liquid tags @@ -1024,7 +1031,7 @@ translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-gist.md,bro translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-interact.md,broken liquid tags translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-propose.md,broken liquid tags translations/zh-CN/data/reusables/enterprise-accounts/emu-permission-repo.md,broken liquid tags -translations/zh-CN/data/reusables/enterprise-accounts/emu-short-summary.md,broken liquid tags +translations/zh-CN/data/reusables/enterprise-accounts/emu-short-summary.md,rendering error translations/zh-CN/data/reusables/enterprise-accounts/oidc-gei-warning.md,broken liquid tags translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md,broken liquid tags translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md,broken liquid tags @@ -1033,7 +1040,7 @@ translations/zh-CN/data/reusables/enterprise/rate_limit.md,broken liquid tags translations/zh-CN/data/reusables/enterprise/test-in-staging.md,broken liquid tags translations/zh-CN/data/reusables/enterprise_enterprise_support/installing-releases.md,broken liquid tags translations/zh-CN/data/reusables/enterprise_installation/download-package.md,broken liquid tags -translations/zh-CN/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md,broken liquid tags +translations/zh-CN/data/reusables/enterprise_installation/hardware-considerations-all-platforms.md,rendering error translations/zh-CN/data/reusables/enterprise_installation/hotpatching-explanation.md,broken liquid tags translations/zh-CN/data/reusables/enterprise_installation/image-urls-viewable-warning.md,broken liquid tags translations/zh-CN/data/reusables/enterprise_installation/ssh-into-instance.md,broken liquid tags @@ -1077,7 +1084,7 @@ translations/zh-CN/data/reusables/organizations/security.md,rendering error translations/zh-CN/data/reusables/organizations/teams_sidebar.md,rendering error translations/zh-CN/data/reusables/organizations/verified-domains.md,rendering error translations/zh-CN/data/reusables/package_registry/authenticate-packages.md,broken liquid tags -translations/zh-CN/data/reusables/package_registry/authenticate-to-container-registry-steps.md,broken liquid tags +translations/zh-CN/data/reusables/package_registry/authenticate-to-container-registry-steps.md,rendering error translations/zh-CN/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md,broken liquid tags translations/zh-CN/data/reusables/package_registry/package-registry-with-github-tokens.md,broken liquid tags translations/zh-CN/data/reusables/package_registry/packages-billing.md,broken liquid tags @@ -1104,7 +1111,7 @@ translations/zh-CN/data/reusables/repositories/repository-branches.md,rendering translations/zh-CN/data/reusables/repositories/sidebar-notifications.md,rendering error translations/zh-CN/data/reusables/repositories/suggest-changes.md,broken liquid tags translations/zh-CN/data/reusables/repositories/you-can-fork.md,broken liquid tags -translations/zh-CN/data/reusables/rest-api/dotcom-only-guide-note.md,broken liquid tags +translations/zh-CN/data/reusables/rest-api/dotcom-only-guide-note.md,rendering error translations/zh-CN/data/reusables/saml/about-authorized-credentials.md,broken liquid tags translations/zh-CN/data/reusables/saml/about-linked-identities.md,broken liquid tags translations/zh-CN/data/reusables/saml/about-saml-access-enterprise-account.md,broken liquid tags @@ -1122,7 +1129,7 @@ translations/zh-CN/data/reusables/security-overview/permissions.md,rendering err translations/zh-CN/data/reusables/shortdesc/rate_limits_github_apps.md,broken liquid tags translations/zh-CN/data/reusables/sponsors/select-sponsorship-billing.md,broken liquid tags translations/zh-CN/data/reusables/ssh/about-ssh.md,broken liquid tags -translations/zh-CN/data/reusables/ssh/key-type-support.md,broken liquid tags +translations/zh-CN/data/reusables/ssh/key-type-support.md,rendering error translations/zh-CN/data/reusables/ssh/rsa-sha-1-connection-failure-criteria.md,broken liquid tags translations/zh-CN/data/reusables/support/help_resources.md,rendering error translations/zh-CN/data/reusables/support/submit-a-ticket.md,broken liquid tags @@ -1132,7 +1139,7 @@ translations/zh-CN/data/reusables/user-settings/appearance-settings.md,rendering translations/zh-CN/data/reusables/user-settings/developer_settings.md,rendering error translations/zh-CN/data/reusables/user-settings/emails.md,rendering error translations/zh-CN/data/reusables/user-settings/organizations.md,rendering error -translations/zh-CN/data/reusables/user-settings/password-authentication-deprecation.md,broken liquid tags +translations/zh-CN/data/reusables/user-settings/password-authentication-deprecation.md,rendering error translations/zh-CN/data/reusables/user-settings/personal_access_tokens.md,broken liquid tags translations/zh-CN/data/reusables/user-settings/removes-personal-access-tokens.md,broken liquid tags translations/zh-CN/data/reusables/user-settings/repo-tab.md,rendering error diff --git a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md index 40a00cfb3f..30c0ee6762 100644 --- a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md +++ b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md @@ -279,19 +279,21 @@ After this setting is applied, the JWT will contain the updated `iss` value. In {% endif %} -### Customizing the subject claims for an organization +### Customizing the subject claims for an organization or repository -To configure organization-wide security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)." +To help improve security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. You can use the [OIDC REST API](/rest/actions/oidc) to apply a customization template for the OIDC subject claim; for example, you can require that the `sub` claim within the OIDC token must always include a specific custom claim, such as `job_workflow_ref`. Customizing the claims results in a new format for the entire `sub` claim, which replaces the default predefined `sub` format in the token described in "[Example subject claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)." -The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, organization admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. {% data reusables.actions.use-request-body-api %} +The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. + +{% data reusables.actions.use-request-body-api %} To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before customizing the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized. {% note %} -**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)." +**Note**: When the organization template is applied, it will not affect any action workflows in existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration, or alternatively could apply a different configuration specific to the repo. For more information, see "[Set the customization template for an OIDC subject claim for a repository](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-a-repository)." {% endnote %} @@ -312,7 +314,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Example: Allowing access to all repositories with a specific owner -This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. {% data reusables.actions.use-request-body-api %} +This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. + +{% data reusables.actions.use-request-body-api %} ```json { @@ -343,7 +347,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Example: Requiring a reusable workflow and other claims -The following example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %} +The following example template combines the requirement of a specific reusable workflow with additional claims. + +{% data reusables.actions.use-request-body-api %} This example also demonstrates how to use `"context"` to define your conditions. This is the part that follows the repository in the [default `sub` format](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). For example, when the job references an environment, the context contains: `environment:`. @@ -380,7 +386,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Example: Using system-generated GUIDs -This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository). {% data reusables.actions.use-request-body-api %} +This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository). + +{% data reusables.actions.use-request-body-api %} ```json { @@ -406,7 +414,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Resetting your customizations -This example template resets the subject claims to the default format. {% data reusables.actions.use-request-body-api %} This template effectively opts out of any organization-level customization policy. +This example template resets the subject claims to the default format. This template effectively opts out of any organization-level customization policy. + +{% data reusables.actions.use-request-body-api %} ```json { @@ -421,7 +431,7 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Using the default subject claims -For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the opt-out flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-out-flag-of-an-oidc-subject-claim-customization-for-a-repository)" with the following request body: +For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the customization template for an OIDC subject claim for a repository](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-a-repository)" with the following request body: ```json { diff --git a/translations/zh-CN/content/actions/learn-github-actions/environment-variables.md b/translations/zh-CN/content/actions/learn-github-actions/environment-variables.md index eb07fac1ae..60f517beb6 100644 --- a/translations/zh-CN/content/actions/learn-github-actions/environment-variables.md +++ b/translations/zh-CN/content/actions/learn-github-actions/environment-variables.md @@ -118,7 +118,7 @@ In most places in a workflow, the only types of variables that you can use are e When you set a custom environment variable, you cannot use any of the default environment variable names. For a complete list of these, see "[Default environment variables](#default-environment-variables)" below. If you attempt to override the value of one of these default environment variables, the assignment is ignored. -Any new environment variables you set that point to a location on the filesystem should have a `_PATH` suffix. The `HOME`, `GITHUB_ENV`, and `GITHUB_WORKSPACE` default environment variables are exceptions to this convention. +Any new environment variables you set that point to a location on the filesystem should have a `_PATH` suffix. The `GITHUB_ENV` and `GITHUB_WORKSPACE` default environment variables are exceptions to this convention. ## Default environment variables diff --git a/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md index d4f33140a6..ed6b379be2 100644 --- a/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md +++ b/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -12,6 +12,8 @@ versions: In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. +When {% data variables.actions.hosted_runner %}s are enabled for your organization, a default runner group is automatically created for you with a set of four pre-configured {% data variables.actions.hosted_runner %}s. + When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. ## Machine specs for {% data variables.actions.hosted_runner %}s diff --git a/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index 147ddb0948..e743a41842 100644 --- a/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -1,7 +1,7 @@ --- -title: 缓存依赖项以加快工作流程 -shortTitle: Caching dependencies -intro: 为了使工作流程更快、更高效,可以为依赖项及其他经常重复使用的文件创建和使用缓存。 +title: Caching dependencies to speed up workflows +shortTitle: Cache dependencies +intro: 'To make your workflows faster and more efficient, you can create and use caches for dependencies and other commonly reused files.' redirect_from: - /github/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows - /actions/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows @@ -14,65 +14,60 @@ type: tutorial topics: - Workflows miniTocMaxHeadingLevel: 3 -ms.openlocfilehash: 558d5f186ce75d9ace6f6c6be63e2e3eaeff3230 -ms.sourcegitcommit: b0323777cfe4324a09552d0ea268d1afacc3da37 -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 08/17/2022 -ms.locfileid: '147580669' --- -## 关于缓存工作流程依赖项 -工作流程运行通常在不同运行之间重新使用相同的输出或下载的依赖项。 例如,Maven、Gradle、npm 和 Yarn 等软件包和依赖项管理工具都会对下载的依赖项保留本地缓存。 +## About caching workflow dependencies -{% data variables.product.prodname_dotcom %} 托管的运行器上的 {% ifversion fpt or ghec %} 作业在干净的运行器映像中启动,每次都必须下载依赖项,导致网络利用率提高、运行时间延长和成本增加。 {% endif %}为帮助加快重新创建依赖项等文件,{% data variables.product.prodname_dotcom %} 可以缓存你在工作流中经常使用的文件。 +Workflow runs often reuse the same outputs or downloaded dependencies from one run to another. For example, package and dependency management tools such as Maven, Gradle, npm, and Yarn keep a local cache of downloaded dependencies. -要缓存作业的依赖项,可以使用 {% data variables.product.prodname_dotcom %} 的 [`cache` 操作](https://github.com/actions/cache)。 该操作创建和还原由唯一键标识的缓存。 或者,如果要缓存下列包管理器,则使用其各自的 setup-* 操作需要最小配置并将为你创建和还原依赖项缓存。 +{% ifversion fpt or ghec %} Jobs on {% data variables.product.prodname_dotcom %}-hosted runners start in a clean runner image and must download dependencies each time, causing increased network utilization, longer runtime, and increased cost. {% endif %}To help speed up the time it takes to recreate files like dependencies, {% data variables.product.prodname_dotcom %} can cache files you frequently use in workflows. -| 包管理器 | 用于缓存的 setup-* 操作 | +To cache dependencies for a job, you can use {% data variables.product.prodname_dotcom %}'s [`cache` action](https://github.com/actions/cache). The action creates and restores a cache identified by a unique key. Alternatively, if you are caching the package managers listed below, using their respective setup-* actions requires minimal configuration and will create and restore dependency caches for you. + +| Package managers | setup-* action for caching | |---|---| -| npm、Yarn、pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) | -| pip、pipenv、Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) | -| Gradle、Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) | +| npm, Yarn, pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) | +| pip, pipenv, Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) | +| Gradle, Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) | | RubyGems | [setup-ruby](https://github.com/ruby/setup-ruby#caching-bundle-install-automatically) | | Go `go.sum` | [setup-go](https://github.com/actions/setup-go#caching-dependency-files-and-build-outputs) | {% warning %} -警告:{% ifversion fpt or ghec %}将缓存与 {% data variables.product.prodname_actions %} 结合使用时,请注意以下几点: +**Warning**: {% ifversion fpt or ghec %}Be mindful of the following when using caching with {% data variables.product.prodname_actions %}: -* {% endif %}建议不要在缓存中存储任何敏感信息。 例如,敏感信息可以包括存储在缓存路径的文件中的访问令牌或登录凭据。 此外,命令行接口 (CLI) 程序(例如 `docker login`)可以将访问凭据保存在配置文件中。 具有读取访问权限的任何人都可以在存储库上创建拉取请求并访问缓存的内容。 仓库的复刻也可在基本分支上创建拉取请求,并在基本分支上访问缓存。 +* {% endif %}We recommend that you don't store any sensitive information in the cache. For example, sensitive information can include access tokens or login credentials stored in a file in the cache path. Also, command line interface (CLI) programs like `docker login` can save access credentials in a configuration file. Anyone with read access can create a pull request on a repository and access the contents of a cache. Forks of a repository can also create pull requests on the base branch and access caches on the base branch. {%- ifversion fpt or ghec %} -* 使用自托管运行器时,工作流运行中的缓存存储在 {% data variables.product.company_short %} 拥有的云存储上。 客户拥有的存储解决方案仅适用于 {% data variables.product.prodname_ghe_server %}。 +* When using self-hosted runners, caches from workflow runs are stored on {% data variables.product.company_short %}-owned cloud storage. A customer-owned storage solution is only available with {% data variables.product.prodname_ghe_server %}. {%- endif %} {% endwarning %} {% data reusables.actions.comparing-artifacts-caching %} -有关工作流运行工件的详细信息,请参阅“[使用工件持久保存工作流数据](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)”。 +For more information on workflow run artifacts, see "[Persisting workflow data using artifacts](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)." -## 访问缓存的限制 +## Restrictions for accessing a cache -工作流可以访问和还原当前分支、基础分支(包括复刻的存储库的基本分支)或默认分支(通常是 `main`)中创建的缓存。 例如,在默认分支上创建的缓存可从任何拉取请求访问。 此外,如果分支 `feature-b` 具有基础分支 `feature-a`,则在 `feature-b` 上触发的工作流将有权访问在默认分支 (`main`)、`feature-a` 和 `feature-b` 中创建的缓存。 +A workflow can access and restore a cache created in the current branch, the base branch (including base branches of forked repositories), or the default branch (usually `main`). For example, a cache created on the default branch would be accessible from any pull request. Also, if the branch `feature-b` has the base branch `feature-a`, a workflow triggered on `feature-b` would have access to caches created in the default branch (`main`), `feature-a`, and `feature-b`. -访问限制通过在不同分支之间创建逻辑边界来提供缓存隔离和安全。 例如,针对分支 `feature-c`(具有基础 `main`)的拉取请求无法访问为分支 `feature-a`(具有基础 `main`)创建的缓存。 +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). -仓库中的多个工作流程共享缓存条目。 可以从同一仓库和分支的另一个工作流程访问和恢复为工作流程中的分支创建的缓存。 +Multiple workflows within a repository share cache entries. A cache created for a branch within a workflow can be accessed and restored from another workflow for the same repository and branch. -## 使用 `cache` 操作 +## Using the `cache` action -此 [`cache` 操作](https://github.com/actions/cache)将尝试根据你提供 `key` 的还原缓存。 当操作找到缓存时,该操作会将缓存的文件还原到你配置的 `path`。 +The [`cache` action](https://github.com/actions/cache) will attempt to restore a cache based on the `key` you provide. When the action finds a cache, the action restores the cached files to the `path` you configure. -如果没有精确匹配,该操作在作业成功完成时会自动创建一个新缓存。 新缓存将使用你提供的 `key`,并包含你在 `path` 中指定的文件。 +If there is no exact match, the action automatically creates a new cache if the job completes successfully. The new cache will use the `key` you provided and contains the files you specify in `path`. -可以选择提供在 `key` 与现有缓存不匹配时要使用的 `restore-keys` 列表。 从另一个分支还原缓存时,`restore-keys` 列表非常有用,因为 `restore-keys` 可以部分匹配缓存密钥。 有关匹配 `restore-keys` 的详细信息,请参阅“[匹配缓存密钥](#matching-a-cache-key)”。 +You can optionally provide a list of `restore-keys` to use when the `key` doesn't match an existing cache. A list of `restore-keys` is useful when you are restoring a cache from another branch because `restore-keys` can partially match cache keys. For more information about matching `restore-keys`, see "[Matching a cache key](#matching-a-cache-key)." -### `cache` 操作的输入参数 +### Input parameters for the `cache` action -- `key`:必要。保存缓存时创建的密钥和用于搜索缓存的密钥。 它可以是变量、上下文值、静态字符串和函数的任何组合。 密钥最大长度为 512 个字符,密钥长度超过最大长度将导致操作失败。 -- `path`:必要。运行器上用于缓存或还原的路径。 - - 可以指定单个路径,也可以在单独的行上添加多个路径。 例如: +- `key`: **Required** The key created when saving a cache and the key used to search for a cache. It can be any combination of variables, context values, static strings, and functions. Keys have a maximum length of 512 characters, and keys longer than the maximum length will cause the action to fail. +- `path`: **Required** The path(s) on the runner to cache or restore. + - You can specify a single path, or you can add multiple paths on separate lines. For example: ``` - name: Cache Gradle packages @@ -82,9 +77,9 @@ ms.locfileid: '147580669' ~/.gradle/caches ~/.gradle/wrapper ``` - - 可以指定目录或单个文件,并且支持 glob 模式。 - - 可以指定绝对路径或相对于工作区目录的路径。 -- `restore-keys`:可选。包含备用还原键的字符串,每个还原键均放置在一个新行上。 如果 `key` 没有发生缓存命中,则按照提供的顺序依次使用这些还原键来查找和还原缓存。 例如: + - You can specify either directories or single files, and glob patterns are supported. + - You can specify absolute paths, or paths relative to the workspace directory. +- `restore-keys`: **Optional** A string containing alternative restore keys, with each restore key placed on a new line. If no cache hit occurs for `key`, these restore keys are used sequentially in the order provided to find and restore a cache. For example: {% raw %} ```yaml @@ -95,13 +90,13 @@ ms.locfileid: '147580669' ``` {% endraw %} -### `cache` 操作的输出参数 +### Output parameters for the `cache` action -- `cache-hit`:表示找到了键的精确匹配项的布尔值。 +- `cache-hit`: A boolean value to indicate an exact match was found for the key. -### 使用 `cache` 操作的示例 +### Example using the `cache` action -此示例在 `package-lock.json` 文件中的包更改时,或运行器的操作系统更改时,创建一个新的缓存。 缓存键使用上下文和表达式生成一个键值,其中包括运行器的操作系统和 `package-lock.json` 文件的 SHA-256 哈希。 +This example creates a new cache when the packages in `package-lock.json` file change, or when the runner's operating system changes. The cache key uses contexts and expressions to generate a key that includes the runner's operating system and a SHA-256 hash of the `package-lock.json` file. ```yaml{:copy} name: Caching with npm @@ -141,27 +136,27 @@ jobs: run: npm test ``` -当 `key` 匹配现有缓存时,被称为缓存命中,并且操作会将缓存的文件还原到 `path` 目录。 +When `key` matches an existing cache, it's called a _cache hit_, and the action restores the cached files to the `path` directory. -当 `key` 不匹配现有缓存时,则被称为缓存失误,在作业成功完成时会自动创建一个新缓存。 +When `key` doesn't match an existing cache, it's called a _cache miss_, and a new cache is automatically created if the job completes successfully. -发生缓存失误时,该操作还会搜索指定的 `restore-keys` 以查找任何匹配项: +When a cache miss occurs, the action also searches your specified `restore-keys` for any matches: -1. 如果提供 `restore-keys`,`cache` 操作将按顺序搜索与 `restore-keys` 列表匹配的任何缓存。 - - 当存在精确匹配时,该操作会将缓存中的文件还原到 `path` 目录。 - - 如果没有精确匹配,操作将会搜索恢复键值的部分匹配。 当操作找到部分匹配时,最近的缓存将还原到 `path` 目录。 -1. `cache` 操作完成,作业中的下一个步骤运行。 -1. 如果作业成功完成,则操作将自动创建一个包含 `path` 目录内容的新缓存。 +1. If you provide `restore-keys`, the `cache` action sequentially searches for any caches that match the list of `restore-keys`. + - When there is an exact match, the action restores the files in the cache to the `path` directory. + - If there are no exact matches, the action searches for partial matches of the restore keys. When the action finds a partial match, the most recent cache is restored to the `path` directory. +1. The `cache` action completes and the next step in the job runs. +1. If the job completes successfully, the action automatically creates a new cache with the contents of the `path` directory. -有关缓存匹配过程的更详细说明,请参阅“[匹配缓存键](#matching-a-cache-key)”。 创建缓存后,无法更改现有缓存的内容,但可以使用新键创建新缓存。 +For a more detailed explanation of the cache matching process, see "[Matching a cache key](#matching-a-cache-key)." Once you create a cache, you cannot change the contents of an existing cache but you can create a new cache with a new key. -### 使用上下文创建缓存键 +### Using contexts to create cache keys -缓存键可以包括 {% data variables.product.prodname_actions %} 支持的任何上下文、函数、文本和运算符。 有关详细信息,请参阅“[上下文](/actions/learn-github-actions/contexts)”和“[表达式](/actions/learn-github-actions/expressions)”。 +A cache key can include any of the contexts, functions, literals, and operators supported by {% data variables.product.prodname_actions %}. For more information, see "[Contexts](/actions/learn-github-actions/contexts)" and "[Expressions](/actions/learn-github-actions/expressions)." -使用表达式创建 `key` 使你能够在依赖项更改时自动创建新缓存。 +Using expressions to create a `key` allows you to automatically create a new cache when dependencies change. -例如,可以使用可计算 npm `package-lock.json` 文件的哈希的表达式创建 `key`。 因此,当构成 `package-lock.json` 文件的依赖项更改时,缓存键会更改,并自动创建新缓存。 +For example, you can create a `key` using an expression that calculates the hash of an npm `package-lock.json` file. So, when the dependencies that make up the `package-lock.json` file change, the cache key changes and a new cache is automatically created. {% raw %} ```yaml @@ -169,17 +164,17 @@ npm-${{ hashFiles('package-lock.json') }} ``` {% endraw %} -{% data variables.product.prodname_dotcom %} 计算表达式 `hash "package-lock.json"` 以派生最终的 `key`。 +{% data variables.product.prodname_dotcom %} evaluates the expression `hash "package-lock.json"` to derive the final `key`. ```yaml npm-d5ea0750 ``` -### 使用 `cache` 操作的输出 +### Using the output of the `cache` action -可以使用 `cache` 操作的输出,以根据发生的是缓存命中还是缓存失误来执行某些操作。 找到指定 `key` 的缓存的精确匹配时,`cache-hit` 输出设置为 `true`。 +You can use the output of the `cache` action to do something based on whether a cache hit or miss occurred. When an exact match is found for a cache for the specified `key`, the `cache-hit` output is set to `true`. -在上面的示例工作流中,有一个步骤会列出发生缓存失误时节点模块的状态: +In the example workflow above, there is a step that lists the state of the Node modules if a cache miss occurred: ```yaml - if: {% raw %}${{ steps.cache-npm.outputs.cache-hit != 'true' }}{% endraw %} @@ -188,13 +183,13 @@ npm-d5ea0750 run: npm list ``` -## 匹配缓存键 +## Matching a cache key -`cache` 操作首先在包含工作流运行的分支中搜索 `key` 和 `restore-keys` 的缓存命中。 如果当前分支中没有命中,`cache` 操作将在父分支和上游分支中搜索 `key` 和 `restore-keys`。 +The `cache` action first searches for cache hits for `key` and `restore-keys` in the branch containing the workflow run. If there are no hits in the current branch, the `cache` action searches for `key` and `restore-keys` in the parent branch and upstream branches. -通过 `restore-keys`,你可以指定当 `key` 中发生缓存失误时要使用的备用还原键列表。 您可以创建从最具体到最不具体的多个恢复键。 `cache` 操作按顺序搜索 `restore-keys`。 当键不直接匹配时,操作将搜索以恢复键为前缀的键。 如果恢复键值有多个部分匹配项,操作将返回最近创建的缓存。 +`restore-keys` allows you to specify a list of alternate restore keys to use when there is a cache miss on `key`. You can create multiple restore keys ordered from the most specific to least specific. The `cache` action searches the `restore-keys` in sequential order. When a key doesn't match directly, the action searches for keys prefixed with the restore key. If there are multiple partial matches for a restore key, the action returns the most recently created cache. -### 使用多个恢复键值的示例 +### Example using multiple restore keys {% raw %} ```yaml @@ -205,7 +200,7 @@ restore-keys: | ``` {% endraw %} -运行器将计算表达式,这些表达式解析为以下 `restore-keys`: +The runner evaluates the expressions, which resolve to these `restore-keys`: {% raw %} ```yaml @@ -216,13 +211,13 @@ restore-keys: | ``` {% endraw %} -还原键 `npm-feature-` 与以字符串 `npm-feature-` 开头的任何键匹配。 例如,`npm-feature-fd3052de` 和 `npm-feature-a9b253ff` 这两个键都与还原键匹配。 将使用创建日期最新的缓存。 此示例中的键值按以下顺序搜索: +The restore key `npm-feature-` matches any key that starts with the string `npm-feature-`. For example, both of the keys `npm-feature-fd3052de` and `npm-feature-a9b253ff` match the restore key. The cache with the most recent creation date would be used. The keys in this example are searched in the following order: -1. `npm-feature-d5ea0750` 匹配特定哈希。 -1. `npm-feature-` 匹配前缀为 `npm-feature-` 的缓存键。 -1. `npm-` 匹配前缀为 `npm-` 的任何键。 +1. **`npm-feature-d5ea0750`** matches a specific hash. +1. **`npm-feature-`** matches cache keys prefixed with `npm-feature-`. +1. **`npm-`** matches any keys prefixed with `npm-`. -#### 搜索优先级示例 +#### Example of search priority ```yaml key: @@ -232,30 +227,81 @@ restore-keys: | npm- ``` -例如,如果拉取请求包含 `feature` 分支,并以默认分支 (`main`) 为目标,则该操作将按以下顺序搜索 `key` 和 `restore-keys`: +For example, if a pull request contains a `feature` branch and targets the default branch (`main`), the action searches for `key` and `restore-keys` in the following order: -1. `feature` 分支中的键 `npm-feature-d5ea0750` -1. `feature` 分支中的键 `npm-feature-` -1. `feature` 分支中的键 `npm-` -1. `main` 分支中的键 `npm-feature-d5ea0750` -1. `main` 分支中的键 `npm-feature-` -1. `main` 分支中的键 `npm-` +1. Key `npm-feature-d5ea0750` in the `feature` branch +1. Key `npm-feature-` in the `feature` branch +1. Key `npm-` in the `feature` branch +1. Key `npm-feature-d5ea0750` in the `main` branch +1. Key `npm-feature-` in the `main` branch +1. Key `npm-` in the `main` branch -## 使用限制和收回政策 +## Usage limits and eviction policy -{% data variables.product.prodname_dotcom %} 将删除 7 天内未被访问的任何缓存条目。 可以存储的缓存数没有限制,但存储库中所有缓存的总大小限制{% ifversion actions-cache-policy-apis %}。 默认情况下,每个存储库的限制为 10 GB,但根据企业所有者或存储库管理员设置的策略,此限制可能有所不同。{% else %}为 10 GB。{% endif %} +{% data variables.product.prodname_dotcom %} will remove any cache entries that have not been accessed in over 7 days. There is no limit on the number of caches you can store, but the total size of all caches in a repository is limited{% ifversion actions-cache-policy-apis %}. By default, the limit is 10 GB per repository, but this limit might be different depending on policies set by your enterprise owners or repository administrators.{% else %} to 10 GB.{% endif %} -{% data reusables.actions.cache-eviction-process %} +{% data reusables.actions.cache-eviction-process %} {% ifversion actions-cache-ui %}The cache eviction process may cause cache thrashing, where caches are created and deleted at a high frequency. To reduce this, you can review the caches for a repository and take corrective steps, such as removing caching from specific workflows. For more information, see "[Managing caches](#managing-caches)."{% endif %}{% ifversion actions-cache-admin-ui %} You can also increase the cache size limit for a repository. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)." + +{% elsif actions-cache-policy-apis %} + +For information on changing the policies for the repository cache size limit, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)" and "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)." -{% ifversion actions-cache-policy-apis %} 有关更改存储库缓存大小限制的策略的信息,请参阅“[在企业中强制实施 {% data variables.product.prodname_actions %} 的策略](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-cache-storage-in-your-enterprise)”和“[管理存储库的 {% data variables.product.prodname_actions %} 设置](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-cache-storage-for-a-repository)”。 {% endif %} {% ifversion actions-cache-management %} -## 管理缓存 +## Managing caches -可以使用 {% data variables.product.product_name %} REST API 来管理缓存。 {% ifversion actions-cache-list-delete-apis %}可以使用 API 列出和删除缓存条目,并查看缓存使用情况。{% elsif actions-cache-management %}目前,可以使用 API 查看缓存使用情况,将来的更新中预期会有更多功能。{% endif %}有关详细信息,请参阅“[{% data variables.product.prodname_actions %} 缓存](/rest/actions/cache)”REST API 文档。 +{% ifversion actions-cache-ui %} -你还可以安装 {% data variables.product.prodname_cli %} 扩展来从命令行管理缓存。 有关扩展的详细信息,请参阅[扩展文档](https://github.com/actions/gh-actions-cache#readme)。 有关 {% data variables.product.prodname_cli %} 扩展的详细信息,请参阅“[使用 GitHub CLI 扩展](/github-cli/github-cli/using-github-cli-extensions)”。 +To manage caches created from your workflows, you can: + +- View a list of all cache entries for a repository. +- Filter and sort the list of caches using specific metadata such as cache size, creation time, or last accessed time. +- Delete cache entries from a repository. +- Monitor aggregate cache usage for repositories and organizations. + +There are multiple ways to manage caches for your repositories: + +- Using the {% data variables.product.prodname_dotcom %} web interface, as shown below. +- Using the REST API. For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation. +- Installing a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information, see the [gh-actions-cache](https://github.com/actions/gh-actions-cache) extension. + +{% else %} + +You can use the {% data variables.product.product_name %} REST API to manage your caches. {% ifversion actions-cache-list-delete-apis %}You can use the API to list and delete cache entries, and see your cache usage.{% elsif actions-cache-management %}At present, you can use the API to see your cache usage, with more functionality expected in future updates.{% endif %} For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation. + +You can also install a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. For more information about the extension, see [the extension documentation](https://github.com/actions/gh-actions-cache#readme). For more information about {% data variables.product.prodname_cli %} extensions, see "[Using GitHub CLI extensions](/github-cli/github-cli/using-github-cli-extensions)." + +{% endif %} + +{% ifversion actions-cache-ui %} + +### Viewing cache entries + +You can use the web interface to view a list of cache entries for a repository. In the cache list, you can see how much disk space each cache is using, when the cache was created, and when the cache was last used. + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.actions-tab %} +{% data reusables.repositories.actions-cache-list %} +1. Review the list of cache entries for the repository. + + * To search for cache entries used for a specific branch, click the **Branch** dropdown menu and select a branch. The cache list will display all of the caches used for the selected branch. + * To search for cache entries with a specific cache key, use the syntax `key: key-name` in the **Filter caches** field. The cache list will display caches from all branches where the key was used. + + ![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-entry-list.png) + +### Deleting cache entries + +Users with `write` access to a repository can use the {% data variables.product.prodname_dotcom %} web interface to delete cache entries. + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.actions-tab %} +{% data reusables.repositories.actions-cache-list %} +1. To the right of the cache entry you want to delete, click {% octicon "trash" aria-label="The trash icon" %}. + + ![Screenshot of the list of cache entries](/assets/images/help/repository/actions-cache-delete.png) + +{% endif %} {% endif %} diff --git a/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md b/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md index 0513b27e5c..3bca1364de 100644 --- a/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md +++ b/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/cluster-network-configuration.md @@ -1,6 +1,6 @@ --- -title: 群集网络配置 -intro: '{% data variables.product.prodname_ghe_server %} 集群依靠正确的 DNS 名称解析、负载均衡以及节点之间的通信来正常运行。' +title: Cluster network configuration +intro: '{% data variables.product.prodname_ghe_server %} clustering relies on proper DNS name resolution, load balancing, and communication between nodes to operate properly.' redirect_from: - /enterprise/admin/clustering/cluster-network-configuration - /enterprise/admin/enterprise-management/cluster-network-configuration @@ -14,68 +14,62 @@ topics: - Infrastructure - Networking shortTitle: Configure a cluster network -ms.openlocfilehash: d6e4d50077cccc3e5582be0af39bdae0046cd8c8 -ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 09/10/2022 -ms.locfileid: '145098083' --- -## 网络注意事项 +## Network considerations -对于集群而言,最简单的网络设计是将节点置于单个 LAN 上。 如果群集必须跨子网,我们不建议在网络之间配置任何防火墙规则。 节点之间的延迟应小于 1 毫秒。 +The simplest network design for clustering is to place the nodes on a single LAN. If a cluster must span subnetworks, we do not recommend configuring any firewall rules between the networks. The latency between nodes should be less than 1 millisecond. -{% ifversion ghes %}为获取高可用性,具有主动节点的网络与具有被动节点的网络之间的延迟必须小于 70 毫秒。 我们不建议在两个网络之间配置防火墙。{% endif %} +{% data reusables.enterprise_clustering.network-latency %} -### 最终用户的应用程序端口 +### Application ports for end users -应用程序端口为最终用户提供 Web 应用程序和 Git 访问。 +Application ports provide web application and Git access for end users. -| 端口 | 说明 | 加密 | +| Port | Description | Encrypted | | :------------- | :------------- | :------------- | -| 22/TCP | 通过 SSH 访问 Git | 是 | -| 25/TCP | SMTP | 需要 STARTTLS | -| 80/TCP | HTTP | 否
(启用 SSL 后,此端口重定向到 HTTPS) | -| 443/TCP | HTTPS | 是 | -| 9418/TCP | 简单的 Git 协议端口
(以私密模式禁用) | 否 | +| 22/TCP | Git over SSH | Yes | +| 25/TCP | SMTP | Requires STARTTLS | +| 80/TCP | HTTP | No
(When SSL is enabled this port redirects to HTTPS) | +| 443/TCP | HTTPS | Yes | +| 9418/TCP | Simple Git protocol port
(Disabled in private mode) | No | -### 管理端口 +### Administrative ports -最终用户在使用基本应用程序时不需要管理端口。 +Administrative ports are not required for basic application use by end users. -| 端口 | 说明 | 加密 | +| Port | Description | Encrypted | | :------------- | :------------- | :------------- | -| ICMP | ICMP Ping | 否 | -| 122/TCP | 管理 SSH | 是 | -| 161/UDP | SNMP | 否 | -| 8080/TCP | Management Console HTTP | 否
(启用 SSL 后,此端口重定向到 HTTPS) | -| 8443/TCP | Management Console HTTPS | 是 | +| ICMP | ICMP Ping | No | +| 122/TCP | Administrative SSH | Yes | +| 161/UDP | SNMP | No | +| 8080/TCP | Management Console HTTP | No
(When SSL is enabled this port redirects to HTTPS) | +| 8443/TCP | Management Console HTTPS | Yes | -### 集群通信端口 +### Cluster communication ports -如果节点之间存在网络级防火墙,则需要访问这些端口。 节点之间的通信未加密。 这些端口不应从外部访问。 +If a network level firewall is in place between nodes, these ports will need to be accessible. The communication between nodes is not encrypted. These ports should not be accessible externally. -| 端口 | 说明 | +| Port | Description | | :------------- | :------------- | -| 1336/TCP | 内部 API | -| 3033/TCP | 内部 SVN 访问 | -| 3037/TCP | 内部 SVN 访问 | +| 1336/TCP | Internal API | +| 3033/TCP | Internal SVN access | +| 3037/TCP | Internal SVN access | | 3306/TCP | MySQL | -| 4486/TCP | 管理者访问 | -| 5115/TCP | 存储后端 | -| 5208/TCP | 内部 SVN 访问 | +| 4486/TCP | Governor access | +| 5115/TCP | Storage backend | +| 5208/TCP | Internal SVN access | | 6379/TCP | Redis | | 8001/TCP | Grafana | -| 8090/TCP | 内部 GPG 访问 | -| 8149/TCP | GitRPC 文件服务器访问 | +| 8090/TCP | Internal GPG access | +| 8149/TCP | GitRPC file server access | | 8300/TCP | Consul | | 8301/TCP | Consul | | 8302/TCP | Consul | | 9000/TCP | Git Daemon | -| 9102/TCP | 页面文件服务器 | -| 9105/TCP | LFS 服务器 | +| 9102/TCP | Pages file server | +| 9105/TCP | LFS server | | 9200/TCP | Elasticsearch | -| 9203/TCP | 语义代码服务 | +| 9203/TCP | Semantic code service | | 9300/TCP | Elasticsearch | | 11211/TCP | Memcache | | 161/UDP | SNMP | @@ -84,42 +78,42 @@ ms.locfileid: '145098083' | 8302/UDP | Consul | | 25827/UDP | Collectd | -## 配置负载均衡器 +## Configuring a load balancer - 我们建议使用基于 TCP 的外部负载均衡器,它支持 PROXY 协议来跨节点分配流量。 请考虑以下负载均衡器配置: + We recommend an external TCP-based load balancer that supports the PROXY protocol to distribute traffic across nodes. Consider these load balancer configurations: - - TCP 端口(如下所示)应转发到运行 `web-server` 服务的节点。 这些是提供外部客户端请求的唯一节点。 - - 不应启用粘性会话。 + - TCP ports (shown below) should be forwarded to nodes running the `web-server` service. These are the only nodes that serve external client requests. + - Sticky sessions shouldn't be enabled. {% data reusables.enterprise_installation.terminating-tls %} -## 处理客户端连接信息 +## Handling client connection information -由于客户端与集群的连接来自负载均衡器,因此客户端 IP 地址可能会丢失。 要正确捕获客户端连接信息,需要考虑其他因素。 +Because client connections to the cluster come from the load balancer, the client IP address can be lost. To properly capture the client connection information, additional consideration is required. {% data reusables.enterprise_clustering.proxy_preference %} {% data reusables.enterprise_clustering.proxy_xff_firewall_warning %} -### 在 {% data variables.product.prodname_ghe_server %} 上启用 PROXY 支持 +### Enabling PROXY support on {% data variables.product.prodname_ghe_server %} -我们强烈建议您为实例和负载均衡器启用 PROXY 支持。 +We strongly recommend enabling PROXY support for both your instance and the load balancer. {% data reusables.enterprise_installation.proxy-incompatible-with-aws-nlbs %} - - 对于您的实例,请使用以下命令: + - For your instance, use this command: ```shell $ ghe-config 'loadbalancer.proxy-protocol' 'true' && ghe-cluster-config-apply ``` - - 对于负载均衡器,请使用供应商提供的说明。 + - For the load balancer, use the instructions provided by your vendor. {% data reusables.enterprise_clustering.proxy_protocol_ports %} -### 在 {% data variables.product.prodname_ghe_server %} 上启用 X-Forwarded-For 支持 +### Enabling X-Forwarded-For support on {% data variables.product.prodname_ghe_server %} {% data reusables.enterprise_clustering.x-forwarded-for %} -若要启用 `X-Forwarded-For` 标头,请使用以下命令: +To enable the `X-Forwarded-For` header, use this command: ```shell $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply @@ -127,11 +121,12 @@ $ ghe-config 'loadbalancer.http-forward' 'true' && ghe-cluster-config-apply {% data reusables.enterprise_clustering.without_proxy_protocol_ports %} -### 配置状态检查 -如果预配置的检查在该节点上失败,则状态检查允许负载均衡器停止向未响应的节点发送流量。 如果集群节点出现故障,则与冗余节点配对的状态检查可提供高可用性。 +### Configuring Health Checks +Health checks allow a load balancer to stop sending traffic to a node that is not responding if a pre-configured check fails on that node. If a cluster node fails, health checks paired with redundant nodes provides high availability. -{% data reusables.enterprise_clustering.health_checks %} {% data reusables.enterprise_site_admin_settings.maintenance-mode-status %} +{% data reusables.enterprise_clustering.health_checks %} +{% data reusables.enterprise_site_admin_settings.maintenance-mode-status %} -## DNS 要求 +## DNS Requirements {% data reusables.enterprise_clustering.load_balancer_dns %} diff --git a/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md b/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md index d769b37ae7..a4a6b01075 100644 --- a/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md +++ b/translations/zh-CN/content/admin/enterprise-management/configuring-clustering/configuring-high-availability-replication-for-a-cluster.md @@ -1,6 +1,6 @@ --- -title: 为群集配置高可用性复制 -intro: '您可以在不同的位置配置整个 {% data variables.product.prodname_ghe_server %} 群集的被动副本,允许群集故障转移至冗余节点。' +title: Configuring high availability replication for a cluster +intro: 'You can configure a passive replica of your entire {% data variables.product.prodname_ghe_server %} cluster in a different location, allowing your cluster to fail over to redundant nodes.' miniTocMaxHeadingLevel: 3 redirect_from: - /enterprise/admin/enterprise-management/configuring-high-availability-replication-for-a-cluster @@ -14,86 +14,80 @@ topics: - High availability - Infrastructure shortTitle: Configure HA replication -ms.openlocfilehash: 3663fe290fab6644c5650c3f1ff435dfae87bcf4 -ms.sourcegitcommit: fb047f9450b41b24afc43d9512a5db2a2b750a2a -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 09/11/2022 -ms.locfileid: '145100050' --- -## 关于集群的高可用性复制 +## About high availability replication for clusters -您可以配置 {% data variables.product.prodname_ghe_server %} 的群集部署以实现高可用性,其中一组相同的被动节点与活动群集中的节点同步。 如果硬件或软件故障影响具有活动群集的数据中心,您可以手动故障转移到副本节点,继续处理用户请求,以尽可能减少中断的影响。 +You can configure a cluster deployment of {% data variables.product.prodname_ghe_server %} for high availability, where an identical set of passive nodes sync with the nodes in your active cluster. If hardware or software failures affect the datacenter with your active cluster, you can manually fail over to the replica nodes and continue processing user requests, minimizing the impact of the outage. -在高可用性模式下,每个活动节点定期与相应的被动节点同步。 被动节点在待机状态下运行,不服务于应用程序或处理用户请求。 +In high availability mode, each active node syncs regularly with a corresponding passive node. The passive node runs in standby and does not serve applications or process user requests. -我们建议配置高可用性,作为 {% data variables.product.prodname_ghe_server %} 全面灾难恢复计划的一部分。 我们还建议进行定期备份。 有关详细信息,请参阅“[在设备上配置备份](/enterprise/admin/configuration/configuring-backups-on-your-appliance)”。 +We recommend configuring high availability as a part of a comprehensive disaster recovery plan for {% data variables.product.prodname_ghe_server %}. We also recommend performing regular backups. For more information, see "[Configuring backups on your appliance](/enterprise/admin/configuration/configuring-backups-on-your-appliance)." -## 先决条件 +## Prerequisites -### 硬件和软件 +### Hardware and software -对于活动群集中的每个现有节点,都需要预配第二个具有相同硬件资源的虚拟机。 例如,如果你的群集有 11 个节点,并且每个节点有 12 个 vCP、96 GB 的 RAM 和 750 GB 的附加存储,则必须预配 11 个新虚拟机,每个虚拟机具有 12 个 vCPU、96 GB 的 RAM 和 750 GB 的附加存储。 +For each existing node in your active cluster, you'll need to provision a second virtual machine with identical hardware resources. For example, if your cluster has 11 nodes and each node has 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage, you must provision 11 new virtual machines that each have 12 vCPUs, 96 GB of RAM, and 750 GB of attached storage. -在每个新虚拟机上,安装活动群集的节点上运行的相同版本 {% data variables.product.prodname_ghe_server %}。 您不需要上传许可证或执行任何其他配置。 有关详细信息,请参阅“[设置 {% data variables.product.prodname_ghe_server %} 实例](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)”。 +On each new virtual machine, install the same version of {% data variables.product.prodname_ghe_server %} that runs on the nodes in your active cluster. You don't need to upload a license or perform any additional configuration. For more information, see "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)." {% note %} -**注意:** 你打算用于高可用性副本的节点应该是独立的 {% data variables.product.prodname_ghe_server %} 实例。 不要将被动节点初始化为第二个群集。 +**Note**: The nodes that you intend to use for high availability replication should be standalone {% data variables.product.prodname_ghe_server %} instances. Don't initialize the passive nodes as a second cluster. {% endnote %} -### 网络 +### Network -您必须为预配的每个新节点分配一个静态 IP 地址,并且必须配置负载均衡器以接受连接,并将其引导到群集前端层中的节点。 +You must assign a static IP address to each new node that you provision, and you must configure a load balancer to accept connections and direct them to the nodes in your cluster's front-end tier. -我们不建议在具有主动群集的网络和具有被动群集的网络之间配置防火墙。 具有主动节点的网络与具有被动节点的网络之间的延迟必须小于 70 毫秒。 有关被动群集中节点之间网络连接的详细信息,请参阅“[网络配置](/enterprise/admin/enterprise-management/cluster-network-configuration)”。 +{% data reusables.enterprise_clustering.network-latency %} For more information about network connectivity between nodes in the passive cluster, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration)." -## 为群集创建高可用性副本 +## Creating a high availability replica for a cluster -- [将主动节点分配到主数据中心](#assigning-active-nodes-to-the-primary-datacenter) -- [将被动节点添加到群集配置文件](#adding-passive-nodes-to-the-cluster-configuration-file) -- [配置示例](#example-configuration) +- [Assigning active nodes to the primary datacenter](#assigning-active-nodes-to-the-primary-datacenter) +- [Adding passive nodes to the cluster configuration file](#adding-passive-nodes-to-the-cluster-configuration-file) +- [Example configuration](#example-configuration) -### 将主动节点分配到主数据中心 +### Assigning active nodes to the primary datacenter -在为被动节点定义辅助数据中心之前,请确保将活动节点分配给主数据中心。 +Before you define a secondary datacenter for your passive nodes, ensure that you assign your active nodes to the primary datacenter. {% data reusables.enterprise_clustering.ssh-to-a-node %} {% data reusables.enterprise_clustering.open-configuration-file %} -3. 记下群集主数据中心的名称。 群集配置文件顶部的 `[cluster]` 部分使用 `primary-datacenter` 键值对定义主数据中心的名称。 默认情况下,群集的主数据中心名为 `default`。 +3. Note the name of your cluster's primary datacenter. The `[cluster]` section at the top of the cluster configuration file defines the primary datacenter's name, using the `primary-datacenter` key-value pair. By default, the primary datacenter for your cluster is named `default`. ```shell [cluster] - mysql-master = HOSTNAME - redis-master = HOSTNAME + mysql-master = HOSTNAME + redis-master = HOSTNAME primary-datacenter = default ``` - - (可选)通过编辑 `primary-datacenter` 的值,将主数据中心的名称更改为更具描述性或更准确的值。 + - Optionally, change the name of the primary datacenter to something more descriptive or accurate by editing the value of `primary-datacenter`. -4. {% data reusables.enterprise_clustering.configuration-file-heading %} 在每个节点标题下,添加新的键值对,以将节点分配给数据中心。 使用上述第 3 步中 `primary-datacenter` 所用的值。 例如,如果要使用默认名称 (`default`),请将以下键值对添加到每个节点的部分。 +4. {% data reusables.enterprise_clustering.configuration-file-heading %} Under each node's heading, add a new key-value pair to assign the node to a datacenter. Use the same value as `primary-datacenter` from step 3 above. For example, if you want to use the default name (`default`), add the following key-value pair to the section for each node. ``` datacenter = default ``` - 完成后,群集配置文件中每个节点的部分应如下所示。 {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %} + When you're done, the section for each node in the cluster configuration file should look like the following example. {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %} ```shell - [cluster "HOSTNAME"] + [cluster "HOSTNAME"] datacenter = default - hostname = HOSTNAME - ipv4 = IP ADDRESS + hostname = HOSTNAME + ipv4 = IP-ADDRESS ... ... ``` {% note %} - **注意:** 如果在步骤 3 中更改了主数据中心的名称,请在每个节点的部分找到 `consul-datacenter` 键值对,然后将值更改为重命名的主数据中心。 例如,如果已将主数据中心命名为 `primary`,请为每个节点使用以下键值对。 + **Note**: If you changed the name of the primary datacenter in step 3, find the `consul-datacenter` key-value pair in the section for each node and change the value to the renamed primary datacenter. For example, if you named the primary datacenter `primary`, use the following key-value pair for each node. ``` consul-datacenter = primary @@ -105,123 +99,123 @@ ms.locfileid: '145100050' {% data reusables.enterprise_clustering.configuration-finished %} -在 {% data variables.product.prodname_ghe_server %} 返回提示符,您已完成将节点分配给群集的主数据中心。 +After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished assigning your nodes to the cluster's primary datacenter. -### 将被动节点添加到群集配置文件 +### Adding passive nodes to the cluster configuration file -要配置高可用性,必须为群集中的每个主动节点定义相应的被动节点。 以下说明创建用于定义主动节点和被动节点的新群集配置。 你将: +To configure high availability, you must define a corresponding passive node for every active node in your cluster. The following instructions create a new cluster configuration that defines both active and passive nodes. You will: -- 创建主动群集配置文件的副本。 -- 编辑副本以定义与主动节点对应的被动节点,添加预配的新虚拟机的 IP 地址。 -- 将群集配置的修改副本合并回主动配置。 -- 应用新配置以开始复制。 +- Create a copy of the active cluster configuration file. +- Edit the copy to define passive nodes that correspond to the active nodes, adding the IP addresses of the new virtual machines that you provisioned. +- Merge the modified copy of the cluster configuration back into your active configuration. +- Apply the new configuration to start replication. -有关示例配置,请参阅“[示例配置](#example-configuration)”。 +For an example configuration, see "[Example configuration](#example-configuration)." -1. 对于群集中的每个节点,预配规范相同的匹配虚拟机,运行相同版本的 {% data variables.product.prodname_ghe_server %}。 记下每个新群集节点的 IPv4 地址和主机名。 有关详细信息,请参阅“[先决条件](#prerequisites)”。 +1. For each node in your cluster, provision a matching virtual machine with identical specifications, running the same version of {% data variables.product.prodname_ghe_server %}. Note the IPv4 address and hostname for each new cluster node. For more information, see "[Prerequisites](#prerequisites)." {% note %} - **注意:** 如果在故障转移后重新配置高可用性,可以改用主数据中心的旧节点。 + **Note**: If you're reconfiguring high availability after a failover, you can use the old nodes from the primary datacenter instead. {% endnote %} {% data reusables.enterprise_clustering.ssh-to-a-node %} -3. 备份现有群集配置。 +3. Back up your existing cluster configuration. ``` cp /data/user/common/cluster.conf ~/$(date +%Y-%m-%d)-cluster.conf.backup ``` -4. 在临时位置创建现有群集配置文件的副本,例如 /home/admin/cluster-passive.conf。 删除 IP 地址的唯一键值对 (`ipv*`)、UUID (`uuid`) 和 WireGuard 的公钥 (`wireguard-pubkey`)。 +4. Create a copy of your existing cluster configuration file in a temporary location, like _/home/admin/cluster-passive.conf_. Delete unique key-value pairs for IP addresses (`ipv*`), UUIDs (`uuid`), and public keys for WireGuard (`wireguard-pubkey`). ``` grep -Ev "(?:|ipv|uuid|vpn|wireguard\-pubkey)" /data/user/common/cluster.conf > ~/cluster-passive.conf ``` -5. 从上一步中复制的临时群集配置文件删除 `[cluster]` 部分。 +5. Remove the `[cluster]` section from the temporary cluster configuration file that you copied in the previous step. ``` git config -f ~/cluster-passive.conf --remove-section cluster ``` -6. 确定在其中预配了被动节点的辅助数据中心的名称,然后使用新的数据中心名称更新临时群集配置文件。 将 `SECONDARY` 替换为所选名称。 +6. Decide on a name for the secondary datacenter where you provisioned your passive nodes, then update the temporary cluster configuration file with the new datacenter name. Replace `SECONDARY` with the name you choose. ```shell - sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf + sed -i 's/datacenter = default/datacenter = SECONDARY/g' ~/cluster-passive.conf ``` -7. 确定被动节点主机名的模式。 +7. Decide on a pattern for the passive nodes' hostnames. {% warning %} - **警告**:被动节点的主机名必须是唯一的,并且与对应主动节点的主机名不同。 + **Warning**: Hostnames for passive nodes must be unique and differ from the hostname for the corresponding active node. {% endwarning %} -8. 在文本编辑器中打开步骤 3 中的临时群集配置文件。 例如,您可以使用 Vim。 +8. Open the temporary cluster configuration file from step 3 in a text editor. For example, you can use Vim. ```shell sudo vim ~/cluster-passive.conf ``` -9. 在临时群集配置文件中的每个部分,更新节点的配置。 {% data reusables.enterprise_clustering.configuration-file-heading %} +9. In each section within the temporary cluster configuration file, update the node's configuration. {% data reusables.enterprise_clustering.configuration-file-heading %} - - 根据上面步骤 7 中选择的模式,将部分标题中引用的主机名和部分中 `hostname` 的值更改为被动节点的主机名。 - - 新增一个名为 `ipv4` 的密钥,并将值设置为被动节点的静态 IPv4 地址。 - - 添加新的键值对 `replica = enabled`。 + - Change the quoted hostname in the section heading and the value for `hostname` within the section to the passive node's hostname, per the pattern you chose in step 7 above. + - Add a new key named `ipv4`, and set the value to the passive node's static IPv4 address. + - Add a new key-value pair, `replica = enabled`. ```shell - [cluster "NEW PASSIVE NODE HOSTNAME"] + [cluster "NEW PASSIVE NODE HOSTNAME"] ... - hostname = NEW PASSIVE NODE HOSTNAME - ipv4 = NEW PASSIVE NODE IPV4 ADDRESS + hostname = NEW PASSIVE NODE HOSTNAME + ipv4 = NEW PASSIVE NODE IPV4 ADDRESS replica = enabled ... ... ``` -10. 将步骤 4 中创建的临时群集配置文件的内容附加到活动的配置文件。 +10. Append the contents of the temporary cluster configuration file that you created in step 4 to the active configuration file. ```shell cat ~/cluster-passive.conf >> /data/user/common/cluster.conf ``` -11. 在辅助数据中心中指定主 MySQL 和 Redis 节点。 将 `REPLICA MYSQL PRIMARY HOSTNAME` 和 `REPLICA REDIS PRIMARY HOSTNAME` 替换为预配的被动节点的主机名,以匹配现有的 MySQL 和 Redis 主节点。 +11. Designate the primary MySQL and Redis nodes in the secondary datacenter. Replace `REPLICA MYSQL PRIMARY HOSTNAME` and `REPLICA REDIS PRIMARY HOSTNAME` with the hostnames of the passives node that you provisioned to match your existing MySQL and Redis primaries. ```shell - git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA MYSQL PRIMARY HOSTNAME - git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA REDIS PRIMARY HOSTNAME + git config -f /data/user/common/cluster.conf cluster.mysql-master-replica REPLICA-MYSQL-PRIMARY-HOSTNAME + git config -f /data/user/common/cluster.conf cluster.redis-master-replica REPLICA-REDIS-PRIMARY-HOSTNAME ``` {% warning %} - **警告**:在继续之前请检查群集配置文件。 + **Warning**: Review your cluster configuration file before proceeding. - - 在顶级 `[cluster]` 部分中,确保 `mysql-master-replica` 和 `redis-master-replica` 的值是辅助数据中心中被动节点的正确主机名,这些被动节点将在故障转移后用作 MySQL 和 Redis 主节点。 - - 在名为 [cluster "ACTIVE NODE HOSTNAME"] 的主动节点的每个部分中,仔细检查以下键值对。 - - `datacenter` 应与顶级 `[cluster]` 部分中 `primary-datacenter` 的值匹配。 - - `consul-datacenter` 应与 `datacenter` 的值匹配,该值应与顶级 `[cluster]` 部分中 `primary-datacenter` 的值相同。 - - 确保每个主动节点的配置与包含相同角色的被动节点的配置具有相对应的部分 。 在被动节点的每个部分中,仔细检查每个键值对。 - - `datacenter` 应与其他所有被动节点匹配。 - - `consul-datacenter` 应与其他所有被动节点匹配。 - - `hostname` 应与部分标题中的主机名匹配。 - - `ipv4` 应与节点的唯一静态 IPv4 地址匹配。 - - `replica` 应配置为 `enabled`。 - - 利用机会删除已经不再使用的离线节点的部分。 + - In the top-level `[cluster]` section, ensure that the values for `mysql-master-replica` and `redis-master-replica` are the correct hostnames for the passive nodes in the secondary datacenter that will serve as the MySQL and Redis primaries after a failover. + - In each section for an active node named [cluster "ACTIVE NODE HOSTNAME"], double-check the following key-value pairs. + - `datacenter` should match the value of `primary-datacenter` in the top-level `[cluster]` section. + - `consul-datacenter` should match the value of `datacenter`, which should be the same as the value for `primary-datacenter` in the top-level `[cluster]` section. + - Ensure that for each active node, the configuration has **one** corresponding section for **one** passive node with the same roles. In each section for a passive node, double-check each key-value pair. + - `datacenter` should match all other passive nodes. + - `consul-datacenter` should match all other passive nodes. + - `hostname` should match the hostname in the section heading. + - `ipv4` should match the node's unique, static IPv4 address. + - `replica` should be configured as `enabled`. + - Take the opportunity to remove sections for offline nodes that are no longer in use. - 要查看示例配置,请参阅“[示例配置](#example-configuration)”。 + To review an example configuration, see "[Example configuration](#example-configuration)." {% endwarning %} -13. 初始化新群集配置。 {% data reusables.enterprise.use-a-multiplexer %} +13. Initialize the new cluster configuration. {% data reusables.enterprise.use-a-multiplexer %} ```shell ghe-cluster-config-init ``` -14. 初始化完成后,{% data variables.product.prodname_ghe_server %} 将显示以下消息。 +14. After the initialization finishes, {% data variables.product.prodname_ghe_server %} displays the following message. ```shell Finished cluster initialization @@ -231,33 +225,33 @@ ms.locfileid: '145100050' {% data reusables.enterprise_clustering.configuration-finished %} -17. 配置负载均衡器,如果故障转移到被动节点,该均衡器将接受来自用户的连接。 有关详细信息,请参阅“[群集网络配置](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)”。 +17. Configure a load balancer that will accept connections from users if you fail over to the passive nodes. For more information, see "[Cluster network configuration](/enterprise/admin/enterprise-management/cluster-network-configuration#configuring-a-load-balancer)." -您已完成为群集中的节点配置高可用性副本。 每个主动节点开始将配置和数据复制到其对应的被动节点,并且您可以在发生故障时将流量直接引导至辅助数据中心的负载均衡器。 有关故障转移的详细信息,请参阅“[发起到副本群集的故障转移](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)”。 +You've finished configuring high availability replication for the nodes in your cluster. Each active node begins replicating configuration and data to its corresponding passive node, and you can direct traffic to the load balancer for the secondary datacenter in the event of a failure. For more information about failing over, see "[Initiating a failover to your replica cluster](/enterprise/admin/enterprise-management/initiating-a-failover-to-your-replica-cluster)." -### 配置示例 +### Example configuration -顶级 `[cluster]` 配置应如下例所示。 +The top-level `[cluster]` configuration should look like the following example. ```shell [cluster] - mysql-master = HOSTNAME OF ACTIVE MYSQL MASTER - redis-master = HOSTNAME OF ACTIVE REDIS MASTER - primary-datacenter = PRIMARY DATACENTER NAME - mysql-master-replica = HOSTNAME OF PASSIVE MYSQL MASTER - redis-master-replica = HOSTNAME OF PASSIVE REDIS MASTER + mysql-master = HOSTNAME-OF-ACTIVE-MYSQL-MASTER + redis-master = HOSTNAME-OF-ACTIVE-REDIS-MASTER + primary-datacenter = PRIMARY-DATACENTER-NAME + mysql-master-replica = HOSTNAME-OF-PASSIVE-MYSQL-MASTER + redis-master-replica = HOSTNAME-OF-PASSIVE-REDIS-MASTER mysql-auto-failover = false ... ``` -群集存储层中主动节点的配置应如下所示。 +The configuration for an active node in your cluster's storage tier should look like the following example. ```shell ... -[cluster "UNIQUE ACTIVE NODE HOSTNAME"] +[cluster "UNIQUE ACTIVE NODE HOSTNAME"] datacenter = default - hostname = UNIQUE ACTIVE NODE HOSTNAME - ipv4 = IPV4 ADDRESS + hostname = UNIQUE-ACTIVE-NODE-HOSTNAME + ipv4 = IPV4-ADDRESS consul-datacenter = default consul-server = true git-server = true @@ -268,26 +262,26 @@ ms.locfileid: '145100050' memcache-server = true metrics-server = true storage-server = true - vpn = IPV4 ADDRESS SET AUTOMATICALLY - uuid = UUID SET AUTOMATICALLY - wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY + vpn = IPV4 ADDRESS SET AUTOMATICALLY + uuid = UUID SET AUTOMATICALLY + wireguard-pubkey = PUBLIC KEY SET AUTOMATICALLY ... ``` -存储层中对应的被动节点的配置应如下所示。 +The configuration for the corresponding passive node in the storage tier should look like the following example. -- 与相应主动节点的重要区别以粗体显示。 -- {% data variables.product.prodname_ghe_server %} 自动为 `vpn`、`uuid` 和 `wireguard-pubkey` 分配值,因此不应为要初始化的被动节点定义值。 -- `*-server` 密钥定义的服务器角色与相应的主动节点匹配。 +- Important differences from the corresponding active node are **bold**. +- {% data variables.product.prodname_ghe_server %} assigns values for `vpn`, `uuid`, and `wireguard-pubkey` automatically, so you shouldn't define the values for passive nodes that you will initialize. +- The server roles, defined by `*-server` keys, match the corresponding active node. ```shell ... -[cluster "UNIQUE PASSIVE NODE HOSTNAME"] +[cluster "UNIQUE PASSIVE NODE HOSTNAME"] replica = enabled - ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES - datacenter = SECONDARY DATACENTER NAME - hostname = UNIQUE PASSIVE NODE HOSTNAME - consul-datacenter = SECONDARY DATACENTER NAME + ipv4 = IPV4 ADDRESS OF NEW VM WITH IDENTICAL RESOURCES + datacenter = SECONDARY DATACENTER NAME + hostname = UNIQUE PASSIVE NODE HOSTNAME + consul-datacenter = SECONDARY DATACENTER NAME consul-server = true git-server = true pages-server = true @@ -297,73 +291,73 @@ ms.locfileid: '145100050' memcache-server = true metrics-server = true storage-server = true - vpn = DO NOT DEFINE - uuid = DO NOT DEFINE - wireguard-pubkey = DO NOT DEFINE + vpn = DO NOT DEFINE + uuid = DO NOT DEFINE + wireguard-pubkey = DO NOT DEFINE ... ``` -## 监控主动与被动群集节点之间的复制 +## Monitoring replication between active and passive cluster nodes -群集中主动节点与被动节点之间的初始复制需要时间。 时间量取决于要复制的数据量和 {% data variables.product.prodname_ghe_server %} 的活动水平。 +Initial replication between the active and passive nodes in your cluster takes time. The amount of time depends on the amount of data to replicate and the activity levels for {% data variables.product.prodname_ghe_server %}. -您可以通过 {% data variables.product.prodname_ghe_server %} 系统管理 shell 使用命令行工具监控群集中任何节点的进度。 有关管理 shell 的详细信息,请参阅“[访问管理 shell (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)”。 +You can monitor the progress on any node in the cluster, using command-line tools available via the {% data variables.product.prodname_ghe_server %} administrative shell. For more information about the administrative shell, see "[Accessing the administrative shell (SSH)](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh)." -- 监控数据库的复制: +- Monitor replication of databases: ``` /usr/local/share/enterprise/ghe-cluster-status-mysql ``` -- 监控仓库和 Gist 数据的复制: +- Monitor replication of repository and Gist data: ``` ghe-spokes status ``` -- 监控附件和 LFS 数据的复制: +- Monitor replication of attachment and LFS data: ``` ghe-storage replication-status ``` -- 监控 Pages 数据的复制: +- Monitor replication of Pages data: ``` ghe-dpages replication-status ``` -你可以使用 `ghe-cluster-status` 查看群集的整体运行状况。 有关详细信息,请参阅“[命令行实用工具](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)”。 +You can use `ghe-cluster-status` to review the overall health of your cluster. For more information, see "[Command-line utilities](/enterprise/admin/configuration/command-line-utilities#ghe-cluster-status)." -## 故障转移后重新配置高可用性复制 +## Reconfiguring high availability replication after a failover -从群集的产动节点故障转移到群集的被动节点后,您可以通过两种方式重新配置高可用性副本。 +After you fail over from the cluster's active nodes to the cluster's passive nodes, you can reconfigure high availability replication in two ways. -### 预配和配置新的被动节点 +### Provisioning and configuring new passive nodes -故障转移后,您可以通过两种方式重新配置高可用性。 选择的方法将取决于故障转移的原因以及原始主动节点的状态。 +After a failover, you can reconfigure high availability in two ways. The method you choose will depend on the reason that you failed over, and the state of the original active nodes. -1. 为辅助数据中心中的每个新主动节点预配和配置一组新的被动节点。 +1. Provision and configure a new set of passive nodes for each of the new active nodes in your secondary datacenter. -2. 将旧的主动节点用作新的被动节点。 +2. Use the old active nodes as the new passive nodes. -重新配置高可用性的过程与高可用性的初始配置相同。 有关详细信息,请参阅“[为群集创建高可用性副本](#creating-a-high-availability-replica-for-a-cluster)”。 +The process for reconfiguring high availability is identical to the initial configuration of high availability. For more information, see "[Creating a high availability replica for a cluster](#creating-a-high-availability-replica-for-a-cluster)." -## 禁用群集的高可用性复制 +## Disabling high availability replication for a cluster -您可以停止复制到 {% data variables.product.prodname_ghe_server %} 群集部署的被动节点。 +You can stop replication to the passive nodes for your cluster deployment of {% data variables.product.prodname_ghe_server %}. {% data reusables.enterprise_clustering.ssh-to-a-node %} {% data reusables.enterprise_clustering.open-configuration-file %} -3. 在顶级 `[cluster]` 部分中,删除 `redis-master-replica` 和 `mysql-master-replica` 键值对。 +3. In the top-level `[cluster]` section, delete the `redis-master-replica`, and `mysql-master-replica` key-value pairs. -4. 删除被动节点的每个部分。 对于被动节点,`replica` 配置为 `enabled`。 +4. Delete each section for a passive node. For passive nodes, `replica` is configured as `enabled`. {% data reusables.enterprise_clustering.apply-configuration %} {% data reusables.enterprise_clustering.configuration-finished %} -在 {% data variables.product.prodname_ghe_server %} 返回提示后,您已完成禁用高可用性复制操作。 +After {% data variables.product.prodname_ghe_server %} returns you to the prompt, you've finished disabling high availability replication. diff --git a/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md b/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md index 082ae08fb5..b3f1c3ec05 100644 --- a/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md +++ b/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md @@ -1,6 +1,6 @@ --- -title: 创建高可用性副本 -intro: 在主动/被动配置中,副本设备是主设备的冗余副本。 如果主设备发生故障,高可用性模式允许副本作为主设备运行,从而最大限度地减少服务中断。 +title: Creating a high availability replica +intro: 'In an active/passive configuration, the replica appliance is a redundant copy of the primary appliance. If the primary appliance fails, high availability mode allows the replica to act as the primary appliance, allowing minimal service disruption.' redirect_from: - /enterprise/admin/installation/creating-a-high-availability-replica - /enterprise/admin/enterprise-management/creating-a-high-availability-replica @@ -13,94 +13,92 @@ topics: - High availability - Infrastructure shortTitle: Create HA replica -ms.openlocfilehash: 0b838049fe0d520be8cb88382314b25c5bba2b28 -ms.sourcegitcommit: dc42bb4a4826b414751ffa9eed38962c3e3fea8e -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 07/13/2022 -ms.locfileid: '146332758' --- {% data reusables.enterprise_installation.replica-limit %} -## 创建高可用性副本 +## Creating a high availability replica -1. 在所需平台上设置新的 {% data variables.product.prodname_ghe_server %} 设备。 副本设备应镜像主设备的 CPU、RAM 和存储设置。 建议您在独立环境中安装副本设备。 底层硬件、软件和网络组件应与主设备的相应部分隔离。 如果要使用云提供商,请使用单独的区域或分区。 有关详细信息,请参阅“[设置 {% data variables.product.prodname_ghe_server %} 实例](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance)”。 -1. 确保主设备和新的副本设备可以通过端口 122/TCP 和 1194/UDP 相互通信。 有关详细信息,请参阅“[网络端口](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)”。 -1. 在浏览器中,导航到新副本设备的 IP 地址并上传您的 {% data variables.product.prodname_enterprise %} 许可。 +1. Set up a new {% data variables.product.prodname_ghe_server %} appliance on your desired platform. The replica appliance should mirror the primary appliance's CPU, RAM, and storage settings. We recommend that you install the replica appliance in an independent environment. The underlying hardware, software, and network components should be isolated from those of the primary appliance. If you are a using a cloud provider, use a separate region or zone. For more information, see ["Setting up a {% data variables.product.prodname_ghe_server %} instance"](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance). +1. Ensure that the new appliance can communicate with all other appliances in this high availability environment over ports 122/TCP and 1194/UDP. For more information, see "[Network ports](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)." +1. In a browser, navigate to the new replica appliance's IP address and upload your {% data variables.product.prodname_enterprise %} license. {% data reusables.enterprise_installation.replica-steps %} -1. 使用 SSH 连接到副本设备的 IP 地址。 +1. Connect to the replica appliance's IP address using SSH. ```shell - $ ssh -p 122 admin@REPLICA IP + $ ssh -p 122 admin@REPLICA_IP ``` -{% data reusables.enterprise_installation.generate-replication-key-pair %} {% data reusables.enterprise_installation.add-ssh-key-to-primary %} -1. 要验证到主设备的连接并为新副本启用副本模式,请再次运行 `ghe-repl-setup`。 +{% data reusables.enterprise_installation.generate-replication-key-pair %} +{% data reusables.enterprise_installation.add-ssh-key-to-primary %} +1. To verify the connection to the primary and enable replica mode for the new replica, run `ghe-repl-setup` again. ```shell - $ ghe-repl-setup PRIMARY IP + $ ghe-repl-setup PRIMARY_IP ``` -{% data reusables.enterprise_installation.replication-command %} {% data reusables.enterprise_installation.verify-replication-channel %} +{% data reusables.enterprise_installation.replication-command %} +{% data reusables.enterprise_installation.verify-replication-channel %} -## 创建 Geo-replication 副本 +## Creating geo-replication replicas -此示例配置使用一个主设备和两个副本,它们位于三个不同的地理区域。 由于三个节点可以位于不同网络中,要求所有节点均可从其他所有节点到达。 必需的管理端口至少应向其他所有节点开放。 有关端口要求的详细信息,请参阅“[网络端口](/enterprise/admin/guides/installation/network-ports/#administrative-ports)”。 +This example configuration uses a primary and two replicas, which are located in three different geographic regions. While the three nodes can be in different networks, all nodes are required to be reachable from all the other nodes. At the minimum, the required administrative ports should be open to all the other nodes. For more information about the port requirements, see "[Network Ports](/enterprise/admin/guides/installation/network-ports/#administrative-ports)." -1. 在第一个副本上运行 `ghe-repl-setup`,采用与创建标准双节点配置相同的方式创建第一个副本。 +{% data reusables.enterprise_clustering.network-latency %}{% ifversion ghes > 3.2 %} If latency is more than 70 milliseconds, we recommend cache replica nodes instead. For more information, see "[Configuring a repository cache](/admin/enterprise-management/caching-repositories/configuring-a-repository-cache)."{% endif %} + +1. Create the first replica the same way you would for a standard two node configuration by running `ghe-repl-setup` on the first replica. ```shell - (replica1)$ ghe-repl-setup PRIMARY IP + (replica1)$ ghe-repl-setup PRIMARY_IP (replica1)$ ghe-repl-start ``` -2. 创建第二个副本并使用 `ghe-repl-setup --add` 命令。 `--add` 标志可防止其覆盖现有的复制配置,并将新副本添加到配置中。 +2. Create a second replica and use the `ghe-repl-setup --add` command. The `--add` flag prevents it from overwriting the existing replication configuration and adds the new replica to the configuration. ```shell - (replica2)$ ghe-repl-setup --add PRIMARY IP + (replica2)$ ghe-repl-setup --add PRIMARY_IP (replica2)$ ghe-repl-start ``` -3. 默认情况下,副本被配置到同一个数据中心,现在将尝试从同一个数据中心中的现有节点播种。 为数据中心选项设置不同的值,通过这种方式为不同的数据中心配置副本。 可以随意设定特定值,只要数值彼此不同即可。 在每个节点上运行 `ghe-repl-node` 命令并指定数据中心。 +3. By default, replicas are configured to the same datacenter, and will now attempt to seed from an existing node in the same datacenter. Configure the replicas for different datacenters by setting a different value for the datacenter option. The specific values can be anything you would like as long as they are different from each other. Run the `ghe-repl-node` command on each node and specify the datacenter. - 在主设备上: + On the primary: ```shell - (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME] + (primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME] ``` - 在第一个副本上: + On the first replica: ```shell - (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME] + (replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME] ``` - 在第二个副本上: + On the second replica: ```shell - (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME] + (replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME] ``` {% tip %} - 提示:可以同时设置 `--datacenter` 和 `--active` 选项。 + **Tip:** You can set the `--datacenter` and `--active` options at the same time. {% endtip %} -4. 活动副本节点将存储设备数据的副本并为最终用户请求提供服务。 非活动节点将存储设备数据的副本,但无法为最终用户请求提供服务。 使用 `--active` 标志启用活动模式,或使用 `--inactive` 标志启用非活动模式。 +4. An active replica node will store copies of the appliance data and service end user requests. An inactive node will store copies of the appliance data but will be unable to service end user requests. Enable active mode using the `--active` flag or inactive mode using the `--inactive` flag. - 在第一个副本上: + On the first replica: ```shell (replica1)$ ghe-repl-node --active ``` - 在第二个副本上: + On the second replica: ```shell (replica2)$ ghe-repl-node --active ``` -5. 要应用配置,请在主设备上使用 `ghe-config-apply` 命令。 +5. To apply the configuration, use the `ghe-config-apply` command on the primary. ```shell (primary)$ ghe-config-apply ``` -## 为 Geo-replication 配置 DNS +## Configuring DNS for geo-replication -使用主节点和副本节点的 IP 地址配置 Geo DNS。 还可为主节点(例如 `primary.github.example.com`)创建 DNS CNAME,以通过 SSH 访问主节点或通过 `backup-utils` 进行备份。 +Configure Geo DNS using the IP addresses of the primary and replica nodes. You can also create a DNS CNAME for the primary node (e.g. `primary.github.example.com`) to access the primary node via SSH or to back it up via `backup-utils`. -要进行测试,可以将条目添加到本地工作站的 `hosts` 文件(例如 `/etc/hosts`)。 这些示例条目会将 `HOSTNAME` 的请求解析到 `replica2`。 您可以注释不同的行,以特定主机为目标。 +For testing, you can add entries to the local workstation's `hosts` file (for example, `/etc/hosts`). These example entries will resolve requests for `HOSTNAME` to `replica2`. You can target specific hosts by commenting out different lines. ``` -# HOSTNAME -# HOSTNAME - HOSTNAME +# HOSTNAME +# HOSTNAME + HOSTNAME ``` -## 延伸阅读 +## Further reading -- [关于高可用性配置](/enterprise/admin/guides/installation/about-high-availability-configuration) -- [用于复制管理的实用程序](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management) -- [关于异地复制](/enterprise/admin/guides/installation/about-geo-replication/) +- "[About high availability configuration](/enterprise/admin/guides/installation/about-high-availability-configuration)" +- "[Utilities for replication management](/enterprise/admin/guides/installation/about-high-availability-configuration/#utilities-for-replication-management)" +- "[About geo-replication](/enterprise/admin/guides/installation/about-geo-replication/)" diff --git a/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md b/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md index 2eaaa11272..138d9b40d8 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md @@ -36,7 +36,9 @@ When you use external authentication, {% data variables.location.product_locatio If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" and "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)." -{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique. +{% data variables.product.prodname_dotcom %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP, then adding an underscore and short code. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username problems by making a change in your IdP so that the normalized usernames will be unique and within the 39-character limit. + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} {% elsif ghae %} @@ -62,7 +64,7 @@ These rules may result in your IdP providing the same _IDP-USERNAME_ for multipl - `bob@fabrikam.com` - `bob#EXT#fabrikamcom@contoso.com` -This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username conflicts](#resolving-username-conflicts)." +This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username problems](#resolving-username-problems)." {% endif %} Usernames{% ifversion ghec %}, including underscore and short code,{% endif %} must not exceed 39 characters. @@ -83,7 +85,7 @@ When you configure SAML authentication, {% data variables.product.product_name % 1. Usernames created from email addresses are created from the normalized characters that precede the `@` character. -1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username conflicts](#resolving-username-conflicts)."{% endif %} +1. If multiple accounts are normalized into the same {% data variables.product.product_name %} username, only the first user account is created. Subsequent users with the same username won't be able to sign in. {% ifversion ghec %}For more information, see "[Resolving username problems](#resolving-username-problems)."{% endif %} ### Examples of username normalization @@ -121,11 +123,16 @@ When you configure SAML authentication, {% data variables.product.product_name % {% endif %} {% ifversion ghec %} -## Resolving username conflicts +## Resolving username problems -When a new user is being provisioned, if the user's normalized username conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. +When a new user is being provisioned, if the username is longer than 39 characters (including underscore and short code), or conflicts with an existing user in the enterprise, the provisioning attempt will fail with a `409` error. -To resolve this problem, you must make a change in your IdP so that the normalized usernames will be unique. If you cannot change the identifier that's being normalized, you can change the attribute mapping for the `userName` attribute. If you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. +To resolve this problem, you must make one of the following changes in your IdP so that all normalized usernames will be within the character limit and unique. +- Change the `userName` attribute value for individual users that are causing problems +- Change the `userName` attribute mapping for all users +- Configure a custom `userName` attribute for all users + +When you change the attribute mapping, usernames of existing {% data variables.enterprise.prodname_managed_users %} will be updated, but nothing else about the accounts will change, including activity history. {% note %} @@ -133,9 +140,9 @@ To resolve this problem, you must make a change in your IdP so that the normaliz {% endnote %} -### Resolving username conflicts with Azure AD +### Resolving username problems with Azure AD -To resolve username conflicts in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. +To resolve username problems in Azure AD, either modify the User Principal Name value for the conflicting user or modify the attribute mapping for the `userName` attribute. If you modify the attribute mapping, you can choose an existing attribute or use an expression to ensure that all provisioned users have a unique normalized alias. 1. In Azure AD, open the {% data variables.product.prodname_emu_idp_application %} application. 1. In the left sidebar, click **Provisioning**. @@ -146,9 +153,9 @@ To resolve username conflicts in Azure AD, either modify the User Principal Name - To map an existing attribute in Azure AD to the `userName` attribute in {% data variables.product.prodname_dotcom %}, click your desired attribute field. Then, save and wait for a provisioning cycle to occur within about 40 minutes. - To use an expression instead of an existing attribute, change the Mapping type to "Expression", then add a custom expression that will make this value unique for all users. For example, you could use `[FIRST NAME]-[LAST NAME]-[EMPLOYEE ID]`. For more information, see [Reference for writing expressions for attribute mappings in Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/app-provisioning/functions-for-customizing-application-data) in Microsoft Docs. -### Resolving username conflicts with Okta +### Resolving username problems with Okta -To resolve username conflicts in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. +To resolve username problems in Okta, update the attribute mapping settings for the {% data variables.product.prodname_emu_idp_application %} application. 1. In Okta, open the {% data variables.product.prodname_emu_idp_application %} application. 1. Click **Sign On**. diff --git a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 90a11171f2..a448aa318d 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -136,7 +136,9 @@ By default, when an unauthenticated user attempts to access an enterprise that u {% data variables.product.product_name %} automatically creates a username for each person by normalizing an identifier provided by your IdP. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)." -A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. {% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." +A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username problems](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-problems)." + +{% data reusables.enterprise-accounts.emu-only-emails-within-the-enterprise-can-conflict %} The profile name and email address of a {% data variables.enterprise.prodname_managed_user %} is also provided by the IdP. {% data variables.enterprise.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. diff --git a/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md b/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md index 82c8463b34..30948b0de1 100644 --- a/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md +++ b/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md @@ -168,9 +168,19 @@ By default, when you create a new enterprise, workflows are not allowed to creat {% data reusables.actions.cache-default-size %} {% data reusables.actions.cache-eviction-process %} -However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow repository administrators to configure a total cache size up to 15 GB if necessary. +However, you can set an enterprise policy to customize both the default total cache size for each repository, as well as the maximum total cache size allowed for a repository. For example, you might want the default total cache size for each repository to be 5 GB, but also allow {% ifversion actions-cache-admin-ui %}organization owners and{% endif %} repository administrators to configure a total cache size up to 15 GB if necessary. -People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise policy setting. +{% ifversion actions-cache-admin-ui %}Organization owners can set a lower total cache size that applies to each repository in their organization. {% endif %}People with admin access to a repository can set a total cache size for their repository up to the maximum cache size allowed by the enterprise {% ifversion actions-cache-admin-ui %}or organization{% endif %} policy setting. + +{% ifversion actions-cache-admin-ui %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +1. In the "Artifact, cache and log settings" section, under **Maximum cache size limit**, enter a value, then click **Save** to apply the setting. +1. In the "Artifact, cache and log settings" section, under **Default cache size limit**, enter a value, then click **Save** to apply the setting. + +{% else %} The policy settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API: @@ -180,3 +190,5 @@ The policy settings for {% data variables.product.prodname_actions %} cache stor {% data reusables.actions.cache-no-org-policy %} {% endif %} + +{% endif %} diff --git a/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md b/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md index e6c655b322..e95ef98441 100644 --- a/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md +++ b/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md @@ -125,7 +125,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav * Open your `~/.ssh/config` file, then modify the file to contain the following lines. If your SSH key file has a different name or path than the example code, modify the filename or path to match your current setup. ``` - Host * + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_{% ifversion ghae %}ecdsa{% else %}ed25519{% endif %} @@ -137,10 +137,10 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav - If you chose not to add a passphrase to your key, you should omit the `UseKeychain` line. - - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *` section. + - If you see a `Bad configuration option: usekeychain` error, add an additional line to the configuration's' `Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %}` section. ``` - Host * + Host *.{% ifversion ghes or ghae %}HOSTNAME{% else %}github.com{% endif %} IgnoreUnknown UseKeychain ``` {% endnote %} diff --git a/translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md b/translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md index 7dae72fd34..877fedd33b 100644 --- a/translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md +++ b/translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md @@ -35,8 +35,6 @@ When you create a {% data variables.product.pat_generic %}, we recommend that yo If a valid OAuth token, {% data variables.product.prodname_github_app %} token, or {% data variables.product.pat_generic %} is pushed to a public repository or public gist, the token will be automatically revoked. -OAuth tokens and personal {% data variables.product.pat_v1_plural %} pushed to public repositories and public gists will only be revoked if the token has scopes.{% ifversion pat-v2 %} {% data variables.product.pat_v2_caps %}s will always be revoked.{% endif %} - {% endif %} {% ifversion fpt or ghec %} diff --git a/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 189fa330a7..322dadf5f3 100644 --- a/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -860,7 +860,7 @@ registries: The `npm-registry` type supports username and password, or token. -When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. +When using username and password, your `.npmrc`'s auth token may contain a `base64` encoded `_password`; however, the password referenced in your {% data variables.product.prodname_dependabot %} configuration file must be the original (unencoded) password. {% raw %} ```yaml @@ -882,6 +882,8 @@ registries: token: ${{secrets.MY_GITHUB_PERSONAL_TOKEN}} ``` {% endraw %} +{% ifversion dependabot-yarn-v3-update %} +For security reasons, {% data variables.product.prodname_dependabot %} does not set environment variables. Yarn (v2 and later) requires that any accessed environment variables are set. When accessing environment variables in your `.yarnrc.yml` file, you should provide a fallback value such as {% raw %}`${ENV_VAR-fallback}`{% endraw %} or {% raw %}`${ENV_VAR:-fallback}`{% endraw %}. For more information, see [Yarnrc files](https://yarnpkg.com/configuration/yarnrc) in the Yarn documentation.{% endif %} ### `nuget-feed` diff --git a/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index 155c455d38..e7ef382b5d 100644 --- a/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -1,6 +1,6 @@ --- title: Protecting pushes with secret scanning -intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your organization or repository by enabling push protection.' +intro: 'You can use {% data variables.product.prodname_secret_scanning %} to prevent supported secrets from being pushed into your {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository by enabling push protection.' product: '{% data reusables.gated-features.secret-scanning %}' miniTocMaxHeadingLevel: 3 versions: @@ -34,10 +34,18 @@ For information on the secrets and service providers supported for push protecti ## Enabling {% data variables.product.prodname_secret_scanning %} as a push protection -For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the organization or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)." +For you to use {% data variables.product.prodname_secret_scanning %} as a push protection, the {% ifversion secret-scanning-enterprise-level %}enterprise,{% endif %} organization{% ifversion secret-scanning-enterprise-level %},{% endif %} or repository needs to have both {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_secret_scanning %} enabled. For more information, see {% ifversion secret-scanning-enterprise-level %}"[Managing security and analysis settings for your enterprise](/admin/code-security/managing-github-advanced-security-for-your-enterprise/managing-github-advanced-security-features-for-your-enterprise),"{% endif %} "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)," "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)," and "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)." Organization owners, security managers, and repository administrators can enable push protection for {% data variables.product.prodname_secret_scanning %} via the UI and API. For more information, see "[Repositories](/rest/reference/repos#update-a-repository)" and expand the "Properties of the `security_and_analysis` object" section in the REST API documentation. +{% ifversion secret-scanning-enterprise-level %} +### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for your enterprise +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +1. In the left sidebar, click **Code security and analysis**. +{% data reusables.advanced-security.secret-scanning-push-protection-enterprise %} +{% endif %} + ### Enabling {% data variables.product.prodname_secret_scanning %} as a push protection for an organization {% data reusables.organizations.navigate-to-org %} @@ -64,8 +72,6 @@ Up to five detected secrets will be displayed at a time on the command line. If Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain organization-specific resources and advice, such as directions on using a recommended secrets vault or who to contact for questions relating to the blocked secret. -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - ![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) {% else %} @@ -104,9 +110,6 @@ If {% data variables.product.prodname_dotcom %} blocks a secret that you believe {% ifversion push-protection-custom-link-orgs %} Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain resources and advice specific to your organization. For example, the custom link can point to a README file with information about the organization's secret vault, which teams and individuals to escalate questions to, or the organization's approved policy for working with secrets and rewriting commit history. - -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - {% endif %} You can remove the secret from the file using the web UI. Once you remove the secret, the banner at the top of the page will change and tell you that you can now commit your changes. diff --git a/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index e6ece077b1..5a7987c33c 100644 --- a/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -30,9 +30,6 @@ If {% data variables.product.prodname_dotcom %} blocks a secret that you believe {% ifversion push-protection-custom-link-orgs %} Organization admins can provide a custom link that will be included in the message from {% data variables.product.product_name %} when your push is blocked. This custom link can contain resources and advice specific to your organization and its policies. - -{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} - {% endif %} ## Resolving a blocked push on the command line diff --git a/translations/zh-CN/content/codespaces/customizing-your-codespace/index.md b/translations/zh-CN/content/codespaces/customizing-your-codespace/index.md index f7f94d591c..cc9c2b2baa 100644 --- a/translations/zh-CN/content/codespaces/customizing-your-codespace/index.md +++ b/translations/zh-CN/content/codespaces/customizing-your-codespace/index.md @@ -11,6 +11,7 @@ topics: - Codespaces children: - /personalizing-github-codespaces-for-your-account + - /renaming-a-codespace - /changing-the-machine-type-for-your-codespace - /setting-your-default-editor-for-github-codespaces - /setting-your-default-region-for-github-codespaces diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md index d3ec7e7ef3..16b6cd571d 100644 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/codespaces-lifecycle.md @@ -59,6 +59,8 @@ In the example `postCreate.sh` file below, the contents of the `config` director ln -sf $PWD/.devcontainer/config $HOME/config && set +x ``` +For more information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#applying-configuration-changes-to-a-codespace)." + ## Stopping a codespace {% data reusables.codespaces.stopping-a-codespace %} For more information, see "[Stopping and starting a codespace](/codespaces/developing-in-codespaces/stopping-and-starting-a-codespace)." diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md index 296d55dacf..534683bf6c 100644 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md @@ -16,7 +16,6 @@ children: - /using-source-control-in-your-codespace - /using-github-codespaces-for-pull-requests - /stopping-and-starting-a-codespace - - /renaming-a-codespace - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md deleted file mode 100644 index e27f565ffc..0000000000 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Renaming a codespace -intro: You can use the {% data variables.product.prodname_cli %} to change the codespace display name to one of your choice. -product: '{% data reusables.gated-features.codespaces %}' -versions: - fpt: '*' - ghec: '*' -type: how_to -topics: - - Codespaces - - Fundamentals - - Developer -shortTitle: Rename a codespace ---- - -## About renaming a codespace - -Each codespace is assigned an auto-generated display name. If you have multiple codespaces, the display name helps you to differentiate between codespaces. For example: `literate space parakeet`. You can change the display name for your codespace. - -To find the display name of a codespace: - -- On {% data variables.product.product_name %}, view your list of codespaces at https://github.com/codespaces. - - ![Screenshot of the list of codespaces in GitHub](/assets/images/help/codespaces/codespaces-list-display-name.png) - -- In the {% data variables.product.prodname_vscode %} desktop application, or the {% data variables.product.prodname_vscode_shortname %} web client, click the Remote Explorer. The display name is shown below the repository name. For example: `symmetrical space telegram` in the screenshot below. - - ![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) - -{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} -- In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. - -### Permanent codespace names - -In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. For example: `octocat-myrepo-gmc7`. You can't change this name. - -To find the permanent name of a codespace: - -* On {% data variables.product.product_name %}, the permanent name is shown in a pop-up when you hover over the **Open in browser** option on https://github.com/codespaces. - - ![Screenshot of the codespace name shown on hover over](/assets/images/help/codespaces/find-codespace-name-github.png) - -* In a codespace, use this command in the terminal: `echo $CODESPACE_NAME`. -* In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. - -## Renaming a codespace - -Changing the display name of a codespace can be useful if you have multiple codespaces that you will be using for an extended period. An appropriate name helps you identify a codespace that you use for a particular purpose. You can change the display name for your codespace by using the {% data variables.product.prodname_cli %}. - -To rename a codespace, use the `gh codespace edit` subcommand: - -```shell -gh codespace edit -c PERMANENT-NAME-OF-CODESPACE -d NEW-DISPLAY-NAME -``` - -In this example, replace `permanent name of the codespace` with the permanent name of the codespace. Replace `new display name` with the desired display name. \ No newline at end of file diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md index 14283811fc..bd2907401d 100644 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/using-github-codespaces-with-github-cli.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces @@ -24,6 +25,7 @@ You can work with {% data variables.product.prodname_github_codespaces %} in the - [Create a new codespace](#create-a-new-codespace) - [Stop a codespace](#stop-a-codespace) - [Delete a codespace](#delete-a-codespace) + - [Rename a codespace](#rename-a-codespace) - [SSH into a codespace](#ssh-into-a-codespace) - [Open a codespace in {% data variables.product.prodname_vscode %}](#open-a-codespace-in--data-variablesproductprodname_vscode-) - [Open a codespace in JupyterLab](#open-a-codespace-in-jupyterlab) @@ -74,6 +76,8 @@ gh codespace list The list includes the unique name of each codespace, which you can use in other `gh codespace` commands. +An asterisk at the end of the branch name for a codespace indicates that there are uncommitted or unpushed changes in that codespace. + ### Create a new codespace ```shell @@ -98,6 +102,14 @@ gh codespace delete -c CODESPACE-NAME For more information, see "[Deleting a codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)." +### Rename a codespace + +```shell +gh codespace edit -c CODESPACE-NAME -d DISPLAY-NAME +``` + +For more information, see "[Renaming a codespace](/codespaces/customizing-your-codespace/renaming-a-codespace)." + ### SSH into a codespace To run commands on the remote codespace machine, from your terminal, you can SSH into the codespace. @@ -215,4 +227,4 @@ You can use the {% data variables.product.prodname_cli %} extension to create a gh codespace edit -m machine-type-name ``` -For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." \ No newline at end of file +For more information, see the "{% data variables.product.prodname_cli %}" tab of "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace)." diff --git a/translations/zh-CN/content/codespaces/getting-started/deep-dive.md b/translations/zh-CN/content/codespaces/getting-started/deep-dive.md index c6a2e16f8a..4c12712121 100644 --- a/translations/zh-CN/content/codespaces/getting-started/deep-dive.md +++ b/translations/zh-CN/content/codespaces/getting-started/deep-dive.md @@ -35,7 +35,7 @@ When you create a codespace, a [shallow clone](https://github.blog/2020-12-21-ge ### Step 2: Container is created -{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't [configure a container](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project), {% data variables.product.prodname_github_codespaces %} uses a [default image](/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project#using-the-default-configuration), which has many languages and runtimes available. For information on what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. +{% data variables.product.prodname_github_codespaces %} uses a container as the development environment. This container is created based on the configurations that you can define in a `devcontainer.json` file and/or Dockerfile in your repository. If you don't specify a custom Docker image in your configuration, {% data variables.product.prodname_codespaces %} uses a default image, which has many languages and runtimes available. For information, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)." For details of what the default image contains, see the [`vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux) repository. {% note %} diff --git a/translations/zh-CN/content/codespaces/getting-started/quickstart.md b/translations/zh-CN/content/codespaces/getting-started/quickstart.md index 213fec6823..ec2abfcbed 100644 --- a/translations/zh-CN/content/codespaces/getting-started/quickstart.md +++ b/translations/zh-CN/content/codespaces/getting-started/quickstart.md @@ -92,11 +92,10 @@ Within a codespace, you have access to the {% data variables.product.prodname_vs 1. In the left sidebar, click the Extensions icon. -1. In the search bar, enter `fairyfloss` and install the fairyfloss extension. +1. In the search bar, type `fairyfloss` and click **Install**. ![Add an extension](/assets/images/help/codespaces/add-extension.png) -1. Click **Install in Codespaces**. 1. Select the `fairyfloss` theme by selecting it from the list. ![Select the fairyfloss theme](/assets/images/help/codespaces/fairyfloss.png) diff --git a/translations/zh-CN/content/codespaces/guides.md b/translations/zh-CN/content/codespaces/guides.md index f4c55756ca..9ade56462a 100644 --- a/translations/zh-CN/content/codespaces/guides.md +++ b/translations/zh-CN/content/codespaces/guides.md @@ -44,7 +44,8 @@ includeGuides: - /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization - /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types - - /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period + - /codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces.md + - /codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period - /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports - /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/index.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/index.md index be8dd52968..8dea0f04ed 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/index.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/index.md @@ -16,6 +16,7 @@ children: - /managing-repository-access-for-your-organizations-codespaces - /reviewing-your-organizations-audit-logs-for-github-codespaces - /restricting-access-to-machine-types + - /restricting-the-base-image-for-codespaces - /restricting-the-visibility-of-forwarded-ports - /restricting-the-idle-timeout-period - /restricting-the-retention-period-for-codespaces diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 33f95043ad..7e52316c87 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -14,7 +14,9 @@ topics: ## Overview -Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." +Typically, when you create a codespace you are offered a choice of specifications for the machine that will run your codespace. You can choose the machine type that best suits your needs. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." + +If you pay for using {% data variables.product.prodname_github_codespaces %} then your choice of machine type will affect how much your are billed. The compute cost for a codespace is proportional to the number of processor cores in the machine type you choose. For example, the compute cost of using a codespace for an hour on a 16-core machine is eight times greater than a 2-core machine. For more information about pricing, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces)." As an organization owner, you may want to configure constraints on the types of machine that are available. For example, if the work in your organization doesn't require significant compute power or storage space, you can remove the highly resourced machines from the list of options that people can choose from. You do this by defining one or more policies in the {% data variables.product.prodname_github_codespaces %} settings for your organization. @@ -52,21 +54,29 @@ If you add an organization-wide policy, you should set it to the largest choice {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Machine types**. - ![Add a constraint for machine types](/assets/images/help/codespaces/add-constraint-dropdown.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint, then clear the selection of any machine types that you don't want to be available. - ![Edit the machine type constraint](/assets/images/help/codespaces/edit-machine-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-machine-constraint.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The machine type constraint is also applied to existing codespaces when someone attempts to restart a stopped codespace or reconnect to an active codespace. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Machine types" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -74,7 +84,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the available machine types](#adding-a-policy-to-limit-the-available-machine-types)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) ## Further reading diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index 685dfd1db2..db81c6347d 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -49,21 +49,25 @@ If you add an organization-wide policy with a timeout constraint, you should set {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Maximum idle timeout**. - ![Add a constraint for idle timeout](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**. - ![Set the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) + ![Screenshot of setting the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created, and to existing codespaces the next time they are started. +The policy will be applied to all new codespaces that are billable to your organization. The timeout constraint is also applied to existing codespaces the next time they are started. ## Editing a policy @@ -71,6 +75,7 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Maximum idle timeout" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -78,4 +83,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index a940a80a50..f49dd49a4a 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -35,15 +35,15 @@ If you add an organization-wide policy with a retention constraint, you should s {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Retention period**. - ![Add a constraint for retention periods](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-retention.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of days codespaces can remain stopped before they are automatically deleted, then click **Save**. - ![Set the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) + ![Screenshot of setting the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png) {% note %} @@ -55,10 +55,14 @@ If you add an organization-wide policy with a retention constraint, you should s {% endnote %} {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)," and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" 1. After you've finished adding constraints to your policy, click **Save**. -The policy will be applied to all new codespaces that are created. +The policy will be applied to all new codespaces that are billable to your organization. The retention period constraint is only applied on codespace creation. ## Editing a policy @@ -68,6 +72,7 @@ The retention period constraint is only applied to codespaces when they are crea 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Retention period" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -77,4 +82,4 @@ You can delete a policy at any time. Deleting a policy has no effect on existing 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 852eb3b8ba..74c626756f 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -45,25 +45,33 @@ If you add an organization-wide policy, you should set it to the most lenient vi {% data reusables.codespaces.codespaces-org-policies %} 1. Click **Add constraint** and choose **Port visibility**. - ![Add a constraint for port visibility](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) + ![Screenshot of the 'Add constraint' dropdown menu](/assets/images/help/codespaces/add-constraint-dropdown-ports.png) 1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint. - ![Edit the port visibility constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) + ![Screenshot of the pencil icon for editing the constraint](/assets/images/help/codespaces/edit-port-visibility-constraint.png) 1. Clear the selection of the port visibility options (**Org** or **Public**) that you don't want to be available. - ![Choose the port visibility options](/assets/images/help/codespaces/choose-port-visibility-options.png) + ![Screenshot of clearing a port visibility option](/assets/images/help/codespaces/choose-port-visibility-options.png) {% data reusables.codespaces.codespaces-policy-targets %} -1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)," "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)," and "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." +1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see: + * "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" + * "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)" + * "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" + * "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)" 1. After you've finished adding constraints to your policy, click **Save**. + +The policy will be applied to all new codespaces that are billable to your organization. The port visibility constraint is also applied to existing codespaces the next time they are started. + ## Editing a policy You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy. 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the name of the policy you want to edit. +1. Click the pencil icon ({% octicon "pencil" aria-label="The edit icon" %}) beside the "Port visibility" constraint. 1. Make the required changes then click **Save**. ## Deleting a policy @@ -71,4 +79,4 @@ You can edit an existing policy. For example, you may want to add or remove cons 1. Display the "Codespace policies" page. For more information, see "[Adding a policy to limit the port visibility options](#adding-a-policy-to-limit-the-port-visibility-options)." 1. Click the delete button to the right of the policy you want to delete. - ![The delete button for a policy](/assets/images/help/codespaces/policy-delete.png) + ![Screenshot of the delete button for a policy](/assets/images/help/codespaces/policy-delete.png) diff --git a/translations/zh-CN/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md b/translations/zh-CN/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md index 253b3ea97e..07be49175c 100644 --- a/translations/zh-CN/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md +++ b/translations/zh-CN/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md @@ -93,10 +93,10 @@ You can use secrets in a codespace after the codespace is built and is running. * When launching an application from the integrated terminal or ssh session. * Within a dev container lifecycle script that is run after the codespace is running. For more information about dev container lifecycle scripts, see the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#lifecycle-scripts). -Codespace secrets cannot be used during: +Codespace secrets cannot be used: -* Codespace build time (that is, within a Dockerfile or custom entry point). -* Within a dev container feature. For more information, see the `features` attribute in the documentation on containers.dev: [Specification](https://containers.dev/implementors/json_reference/#general-properties). +* During codespace build time (that is, within a Dockerfile or custom entry point). +* Within a dev container feature. For more information, see the `features` property in the [dev containers specification](https://containers.dev/implementors/json_reference/#general-properties) on containers.dev. ## Further reading diff --git a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 03f5eefc01..7e4d85e0b7 100644 --- a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -65,7 +65,7 @@ The Dockerfile for a dev container is typically located in the `.devcontainer` f {% note %} -**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." +**Note**: As an alternative to using a Dockerfile you can use the `image` property in the `devcontainer.json` file to refer directly to an existing image you want to use. The image you specify here must be allowed by any organization image policy that has been set. For more information, see "[Restricting the base image for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-base-image-for-codespaces)." If neither a Dockerfile nor an image is found then the default container image is used. For more information, see "[Using the default dev container configuration](#using-the-default-dev-container-configuration)." {% endnote %} diff --git a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md index 68db9a04e5..1d0c70d64c 100644 --- a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md +++ b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md @@ -104,14 +104,12 @@ The newly added `devcontainer.json` file defines a few properties that are descr // "ASPNETCORE_Kestrel__Certificates__Default__Path": "/home/vscode/.aspnet/https/aspnetapp.pfx", // }, // - // 3. Do one of the following depending on your scenario: - // * When using GitHub Codespaces and/or Remote - Containers: - // 1. Start the container - // 2. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer - // 3. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https" + // 3. Start the container. + // + // 4. Drag ~/.aspnet/https/aspnetapp.pfx into the root of the file explorer. + // + // 5. Open a terminal in VS Code and run "mkdir -p /home/vscode/.aspnet/https && mv aspnetapp.pfx /home/vscode/.aspnet/https". // - // * If only using Remote - Containers with a local container, uncomment this line instead: - // "mounts": [ "source=${env:HOME}${env:USERPROFILE}/.aspnet/https,target=/home/vscode/.aspnet/https,type=bind" ], // Use 'postCreateCommand' to run commands after the container is created. // "postCreateCommand": "dotnet restore", diff --git a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md index 42811fded0..c5f6b582f0 100644 --- a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md +++ b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md @@ -32,7 +32,7 @@ This guide shows you how to set up your Java project in {% data variables.produc If you don’t see this option, {% data variables.product.prodname_github_codespaces %} isn't available for your project. See [Access to {% data variables.product.prodname_github_codespaces %}](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces) for more information. -When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a common set of tools like git, wget, rsync, openssh, and nano. +When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Java, nvm, npm, and Yarn. It also includes a set of commonly used tools such as git, wget, rsync, openssh, and nano. {% data reusables.codespaces.customize-vcpus-and-ram %} diff --git a/translations/zh-CN/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md b/translations/zh-CN/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md index d8c0af18bf..d8b5a39119 100644 --- a/translations/zh-CN/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md +++ b/translations/zh-CN/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md @@ -1613,7 +1613,7 @@ This event occurs when someone triggers a workflow run on GitHub or sends a `POS |-----|-----|-----| | `inputs` | `object` | Inputs to the workflow. Each key represents the name of the input while its value represents the value of that input. | {% data reusables.webhooks.org_desc %} -| `ref` | `string` | The branch ref from which the workflow was run. | +| `ref` | `string` | The branch or tag from which the workflow was run. | {% data reusables.webhooks.repo_desc %} {% data reusables.webhooks.sender_desc %} | `workflow` | `string` | Relative path to the workflow file which contains the workflow. | diff --git a/translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md b/translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md index f792c8f8dd..b90de8630e 100644 --- a/translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md +++ b/translations/zh-CN/content/get-started/quickstart/contributing-to-projects.md @@ -1,6 +1,6 @@ --- -title: 参与项目 -intro: 了解如何通过复刻参与项目。 +title: Contributing to projects +intro: Learn how to contribute to a project through forking. permissions: '{% data reusables.enterprise-accounts.emu-permission-fork %}' versions: fpt: '*' @@ -12,61 +12,58 @@ topics: - Forks - GitHub - Open Source -ms.openlocfilehash: 190bfbbfc799a802a082aa01e9f93f2ad379e471 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 09/05/2022 -ms.locfileid: '147425229' --- -## 关于复刻 -在自己使用 GitHub 一段时间后,您可能会发现自己也想参与别人的项目。 或者,也许您想使用某人的项目作为自己项目的起点。 此过程称为复刻。 +## About forking -创建“复刻”就是生成他人项目的个人副本。 复刻可作为原始存储库和个人副本之间的桥梁。 您可以提交拉取请求,通过提供对原始项目的更改来帮助改善其他人的项目。 复刻是 GitHub 社交编码的核心。 有关详细信息,请参阅“[为存储库创建分支](/get-started/quickstart/fork-a-repo)”。 +After using GitHub by yourself for a while, you may find yourself wanting to contribute to someone else’s project. Or maybe you’d like to use someone’s project as the starting point for your own. This process is known as forking. -## 复刻仓库 +Creating a "fork" is producing a personal copy of someone else's project. Forks act as a sort of bridge between the original repository and your personal copy. You can submit pull requests to help make other people's projects better by offering your changes up to the original project. Forking is at the core of social coding at GitHub. For more information, see "[Fork a repo](/get-started/quickstart/fork-a-repo)." -本教程使用 [Spoon-Knife 项目](https://github.com/octocat/Spoon-Knife),这是一个托管在 {% data variables.product.prodname_dotcom_the_website %} 上的测试存储库,可让你测试分支和拉取请求工作流。 +## Forking a repository -1. 导航到位于 https://github.com/octocat/Spoon-Knife 的 `Spoon-Knife` 项目。 -2. 单击“分支”。 - ![分支按钮](/assets/images/help/repository/fork_button.png) -3. 为分支存储库选择所有者。 - ![创建一个突出显示所有者下拉菜单的新分支页](/assets/images/help/repository/fork-choose-owner.png) -4. 默认情况下,分支的名称与其父存储库的相同。 可更改分支的名称以进一步区分它。 - ![创建一个突出显示存储库名称字段的新分支页](/assets/images/help/repository/fork-choose-repo-name.png) -5. 可以选择性地添加分支的说明。 - ![创建一个突出显示说明字段的新分支页](/assets/images/help/repository/fork-description.png) -6. 选择是仅将默认分支还是将所有分支复制到新分支。 对于许多分支场景(例如参与开源项目),你只需复制默认分支。 默认情况下,只复制默认分支。 - ![只复制默认分支的选项](/assets/images/help/repository/copy-default-branch-only.png) -7. 单击“创建分支”。 - ![突出显示的“创建分支”按钮](/assets/images/help/repository/fork-create-button.png) +This tutorial uses [the Spoon-Knife project](https://github.com/octocat/Spoon-Knife), a test repository that's hosted on {% data variables.product.prodname_dotcom_the_website %} that lets you test the fork and pull request workflow. + +1. Navigate to the `Spoon-Knife` project at https://github.com/octocat/Spoon-Knife. +2. Click **Fork**. + ![Fork button](/assets/images/help/repository/fork_button.png) +3. Select an owner for the forked repository. + ![Create a new fork page with owner dropdown emphasized](/assets/images/help/repository/fork-choose-owner.png) +4. By default, forks are named the same as their parent repositories. You can change the name of the fork to distinguish it further. + ![Create a new fork page with repository name field emphasized](/assets/images/help/repository/fork-choose-repo-name.png) +5. Optionally, add a description of your fork. + ![Create a new fork page with description field emphasized](/assets/images/help/repository/fork-description.png) +6. Choose whether to copy only the default branch or all branches to the new fork. For many forking scenarios, such as contributing to open-source projects, you only need to copy the default branch. By default, only the default branch is copied. + ![Option to copy only the default branch](/assets/images/help/repository/copy-default-branch-only.png) +7. Click **Create fork**. + ![Emphasized create fork button](/assets/images/help/repository/fork-create-button.png) {% note %} -注意:如果要从父存储库复制其他分支,可从“分支”页执行此操作 。 有关详细信息,请参阅“[创建和删除存储库中的分支](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)”。 +**Note:** If you want to copy additional branches from the parent repository, you can do so from the **Branches** page. For more information, see "[Creating and deleting branches within your repository](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)." {% endnote %} -## 克隆复刻 +## Cloning a fork -您已经成功复刻了 Spoon-Knife 存储库,但到目前为止,它仅存在于 {% data variables.product.product_name %} 上。 为了能够处理该项目,您需要将其克隆到您的计算机。 +You've successfully forked the Spoon-Knife repository, but so far, it only exists on {% data variables.product.product_name %}. To be able to work on the project, you will need to clone it to your computer. -您可以使用命令行、{% data variables.product.prodname_cli %} 或 {% data variables.product.prodname_desktop %} 克隆复刻。 +You can clone your fork with the command line, {% data variables.product.prodname_cli %}, or {% data variables.product.prodname_desktop %}. {% webui %} -1. 在 {% data variables.product.product_name %} 上,导航到 Spoon-Knife 存储库的分支。 -{% data reusables.repositories.copy-clone-url %} {% data reusables.command_line.open_the_multi_os_terminal %} {% data reusables.command_line.change-current-directory-clone %} -4. 键入 `git clone`,然后粘贴之前复制的 URL。 它将如下所示,使用你的 {% data variables.product.product_name %} 用户名替换 `YOUR-USERNAME`: +1. On {% data variables.product.product_name %}, navigate to **your fork** of the Spoon-Knife repository. +{% data reusables.repositories.copy-clone-url %} +{% data reusables.command_line.open_the_multi_os_terminal %} +{% data reusables.command_line.change-current-directory-clone %} +4. Type `git clone`, and then paste the URL you copied earlier. It will look like this, with your {% data variables.product.product_name %} username instead of `YOUR-USERNAME`: ```shell - $ git clone https://{% data variables.command_line.codeblock %}/YOUR-USERNAME/Spoon-Knife + $ git clone https://{% data variables.command_line.codeblock %}/YOUR-USERNAME/Spoon-Knife ``` -5. 按 **Enter**。 将创建您的本地克隆。 +5. Press **Enter**. Your local clone will be created. ```shell - $ git clone https://{% data variables.command_line.codeblock %}/YOUR-USERNAME/Spoon-Knife + $ git clone https://{% data variables.command_line.codeblock %}/YOUR-USERNAME/Spoon-Knife > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. @@ -80,25 +77,57 @@ ms.locfileid: '147425229' {% data reusables.cli.cli-learn-more %} -若要创建分支的克隆,请使用 `--clone` 标记。 +To create a clone of your fork, use the `--clone` flag. ```shell -gh repo fork repository --clone=true +gh repo fork REPOSITORY --clone=true ``` {% endcli %} {% desktop %} -{% data reusables.desktop.choose-clone-repository %} {% data reusables.desktop.cloning-location-tab %} {% data reusables.desktop.cloning-repository-list %} {% data reusables.desktop.choose-local-path %} {% data reusables.desktop.click-clone %} +{% data reusables.desktop.choose-clone-repository %} +{% data reusables.desktop.cloning-location-tab %} +{% data reusables.desktop.cloning-repository-list %} +{% data reusables.desktop.choose-local-path %} +{% data reusables.desktop.click-clone %} {% enddesktop %} -## 创建和推送更改 +## Creating a branch to work on -继续使用你喜欢的文本编辑器(例如 [Visual Studio Code](https://code.visualstudio.com))对项目进行一些更改。 例如,可以更改 `index.html` 中的文本以添加你的 GitHub 用户名。 +Before making changes to the project, you should create a new branch and check it out. By keeping changes in their own branch, you follow GitHub Flow and ensure that it will be easier to contribute to the same project again in the future. For more information, see "[GitHub Flow](/get-started/quickstart/github-flow#following-github-flow)." -当您准备好提交更改时,请暂存并提交更改。 `git add .` 告诉 Git 你希望在下一次提交中包含所有更改。 `git commit` 会拍摄这些更改的快照。 +{% webui %} + +```shell +git branch BRANCH-NAME +git checkout BRANCH-NAME +``` + +{% endwebui %} + +{% cli %} + +```shell +git branch BRANCH-NAME +git checkout BRANCH-NAME +``` + +{% endcli %} + +{% desktop %} + +For more information about how to create and manage branches in {% data variables.product.prodname_desktop %}, see "[Managing branches](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/managing-branches)." + +{% enddesktop %} + +## Making and pushing changes + +Go ahead and make a few changes to the project using your favorite text editor, like [Visual Studio Code](https://code.visualstudio.com). You could, for example, change the text in `index.html` to add your GitHub username. + +When you're ready to submit your changes, stage and commit your changes. `git add .` tells Git that you want to include all of your changes in the next commit. `git commit` takes a snapshot of those changes. {% webui %} @@ -120,13 +149,13 @@ git commit -m "a short description of the change" {% desktop %} -有关如何在 {% data variables.product.prodname_desktop %} 中暂存和提交更改的详细信息,请参阅“[提交和查看项目的更改](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project#selecting-changes-to-include-in-a-commit)”。 +For more information about how to stage and commit changes in {% data variables.product.prodname_desktop %}, see "[Committing and reviewing changes to your project](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project#selecting-changes-to-include-in-a-commit)." {% enddesktop %} -暂存和提交文件时,您主要是告诉 Git:“好吧,拍摄我的更改快照!” 您可以继续进行更多更改,并拍摄更多提交快照。 +When you stage and commit files, you essentially tell Git, "Okay, take a snapshot of my changes!" You can continue to make more changes, and take more commit snapshots. -目前,您的更改仅存在于本地。 当您准备好将更改推送到 {% data variables.product.product_name %} 时,请将更改推送到远程。 +Right now, your changes only exist locally. When you're ready to push your changes up to {% data variables.product.product_name %}, push your changes to the remote. {% webui %} @@ -146,24 +175,25 @@ git push {% desktop %} -有关如何在 {% data variables.product.prodname_desktop %} 中推送更改的详细信息,请参阅“[将更改推送到 GitHub](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/pushing-changes-to-github)”。 +For more information about how to push changes in {% data variables.product.prodname_desktop %}, see "[Pushing changes to GitHub](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/pushing-changes-to-github)." {% enddesktop %} -## 创建拉取请求 +## Making a pull request -最后,您可以对主项目提出更改建议了! 这是产生他人项目复刻的最后一步,可以说是最重要的一步。 如果您做了您认为有益于整个社区的改变,绝对应该考虑回馈社区。 +At last, you're ready to propose changes into the main project! This is the final step in producing a fork of someone else's project, and arguably the most important. If you've made a change that you feel would benefit the community as a whole, you should definitely consider contributing back. -为此,请转到项目所在的 {% data variables.product.product_name %} 存储库。 在本示例中,它位于 `https://www.github.com//Spoon-Knife`。 你将看到一个横幅,指示你的分支是 `octocat:main` 之前的一个提交。 单击“参与”,然后单击“打开拉取请求” 。 +To do so, head on over to the repository on {% data variables.product.product_name %} where your project lives. For this example, it would be at `https://www.github.com//Spoon-Knife`. You'll see a banner indicating that your branch is one commit ahead of `octocat:main`. Click **Contribute** and then **Open a pull request**. -{% data variables.product.product_name %} 会将你带到一个页面,其中显示了分支和 `octocat/Spoon-Knife` 存储库之间的差异。 单击“创建拉取请求”。 +{% data variables.product.product_name %} will bring you to a page that shows the differences between your fork and the `octocat/Spoon-Knife` repository. Click **Create pull request**. -{% data variables.product.product_name %} 将带您进入一个页面,您可以在其中输入更改的标题和说明。 重要的是要提供尽可能多的有用信息,在首要位置说明您提出此拉取请求的理由。 项目所有者需要能够确定您的更改是否像您认为的那样对每个人都有用。 最后,单击“创建拉取请求”。 +{% data variables.product.product_name %} will bring you to a page where you can enter a title and a description of your changes. It's important to provide as much useful information and a rationale for why you're making this pull request in the first place. The project owner needs to be able to determine whether your change is as useful to everyone as you think it is. Finally, click **Create pull request**. -## 管理反馈 +## Managing feedback -拉取请求是一个讨论区域。 在这种情况下,Octocat 非常繁忙,可能不会合并您的更改。 对于其他项目,如果项目所有者拒绝您的拉取请求,或者要求提供有关请求原因的更多信息,请不要生气。 甚至可能是项目所有者选择不合并您的拉取请求,这完全没问题。 您的副本将存在于互联网上。 谁知道呢 - 也许您从未见过的人会发现您的更改比原始项目更有价值。 +Pull Requests are an area for discussion. In this case, the Octocat is very busy, and probably won't merge your changes. For other projects, don't be offended if the project owner rejects your pull request, or asks for more information on why it's been made. It may even be that the project owner chooses not to merge your pull request, and that's totally okay. Your copy will exist in infamy on the Internet. And who knows--maybe someone you've never met will find your changes much more valuable than the original project. -## 查找项目 +## Finding projects -您已成功复刻并回馈存储库。 来吧,再贡献一些!{% ifversion fpt %}有关详细信息,请参阅“[查找在 GitHub 上为开放源代码做出贡献的方法](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github)”。{% endif %} +You've successfully forked and contributed back to a repository. Go forth, and +contribute some more!{% ifversion fpt %} For more information, see "[Finding ways to contribute to open source on GitHub](/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %} diff --git a/translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md b/translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md index e370ae0345..fa245c2915 100644 --- a/translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md +++ b/translations/zh-CN/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md @@ -154,3 +154,37 @@ By default, when you create a new organization, workflows are not allowed to {% 1. Click **Save** to apply the settings. {% endif %} + +{% ifversion actions-cache-org-ui %} + +## Managing {% data variables.product.prodname_actions %} cache storage for your organization + +Organization administrators can view {% ifversion actions-cache-admin-ui %}and manage {% endif %}{% data variables.product.prodname_actions %} cache storage for all repositories in the organization. + +### Viewing {% data variables.product.prodname_actions %} cache storage by repository + +For each repository in your organization, you can see how much cache storage a repository is using, the number of active caches, and if a repository is near the total cache size limit. For more information about the cache usage and eviction process, see "[Caching dependencies to speed up workflows](/actions/using-workflows/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy)." + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +1. In the left sidebar, click {% octicon "play" aria-label="The {% data variables.product.prodname_actions %} icon" %} **Actions**, then click **Caches**. +1. Review the list of repositories for information about their {% data variables.product.prodname_actions %} caches. You can click on a repository name to see more detail about the repository's caches. + +{% ifversion actions-cache-admin-ui %} + +### Configuring {% data variables.product.prodname_actions %} cache storage for your organization + +{% data reusables.actions.cache-default-size %} + +You can configure the size limit for {% data variables.product.prodname_actions %} caches that will apply to each repository in your organization. The cache size limit for an organization cannot exceed the cache size limit set in the enterprise policy. Repository admins will be able to set a smaller limit in their repositories. + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-general %} +{% data reusables.actions.change-cache-size-limit %} + +{% endif %} + +{% endif %} diff --git a/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index 5e77f1bfa3..264d7bd5dc 100644 --- a/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -1,6 +1,6 @@ --- -title: 关于自定义域名和 GitHub 页面 -intro: '{% data variables.product.prodname_pages %} 支持使用自定义域名,或者将网站的 URL 根目录从默认值(如 `octocat.github.io`)更改为你拥有的任何域名。' +title: About custom domains and GitHub Pages +intro: '{% data variables.product.prodname_pages %} supports using custom domains, or changing the root of your site''s URL from the default, like `octocat.github.io`, to any domain you own.' redirect_from: - /articles/about-custom-domains-for-github-pages-sites - /articles/about-supported-custom-domains @@ -14,62 +14,58 @@ versions: topics: - Pages shortTitle: Custom domains in GitHub Pages -ms.openlocfilehash: a2c5ae3df0e2dd6248db6e03fd7c64e973b14f3d -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 09/05/2022 -ms.locfileid: '145130285' --- -## 支持的自定义域 -{% data variables.product.prodname_pages %} 可使用两种类型的域名:子域名和 apex 域名。 有关不支持的自定义域列表,请参阅“[自定义域和 {% data variables.product.prodname_pages %} 故障排除](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)”。 +## Supported custom domains -| 支持的自定义域类型 | 示例 | +{% data variables.product.prodname_pages %} works with two types of domains: subdomains and apex domains. For a list of unsupported custom domains, see "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages/#custom-domain-names-that-are-unsupported)." + +| Supported custom domain type | Example | |---|---| -| `www` 子域 | `www.example.com` | -| 自定义子域 | `blog.example.com` | -| Apex 域 | `example.com` | +| `www` subdomain | `www.example.com` | +| Custom subdomain | `blog.example.com` | +| Apex domain | `example.com` | -可以为站点设置顶点和/或 `www` 子域配置。 有关 apex 域的详细信息,请参阅“[对 {% data variables.product.prodname_pages %} 站点使用顶点域](#using-an-apex-domain-for-your-github-pages-site)”。 +You can set up either or both of apex and `www` subdomain configurations for your site. For more information on apex domains, see "[Using an apex domain for your {% data variables.product.prodname_pages %} site](#using-an-apex-domain-for-your-github-pages-site)." -建议始终使用 `www` 子域,即使同时使用顶点域也是如此。 当你使用顶点域创建新网站时,我们会自动尝试保护 `www` 子域,以便在提供你的站点内容时使用,但你需要进行 DNS 更改才能使用 `www` 子域。 如果你配置 `www` 子域,我们会自动尝试保护相关的顶点域。 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site)”。 +We recommend always using a `www` subdomain, even if you also use an apex domain. When you create a new site with an apex domain, we automatically attempt to secure the `www` subdomain for use when serving your site's content, but you need to make the DNS changes to use the `www` subdomain. If you configure a `www` subdomain, we automatically attempt to secure the associated apex domain. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." -在配置用户或组织站点的自定义域后,自定义域将替换未配置自定义域的帐户所拥有的任何项目站点 URL 的 `.github.io` 或 `.github.io` 部分。 例如,如果你的用户站点的自定义域为 `www.octocat.com`,并且你拥有一个未配置自定义域且从名为 `octo-project` 的存储库发布的项目站点,则该存储库的 {% data variables.product.prodname_pages %} 站点将在 `www.octocat.com/octo-project` 上提供。 +After you configure a custom domain for a user or organization site, the custom domain will replace the `.github.io` or `.github.io` portion of the URL for any project sites owned by the account that do not have a custom domain configured. For example, if the custom domain for your user site is `www.octocat.com`, and you have a project site with no custom domain configured that is published from a repository called `octo-project`, the {% data variables.product.prodname_pages %} site for that repository will be available at `www.octocat.com/octo-project`. +For more information about each type of site and handling custom domains, see "[Types of {% data variables.product.prodname_pages %} sites](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." -## 对您的 {% data variables.product.prodname_pages %} 网站使用子域名 +## Using a subdomain for your {% data variables.product.prodname_pages %} site -子域名是根域前 URL 的一部分。 你可以将子域配置为 `www` 或站点的独特部分,如 `blog.example.com`。 +A subdomain is the part of a URL before the root domain. You can configure your subdomain as `www` or as a distinct section of your site, like `blog.example.com`. -DNS 提供商为子域配置 `CNAME` 记录。 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)”。 +Subdomains are configured with a `CNAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)." -### `www` 子域 +### `www` subdomains -`www` 子域是最常用的子域类型。 例如,`www.example.com` 包括 `www` 子域。 +A `www` subdomain is the most commonly used type of subdomain. For example, `www.example.com` includes a `www` subdomain. -`www` 子域是最稳定的自定义域类型,因为 `www` 子域不受 {% data variables.product.product_name %} 服务器的 IP 地址变动的影响。 +`www` subdomains are the most stable type of custom domain because `www` subdomains are not affected by changes to the IP addresses of {% data variables.product.product_name %}'s servers. -### 自定义子域 +### Custom subdomains -自定义子域是一种不使用标准 `www` 变体的子域。 自定义子域主要在您需要将网站分为两个不同的部分时使用。 例如,可以创建一个名为 `blog.example.com` 的站点并独立于 `www.example.com` 自定义该部分。 +A custom subdomain is a type of subdomain that doesn't use the standard `www` variant. Custom subdomains are mostly used when you want two distinct sections of your site. For example, you can create a site called `blog.example.com` and customize that section independently from `www.example.com`. -## 对您的 {% data variables.product.prodname_pages %} 网站使用 apex 域 +## Using an apex domain for your {% data variables.product.prodname_pages %} site -顶点域是不包含子域的自定义域,如 `example.com`。 Apex 域也称为基础域、裸域、根 apex 域或区域 apex 域。 +An apex domain is a custom domain that does not contain a subdomain, such as `example.com`. Apex domains are also known as base, bare, naked, root apex, or zone apex domains. -DNS 提供商为顶点域配置 `A`、`ALIAS` 或 `ANAME` 记录。 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)”。 +An apex domain is configured with an `A`, `ALIAS`, or `ANAME` record through your DNS provider. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site#configuring-an-apex-domain)." -{% data reusables.pages.www-and-apex-domain-recommendation %} 有关详细信息,请参阅“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)”。 +{% data reusables.pages.www-and-apex-domain-recommendation %} For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site/#configuring-a-subdomain)." -## 保护 {% data variables.product.prodname_pages %} 网站的自定义域 +## Securing the custom domain for your {% data variables.product.prodname_pages %} site -{% data reusables.pages.secure-your-domain %} 有关详细信息,请参阅“[验证 {% data variables.product.prodname_pages %} 的自定义域](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)”和“[为你的 {% data variables.product.prodname_pages %} 站点管理自定义域](/articles/managing-a-custom-domain-for-your-github-pages-site)”。 +{% data reusables.pages.secure-your-domain %} For more information, see "[Verifying your custom domain for {% data variables.product.prodname_pages %}](/pages/configuring-a-custom-domain-for-your-github-pages-site/verifying-your-custom-domain-for-github-pages)" and "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)." -有许多原因会导致您的网站被自动禁用。 +There are a couple of reasons your site might be automatically disabled. -- 如果您从 {% data variables.product.prodname_pro %} 降级到 {% data variables.product.prodname_free_user %},则目前发布自您的帐户中私有仓库的任何 {% data variables.product.prodname_pages %} 站点都会取消发布。 有关详细信息,请参阅“[将 {% data variables.product.prodname_dotcom %} 计费计划降级](/articles/downgrading-your-github-billing-plan)”。 -- 如果将私人仓库转让给使用 {% data variables.product.prodname_free_user %} 的个人帐户,仓库将失去对 {% data variables.product.prodname_pages %} 功能的访问,当前发布的 {% data variables.product.prodname_pages %} 站点将取消发布。 有关详细信息,请参阅“[转让存储库](/articles/transferring-a-repository)”。 +- If you downgrade from {% data variables.product.prodname_pro %} to {% data variables.product.prodname_free_user %}, any {% data variables.product.prodname_pages %} sites that are currently published from private repositories in your account will be unpublished. For more information, see "[Downgrading your {% data variables.product.prodname_dotcom %} billing plan](/articles/downgrading-your-github-billing-plan)." +- If you transfer a private repository to a personal account that is using {% data variables.product.prodname_free_user %}, the repository will lose access to the {% data variables.product.prodname_pages %} feature, and the currently published {% data variables.product.prodname_pages %} site will be unpublished. For more information, see "[Transferring a repository](/articles/transferring-a-repository)." -## 延伸阅读 +## Further reading -- [自定义域和 {% data variables.product.prodname_pages %} 故障排除](/articles/troubleshooting-custom-domains-and-github-pages) +- "[Troubleshooting custom domains and {% data variables.product.prodname_pages %}](/articles/troubleshooting-custom-domains-and-github-pages)" diff --git a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md index 6e4dea54e6..ae7c873c86 100644 --- a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md +++ b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md @@ -54,6 +54,9 @@ For each branch protection rule, you can choose to enable or disable the followi {%- ifversion required-deployments %} - [Require deployments to succeed before merging](#require-deployments-to-succeed-before-merging) {%- endif %} +{%- ifversion lock-branch %} +- [Lock branch](#lock-branch) +{%- endif %} {% ifversion bypass-branch-protections %}- [Do not allow bypassing the above settings](#do-not-allow-bypassing-the-above-settings){% else %}- [Include administrators](#include-administrators){% endif %} - [Restrict who can push to matching branches](#restrict-who-can-push-to-matching-branches) - [Allow force pushes](#allow-force-pushes) @@ -84,6 +87,10 @@ Optionally, you can restrict the ability to dismiss pull request reviews to spec Optionally, you can choose to require reviews from code owners. If you do, any pull request that affects code with a code owner must be approved by that code owner before the pull request can be merged into the protected branch. +{% ifversion last-pusher-require-approval %} +Optionally, you can require approvals from someone other than the last person to push to a branch before a pull request can be merged. This ensures more than one person sees pull requests in their final state before they are merged into a protected branch. If you enable this feature, the most recent user to push their changes will need an approval regardless of the required approvals branch protection. Users who have already reviewed a pull request can reapprove after the most recent push to meet this requirement. +{% endif %} + ### Require status checks before merging Required status checks ensure that all required CI tests are passing before collaborators can make changes to a protected branch. Required status checks can be checks or statuses. For more information, see "[About status checks](/github/collaborating-with-issues-and-pull-requests/about-status-checks)." @@ -151,6 +158,13 @@ Before you can require a linear commit history, your repository must allow squas You can require that changes are successfully deployed to specific environments before a branch can be merged. For example, you can use this rule to ensure that changes are successfully deployed to a staging environment before the changes merge to your default branch. +{% ifversion lock-branch %} +### Lock branch + +Locking a branch ensures that no commits can be made to the branch. +By default, a forked repository does not support syncing from its upstream repository. You can enable **Allow fork syncing** to pull changes from the upstream repository while preventing other contributions to the fork's branch. +{% endif %} + {% ifversion bypass-branch-protections %}### Do not allow bypassing the above settings{% else %} ### Include administrators{% endif %} diff --git a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md index 872d6e08f0..bef4499ff6 100644 --- a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md +++ b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md @@ -73,6 +73,10 @@ When you create a branch rule, the branch you specify doesn't have to exist yet {% endif %} - Optionally, if the repository is part of an organization, select **Restrict who can dismiss pull request reviews**. Then, search for and select the actors who are allowed to dismiss pull request reviews. For more information, see "[Dismissing a pull request review](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review)." ![Restrict who can dismiss pull request reviews checkbox]{% ifversion integration-branch-protection-exceptions %}(/assets/images/help/repository/PR-review-required-dismissals-with-apps.png){% else %}(/assets/images/help/repository/PR-review-required-dismissals.png){% endif %} +{% ifversion last-pusher-require-approval %} + - Optionally, to require someone other than the last person to push to a branch to approve a pull request prior to merging, select **Require approval from someone other than the last pusher**. For more information, see "[About protected branches](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-pull-request-reviews-before-merging)." + ![Require review from someone other than the last pusher](/assets/images/help/repository/last-pusher-review-required.png) +{% endif %} 1. Optionally, enable required status checks. For more information, see "[About status checks](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." - Select **Require status checks to pass before merging**. ![Required status checks option](/assets/images/help/repository/required-status-checks.png) @@ -99,6 +103,12 @@ When you create a branch rule, the branch you specify doesn't have to exist yet 1. Optionally, to choose which environments the changes must be successfully deployed to before merging, select **Require deployments to succeed before merging**, then select the environments. ![Require successful deployment option](/assets/images/help/repository/require-successful-deployment.png) {%- endif %} +{% ifversion lock-branch %} +1. Optionally, select **Lock branch** to make branch read-only. +![Screenshot of the checkbox to lock a branch](/assets/images/help/repository/lock-branch.png) + - Optionally, to allow fork syncing, select **Allow fork syncing**. +![Screenshot of the checkbox to allow fork syncing](/assets/images/help/repository/lock-branch-forksync.png) +{%- endif %} 1. Optionally, select {% ifversion bypass-branch-protections %}**Do not allow bypassing the above settings**. ![Do not allow bypassing the above settings checkbox](/assets/images/help/repository/do-not-allow-bypassing-the-above-settings.png){% else %}**Apply the rules above to administrators**. ![Apply the rules above to administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png){% endif %} diff --git a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md index 9a2ca2a765..474cc4705d 100644 --- a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md +++ b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md @@ -97,7 +97,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - run: 'echo "No build required" ' + - run: 'echo "No build required"' ``` Now the checks will always pass whenever someone sends a pull request that doesn't change the files listed under `paths` in the first workflow. diff --git a/translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md b/translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md index 03e5eef696..f6bff21e91 100644 --- a/translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md +++ b/translations/zh-CN/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md @@ -185,7 +185,16 @@ You can also define a custom retention period for a specific artifact created by {% data reusables.actions.cache-default-size %} However, these default sizes might be different if an enterprise owner has changed them. {% data reusables.actions.cache-eviction-process %} -You can set a total cache storage size for your repository up to the maximum size allowed by the enterprise policy setting. +You can set a total cache storage size for your repository up to the maximum size allowed by the {% ifversion actions-cache-admin-ui %}organization or{% endif %} enterprise policy setting{% ifversion actions-cache-admin-ui %}s{% endif %}. + +{% ifversion actions-cache-admin-ui %} + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-settings %} +{% data reusables.repositories.settings-sidebar-actions-general %} +{% data reusables.actions.change-cache-size-limit %} + +{% else %} The repository settings for {% data variables.product.prodname_actions %} cache storage can currently only be modified using the REST API: @@ -195,3 +204,5 @@ The repository settings for {% data variables.product.prodname_actions %} cache {% data reusables.actions.cache-no-org-policy %} {% endif %} + +{% endif %} diff --git a/translations/zh-CN/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md b/translations/zh-CN/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md index 2805786381..d01f6e8e7a 100644 --- a/translations/zh-CN/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md +++ b/translations/zh-CN/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md @@ -22,7 +22,7 @@ shortTitle: Manage releases --- ## About release management -You can create new releases with release notes, @mentions of contributors, and links to binary files, as well as edit or delete existing releases. +You can create new releases with release notes, @mentions of contributors, and links to binary files, as well as edit or delete existing releases. You can also create, modify, and delete releases by using the Releases API. For more information, see "[Releases](/rest/releases/releases)" in the REST API documentation. {% ifversion fpt or ghec %} You can also publish an action from a specific release in {% data variables.product.prodname_marketplace %}. For more information, see "[Publishing an action in the {% data variables.product.prodname_marketplace %}](/actions/creating-actions/publishing-actions-in-github-marketplace)." @@ -36,43 +36,62 @@ You can choose whether {% data variables.large_files.product_name_long %} ({% da {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.releases %} -3. Click **Draft a new release**. +1. Click **Draft a new release**. {% ifversion fpt or ghec or ghes > 3.4 or ghae > 3.4 %}![Releases draft button](/assets/images/help/releases/draft-release-button-with-search.png){% else %}![Releases draft button](/assets/images/help/releases/draft_release_button.png){% endif %} -4. {% ifversion fpt or ghec or ghes > 3.2 or ghae %}Click **Choose a tag**, type{% else %}Type{% endif %} a version number for your release{% ifversion fpt or ghec or ghes > 3.2 or ghae %}, and press **Enter**{% endif %}. Alternatively, select an existing tag. +1. {% ifversion fpt or ghec or ghes > 3.2 or ghae %}Click **Choose a tag**, type{% else %}Type{% endif %} a version number for your release{% ifversion fpt or ghec or ghes > 3.2 or ghae %}, and press **Enter**{% endif %}. Alternatively, select an existing tag. {% ifversion fpt or ghec or ghes > 3.2 or ghae %}![Enter a tag](/assets/images/help/releases/releases-tag-create.png) -5. If you are creating a new tag, click **Create new tag**. +1. If you are creating a new tag, click **Create new tag**. - ![Confirm you want to create a new tag](/assets/images/help/releases/releases-tag-create-confirm.png) + ![Screenshot of confirming you want to create a new tag](/assets/images/help/releases/releases-tag-create-confirm.png) {% else %} - ![Releases tagged version](/assets/images/enterprise/releases/releases-tag-version.png) + ![Screenshot of the Releases tagged version](/assets/images/enterprise/releases/releases-tag-version.png) {% endif %} -5. If you have created a new tag, use the drop-down menu to select the branch that contains the project you want to release. +1. If you have created a new tag, use the drop-down menu to select the branch that contains the project you want to release. + + {% ifversion fpt or ghec or ghes > 3.2 or ghae %} + ![Screenshot of dropdown to choose a branch](/assets/images/help/releases/releases-choose-branch.png) + + {% else %} + ![Screenshot of the Releases tagged branch](/assets/images/enterprise/releases/releases-tag-branch.png){% endif %} - {% ifversion fpt or ghec or ghes > 3.2 or ghae %}![Choose a branch](/assets/images/help/releases/releases-choose-branch.png) - {% else %}![Releases tagged branch](/assets/images/enterprise/releases/releases-tag-branch.png){% endif %} {%- data reusables.releases.previous-release-tag %} -6. Type a title and description for your release. +1. Type a title and description for your release. {%- ifversion fpt or ghec or ghes > 3.3 or ghae > 3.3 %} If you @mention anyone in the description, the published release will include a **Contributors** section with an avatar list of all the mentioned users. {%- endif %} {% ifversion fpt or ghec or ghes > 3.3 %} Alternatively, you can automatically generate your release notes by clicking {% ifversion previous-release-tag %}**Generate release notes**{% else %}**Auto-generate release notes**{% endif %}.{% endif %}{% ifversion previous-release-tag %} - ![Releases description](/assets/images/help/releases/releases_description_auto.png){% else %} - ![Releases description](/assets/images/enterprise/3.5/releases/releases_description_auto.png){% endif %} + + ![Screenshot of the releases description](/assets/images/help/releases/releases_description_auto.png){% else %} + + ![Screenshot of the releases description](/assets/images/enterprise/3.5/releases/releases_description_auto.png){% endif %} + 1. Optionally, to include binary files such as compiled programs in your release, drag and drop or manually select files in the binaries box. - ![Providing a DMG with the Release](/assets/images/help/releases/releases_adding_binary.gif) -2. To notify users that the release is not ready for production and may be unstable, select **This is a pre-release**. - ![Checkbox to mark a release as prerelease](/assets/images/help/releases/prerelease_checkbox.png) + + ![Animated GIF of Providing a DMG with the Release](/assets/images/help/releases/releases_adding_binary.gif) + +1. To notify users that the release is not ready for production and may be unstable, select **This is a pre-release**. + + ![Screenshot of the checkbox to mark a release as prerelease](/assets/images/help/releases/prerelease_checkbox.png) + +{%- ifversion releases-set-latest-release %} +1. Optionally, you can select **Set as latest release**. If you do not select this option, the latest release label will automatically be assigned based on semantic versioning. + + ![Screenshot of the checkbox to mark a release as the latest release](/assets/images/help/releases/latest-release-checkbox.png) + +{%- endif %} {%- ifversion discussions %} 1. Optionally, if {% data variables.product.prodname_discussions %} are enabled in the repository, select **Create a discussion for this release**, then select the **Category** drop-down menu and click a category for the release discussion. - ![Checkbox to create a release discussion and drop-down menu to choose a category](/assets/images/help/releases/create-release-discussion.png) + + ![Screenshot of the checkbox to create a release discussion and drop-down menu to choose a category](/assets/images/help/releases/create-release-discussion.png) + {%- endif %} -9. If you're ready to publicize your release, click **Publish release**. To work on the release later, click **Save draft**. +1. If you're ready to publicize your release, click **Publish release**. To work on the release later, click **Save draft**. ![Publish release and Draft release buttons](/assets/images/help/releases/release_buttons.png) {%- ifversion fpt or ghec or ghes > 3.2 or ghae > 3.3 %} - You can then view your published or draft releases in the releases feed for your repository. For more information, see "[Viewing your repository's releases and tags](/github/administering-a-repository/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags)." + You can then view your published or draft releases in the releases feed for your repository. For more information, see "[Screenshot of your repository's releases and tags](/github/administering-a-repository/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags)." {% ifversion fpt or ghec or ghes > 3.4 or ghae > 3.3 %} ![Published release with @mentioned contributors](/assets/images/help/releases/refreshed-releases-overview-with-contributors.png) diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-4/6.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-4/6.yml index e9bd1dcf8f..c1f8fa7628 100644 --- a/translations/zh-CN/data/release-notes/enterprise-server/3-4/6.yml +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-4/6.yml @@ -6,6 +6,7 @@ sections: - Updates Grafana to version 7.5.16, which addresses various security vulnerabilities including [CVE-2020-13379](https://github.com/advisories/GHSA-wc9w-wvq2-ffm9) and [CVE-2022-21702](https://github.com/grafana/grafana/security/advisories/GHSA-xc3p-28hw-q24g). - Packages have been updated to the latest security versions. - "**MEDIUM**: A stored XSS vulnerability was identified in GitHub Enterprise Server that allowed the injection of arbitrary attributes. This injection was blocked by Github's Content Security Policy (CSP). This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Updated: 2022-07-31]" + - "**MEDIUM**: A vulnerability involving deserialization of untrusted data was identified in GitHub Enterprise Server that could potentially lead to remote code execution on the Subversion (SVN) bridge. To exploit this vulnerability, an attacker would need to gain access via a server-side request forgery (SSRF) that would let an attacker control the data being deserialized. This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23734](https://www.cve.org/CVERecord?id=CVE-2022-23734)." bugs: - In some cases, the collectd daemon could consume excess memory. - In some cases, backups of rotated log files could accumulate and consume excess storage. @@ -30,4 +31,4 @@ sections: - | After registering a self-hosted runner with the `--ephemeral` parameter on more than one level (for example, both enterprise and organization), the runner may get stuck in an idle state and require re-registration. [Updated: 2022-06-17] - After upgrading to {% data variables.product.prodname_ghe_server %} 3.4, releases may appear to be missing from repositories. This can occur when the required Elasticsearch index migrations have not successfully completed. - - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' \ No newline at end of file + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 7960cd746d..5efcabdade 100644 --- a/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -2,6 +2,5 @@ {% ifversion ghec %}![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org.png){% elsif ghes > 3.4 or ghae > 3.4 %} ![Screenshot showing how to enable push protection for {% data variables.product.prodname_secret_scanning %} for an organization](/assets/images/help/organizations/secret-scanning-enable-push-protection-org-ghes.png){% endif %} 1. Optionally, click "Automatically enable for repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %} 1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. - {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} diff --git a/translations/zh-CN/data/reusables/dependabot/supported-package-managers.md b/translations/zh-CN/data/reusables/dependabot/supported-package-managers.md index 68680a69b8..3e651d2f5e 100644 --- a/translations/zh-CN/data/reusables/dependabot/supported-package-managers.md +++ b/translations/zh-CN/data/reusables/dependabot/supported-package-managers.md @@ -1,55 +1,53 @@ ---- -ms.openlocfilehash: 073c21c1480e0f9f699687c730aef2bb670654e7 -ms.sourcegitcommit: 47bd0e48c7dba1dde49baff60bc1eddc91ab10c5 -ms.translationtype: HT -ms.contentlocale: zh-CN -ms.lasthandoff: 09/05/2022 -ms.locfileid: "146689019" ---- -下表对每个包管理器显示: -- 要在 dependabot.yml 文件中使用的 YAML 值 -- 支持的包管理器版本 -- 是否支持私有 {% data variables.product.prodname_dotcom %} 仓库或注册表中的依赖项 -- 是否支持供应的依赖项 +The following table shows, for each package manager: +- The YAML value to use in the *dependabot.yml* file +- The supported versions of the package manager +- Whether dependencies in private {% data variables.product.prodname_dotcom %} repositories or registries are supported +- Whether vendored dependencies are supported -程序包管理器 | YAML 值 | 支持的版本 | 私有仓库 | 专用注册表 | 供应 +Package manager | YAML value | Supported versions | Private repositories | Private registries | Vendoring ---------------|------------------|------------------|:---:|:---:|:---: Bundler | `bundler` | v1, v2 | | **✓** | **✓** | Cargo | `cargo` | v1 | **✓** | **✓** | | -编辑器 | `composer` | v1, v2 | **✓** | **✓** | | +Composer | `composer` | v1, v2 | **✓** | **✓** | | Docker | `docker` | v1 | **✓** | **✓** | | Hex | `mix` | v1 | | **✓** | | elm-package | `elm` | v0.19 | **✓** | **✓** | | -git submodule | `gitsubmodule` | N/A(无版本) | **✓** | **✓** | | -GitHub 操作 | `github-actions` | N/A(无版本) | **✓** | **✓** | | -Go 模块 | `gomod` | v1 | **✓** | **✓** | **✓** | -Gradle | `gradle` | N/A(无版本)[1] | **✓** | **✓** | | -Maven | `maven` | N/A(无版本)[2] | **✓** | **✓** | | -npm | `npm` | v6、v7、v8 | **✓** | **✓** | | +git submodule | `gitsubmodule` | N/A (no version) | **✓** | **✓** | | +GitHub Actions | `github-actions` | N/A (no version) | **✓** | **✓** | | +Go modules | `gomod` | v1 | **✓** | **✓** | **✓** | +Gradle | `gradle` | N/A (no version)[1] | **✓** | **✓** | | +Maven | `maven` | N/A (no version)[2] | **✓** | **✓** | | +npm | `npm` | v6, v7, v8 | **✓** | **✓** | | NuGet | `nuget` | <= 4.8[3] | **✓** | **✓** | | pip | `pip` | v21.1.2 | | **✓** | | pipenv | `pip` | <= 2021-05-29 | | **✓** | | pip-compile | `pip` | 6.1.0 | | **✓** | | poetry | `pip` | v1 | | **✓** | |{% ifversion fpt or ghec or ghes > 3.4 %} -酒馆 | `pub` | v2 [4] | | | |{% endif %} -Terraform | `terraform` | >= 0.13、<= 1.2.x | **✓** | **✓** | | -yarn | `npm` | v1 | **✓** | **✓** | | +pub | `pub` | v2 [4] | | | |{% endif %} +Terraform | `terraform` | >= 0.13, <= 1.2.x | **✓** | **✓** | | +{% ifversion dependabot-yarn-v3-update %}yarn | `npm` | v1, v2, v3 | **✓** | **✓** | **✓**[5] |{% else %}yarn | `npm` | v1 | **✓** | **✓** | | +{% endif %} {% tip %} -提示:对于包管理器(如 `pipenv` 和 `poetry`),需要使用 `pip` YAML 值。 例如,如果使用 `poetry` 来管理 Python 依赖项,并且希望让 {% data variables.product.prodname_dependabot %} 监视新版本的依赖项清单文件,请在 dependabot.yml 文件中使用 `package-ecosystem: "pip"`。 +**Tip:** For package managers such as `pipenv` and `poetry`, you need to use the `pip` YAML value. For example, if you use `poetry` to manage your Python dependencies and want {% data variables.product.prodname_dependabot %} to monitor your dependency manifest file for new versions, use `package-ecosystem: "pip"` in your *dependabot.yml* file. {% endtip %} -[1] {% data variables.product.prodname_dependabot %} 不运行 Gradle,但支持对以下文件的更新:`build.gradle`、`build.gradle.kts`(针对 Kotlin 项目),以及通过 `apply` 声明包含在内且文件名中带有 `dependencies` 的文件。 请注意,`apply` 不支持 `apply to`、递归或高级语法(例如,Kotlin 的 `apply` 和 `mapOf`,由属性定义的文件名)。 +[1] {% data variables.product.prodname_dependabot %} doesn't run Gradle but supports updates to the following files: `build.gradle`, `build.gradle.kts` (for Kotlin projects), and files included via the `apply` declaration that have `dependencies` in the filename. Note that `apply` does not support `apply to`, recursion, or advanced syntaxes (for example, Kotlin's `apply` with `mapOf`, filenames defined by property). -[2] {% data variables.product.prodname_dependabot %} 不运行 Maven,但支持对 `pom.xml` 文件的更新。 +[2] {% data variables.product.prodname_dependabot %} doesn't run Maven but supports updates to `pom.xml` files. -[3] {% data variables.product.prodname_dependabot %} 不运行 NuGet CLI,但支持直到版本 4.8 的大多数功能。 +[3] {% data variables.product.prodname_dependabot %} doesn't run the NuGet CLI but does support most features up until version 4.8. -{% ifversion fpt or ghec or ghes > 3.4 %} [4] {% ifversion ghes = 3.5 %}`pub` 支持目前为 beta 版本。 任何已知限制都可能会发生变化。 请注意 {% data variables.product.prodname_dependabot %}: - - 不支持更新 `pub` 的 git 依赖项。 - - 当尝试更新到的版本被忽略时,即使早期版本可用,也不会执行更新。 +{% ifversion fpt or ghec or ghes > 3.4 %} +[4] {% ifversion ghes = 3.5 %}`pub` support is currently in beta. Any known limitations are subject to change. Note that {% data variables.product.prodname_dependabot %}: + - Doesn't support updating git dependencies for `pub`. + - Won't perform an update when the version that it tries to update to is ignored, even if an earlier version is available. - 有关为 `pub` 配置 dependabot.yml 文件的信息,请参阅“[启用对 beta 级生态系统的支持](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)”。 - {%- else %}{% data variables.product.prodname_dependabot %} 在尝试更新到的版本被忽略时不会为 `pub` 执行更新,即使有可用的早期版本也是如此。{% endif %} {% endif %} + For information about configuring your _dependabot.yml_ file for `pub`, see "[Enabling support for beta-level ecosystems](/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#enable-beta-ecosystems)." + {%- else %}{% data variables.product.prodname_dependabot %} won't perform an update for `pub` when the version that it tries to update to is ignored, even if an earlier version is available.{% endif %} +{% endif %} + +{% ifversion dependabot-yarn-v3-update %} +[5] Dependabot supports vendored dependencies for v2 onwards.{% endif %}

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�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%0D6BlaT^=@%`W{&Qf6FAZdr3DKdLJw-}*}q8{QI~ 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 literal 70827 zcmZs?1zc6n);~Ol?gkN%E~P`dB}6);pE44-QH`sIh z-ACdATN0dbA`p1FCx!fxSW4Sv%$M8v{&uT9V|}-4BEvDt+86WJ2p&E z9`1Z%+d>AQSuL+H)%A#9rE7G>J7A=*gK8~X1!I%r-6n^E)mY!sV8lUJ@Wzerh{*Mw zLASxla6=nOBr!k-Fwv`1f3d^yBl6XicQ$n70qPq`L7BSOE?h4a9FbGUnf>_J_WZ8S zf+^vQ&st&CXC|lKF5|x1q6F)ol+d;;GsDqE+{ zwApk6*>sht>rj=$bd^JD)q&rhsEcrh_m3Yc;{)lgqX%NONd;dD3dlM*cxZoFn}UgT z*IV1;Uh>l7rm|TQSn` zr^V9GbLPe*E480YTKc3Qk{Sh&M0A*z>R#G*}|&+D#i`0W84!cd%O;6j)dfy`E)=cgUr?cZMZUomkNS?a?O3 zDHA`C`!nAGF>QjgC5Xgk{Cafy%sYc+d=%f%NfcJl?kOF_*Od}=A`k|8~?fnrY zTsVD3M=bD)3zX>m9SGEr+z`ysbgXJr$ZKgV>Wv5SOa@pqwDs*R@fCjv^Y^;j!Dxdw zu5(P=qG`{#UMUGkw_UA+G^-zBPd6yVt%-=y2x*q&FvEi6e{;HR4w~PA| z#!pf*aw^OxF+ORQ9Ejj>YFu2YYBy&Dq2Z7BCrWzjM@QF02+dtu`i`BAUw0hagRI{k zgdbG-&t^+UJWkN@4)|y}KQfJhSVr-XO7i%6a|l&kg$z$hJLOVuap(-^ETZ-#3Tq~j zEw(Msr$&21;)V_}zis#TXi(tzFkPaY37UZyDeqaO+MrgH1k2?M)9hxk@z5cK zFLqznaqsLfdB1m1T)&__D0G(puqegfgpuq@Xr8BE1xygeBZGig#w}cQ96@? z@VC|9y>^dpc=pNeMLqIYzvJ@Vom&)R0I&uGXrr4V#m;h89S7TNi84v?lj?qOI z{ZB!v1J5{jHl?;E-glr`NynY!h@TW*tXAa))D)C_=Tz$tgX z?pR3>o3}JkU;X~@hg-aQlD#z$PoQ!5<_m8UeVNe1UB=oZhMkWC7lGlgb^Yi}@eMJ6 zvpSW@YWn5tAVd6@@{J7mqiH9tpZT!>W~H4<$XsrhN!#ad-{;u7run++^1cT;I#F%R zEccp7tna>lPTEE~st5UO?hB+plB|iq4RPG{`Vsa^)>H@l!sCUo- zQ=C@2n1UBZtJhaX8LkJF4@Y=7g^+?&SgU6u#+xPcmA8pSl*(iWg~o%zD&Sslj=!9X z%6?y@1BFWl6|vX^?|6B*Wwlg0+jwI266zXc`KDTeOREh~&)gh$`fk%h`C*)j(#~xB z^UhC>0~I8x(V`e(@3N98`PjwE=lJ9xFbM2l5(2*c2jS=<2;BwnNjh(9K6AqKNtvt<=%6~w0Gh4u5jes zc}R)6s{p{{Vy7{F0JE@LTuqjyl1az39h10Kf3a&W@5b`^XXP@@H&$BHZy8!Qa8V58 z#P>tSPLP4>exL7&t;uy<2czOg+V}+(Ld39hikgMi*+jlo;4Hk`k5HL~k!~8X?1K!3 zo{rSDZN=A|FLC z!?Gs-c)bzA5B!}SGmBdob~ib!C=~W&Hk{iJ8Q7nRNDg!V2rSZfaq3oNT{L^E3xVdJ zJzOdOwW%#GOqtY;B_@jU_94=^SI^7yp_O(sLn@pGA`p8@-G>I4_tEi{jHkAVeCRZO zxt6xU_AfmE%xT9xVl}|#nG1aiMR9!sLG#OT=wR~(b>4Rh@NSxgzvdBscE5Jv3#Yzp zr|$qn_JRFd4jHkF7#xTxfZi|7hz;6o$Ka~&IXwU6p6?dRqBcn8 zqYoFKySk-bg4DnN}R^iD;II73|s&-@>2m5}EC2`Mn4#SZ3~rpf#dfd20a)bIgw= z?VEZJXekw50WB!*qHfvAGCk%RHq z$uuj8U|*!*Qaf<{>Mkl)77hSvAU+^XghcM$@ccWTCnEso8vB0ph@8$|DXL2ngG&`oEWPYdV^GUW1rKIDA9W?x(h45ly z!_es4UAdg&!b_qT!GARVxN6s3L)N+LpP-Ae*S^3$(Emghf zwf7j|u-&nHunxA5g>Di76rRrrB?c`ul)Nk(JQJB{Yv4@s-mhVpI=M3^zPf28D2{By zsPai~M+@-)C65CiK1*6paqId%Jed7WeZwyb6Bz66^*KBy5yy{vDgS^j9oBv;hPaSF zaXu%G2>u3P)`V~%k$N5hJsvEqR??n5#7P~IcRFPCh9(RP^vgHvSZD0gFBtE3**$iU zcyfG<^;ihqGyEc?S8cG9Q$E?b*vaMX3jG3hvHH%c<;o!?PCX>W0}Uco8o-^vQo<_h zE&ML@MX@(=FiqDuC#Zj3`SHhqyavEX^wXaBk!bDW9?CcWJGopV0(}~Vwi^z4 zaWTO&BnRR=GLYG5pE?7onKu&DZUll7`vZ#@P0uTzRr-7NXE02?jv-)kBib%{(6`%Z z=WNfmBSMM*4twEo>7CEBhn;xH$3gtk=TUDVe2t2gGN8dNl%_Zrs|y{IdyoVcTXT-L=Bl5ovizRGM;}#T_A`6WUVvw9b{Dd zEzit;VkeD~%3&6}UHVm@B~xvmnPA^OqU1L&zhnwUY`QR(weBbA*K6y9Jv3)?%K39H zYunq$p9vMug2j?Uo3UUA@cgu)xcK<#rrSz`*t*LCnFT^pQJ@5g-58Bq=)%g~WF0EQ zk6})%=JE3GsZ+{AJ1koqTR1vN37V>MIKoi=@Tra4E8UBO=6r79ju^lJrz$YAktTve z9%Kn=IL1*0(nK&gHX;J}$ke(2`4o-G!ofLh3o9}TNR8%YLS_h9p z5@b=+A}qJqnR1M5$Pz>_%4C%vcTers-}92dhcnYwnZLn3KXZm21|Z^vM;~oi-({^g ztvedNuz|Dsg)dk4npm~E?<$B;^g0~tmPcrS%Kz@e9DG<$bY~~F%uMa~;z$HkchYj6 zZm9v&)gv9#+Ukbzxmxb&UCPHaEv>>X%?T$U(kKt!q)%?3#Y7(k`y@V~d&~iE(>AVj zQR7oDsXjz!_EJ?|J!|=*f&C!FV;G3^EI74oE9>z__k9pvluzs z2U`wz87K_Ga2JdwGwm3~(uMC1{F=(_q8%QKDZ|+o@Z6j*Zu=f=xRfkU|L`KyuIM&3 z`hlb2hVmPuGyu)aFGM+x?{c}owT4j%o zF$mrq%$V#MX-4{IR#7=?)J0i6eobNE=-a!;QUX z5I{K+y7()2iwy&0KD_ZepWF!mP}22F28kECpaSxRe{5O2J2nMXl{-YWOe~u*a`#-AhwLlF%q5SRrxB9P6AVa)=d;e1n9|NGl@&fOB z|5N?Xn7lZDd;hKeXUt4LYIvi6u_S^6r_nT7jJo>nGczpf?vADMerKZkOi|hCBo^zp zfKNYq&qz^ zh9|PZ4X9}owa4eH$+255IxI};gha$%8W$Bg`7{0^%?3+y00|pFoLzmie-G)^*dNYy zGFnk|(STcA?Q#C#6QhYQZ=MQpo1o6|3;gjp4}L5nS~qkKp#})ZFn||#xfb0@tm0rc zeLk{%x_f&(ljUc4KI8u!AjN>^^aya#p#k4A4-%pG$ItQn@A3sZEi5g`){?107WY3C zT*dcHonF?QusloP)krh6&3 zx{k;|YMY(?cEsbM$sl#XeE5*WkAoXZTdTk@VM``1S6u zO482iMu7|nl^9!Qr78UucT(tWeTn(t&F-(BKfJG8ygtU5(o>drP>GSp=0y{m7rkfc zdr5A9Ls~v=R`+UI8Pk~wW6E#6Ww}O;vyqq8dfUD3xzjZ9w`uJ$K2m#wFo6ammBORY zWcRa{Wv}UuCqx(wfEy!N3LOYevift(HQt4N{Y3IT@Uv-o56ZDoFJ{11*Z1Egy@4_^ zhe#I+agLJPdsOYyt?X7Zw90v`W3!PXQ4{*=1CN_ezt0;++b%9GEsZzbd81O7slBD3 zpy=7u_>jhwF62PbbF6eKzE#Iz+{9DB(^gTvCyvi4@OtRxV08lx);sRR1j*D<2a&8w zav)RTcbbM7u9Y;%)U#q+8>~}?sG6T_e7zFxF-~6ruOdV^D0I+<_=BXD?laYSL?U;S^GJ(`uPlZq+ay- zZX1*18(Hr6G-kS_=_5H%?Yj0aeiIyb$`wJ^B-h)XeJ1e}lOi>^Su#UZnTcKi=_0~HVZY}6>#>1352F~I z*aYlgW}o1d?=hSYQ;}d4WT%537M<$PtaAt7`=V-GiH+L~8a2js$es>%2Io0na7nA` z;XbwBVb0m#jBFo9^_t#DRZ|sYUdQOh|BmB0Q%lvZezp54?!eGSb(HT5)ON7O<*Jb& zq7Xeah}3%AxZZyYT~Mr}KyYix{`&UtWOKyCo5oT|cBTFNm0JX?9AqN3ZY?YD&;sVR zqygMljyY(g-6KWi^Gh8cD^K_o&xY=84@LljrA+*hK|N>eg4*+ZbHg&*WWwMogGpT3 zfK<-%cQM33y;<|}V(q5O{Sn_xQS4&$V=G-J3Cq$iX)C>F+5VE8o0e&uI~bemy5U}B z9V_`ZE4RxA4ZcUa-$NIh>!&~Nlw3&`8EW*P&6qdOWc=aPv*K*bf2d51rh4(S_xDKL zPV^j8vFnF}RniAwSx&hl_hAL-D0UtB*lHsU_KEmak_csnDYEW8!e0xNw*3AoO-Ftb zHFb2w2?UXHEWV z&OF2-H_qaZ8BLtHfVPda;&U=Fdv!_<76y|TizXFbHL{?+Mhje%gyk)ffcOa5QD%W6 zsd2OkB({NfS>ZP^*sVrWE`BAR!vT2Fl)k5ys@0Zj-dn?8-j3J-b>d?yafGI_vLESU zKfITfd0#g9pV6$=W{cBvL%*6db);eF)M?#n5+bon7!o~IU{gcLZ)oYz@EXQG)Zn1FCK^7=s*sCo;e zLXjn|=+b_CCQ6OK4wU+=ijWy|e}&PVW+(b3EH~+<_V?=X{Q1l!rSa4UQw^%<0R*0j z?g1nx^l+n*;3#9~yQ845-Vhm|>+M|B_p%LfI;>qkbIe!>2ZK2Bye(e1bB%tnHBTl9 zQoo$ZFj?yMt!95}#H7wStaCpS*IL(;Ph*de)=S!G!XWG&1}r)YFK7l)~=A z_IMf@=)M%#c(NAzJaH$$ebHwrzs1VxE0o{THTSAa5h*+_yyF!smb_{7Sj#Yx%IPud zfD0$vmohg?YpGBCA+gb34r!8(x!hw!;n|`Ghb|D#dJ0|e#rF~cYHo9TgwVVc%C2hQ zIK^2Vz;f@|UH~GD;EM-fcuet!URDCd<3@CWM}kxuhZ}*L$x_1@t&g}b2J(UEuPt2R z$jWqs&uWjh%J&zCvar#khVkLsApw3=C2kt}!$;aqv>$lRu!JL7dCk7`=DPc*cokPP zCTww4^~1`ww=sxh?+-8nH8o;IQE?8a2Ks7;7fjbqu5bS8`)|w)`ange5OQp030sxM z>{-s|Fk`bRXnK3?;^^n*7dy+Jlz1!4AuPAx^TwY5{mQuz|Tk>=?quBJ7M@-_8d zmOpAt<2T9?`*>V#7E{iPd_sOOS|##`3df)}115)9lKjkS$=3VHT_zwk#$lqr^^%A! zY4?K+8GpK~0Ylwu%jZ0)rz#sy>N8rgQlFE2{XT;c+**(M*DHNS0^6LU>3NoOh7?pO zzDjHv*zYos{6(!n7<~YV~NG6n@;UU7{i1dOl{c&ZO%CxS!zI<-EOA< zecY4Ryk>`Pmt;>d5s%5(qV!s^OuRGu<;r{lmvd?amm*rXWt1p$GLfQeQ>lp;{SyY= z>FFyxR_)5~C5jnEI$5FeY?=L49_~?_cEBBLiS}2udAXX!q(kA;fs(QzmE=F?aj)Wp z)(%#~JS<~=`g8L`Px?V0MSDBYX!u2lAP7S07vMYl&!0<;|5iUr8J1RC&vmch zi0}ubLG5Hp2{=@N4d18icz=u9J;H#%z&)TqfcZCN+)3)QU%0%3V}t)hI;DZ&|3M?| zsQ)jBxo?lA1SfM3jo=jjK`+$2|A!F#Ic(_vz?%E^ZwUUk1AyTDH;A&PhSU2$gg*Zl zM{oZNR{j4Fvi~na2meLro}*jidqj8a-QYCe)Z}}TH*C)ckYMmRNmQyiRtvAbr^-jy z?DD9a(I`RhTIfcFtgO}v0D=TueAGS{-;kP{6kKO;Ef4dWgwD^qe^+9| z@(0rsmp%4oGi(?7YB5u)><1I&Vlr|*!P&fL^}>eC(a}+iijWqR88_Yeo}Ygmb<8Id za9h#Qz1yifQ&)oP2QER_a7LoI=Q*qxOUyAZxL#nd z+bw9NFSs68fPI~QSu@=s<2q#!FFR5&pRdZEoW)7~Jp2aXk#aW3WMgN0jrpK6C^sBT zOi!nzrP2L>!64Ur0XHY(wC1lJc5XsrB3F*qIj-%WK}s4+4-QASVlu?`_B=4U78k3d zqLij~cO6$37M)N7?&6i#VUmrW7q1fp zSSRAFZgU#3Vkz-Q<_JgHH$;M-|Z+qDK9i_V-kH`b$b{bv2<1EsQh# zdAn9NfaWa{3<-vpHILl3=d)925i#03W@N|h_~i9e~tXx`oR zs@+SoNbw}|#D&g6;n6r$mL>6<``Wtr zo?HA6W0y6<^UXH47cqDkh7`&LVz` zCxrk!`j}KQ4#pZ?Jz#$3)3qd70mB-zS)iGizErwlGZIYXdijj%06MQ{WOOl$c>CqY#NfoX?;D7~ z#`1ffH?VN#lA@}r>Ie+1G7&KmZY>xgP{cIB>i%-Qo!r{8G(R)-t>}3A;<{6}1T~-G ziYD)+;wvI4G?&BY0Lrvjr)#*ksNzZ^EuNkK!w}LO;6VJ4OO^aqLDi`cNPKf4^Xv~P z)kz;jXi{N%N9XhBn;3r#M6b$ezL5a|Ce+%cU|U$h4FFR36&#DY+Y>y@I?RjZX${(=MKOAQ-|u3ho{H!a?D zZt&f_m&*bz(l`%a_0Sd6O2tu@s_=c*r3CzqJ92tk$F@=}QdUr%8Y zE|r*8L&^K^NripsG6Lyexi^Aj6?kl}mzmKl{0|Zey!ETOtHp zNZ%)0GlxMzo(knFm8a-0--oyUxg17Q4zF`%u%eFLYnG6yse*JTt7(m}8(V zq+*{ngj)oq&}bkM@?>`&f?t*BkeuA^QYU2ZzJ9*RpUQvR)ppfI1mu}HrGB;sU~bTY z&Q2=lcK_HMUe+VR5AUvGAC57CzS>~f%$={qpih3(N6d!xgKOaGxFy~?2IxCZw)JI8 zV_JrvoLcM%mwQ|ebu@G*Zv0%@%i*hwxb!)hm+5UE{+9V)1DKYr?hqug#~4n04l3?6 z6#!JpTf@`Dq?GKI91ZBRonDwE$rA#xy{Oz7`6bhUTj3oHSlsZ{9HuyN(JP(~C2+-eU&1|^V`@gv3R0d1s}8Vf=*=Eu>>$`xOO&BlR&Us_sPDVVVD z<4*o(6qYrn?H=`DU)PUye~K2hPu5C#+n0k$RX3msBWby7=RxcmM>17)5e^P+gx0;P zVZLx@w~ru!(EM=2(i)yqv<(+rvy3}xA|jS}*nRl%O3(D8-YnSaag@|Y0Lv37L81+H zbyiFtX3G2u|z`Xh9;9-Jna%X7T?+E}vr4H**qI$N;3a69l+Gou77 zxVji`dO)C`n=P+isRaT~aVl3Onqr28T-}{H`lm4uuFz0oXOOw|s+d6^dZUQ7c-WQj zt>7F|OsSMvLdZr-yXLEbz~6?7uUUb8b|=o1uU3O!Qi82C$0%Qoq`CJhukg=E1`Dd~ zBDFMF=T21+lJA3m6jO4gh!JMHJexpT978FtG_a^-Bd*-{&}McUSF{+(XafFF(7wL3 zmyFaUu%4JT09k*cp7dLUY<=qoF1$N!bCZ(Af$4}EUa|49B2TY!J=t|j2=CiB7xgK% z7(SA}$nAUz{&11|7Y>vVZFVESe?1-fI%|tGf0Er7$w^~(q_flV_hMn;2XEZ+AmwjP z9(`n3_*s@p+VttitI%&-(PK5kd{egXl?)s?UkK>fXsjMJH>?eCck{_;m5tO9I(vAg zlA4=l#zwUZ6IYyTejuC`S~Pdkd?_Bho|EFl>rt;r+g>qo?Og2jR_C{c<_$C8v=vNx zdk2sH-4!+}d2#6t;5mi;(zXix&BFQNYd$z@8(brg6#QeGuw>pSh`cCVk^uXm-)+ab zKE1V9zD3a`CnZyMj1ui@{2ValB1C-eM-CmPGnVOBdiMib6zpQ8F1ruRH_^z8&{|T< zkfrRpg&uO$=NwxS)FiZY#bgwy+YdcwqH4<6Zg5ntu2^u8Tl|%U*{zp(asED_ZLO)w zqsk06A|#!o@}K<$GBd*Qb%p-76~1=EbwJP|t2t@dVZD+N#q{JMqdxO`n*E zOqVj_?Jo7my|P?Int~%Y48U7HfAAd3l+Y)EzHv+v8TVl{eH}Bs%hDlXlu71WHS2D~ zaEt97ZH+7XxdXCB^}2if5c>cJ7Fr_j3U2flAGq6(FQ#%Lp>1`Qw=fSs==>a_`Q1zX8 zL%-oeygpu2Dwf6pQcEo?rDyDC@yThOl}cAaunW!S;`)(cY;m2~EN{2|FuoS}?A2Db z83&*(9|O!F&9tK5XKz#Uw({6SMlTSWt2|V>1O5cI*EL{6hTa?zhcL#-x$bccw6kGf zO~jvWBE1fzG%`&U7WSg_b8oPx@T(@}Q>&dP27K#^)KX#A+iT@fmrGl+k{2v2*DfUr zyFB*+hyWZMdeyhv6*spR^BcKaSP9Aj0UuFaU3=@PDF*rmhO6y|j8M48%JUuSqj{q1 z*hfm~?#zJ%s)hYUl2q2MN4_NI*=~LvcmNE_E}ro_6_}J8O^YK)R8Vtz);FxHvjTXM z;+a4Xxb;e&IVco9WYY)jbB_+nzSkO^D;_JX8i|1%XX3?QZOA%}Tw{ZWCpUY__o=jHdt zoC%5R1s8Of9wABg@AVHYLj_OM`pv7SZe5%XQmF|{A<*7w`6?xYP_|gE=lt?LWC1vW zgbl+BPXSl|q>TjJl&HHaO)*bPGifnnW1Ona6`VHUF2gDZvifTYlWT3wmL2tu9UUwp z!)|6vD5NFjA^w=w*M-dYnxhA{iO>CP1$#dw^7iy-MjVa1|D39-K5fp`>ca;$T_f(M zy`@SsK4H*u-b8m!zA%SJ4P!%CNU*Qb^uzf!uqk16P3mb&5i=L320UPp&3{vOaYy~? z{W^`agDG2iZoZH)h#mVqaB%XT;CcWz<_kPpNqw5{5qKGoCl%%kp@v9EojHD`xxN_v zc9N6x<+Y1^f}x?>r2%At#KjD8AhF~iu&Q{Te(YPX%PxBha?+HD90IH%tQCz->Zq09 zc{yC1OMcwYA;(b29nyS*Q5L|-Ipg`QeA81(kCU`O5Nu3A)uFa7B-0u^VP>zH6I$7Cs>K0Q|A++E?`h~ZA9 z@Fl_k-^ad^qcMHJGByc+`}}mNQ$wK4r;hlPgjKNXBMi=&yNRJz+T(AdbdZH3x=}6m ztC+jXjCyszCJOg<)M(-8RgP#oP^bJ1I8wWp6g31o{Cx)lsMk}$ar(J3zJ|7D1o7n@ zIyg!{l-FMFti-GIJw$+!$+{on(gOR6+sQDF1hmaYd;sr$kNBF?d=Qy-5zIS13^D|o z`0K6T;k{S5{N7odosZDm{K4OQO-)^t+8UQJPgw`l`bvi?U44;prBZVxNGF%^s3OX7n3_^KMIDSX_8|N~| z?p7AFnGEgEY=oKgK|x{R73I&_$^N%fQ*$_qzV?%;bE*A37or3pMPL6oqhe<#Eeof< z+fN&gvFC3DFlG7)fr~?pNJ*5oVAk7rCFHqYDe1ALYe<7atZ$8knXQG zuH_KLX6@p6XAymX)P2Q|rEh@1=9ETexZIAo`^}P## zXU))R$L`6Vc^n+GuhGB5dCFXoB=CHom=&H3$t#)W9CjDCyw|r881Xp{zoy|SP9OB- zmIpr9zy%Wm0yCnB^0BseUe8(gru3T&`|yC+O~B3v7|NG#+#&5P8tEvh>`g$n-=rnw_^`95Mo1JyR3{QSNl+KYJgaZYCo+dKQI%Hl6X z2u#{*xUhir>uWsD73wT9J#J;;(DwN5lgr<%dWjWMh|k(45nxbb@(}*8O$xJW<3B(r zgjPJ4$Rb;J0rh=eO8TM+^}^c&>fk!j3j64j5C5ar5)M1pO*fwO{X{st>>L|&PoHS! z|N41dvF%NrfqyYFpo-IenJCNH)7nz9+;=>Q&@9e#qmLHp@NT7odU15RzU0Q1-O}q#Gw#cBQZ(bENuZ$>m&LzHtY?1%Zih+OT;D?itke_G8iEX&n zuLyw}?X@s5$`uPWP_j5NO>^3$bKvZbhxv4 z*4f+X+GoRlE4$KgHiu^<+cN_gT{rZN`^}mIrtIK9ek2w^WoF19#?!Gqff~xlDh9Qu zk-E>b#YcQqs`9V@6&fOUpqi1E_8kYYj)}90J1NDOTGD61t^FmhffaJ=%ZFZ29r2_j z`iItwXus;)FP0zUuZn*mQb?by^%B`E&MXs2;C z+M5h;cu2G(WnEv%34Ey2m}A_1a6+<;-$U@%Va5V$^05@%;R3!xf0T7I%wVtMV0fT_ z`w(dulEk#mZ3aD$wPXQsaL4nk4){!w>IucmRJ61b%jtu84$BCl;3n<1J}o zz#47_#%qJS293nLZeKZ?ls+4c&=?$PW3pm5B2P(LvpcYGPoJ#uJh{>((Ha}OyK8-^ zY&3uV`E{P>#pNTF)?gO?fLmSLecbx1{cz*ht!h+^`^co)pZtt5LtGzxe47Fv=NKKl ze>(evKk`v*#bRmrwv6f08@}o)8&Rd)*8!#>E;!MVRO@7N`E4Z^)f@a`{ByOG+RUWTOZ1DDlT}lB=3_ z_77r758Q4GA4nlUeSFrhSIKknop*no2qV%}?_rxsC&;lIHwA@C$X1i5=v(0W4jUuD z<_ZRzzJZC^=_VH|yyZRV*U<7YPLSip9nFDT&8@!B$J@?U`KsD^UYDst@~`&UhU z7Ni(FJUq)1&ik#}zdafci|6Eqi>JB+H(!1m39q)toEp!B#7Ky_Aun6$nGi- zM(GcqN}$93zDm8b*npa`pk9qT%{4#X%d5QNXu4hd-hjF+UDMhaB)_@MkjLwls=t#PMQ3IPg!21L2Jdao1~ zpYsX%F=5#jG+)~3Etx91E|pMylFKcuYM)*jT_${tPT_AyYe}&&jmFFH1;kHo6fl90_aFSyR19@ZyfnHsY_86 zK5Ynxe@rA6BB-SEYW?J+!k5SIIh){Zi`^7U<`I!gSiFi42dFBu*rM-GvwTL9po(N} zIYPPd!a8kPRFuU?rn!4DwebdPE>4moewUxXZ1L50Oi=8%TmWknVE-gw3ag9fPka}& z`?d|1##5s7BL6A9?V3lDxk|e4)0&Q7c40L=URlES*x^$>si-j&xLTh9bxYPO!dqfBS8pWxWiewwK44yD z;lE)vA8K2N-0y${Mw~4^(p*ly8$uC;$IZ?BjKt){i1$;SE3rDgsnVyeBHDk((tOq= zFXS#xZq`|@V3G4e(F*azK(+h4c)+J&iY_MQV~_lUkYjHPzCQieY#RCYEDrLJ5`R~+ zs+EKB#29xCsSCgIh0y-rulU@Ml>;SNoIEuB^PFY^Pa|t)N}b#4l(gEjtKmnI`89c( zl|0BJ71PN_iTjbiwm;`?{uYR4Q@7=EDkl7-TP_No5r5XG*_2B27PcXwrg` zQ$Iocy54V{l1cW0VXTL3=0_^A9A1LtVZ|R=F!abRoUwf#dOcPvtMll|1G%SL19W6e z$<;3e(1Va3Fyfb;FRk($L=k>0@Gh=R%r%{h97pDPr`fezaw$SR@a^E#Y$|p(cE=mJ zd8*%L=6#p3F|1Xt<07#d0+At-c&5jGA{Mauf1w@~!2=>a4`lp@~m=l4`o6^(y}m_NGO6_n;pgQq7jjf=Qs_|bb9!=(p6ME}h&s%{#Re_! za!GDLfF=8tL!P4h%{~AmDtHU{U0n`PTWpwSP?2vkZfix3(vK&L{0cnLW0_DwnH#EA zLsfPOjUi#QUVKO<7NPW;4#OM`VAeVJM$O`f{VcJJlDL>t%mR&p^N zdr@$G8fa$wE5z3KsK&+^^doVokj}iV_6G$&gj6~SxC9(!QeyrQT5|;oRFz+EHlA+5 zOgTe7sH2orj!IBj5e*=GO_WYpWTME}z6gr|+Ts3$NT!J&<7sq`#~$RE@y|5ki+a#k$clA7?chDPn9q>vDjq zG-Vv0{Iibod4Fz4|B^56*vR`c_!Ew`#XFVtZ$p}o(NK=UK0Lo@sn}{TT-%x|e1L8i zJLT?e4nLAIPi9VYuik=kW6O-`Cv8Q8esA|OP$i9&r`Mve3qEx&qjG6!VMrANojSoN z{loLE-gku4AF#tuX@W`o4i2~SFs1ucKl2M|Rfxh5gWVqvB1K(h&c|t4Gx> ztyX-8sx$i*Kv$ys6yNm5Ch=Nb8kx5269!dpNfQICzJBE7=on1CZ0dEXvCm2If(WbQ zv;eJKmof*ttuzsJoE137NtK!Wz{9M+Et=B+k<~fbm2#=JVar(8evlH|ZnJiEVO$<_ zL_!1!?r*8C+(=yxc}gY8*TFsK=u&(}BNozc?P@l0D5l|`I!RQr{#c0XpG}*!E%<3` znX(wZL2k8H=JrFyg;l~T8iAOf4ahpqda=LV5~Xk4_kU1)cD7nEo9Dsxj+t?e{9qpb z4t@PaEdxxYovhzx;C+{ou~sU-J8p>=%P;zM9h3s=-fX15=gv4wQ)ujeF&JNKQ%kc&Mo}6?zsiyKDM0A9xnuTm{WToFTjKW4RLY5sKx3NGcv^kZHz%Sy1M*&Uk>N zGb$nwUm}=jsSP5hn^OTyhZLPIv?}&jo^px6>zJX4@GM%l%`!%kBKR51dB+z+%CC63 zqVIh6TC!glP+>2Xy;8PBPmNF=HSSvJZmyb1$Cl?g@+FvdoT zq$t2)0>`>ybVA7wV{WmUEzw~vZ*=^a6R}M>@{PV2@*7chZM{d*QQQ)~qerUp>0$5#crIIw zVCc(2fmlju|JJ1?NRq1m7|@#9O25=p$5%w;Py}?E{;_DgZA2XQJX!}${CB+8GSlk+ z9I#{nI&qyfILmzpY22C~Y;FjTQ0Kgx&dkj@=@{Bl#01evf~*z2j<((c&e#TBnXXYj zHSnd_Kw+J1spTmUFgW;BUVr`@4Q4`~#E&I3z)UTjSvi0pp@1jLM~*3`t;wQ{`-hDZ zAEY%DUOLN-i{OuICZI}s%}~41@t~y1RD7a`bRcZWa% zNpN=v?(V^zKycSPWbbp%KHs^|bH6{AAH%Gkmg=7Fp6aT%s&H=l=f!W|6XigIx87_P zjK#YTZ+8%Hd^yE^C7d-AR0$4$8YS+gmOoJscLcN}^6 zn4+>U4Y2h1Jr(5(YBH1hMdvoIY#e(ie^(bCAb~8bYVpL7-4d|6{I?ZF#xLXd^Bk2Vqj6h@`v%7Sc6;yMf<0j00526LUJi z@T$Q%Q^8Fl?>SP1b=5k*GgF>fMiZ{ZSN!Zy`b5A6T?<7uQyMn$y^2v<%LnVeN}1D8 z2SMR1guR&!I>RGuFxE`4r}4cl&sIvP$fZ4qII&UAm97|U!CH0!V3tEFYt zpfW2m7ep~oOrrN!9pIF31#QQYvY76+f3v;SnL3( z`d@W;bkC*JaC~cms<##}GJRP;#BJ^|x&o zyg{2|;`JE3n5?=hTW4ZvrqXII&)JBSUr=M#W z>oJhx*;h@qxvZ>wGc;yk7r|_77?Shm$qiJPLryuH;d=+6B*`1%k5MA>5a`ZVtM>$n zYJZF!FZg0{z2E+#ti`+;R&1<^*3H8B?L(?fa!0wj;sUx1t)@xi2G9E*hhh%q1!P3j zw8qmDE{-T;MXN{`BCPo=0_%@|W8MQ`p+QQ9D^RK%a$LOgCpe4uy~MuBI=>W5JTem_a;Gx##qXu&qxeXc#EBjOUq70ciU4EDtL2D`LyU$~AeyNENt9U- zN&q-NNh6ziYJg4~$;`Ds@qMbZF%0gS(aA;#t2r@{M80AZgs+*6MiZf>FD%ySd^Uyx*bUSiJB4e!!5dL%Q0^==@J7l;7u2^T~`QVE@DXE|PR>nQSk4XoJ|NhU9U5N)!IEa}A%l-Wp z{@;J}FD2@FUYA}_nghVGup#V(` z#A~NZ(Rh@s=w)8Qii%^&It@2&+C*LlTe4cm8^7x*1zk5h$UVT@Dzi_Za3FN_QIud= zTfq~jUQpTE{jC2Egso}Tz5S~j5K+h8%=^2J%)7HoP(s`#*3&%rOY6uOdC83MxN zpVOt(e0e7Dett-{6qMHd42;agw!Uw}5-Bi>8jpA&>chB81Lye4#10?G;^ZhVHoDE@ z_b?z>e7oSNrflvzU%VHs7ji$0DW7}{nDu~SoKaz(FWPA@2dP|73)M!b6?=ZS;P{}{ zOo0*|La`LKZ-IU-}ceFh$bwRihsb zU=ICFfbw`3{$UR834OrdrOT7AC01*mYg|O9A=aZ|DfYZy&S}0oW^q6qiX}vUpDs)M zu{`3eoa4L|$H4?q-EdFA9h2Pic4NT))m(nrR&w+s?Hb4U-&zTbM~me|>};+;9~EC6 zn(C78oWFu$3Uj&O>My6C*2=)}h}X5%Ta}C#(n_q-j_d?o`*Zb+X?KZU9wZ{XJVb2x zU5P)BTCPQ|Eo>Z$i_gfraXL`}=0UFDFDqS&8Q$$D2rV@bN89VY+itI`xem;)^i1BJ z?#wPBZr9z1W0yLhWGzA$C)ri~vgl)A%5zE)CujNz_p4ohp(Z9M5bSeRX}m>|u_YgY zMI~T{Q!7T}U`7CJG}^dwif3?LfqFt+s4WyeyZ~=)C$At)P(NToS1&`(}SZ z#j;qcJoCAG_C8;B)CS`rUk~rxYw=mH^Sib=9%lQCX{P7Z)1vwUpj9Ho_I^1F&;z2B zc+fB2*dKBUS~;pC?*5Q8Utnh(m*ftT8CH8A zX+<>HHCdnF-s7+S>Fr|qO58TX6&`8=Sd_x=RV5UM>-TjUHJE^Vr(Q zd3_+w%UDkA*^^n7kB|dj=#r`uAm}=IB2Fu;Kq%ibedDA84+sh;;+>Y!<@BQ#72qJ5 zA9wpg{NmrA1bEjJ&pGz_nceFp?=N_jl*dkF@o9CId@wKa4nc-M ziOHESID$)!dcx(y2pi51uX4z3ISRF&wG_W(1oyVcY_6J0@>qWHD&cOb9hn$J(4s9Pp@8fhfH;@S*-0l%)*kVBn`P zkJWn}bL4!fT&lq0glhVynNz;sFWdWV**vQdSgO&fa(PzG;~FsvomZK z8yCH{-jRD8Y}xJcnxrKKe@Yt{nvJ@_{iw-tY~l}bBpD_D5=yx4^neN;)T2~oqFy{C+zKlq+0 z^zv@wQ0DXJC(V>Td`C3k(=Jh)o{&Vs1>}4+%!47zo%S#0;jCHZlR@Bcd9?=zXUQyg zI164_y5W?>NDV9<9@JS^40w_IU1Od}a|*tLhSAhA7Ix$VB?57ei8ypugJ5(sDtBwF zU0ggeHt%&x$cXaN!z0Wd`LH574i^nUMVnF!{f*>haDiCFs2}qV_)(u^RLJ+go}vO2 zEyDv0Yi)O@!JMDAN8>G1E0L3w**5E!KvRVB=3hqJ94jFf8v_nKbHtn$rZeS^(%q?x z60@JTXo=F=YqJG|Rd3*mA}E)&(y_W^YO4=Gg@I*XqvIC^- z;vNpt(=CH!5swVBf_-5&j_Zt_k1$-1iYJV}lasIV25+^21Sjs}y3lPO7gZsvg3 zGur8H5e^moA~SQe3TxABWYdjb;bXzX_fI8=xSEX#?Y_w6Nl3fOHAtN@fq^Q;<3EHqU zK{{&g=96)A0lWu>2AWl#PMjIY+z7Z%7v|G12$)~RvRf2lSV zA2`Th1?ZGmE|Ea&B&R;$i;IwuP)VgCgeO!<2ocSalvW+%7?{{CJE(D3RN?>*UYMGS zjd8ta3V^jQyo-qtq>hA&Vwk`^$Cx$?UavbdZsij(`;rzRGVHaiv;KPoV@f{Z`+)PtZvvN-0ufp(e{!+{~I4h4RwsyagS?o99~JHp$d@s zi+@BCJt{SjCHHWA=DYuHB9}iSeLWr0=||U6`Ng5H@TuA&`+RgzqB%q__f+b6J5(MG z(C)5T$foY5d~b1?hX8nA*!i7lxk?8|9AdGe1WiyQzV$=rKA1ItSLx{|OP1K;&i=*E zg+tsK>;&J^%S+r@rjpAFY@lbsnS6f4c(|xAmGdaT-QpI+rhN0HFt?^MP1xn=D<^1z z13IdWEATQ4((nPdcF=*vT^BuxT$bmfUUJ5<7qTVfP{MU?^=un@54_QYm zHdClO(XU4ZEd4l4Ky`QP+LfIlaQd&J>g_0)-}% zFy|CEZ*u{dE%DvLTVw}li^6NQJ#sD%U>CD(3lHDQttNfKJFj;{ePtIu;)k9XZxrN) zZJL}rv4I1~D!EO_b1mmpBojp{5wgh}n-Bg z(wSdKF>(i3Ro=RSXn;ZT+KQ2bY(O!G_O?fCw(Q#G;-EBQn%<8LSMqlOXkXXusI9Er z5JkC!%8Fa0j0a;C8_qv0Bm=Ki4Zl|y72$A~dj4)dD6xYqeHX3A9bg?J6Xg19GQ-3C zVh}9+_SWEo*K~7OrOx1tPYmv8ro-AOUoMg&*={=11@>%{0Kvs2r*zohq-Nnbr)IoK z*H|?)k)&RJG6rqgTY5e~aeDq8+tIInl~EtD*Y_PCE8he{kk{;YvAAaj4XAe1?QXAC zTLmv{Y!F4O5@|2AEt3lD1_24vXGmw;yMa%J@q~D3fZS_WL|9FPB1LxL3>OoDoE{n~ zuwq?cvS2S4JKV)F?{~Lh>y=@)Nq`icn8G9AX;A8G2}C^-WD=wZSh2!)>SW7DyG)Et zOXDwP?>6`eBT2H$cNEWNfQO9+aTP~>webDJbH9QDZ|zJmTFA+b^$+zh~b%4_g8<4&Q{_1zzs?jXd9N#(%mn2Oz;;l zOjUVZqMmcmjgg0C&qZHRFe-_(P+f^Ewp+7>>LiFsD9p6FeSm!jstSX18)iUsLm?Kr>|NFoCIwOqO}=qRZuzmm*5Jk2MT^~s>{JNR~os?9i1o6a&J z`1#(LohE$GO3h*UXyPLNiMs}1YkV#-1nC`vitfq8I~cB%4UTri!@=u}Z96v#-<9As zA^r-k>pXr-3XcTJHb8}D*n8QyLc37_F$w!K?;0Ed&xlI8;**MC!o7SI1lR}{GWVSh zNt6PGu_x!t42oF`7BnDjOwrfRH+kS_wOm&nxaeuUN#Vj}O~EIOc)y0=Q#l61XNbLS zi1qeJ-&mLE?PR(ffz|wM&K6DLdr{(Ahvl=(*FZDkPOk46&|2f*RsQu!d-|^~tw59g zO*BGj%2&M2F-6cwyjxq;F$3YHpig&mLDj>vm8BmD@|8KclPE>l zAfv;Xbzez1Su#F=nmTS4_66Tl1DK|84Ro(2>^X+Rr3i5F^$7DjW2|-}vg2S6omumT zP(ZRY9qE^S$(#!8T7l^^O3 zS}qp>I(NDJBim6TZxlH$mX4)&qkckYjG||VeCYc_Bgbw6)HV;T|2mW|W%<0t)r}Y% zScOuT7a=p#e@QMSnWg*bAaEQeuQ@XW4-Lr+e~id|C4oR38CNUw z>W$eGF2HM>TFjKrq>#pwE9U#5k>D5@$U*?i(i_ao~0uxVw!v#b7w%;@#&fd=7?jR zsWGI5iM^WF_%6M`ZUI1SqnQ(SYRXg2llf+(%J9OV3k4!&%0#^{ zJ3UIualxQ%D{-yg;(HTs<(K9(xj#$PPjzN#swdXqI)reIi61xdLGq|panZQ2 z^?SWa^zUi_REU90-hoD-TwPG?+Dj3YC*D+#kvj7sbkRqWbHAmSU9!+H-o|o?ZsN6V z_b%goF*fP3WKXgrILN?616<5%3w;$_=B0Klb2#mP1n<1Ku;sI#JBYk_qFP6N9e-%H z0id)gTFDzAlD0;RFt<~&G#91hVbVzjAPWS-*#u$hC)$ucT|$*)9+faya*5kAvP|QI ziD5r6*i<}M%~R1rm4{>h9!759BDtBeRYo2{=&r(!Crur};=&Vx%K-T!5PASPXq=+) zswZ+FdG-|WQM&k+GXi;jv8NOoy~JjO$#$@CRc}ENWr~6aTa*uQklYu*?dCO+{S)OaE}qv z19yF%6tke=uNd}jv*p@Lc(GkmhE1h?0DzQGQUieAe|eY!jv%0!H6RLr1wiv%00sb~ z|C0g_x?V&1uRLIi#DAy!Z>j&Al-d7j>*{|}{%=}`Z&_deXkual1v>(5>FhNG!LF00200yQ(fdaUP5upClcj&`y3Fxu>Ul0G4uO;On z>p$~Z{#PYnK6#XXRMPTbbpBtJSpK7hKeq+mf13YKzJmvg^M6v(LiL}A-~+HemH*F5 zO8%!3%0DH&V4&HD`o;8n2eF%bA`ugl0MLCE__uI97p)au_U!u6xw5(E(Rt;RGdbgD z?m_Q{Sh>$8CZ^X&0idrbZH=_dOsvQ-MR`T-FUqbzd#*aAT$C2~_KNWSV8cO!;_eW2 z4^K}!4-cOJ5q-G5W=Uz&^MRk|!#Yi#o1-f~BcaXW*4l6amKHl7P2V_KGYF87Wges} zWi}ga9vz{&c?j?eI{v{lb4h?mHBL@`2|VseP@Z z;@;fezFQXLEqKD?AVq@_npmgnn8R_Xii2dE4gVHvhJAuV3U*ERh zzbSZZ3h%B?(R!?HOTv#GZ{`*kyIwh2r#Is?iCpvu1b?;Rq|_d(+coUwo5K{!%QL-W zR2nn%F}1WL%RA~mF0ZQ#*t8F5YZJ+Y7SoFXyL-Qv-{_@Z`b(y6cJ0#10xieAL+x!> zlc=rck0Iyt{7wDIs_@d+;Q!o)Q$GOJvFⅈ0_j+Q+`EoltJ2~Lc@rq-`m|tZE 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 diff --git a/assets/images/help/codespaces/add-constraint-dropdown-timeout.png b/assets/images/help/codespaces/add-constraint-dropdown-timeout.png index 13c32df1f97505af8409fe3d09e31f0cf414382c..36e9e279f944768aa9b73209cdd6cafc15c44378 100644 GIT binary patch literal 72909 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 literal 60010 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 H>yZBe2NdQC diff --git a/assets/images/help/codespaces/edit-image-constraint.png b/assets/images/help/codespaces/edit-image-constraint.png new file mode 100644 index 0000000000000000000000000000000000000000..6963f7f3a4daaea4c84b76e850f05876d0f95298 GIT binary patch literal 19451 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 z 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 literal 0 HcmV?d00001 diff --git a/assets/images/help/codespaces/image-allowed-values.png b/assets/images/help/codespaces/image-allowed-values.png new file mode 100644 index 0000000000000000000000000000000000000000..fed113d3404ed20ece9a27e46220962e02be7db2 GIT binary patch literal 41152 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 z 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