Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2928 commits
Select commit Hold shift + click to select a range
72c71c7
Add Okta to supported IDPs
Dylan-Rinker Jan 28, 2022
27e3191
Merge branch 'main' into repo-sync
Octomerger Jan 28, 2022
0c0d6e5
Merge pull request #24813 from github/repo-sync
heiskr Jan 28, 2022
ea58881
Quick optimize images (#24815)
heiskr Jan 28, 2022
a745be8
update search indexes
actions-user Jan 29, 2022
0827ab3
Bump rehype-highlight from 5.0.0 to 5.0.2 (#24582)
dependabot[bot] Jan 29, 2022
a818511
Merge branch 'main' into fix-typo/events-that-trigger-workflows
thematrixaditya Jan 29, 2022
35d7ec8
update search indexes
actions-user Jan 29, 2022
4015e96
New translation batch for pt (#24819)
docubot Jan 29, 2022
7a2a294
update search indexes
actions-user Jan 29, 2022
08649e8
update search indexes
actions-user Jan 30, 2022
194ab90
update search indexes
actions-user Jan 30, 2022
44e8c32
New translation batch for pt (#24823)
docubot Jan 30, 2022
9ece424
New translation batch for es (#24824)
docubot Jan 30, 2022
e1c4f1f
update search indexes
actions-user Jan 30, 2022
818c041
update search indexes
actions-user Jan 31, 2022
46f7eea
Action metadata syntax: set higher max heading for TOC, consistency f…
lucascosti Jan 31, 2022
527545b
Clarify -latest for GH-hosed runners
lucascosti Jan 31, 2022
9cefa7f
Update content/code-security/security-overview/filtering-alerts-in-th…
jules-p Jan 31, 2022
f5e34fb
Merge branch 'main' into jules-5503
jules-p Jan 31, 2022
6ea313a
Merge pull request #24554 from github/jules-5503
jules-p Jan 31, 2022
b82473d
Minor bug fixes from helpfulness survey part 1 (#24782)
felicitymay Jan 31, 2022
ba9cff4
Updates to secret scanning docs (#24553)
mchammer01 Jan 31, 2022
54a6fef
update search indexes
actions-user Jan 31, 2022
991eda0
Merge branch 'main' of github.com:github/docs-internal
jules-p Jan 31, 2022
1d37e8b
add gov takedowns by ToS section (#24812)
vollmera Jan 31, 2022
750f546
Add conceptual content about GitHub Actions for enterprises (#24474)
lecoursen Jan 31, 2022
7ba1f96
Enterprise bug fixes: 2022-01-28 (#24796)
lecoursen Jan 31, 2022
6e35a95
Adds docs for issue forms validation errors (#24389)
emmaviolet Jan 31, 2022
7f92507
add comment about feather icon list (#24728)
Jan 31, 2022
c13b698
Merge branch 'main' into dependabot-graph-actions
saritai Jan 31, 2022
26829bb
Update logging format for azure (#24830)
mikesurowiec Jan 31, 2022
b013267
Merge branch 'main' into dependabot-graph-actions
saritai Jan 31, 2022
dd6a18f
Revert "unbreak repo-sync by fixing the staging deploy workflow (#147…
Jan 31, 2022
b8f11b6
Merge pull request #14852 from github/revert-14761-unbreak-repo-sync-…
rsese Jan 31, 2022
035b721
Merge branch 'main' into repo-sync
Jan 31, 2022
fee0b3f
Merge pull request #14763 from github/repo-sync
Octomerger Jan 31, 2022
e506789
Merge branch 'main' into patch-2
docubot Jan 31, 2022
0f5787b
Merge pull request #13101 from matta/patch-2
lecoursen Jan 31, 2022
44a3bcd
Merge branch 'main' into update_docs_to_match_issue_template_checkbox…
ramyaparimi Jan 31, 2022
934b255
add keyboard focus to scroll top and remove wording to keep one butto…
gracepark Jan 31, 2022
b0e75b0
Merge branch 'main' into dependabot-graph-actions
saritai Jan 31, 2022
becada8
Merge pull request #14751 from alexus37/update_docs_to_match_issue_te…
ramyaparimi Jan 31, 2022
d51d7fa
Merge branch 'main' into repo-sync
Octomerger Jan 31, 2022
e6a5dd7
Remove .rest. from github-script (#24832)
Jan 31, 2022
c7ba60a
Merge branch 'main' into dependabot-graph-actions
saritai Jan 31, 2022
01e701f
Merge pull request #24833 from github/repo-sync
Octomerger Jan 31, 2022
5df847e
Merge branch 'main' into dependabot-graph-actions
saritai Jan 31, 2022
e40c6cb
Merge branch 'main' into patch-2
Dylan-Rinker Jan 31, 2022
660124d
Merge pull request #24634 from github/dependabot-graph-actions
saritai Jan 31, 2022
845de4f
add underline to categories in all docs section (#24818)
rachmari Jan 31, 2022
bb67c2a
move 'bottleneck' to optional dependencies (#24829)
Jan 31, 2022
21e498a
[Jan 31] Adding license csv language (#24732)
erikaxu Jan 31, 2022
d958a64
Merge branch 'main' into lucascosti/runner-latest-note
ramyaparimi Jan 31, 2022
28c1933
Merge branch 'main' into repo-sync
Octomerger Jan 31, 2022
aacc6b5
Merge pull request #14835 from github/lucascosti/runner-latest-note
ramyaparimi Jan 31, 2022
5ee8c24
Merge pull request #24836 from github/repo-sync
Octomerger Jan 31, 2022
b11e84e
Merge branch 'main' into fix-typo/events-that-trigger-workflows
ramyaparimi Jan 31, 2022
c443a2a
Merge branch 'main' into patch-2
ramyaparimi Jan 31, 2022
6042e44
Merge branch 'main' into patch-1
ramyaparimi Jan 31, 2022
fdcd6b8
Merge branch 'main' into patch-2
ramyaparimi Jan 31, 2022
1b130ff
Merge pull request #14700 from joshspicer/patch-2
lecoursen Jan 31, 2022
cabc075
removing unnecessary p elements from graphql pages (#24816)
gracepark Jan 31, 2022
4a9739a
:memo: - Updated Compositite Example on :checkered_flag: - Fixes http…
adithyaakrishna Jan 31, 2022
6f5d011
Merge branch 'main' into repo-sync
Octomerger Jan 31, 2022
07fcf77
Merge pull request #24839 from github/repo-sync
Octomerger Jan 31, 2022
c654abf
[January ~25, 2022] Updates for repository settings nav (#24413)
ethanpalm Jan 31, 2022
e0674ac
Merge branch 'main' into patch-2
lecoursen Jan 31, 2022
9473951
Merge pull request #14765 from Dylan-Rinker/patch-2
lecoursen Jan 31, 2022
9be1f70
Shard staging across 4 Resource Groups (#24750)
mikesurowiec Jan 31, 2022
cb1b8ac
[January ~20, 2022] Updates for org settings redesign (#24401)
ethanpalm Jan 31, 2022
c60c98f
Merge branch 'main' into repo-sync
Octomerger Jan 31, 2022
7383141
Merge pull request #24841 from github/repo-sync
Octomerger Jan 31, 2022
cc8bf30
Merge pull request #14853 from github/repo-sync
Octomerger Jan 31, 2022
8be60ae
[~January 25, 2022] Updates for teams and misc. settings redesign (#2…
ethanpalm Jan 31, 2022
5aadc44
Delete start-new-engineering-pr-workflow.yml (#24843)
chiedo Jan 31, 2022
bd0cc83
use accessible text for view all links (#24747)
rachmari Jan 31, 2022
c7ff324
Release Notes Primer Update: Remove top navigation buttons convert do…
gracepark Jan 31, 2022
c858178
Fix broken images (#24835)
heiskr Jan 31, 2022
7439e78
Merge pull request #14864 from github/repo-sync
Octomerger Jan 31, 2022
f759fc1
Remove all caps and add critical alert icon (#24849)
gracepark Jan 31, 2022
afa0387
Merge branch 'main' into repo-sync
Octomerger Jan 31, 2022
0d20dc0
remove unused variables (#24847)
rachmari Jan 31, 2022
f129e02
Merge pull request #14872 from github/repo-sync
Octomerger Jan 31, 2022
9359183
openapi-decorate.yml workflow fix: checkout head ref for add-and-comm…
rsese Jan 31, 2022
00a924e
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
305b6ef
Merge pull request #14873 from github/repo-sync
Octomerger Feb 1, 2022
6e37ada
Update the OIDC docs (#24828)
Feb 1, 2022
3c6c464
update search indexes
actions-user Feb 1, 2022
4f064c0
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
daba2e0
Merge pull request #14877 from github/repo-sync
Octomerger Feb 1, 2022
29beac5
Merge branch 'main' into fix-typo/events-that-trigger-workflows
thematrixaditya Feb 1, 2022
c49d872
Update Keyboard Shortcuts to meet GitHub's new Content Style Guide (#…
AnilSeervi Feb 1, 2022
9b16031
Merge pull request #24856 from github/repo-sync
Octomerger Feb 1, 2022
3fdbd45
Merge branch 'main' into fix-typo/events-that-trigger-workflows
thematrixaditya Feb 1, 2022
9e1eb37
update search indexes
actions-user Feb 1, 2022
5b032df
Update about-dependency-review.md (#14782)
austenstone Feb 1, 2022
5476d79
Update OpenAPI Descriptions (#24700)
github-openapi-bot Feb 1, 2022
95e4e37
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
2d3d446
Merge pull request #14906 from github/repo-sync
Octomerger Feb 1, 2022
bb33c77
Merge pull request #24860 from github/repo-sync
Octomerger Feb 1, 2022
6efd78b
move 'csv-parse' to optional dependencies (#24852)
Feb 1, 2022
9abf369
Merge pull request #14908 from github/repo-sync
Octomerger Feb 1, 2022
77b10f7
Fix #13741 : Self hosted Pull-based scale update (#13742)
axel3rd Feb 1, 2022
932ec52
Merge branch 'main' into fix-typo/events-that-trigger-workflows
ramyaparimi Feb 1, 2022
b3689ae
Merge pull request #14741 from adityatheoctocatdev/fix-typo/events-th…
ramyaparimi Feb 1, 2022
d55e863
Merge branch 'main' into ivyharriet-jules-p-dev-docset
jules-p Feb 1, 2022
3d69484
Merge branch 'main' into ivyharriet-jules-p-dev-docset
jules-p Feb 1, 2022
dd18e39
removes old children
jules-p Feb 1, 2022
85250a5
Merge pull request #24866 from github/repo-sync
Octomerger Feb 1, 2022
177fb5e
Merge branch 'ivyharriet-jules-p-dev-docset' of github.com:github/doc…
jules-p Feb 1, 2022
896439c
unbreak thinking the site's in AIRGAP mode (#24863)
Feb 1, 2022
74e6dc4
Set all x-ratelimit-* header names to loweracse
alpn Feb 1, 2022
6f888a5
Merge branch 'main' into patch-1
ramyaparimi Feb 1, 2022
5366b0b
fixes broken link
jules-p Feb 1, 2022
16bc113
Merge pull request #14115 from cadamini/patch-1
ethanpalm Feb 1, 2022
ff9c445
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
5e0cbf9
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
317bdd2
Merge pull request #24868 from github/repo-sync
Octomerger Feb 1, 2022
b0de9a7
Merge pull request #14913 from github/repo-sync
Octomerger Feb 1, 2022
c55dc43
moved about webhooks article
jules-p Feb 1, 2022
2cd61c9
moved about webhooks article
jules-p Feb 1, 2022
8844244
actions: document the `--disableupdate` runner param (#24811)
Feb 1, 2022
2b5b4b2
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
6cdd179
Merge pull request #24869 from github/repo-sync
Octomerger Feb 1, 2022
e619b26
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
1e156b8
Merge pull request #14914 from github/repo-sync
Octomerger Feb 1, 2022
75d1a1e
fixes test, potentially
jules-p Feb 1, 2022
2be0c5e
Remove help-to-docs redirect; it's handled by fastly now (#24870)
mikesurowiec Feb 1, 2022
ccb9022
Added explanation about workdir override in entrypoint (#14553)
nikola-jokic Feb 1, 2022
eaad2f0
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
e015922
removes translations
jules-p Feb 1, 2022
68037ee
Swap the fastly edge cache purge to happen on Azure prod deploys (#24…
mikesurowiec Feb 1, 2022
32feca0
Merge pull request #14916 from github/repo-sync
Octomerger Feb 1, 2022
959688b
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
fd623c1
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
53afd39
mention about false positives (#24864)
Feb 1, 2022
4873497
Merge branch 'main' into repo-sync
docubot Feb 1, 2022
593f41c
Merge pull request #14917 from github/repo-sync
Octomerger Feb 1, 2022
3061578
Merge pull request #24874 from github/repo-sync
Octomerger Feb 1, 2022
dc8236a
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
8456db1
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
11831b3
Merge pull request #24875 from github/repo-sync
Octomerger Feb 1, 2022
57579c0
Merge pull request #14919 from github/repo-sync
Octomerger Feb 1, 2022
4eec276
New translation batch for pt (#24877)
docubot Feb 1, 2022
fd71ddf
update search indexes
actions-user Feb 1, 2022
d8fff82
Use reusable for GitHub name
ethanpalm Feb 1, 2022
f327a07
Merge branch 'main' into main
ethanpalm Feb 1, 2022
c7bcb41
Merge pull request #13708 from chrisgarber/main
ethanpalm Feb 1, 2022
f8ad1c1
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
2765703
Merge pull request #14922 from github/repo-sync
Octomerger Feb 1, 2022
d601801
Merge pull request #24878 from github/repo-sync
Octomerger Feb 1, 2022
1e14ea1
New translation batch for es (#24880)
docubot Feb 1, 2022
c4401cb
Merge pull request #14924 from github/repo-sync
Octomerger Feb 1, 2022
bd9d85e
remove need for 'count-array-values' (#24867)
Feb 1, 2022
aaf639a
Merge branch 'main' into repo-sync
Octomerger Feb 1, 2022
4816e5f
Merge pull request #14928 from github/repo-sync
Octomerger Feb 1, 2022
63d0014
Improve Dockerfile security (#24886)
mikesurowiec Feb 2, 2022
5b24276
update search indexes
actions-user Feb 2, 2022
d073578
Add token permission change document (#24759)
YiMysty Feb 2, 2022
1778ef7
Storing base64 encoded data in a secret (#24485)
Feb 2, 2022
4205c90
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
10f887f
Merge pull request #14929 from github/repo-sync
Octomerger Feb 2, 2022
7c45354
Bump typescript from 4.5.4 to 4.5.5 (#24899)
dependabot[bot] Feb 2, 2022
f4149c9
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
6f265aa
Merge pull request #14934 from github/repo-sync
Octomerger Feb 2, 2022
03c2921
Bump @babel/preset-env from 7.16.7 to 7.16.11 (#24888)
dependabot[bot] Feb 2, 2022
328c944
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
ce94797
Merge pull request #14937 from github/repo-sync
Octomerger Feb 2, 2022
01bee25
Bump postcss from 8.4.4 to 8.4.6 (#24900)
dependabot[bot] Feb 2, 2022
2a6c9de
Bump graphql from 16.2.0 to 16.3.0 (#24898)
dependabot[bot] Feb 2, 2022
b653d71
Bump @babel/eslint-parser from 7.16.3 to 7.16.5 (#24894)
dependabot[bot] Feb 2, 2022
f4a3318
Merge pull request #14940 from github/repo-sync
Octomerger Feb 2, 2022
64415b8
Bump prettier from 2.5.0 to 2.5.1 (#24921)
dependabot[bot] Feb 2, 2022
f923e62
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
f3b3fe6
Merge pull request #14942 from github/repo-sync
Octomerger Feb 2, 2022
9e30bf1
Merge branch 'main' into ivyharriet-jules-p-dev-docset
ivyharriet Feb 2, 2022
607bd1d
Merge pull request #22956 from github/ivyharriet-jules-p-dev-docset
ivyharriet Feb 2, 2022
2868933
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
7cc07bf
Merge pull request #14945 from github/repo-sync
Octomerger Feb 2, 2022
faca853
update search indexes
actions-user Feb 2, 2022
6799cb2
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
520de73
Merge pull request #14947 from github/repo-sync
Octomerger Feb 2, 2022
b878dbb
Merge branch 'main' into patch-2
ramyaparimi Feb 2, 2022
d0ea70a
Sponsors Only Repos Documentation (#24432)
jlord Feb 2, 2022
79fc39d
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
4364149
Merge pull request #14961 from github/repo-sync
Octomerger Feb 2, 2022
07a2d2d
update search indexes
actions-user Feb 2, 2022
4aeec49
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
f466035
Merge pull request #14964 from github/repo-sync
Octomerger Feb 2, 2022
a180195
Document redirect-exceptions.txt (#24879)
lecoursen Feb 2, 2022
0308aaf
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
0a561c0
Merge pull request #14966 from github/repo-sync
Octomerger Feb 2, 2022
4ede312
Add early access docs for GEI-CLI (#24592)
lecoursen Feb 2, 2022
4370aec
Merge branch 'main' into patch-2
ethanpalm Feb 2, 2022
a957163
Merge pull request #14912 from alpn/patch-2
ethanpalm Feb 2, 2022
aa56a6a
Merge branch 'main' into patch-2
ramyaparimi Feb 2, 2022
ff25ded
Merge pull request #12909 from rlespinasse/patch-2
ramyaparimi Feb 2, 2022
59b53a9
Improve docker build (#24692)
mikesurowiec Feb 2, 2022
95a5f45
Documents new Markdown shortcut (#24791)
emmaviolet Feb 2, 2022
d78f1df
Fix screen width - release notes (#24881)
gracepark Feb 2, 2022
a64f12b
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
7583e90
Patch release notes for 3.3.3, 3.2.8, 3.1.16, 3.0.24 GHES patch relea…
zachary-mark Feb 2, 2022
fc88a91
Merge branch 'main' into repo-sync
docubot Feb 2, 2022
3eaa32b
Merge pull request #24948 from github/repo-sync
Octomerger Feb 2, 2022
aad6f4d
Merge pull request #14969 from github/repo-sync
Octomerger Feb 2, 2022
f2a3334
Update GEI-CLI docs (#24951)
lecoursen Feb 2, 2022
3992313
Embed Issues landing page bideo (#24887)
ethanpalm Feb 2, 2022
9a51cd1
Self-serve compliance reports for GHEC (#24831)
lecoursen Feb 2, 2022
baec102
Update optimize-images.yml (#24912)
heiskr Feb 2, 2022
6507b31
Bump peter-evans/create-pull-request from 3.12.0 to 3.12.1 (#24893)
dependabot[bot] Feb 2, 2022
a863527
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
62612c3
Bump github/codeql-action from 1.0.30 to 1.0.31 (#24891)
dependabot[bot] Feb 2, 2022
a02a435
Bump url-template from 2.0.8 to 3.0.0 (#24889)
dependabot[bot] Feb 2, 2022
fd1beb6
Merge pull request #14970 from github/repo-sync
Octomerger Feb 2, 2022
477c7d9
Bump docker/build-push-action from 2.7.0 to 2.9.0 (#24892)
dependabot[bot] Feb 2, 2022
a34f2c3
reduce flash of sign-up CTA button (#24933)
Feb 2, 2022
48d7b58
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
c8e47e8
Bump react-syntax-highlighter from 15.4.4 to 15.4.5 (#24909)
dependabot[bot] Feb 2, 2022
4704447
Merge pull request #14972 from github/repo-sync
Octomerger Feb 2, 2022
77db64b
Bump robots-parser from 2.3.0 to 3.0.0 (#24904)
dependabot[bot] Feb 2, 2022
5a83242
Document new Dependabot custom role permissions (#24267)
Feb 2, 2022
ee0d88d
include optional in package-lock lint (#24932)
Feb 2, 2022
30ce26d
Bump remark-rehype from 10.0.1 to 10.1.0 (#24908)
dependabot[bot] Feb 2, 2022
5a240c9
remove 'object-hash' dependency (#24884)
Feb 2, 2022
808b944
Merge pull request #14976 from github/repo-sync
Octomerger Feb 2, 2022
c028121
Optimize images (#24959)
github-actions[bot] Feb 2, 2022
49cdc0a
Dependabot: Only major version PRs and vulns (#24911)
heiskr Feb 2, 2022
40b4b0e
Bump node-fetch from 3.1.1 to 3.2.0 (#24903)
dependabot[bot] Feb 2, 2022
c24d34a
Merge branch 'main' into repo-sync
Octomerger Feb 2, 2022
1c241e9
Bump react-markdown from 7.1.1 to 8.0.0 (#24902)
dependabot[bot] Feb 2, 2022
7dd6247
Bump lint-staged from 12.1.2 to 12.3.3 (#24910)
dependabot[bot] Feb 2, 2022
8fda797
Merge pull request #14979 from github/repo-sync
Octomerger Feb 2, 2022
26474b2
replace octocoders.io with octocoders.github.io (#24848)
Feb 2, 2022
6361591
serve a /favicon.ico (#24935)
Feb 3, 2022
3d5b9cb
Merge branch 'main' into repo-sync
Octomerger Feb 3, 2022
714b93b
Merge pull request #14983 from github/repo-sync
Octomerger Feb 3, 2022
4e4e7a1
Removed examples (#24968)
Feb 3, 2022
3454a46
Merge branch 'main' into repo-sync
Octomerger Feb 3, 2022
8f61d1c
save time by not writing local cache (#24958)
mikesurowiec Feb 3, 2022
5eb1651
Merge pull request #14988 from github/repo-sync
Octomerger Feb 3, 2022
7372733
Merge branch 'main' into repo-sync
Octomerger Feb 3, 2022
378532f
Merge pull request #14991 from github/repo-sync
Octomerger Feb 3, 2022
a046b15
update search indexes
actions-user Feb 3, 2022
a969cab
Merge branch 'main' into repo-sync
Octomerger Feb 3, 2022
439bc43
Merge pull request #14995 from github/repo-sync
Octomerger Feb 3, 2022
a7860a7
Change code-example test to not use Actions (#24979)
lucascosti Feb 3, 2022
2d2ddf0
Merge branch 'main' into repo-sync
Octomerger Feb 3, 2022
65dcb2d
Merge pull request #14996 from github/repo-sync
Octomerger Feb 3, 2022
c2f65d4
[email protected]
a2425rdl Feb 3, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,5 @@

// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "node"

}
12 changes: 12 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
.devcontainer/
.git/
.github/
.vscode/
contributing/
docs/
node_modules/
script/
tests/
lib/rest/static/dereferenced
# Folder is cloned during the preview + prod workflows, the assets are merged into other locations for use before the build
docs-early-access/
2 changes: 1 addition & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ module.exports = {
babelOptions: { configFile: './.babelrc' },
sourceType: 'module',
},
ignorePatterns: ['tmp/*'],
ignorePatterns: ['tmp/*', '!/.*', '/.next/'],
rules: {
'import/no-extraneous-dependencies': ['error', { packageDir: '.' }],
},
Expand Down
6 changes: 5 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,19 @@
/.github/ @github/docs-engineering
/script/ @github/docs-engineering
/includes/ @github/docs-engineering
/lib/search/popular-pages.json @github/docs-engineering
app.json @github/docs-engineering
Dockerfile @github/docs-engineering
package-lock.json @github/docs-engineering
package.json @github/docs-engineering

# Localization
/.github/actions-scripts/create-translation-batch-pr.js @github/docs-localization
/.github/workflows/create-translation-batch-pr.yml @github/docs-localization
/.github/workflows/crowdin.yml @github/docs-localization
/crowdin*.yml @github/docs-engineering @github/docs-localization
/translations/ @github/docs-engineering @github/docs-localization @github-actions
/translations/ @github/docs-engineering @github/docs-localization @Octomerger
/translations/log/ @github/docs-localization @Octomerger

# Site Policy
/content/github/site-policy/ @github/site-policy-admins
Expand Down
63 changes: 63 additions & 0 deletions .github/actions-scripts/compress-large-files.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
#!/usr/bin/env node

import path from 'path'
import fs from 'fs'
import zlib from 'zlib'
import walk from 'walk-sync'

const DRY_RUN = Boolean(JSON.parse(process.env.DRY_RUN || 'false'))
// Roughly 100KiB means about 25 files at the moment.
// Set this too low and the overheads will be more than the disk and
// network I/O that this intends to serve.
const MIN_GZIP_SIZE = Number(process.env.MIN_GZIP_SIZE || 1024 * 100)

const BROTLI_OPTIONS = {
params: {
[zlib.constants.BROTLI_PARAM_MODE]: zlib.constants.BROTLI_MODE_TEXT,
[zlib.constants.BROTLI_PARAM_QUALITY]: 6,
},
}
main()

async function main() {
compressFromPattern('lib/**/static/**/*.json')
}

async function compressFromPattern(pattern) {
const glob = pattern.includes('*') ? pattern.split(path.sep).slice(1).join(path.sep) : undefined
const walkOptions = {
globs: glob ? [glob] : undefined,
directories: false,
includeBasePath: true,
}
const root = path.resolve(pattern.includes('*') ? pattern.split(path.sep)[0] : pattern)
const filePaths = walk(root, walkOptions).filter((filePath) => {
return fs.statSync(filePath).size > MIN_GZIP_SIZE
})

if (!DRY_RUN) {
console.time(`Compress ${filePaths.length} files`)
const compressed = await Promise.all(filePaths.map(compressFile))
console.timeEnd(`Compress ${filePaths.length} files`)

console.time(`Delete ${compressed.length} files`)
compressed.forEach((filePath) => fs.unlinkSync(filePath))
console.timeEnd(`Delete ${compressed.length} files`)
}
}

function compressFile(filePath) {
return new Promise((resolve, reject) => {
const contentStream = fs.createReadStream(filePath)
const newFilePath = `${filePath}.br`
const writeStream = fs.createWriteStream(newFilePath)
const compressor = zlib.createBrotliCompress(BROTLI_OPTIONS)
contentStream
.pipe(compressor)
.pipe(writeStream)
.on('finish', (err) => {
if (err) return reject(err)
resolve(filePath)
})
})
}
54 changes: 54 additions & 0 deletions .github/actions-scripts/content-changes-table-comment.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#!/usr/bin/env node

import createStagingAppName from '../../script/deployment/create-staging-app-name.js'
import * as github from '@actions/github'
import { setOutput } from '@actions/core'

const context = github.context

const githubToken = process.env.GITHUB_TOKEN
if (!githubToken) {
throw new Error(`GITHUB_TOKEN environment variable not set`)
}

const stagingPrefix = createStagingAppName({
repo: context.payload.repository.name,
pullNumber: context.payload.number,
branch: context.payload.pull_request.head.ref,
})

const octokit = github.getOctokit(githubToken)

const response = await octokit.rest.repos.compareCommits({
owner: context.repo.owner,
repo: context.payload.repository.name,
base: context.payload.pull_request.base.sha,
head: context.payload.pull_request.head.sha,
})

const { files } = response.data

let markdownTable =
'| **Source** | **Staging** | **Production** | **What Changed** |\n|:----------- |:----------- |:----------- |:----------- |\n'

const pathPrefix = 'content/'
const articleFiles = files.filter(
({ filename }) => filename.startsWith(pathPrefix) && !filename.endsWith('/index.md')
)
for (const file of articleFiles) {
const sourceUrl = file.blob_url
const fileName = file.filename.slice(pathPrefix.length)
const fileUrl = fileName.slice(0, fileName.lastIndexOf('.'))
const stagingLink = `https://${stagingPrefix}.herokuapp.com/${fileUrl}`
const productionLink = `https://docs.github.com/${fileUrl}`
let markdownLine = ''

if (file.status === 'modified') {
markdownLine = `| [content/${fileName}](${sourceUrl}) | [Modified](${stagingLink}) | [Original](${productionLink}) | |\n`
} else if (file.status === 'added') {
markdownLine = `| New file: [content/${fileName}](${sourceUrl}) | [Modified](${stagingLink}) | | |\n`
}
markdownTable += markdownLine
}

setOutput('changesTable', markdownTable)
142 changes: 142 additions & 0 deletions .github/actions-scripts/create-translation-batch-pr.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
#!/usr/bin/env node

import fs from 'fs'
import github from '@actions/github'

const OPTIONS = Object.fromEntries(
['BASE', 'BODY_FILE', 'GITHUB_TOKEN', 'HEAD', 'LANGUAGE', 'TITLE', 'GITHUB_REPOSITORY'].map(
(envVarName) => {
const envVarValue = process.env[envVarName]
if (!envVarValue) {
throw new Error(`You must supply a ${envVarName} environment variable`)
}
return [envVarName, envVarValue]
}
)
)

if (!process.env.GITHUB_REPOSITORY) {
throw new Error('GITHUB_REPOSITORY environment variable not set')
}

const RETRY_STATUSES = [
422, // Retry the operation if the PR already exists
502, // Retry the operation if the API responds with a `502 Bad Gateway` error.
]
const RETRY_ATTEMPTS = 3
const {
// One of the default environment variables provided by Actions.
GITHUB_REPOSITORY,

// These are passed in from the step in the workflow file.
TITLE,
BASE,
HEAD,
LANGUAGE,
BODY_FILE,
GITHUB_TOKEN,
} = OPTIONS
const [OWNER, REPO] = GITHUB_REPOSITORY.split('/')

const octokit = github.getOctokit(GITHUB_TOKEN)

/**
* @param {object} config Configuration options for finding the PR.
* @returns {Promise<number | undefined>} The PR number.
*/
async function findPullRequestNumber(config) {
// Get a list of PRs and see if one already exists.
const { data: listOfPullRequests } = await octokit.rest.pulls.list({
owner: config.owner,
repo: config.repo,
head: `${config.owner}:${config.head}`,
})

return listOfPullRequests[0]?.number
}

/**
* When this file was first created, we only introduced support for creating a pull request for some translation batch.
* However, some of our first workflow runs failed during the pull request creation due to a timeout error.
* There have been cases where, despite the timeout error, the pull request gets created _anyway_.
* To accommodate this reality, we created this function to look for an existing pull request before a new one is created.
* Although the "find" check is redundant in the first "cycle", it's designed this way to recursively call the function again via its retry mechanism should that be necessary.
*
* @param {object} config Configuration options for creating the pull request.
* @returns {Promise<number>} The PR number.
*/
async function findOrCreatePullRequest(config) {
const found = await findPullRequestNumber(config)

if (found) {
return found
}

try {
const { data: pullRequest } = await octokit.rest.pulls.create({
owner: config.owner,
repo: config.repo,
base: config.base,
head: config.head,
title: config.title,
body: config.body,
draft: false,
})

return pullRequest.number
} catch (error) {
if (!error.response || !config.retryCount) {
throw error
}

if (!config.retryStatuses.includes(error.response.status)) {
throw error
}

console.error(`Error creating pull request: ${error.message}`)
console.warn(`Retrying in 5 seconds...`)
await new Promise((resolve) => setTimeout(resolve, 5000))

config.retryCount -= 1

return findOrCreatePullRequest(config)
}
}

/**
* @param {object} config Configuration options for labeling the PR
* @returns {Promise<undefined>}
*/
async function labelPullRequest(config) {
await octokit.rest.issues.update({
owner: config.owner,
repo: config.repo,
issue_number: config.issue_number,
labels: config.labels,
})
}

async function main() {
const options = {
title: TITLE,
base: BASE,
head: HEAD,
body: fs.readFileSync(BODY_FILE, 'utf8'),
labels: ['translation-batch', `translation-batch-${LANGUAGE}`],
owner: OWNER,
repo: REPO,
retryStatuses: RETRY_STATUSES,
retryCount: RETRY_ATTEMPTS,
}

options.issue_number = await findOrCreatePullRequest(options)
const pr = `${GITHUB_REPOSITORY}#${options.issue_number}`
console.log(`Created PR ${pr}`)

// metadata parameters aren't currently available in `github.rest.pulls.create`,
// but they are in `github.rest.issues.update`.
await labelPullRequest(options)
console.log(`Updated ${pr} with these labels: ${options.labels.join(', ')}`)
}

main()
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ If you aren't comfortable going through the steps alone, sync up with a docs eng
- [ ] Increment the `next` variable above the `supported` array (e.g., new release number + `.1`).
- [ ] Increment the `nextNext` variable above the `supported` array (e.g., new release number + `.2`).
- [ ] Update the GHES dates file:
- [ ] Make sure you have a `.env` file at the root directory of your local checkout, and that it contains a PAT in the format of `GITHUB_TOKEN=<token>`.
- [ ] Make sure you have a `.env` file at the root directory of your local checkout, and that it contains a PAT in the format of `GITHUB_TOKEN=<token>` with `repo` scope. Ensure the PAT is SSO-enabled for the `github` org.
- [ ] Run the script to update the dates file:

```
script/update-enterprise-dates.js
```
- [ ] Create REST files based on previous version:
- [ ] Create REST files based on previous version. For example `script/enterprise-server-releases/create-rest-files.js --oldVersion [email protected] --newVersion [email protected]`:

```
script/enterprise-server-releases/create-rest-files.js --oldVersion <PLAN@RELEASE> --newVersion <PLAN@RELEASE>
Expand All @@ -33,7 +33,7 @@ If you aren't comfortable going through the steps alone, sync up with a docs eng
```
script/enterprise-server-releases/create-webhook-files.js --oldVersion <PLAN@RELEASE> --newVersion <PLAN@RELEASE>
```
- [ ] Create a placeholder release notes file called `data/release-notes/<PRODUCT>/<RELEASE NUMBER>/PLACEHOLDER.yml`. For example `data/release-notes/3-1/PLACEHOLDER.yml`. Add the following placeholder content to the file:
- [ ] Create a placeholder release notes file called `data/release-notes/<PRODUCT>/<RELEASE NUMBER>/PLACEHOLDER.yml`. For example `data/release-notes/enterprise-server/3-1/PLACEHOLDER.yml`. Add the following placeholder content to the file:

```
date: '2021-05-04'
Expand All @@ -55,6 +55,8 @@ If you aren't comfortable going through the steps alone, sync up with a docs eng
script/enterprise-server-releases/release-banner.js --action create --version <PLAN@RELEASE>
```

- [ ] Create a PR with the above changes. This PR is used to track all docs changes and smoke tests associated with the release. For example https://github.com/github/docs-internal/pull/22286.

### When the `docs-internal` release branch is open

- [ ] Add a label to the PR in this format:
Expand Down Expand Up @@ -102,7 +104,7 @@ This file should be automatically updated, but you can also run `script/update-e
Usually, we should smoke test any new GHES admin guides, any large features landing in this GHES version for the first time, and the REST and GraphQL API references.
- [ ] Alert the Neon Squad (formally docs-ecosystem team) 1-2 days before the release to deploy to `github/github`. A PR should already be open in `github/github`, to change `published` to `true` in `app/api/description/config/releases/ghes-<NEXT RELEASE NUMBER>.yaml`. They will need to:
- [ ] Get the required approval from `@github/ecosystem-api-reviewers` then deploy the PR to dotcom. This process generally takes 30-90 minutes.
- [ ] Once the PR merges, make sure that the auto-generated PR titled "Update OpenAPI Descriptions" in doc-internal contains both the derefrenced and decorated JSON files for the new GHES release. If everything looks good, merge the "Update OpenAPI Description" PR into the GHES release megabranch.
- [ ] Once the PR merges, make sure that the auto-generated PR titled "Update OpenAPI Descriptions" in doc-internal contains both the derefrenced and decorated JSON files for the new GHES release. If everything looks good, merge the "Update OpenAPI Description" PR into the GHES release megabranch. **Note:** Be careful about resolving the conflicts correctly—you may wish to delete the existing OpenAPI files for the release version from the megabranch, so there are no conflicts to resolve and to ensure that the incoming artifacts are the correct ones.
- [ ] Add a blocking review to the auto-generated "Update OpenAPI Descriptions" PR in the public REST API description. (Remove this blocking review once the GHES release ships.)
- [ ] [Freeze the repos](https://github.com/github/docs-content/blob/main/docs-content-docs/docs-content-workflows/freezing.md) at least 1-2 days before the release, and post an announcement in Slack so everybody knows.

Expand All @@ -113,8 +115,9 @@ This file should be automatically updated, but you can also run `script/update-e

Use admin permissions to ship the release branch with this failure. Make sure that the merge's commit title does not include anything like `[DO NOT MERGE]`, and remove all the branch's commit details from the merge's commit message except for the co-author list.
- [ ] Do any required smoke tests listed in the opening post in the megabranch PR.
- [ ] Push the search index LFS objects for the public `github/docs` repo. The LFS objects were already being pushed for the internal repo after the `sync-english-index-for-<PLAN@RELEASE>` was added to the megabranch. To push the LFS objects, run the [search sync workflow](https://github.com/github/docs-internal/actions/workflows/sync-search-indices.yml) with the following inputs:
- [ ] Once smoke tests have passed, you can [unfreeze the repos](https://github.com/github/docs-content/blob/main/docs-content-docs/docs-content-workflows/freezing.md) and post an announcement in Slack.
- [ ] After unfreezing, push the search index LFS objects for the public `github/docs` repo. The LFS objects were already being pushed for the internal repo after the `sync-english-index-for-<PLAN@RELEASE>` was added to the megabranch. To push the LFS objects, run the [search sync workflow](https://github.com/github/docs-internal/actions/workflows/sync-search-indices.yml) with the following inputs:
version: `enterprise-server@<RELEASE>`
language: `en`
- [ ] Once smoke tests have passed, you can [unfreeze the repos](https://github.com/github/docs-content/blob/main/docs-content-docs/docs-content-workflows/freezing.md) and post an announcement in Slack.
- [ ] After the release, in the `docs-content` repo, add the now live version number to the "Specific GHES version(s)" section in the following files: [`.github/ISSUE_TEMPLATE/release-tier-1-or-2-tracking.yml`](https://github.com/github/docs-content/blob/main/.github/ISSUE_TEMPLATE/release-tier-1-or-2-tracking.yml) and [`.github/ISSUE_TEMPLATE/release-tier-3-or-tier-4.yml`](https://github.com/github/docs-content/blob/main/.github/ISSUE_TEMPLATE/release-tier-3-or-tier-4.yml). When the PR is approved, merge it in.
- [ ] After unfreezing, if there were significant or highlighted GraphQL changes in the release, consider manually running the [GraphQL update workflow](https://github.com/github/docs-internal/actions/workflows/update-graphql-files.yml) to update our GraphQL schemas. By default this workflow only runs once every 24 hours.
- [ ] After the release, in the `docs-content` repo, add the now live version number to the "Specific GHES version(s)" section in the following files: [`.github/ISSUE_TEMPLATE/release-tier-1-or-2-tracking.yml`](https://github.com/github/docs-content/blob/main/.github/ISSUE_TEMPLATE/release-tier-1-or-2-tracking.yml) and [`.github/ISSUE_TEMPLATE/release-tier-3-or-tier-4.yml`](https://github.com/github/docs-content/blob/main/.github/ISSUE_TEMPLATE/release-tier-3-or-tier-4.yml). When the PR is approved, merge it in.
Loading