Skip to content

Commit 4437098

Browse files
authored
Merge pull request github#36630 from github/repo-sync
Repo sync
2 parents d05fba5 + 70f09d9 commit 4437098

File tree

16 files changed

+159
-18
lines changed

16 files changed

+159
-18
lines changed

content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/managing-accessibility-settings.md

+2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ To create an experience on {% data variables.product.github %} that fits your ne
1818

1919
You can decide whether you want to use some or all keyboard shortcuts, and control the display of animated images and how links are displayed.
2020

21+
This article will help you customize your experience on the {% data variables.product.github %} website as a whole. For information on using specific {% data variables.product.github %} products with screen readers and other assistive technologies, see the [{% data variables.product.github %} Accessibility Documentation](https://accessibility.github.com/documentation).
22+
2123
## Managing the appearance of links
2224

2325
You can control whether links in text blocks are underlined and therefore more distinguishable.

content/billing/using-the-new-billing-platform/estimating-spending.md

+7
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ product: '{% data reusables.billing.enhanced-billing-platform-product %}'
1515
shortTitle: Estimate spending
1616
---
1717

18+
<!-- expires 2025-04-06 -->
19+
20+
> [!NOTE]
21+
> Coming April 6, 2025: Usage ingestion for {% data variables.product.github %}’s [enhanced billing platform](/billing/using-the-new-billing-platform/about-the-new-billing-platform) will change from every minute to every hour.
22+
23+
<!-- end expires 2025-04-06 -->
24+
1825
The new billing platform provides a high-level view of your spending trends based on the usage across products. You can use this information to estimate your spending and make informed decisions about your budget.
1926

2027
{% ifversion fpt %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
title: Enabling delegated alert dismissal for code scanning
3+
intro: 'You can use delegated alert dismissal to control who can dismiss an alert found by {% data variables.product.prodname_code_scanning %}.'
4+
permissions: '{% data reusables.permissions.delegated-alert-dismissal %}'
5+
versions:
6+
feature: security-delegated-alert-dismissal
7+
type: how_to
8+
topics:
9+
- Code scanning
10+
- Advanced Security
11+
- Alerts
12+
- Repositories
13+
shortTitle: Enable delegated alert dismissal
14+
---
15+
16+
## About enabling delegated alert dismissal
17+
18+
{% data reusables.code-scanning.delegated-alert-dismissal-beta %}
19+
20+
{% data reusables.security.delegated-alert-dismissal-intro %}
21+
22+
## Configuring delegated dismissal for a repository
23+
24+
>[!NOTE] If an organization owner configures delegated alert dismissal via an enforced security configuration, the settings can't be changed at the repository level.
25+
{% data reusables.repositories.navigate-to-repo %}
26+
{% data reusables.repositories.sidebar-settings %}
27+
{% data reusables.repositories.navigate-to-code-security-and-analysis %}
28+
{% data reusables.repositories.navigate-to-ghas-settings %}
29+
30+
1. Under "{% data variables.product.prodname_code_scanning_caps %}", toggle the option "Prevent direct alert dismissals".
31+
32+
## Configuring delegated dismissal for an organization
33+
34+
You must configure delegated dismissal for your organization using a custom security configuration. You can then apply the security configuration to all (or selected) repositories in your organization.
35+
36+
1. Create a new custom security configuration, or edit an existing one. See [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/creating-a-custom-security-configuration#creating-a-custom-security-configuration).
37+
1. When creating the custom security configuration, under "{% data variables.product.prodname_code_scanning_caps %}", set "Prevent direct alert dismissals" to **Enabled**.
38+
1. Click **Save configuration**.
39+
1. Apply the security configuration to all (or selected) repositories in your organization. See [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/applying-a-custom-security-configuration).
40+
41+
To learn more about security configurations, see [AUTOTITLE](/code-security/securing-your-organization/introduction-to-securing-your-organization-at-scale/about-enabling-security-features-at-scale).

content/code-security/code-scanning/managing-your-code-scanning-configuration/index.md

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ children:
1515
- /about-the-tool-status-page
1616
- /editing-your-configuration-of-default-setup
1717
- /set-code-scanning-merge-protection
18+
- /enabling-delegated-alert-dismissal-for-code-scanning
1819
- /codeql-query-suites
1920
- /configuring-larger-runners-for-default-setup
2021
- /viewing-code-scanning-logs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
title: Enabling delegated alert dismissal for secret scanning
3+
intro: 'You can use delegated alert dismissal to control who can dismiss an alert found by {% data variables.product.prodname_secret_scanning %}.'
4+
permissions: '{% data reusables.permissions.delegated-alert-dismissal %}'
5+
versions:
6+
feature: security-delegated-alert-dismissal
7+
type: how_to
8+
topics:
9+
- Secret scanning
10+
- Advanced Security
11+
- Alerts
12+
- Repositories
13+
shortTitle: Enable delegated alert dismissal
14+
---
15+
16+
## About enabling delegated alert dismissal
17+
18+
{% data reusables.secret-scanning.delegated-alert-dismissal-beta %}
19+
20+
{% data reusables.security.delegated-alert-dismissal-intro %}
21+
22+
## Configuring delegated dismissal for a repository
23+
24+
>[!NOTE] If an organization owner configures delegated alert dismissal via an enforced security configuration, the settings can't be changed at the repository level.
25+
{% data reusables.repositories.navigate-to-repo %}
26+
{% data reusables.repositories.sidebar-settings %}
27+
{% data reusables.repositories.navigate-to-code-security-and-analysis %}
28+
{% data reusables.repositories.navigate-to-ghas-settings %}
29+
30+
1. Under "{% data variables.product.prodname_secret_scanning_caps %}", toggle the option "Prevent direct alert dismissals".
31+
32+
## Configuring delegated dismissal for an organization
33+
34+
You must configure delegated dismissal for your organization using a custom security configuration. You can then apply the security configuration to all (or selected) repositories in your organization.
35+
36+
1. Create a new custom security configuration, or edit an existing one. See [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/creating-a-custom-security-configuration#creating-a-custom-security-configuration).
37+
1. When creating the custom security configuration, under "{% data variables.product.prodname_secret_scanning_caps %}", ensure that the dropdown menus for "Alerts" and "Prevent direct alert dismissals" are set to **Enabled**.
38+
1. Click **Save configuration**.
39+
1. Apply the security configuration to all (or selected) repositories in your organization. See [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/applying-a-custom-security-configuration).
40+
41+
To learn more about security configurations, see [AUTOTITLE](/code-security/securing-your-organization/introduction-to-securing-your-organization-at-scale/about-enabling-security-features-at-scale).

content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/index.md

+1
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,5 @@ children:
1717
- /non-provider-patterns
1818
- /custom-patterns
1919
- /delegated-bypass-for-push-protection
20+
- /enabling-delegated-alert-dismissal-for-secret-scanning
2021
---

content/enterprise-onboarding/github-actions-for-your-enterprise/about-billing-for-github-actions.md

+6
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,12 @@ For example, if you use 3 GB of storage for 10 days of March and 12 GB for 21 da
146146
At the end of the month, {% data variables.product.prodname_dotcom %} rounds your storage to the nearest MB. Therefore, your storage usage for March would be 9.097 GB.
147147

148148
Your {% data variables.product.prodname_actions %} usage shares your account's existing billing date, payment method, and receipt. {% data reusables.dotcom_billing.view-all-subscriptions %}
149+
<!-- expires 2025-04-06 -->
150+
151+
> [!NOTE]
152+
> Coming April 6, 2025: Usage ingestion for {% data variables.product.github %}’s [enhanced billing platform](/billing/using-the-new-billing-platform/about-the-new-billing-platform) will change from every minute to every hour.
153+
154+
<!-- end expires 2025-04-06 -->
149155

150156
## About spending limits
151157

content/migrations/using-github-enterprise-importer/migrating-between-github-products/overview-of-a-migration-between-github-products.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ For repository migrations, we recommend creating a test organization to use as a
113113
1. If your source organization uses IP allow lists, configure the list to allow access by {% data variables.product.prodname_importer_proper_name %}. For more information, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-between-github-products/managing-access-for-a-migration-between-github-products#configuring-ip-allow-lists-for-migrations).
114114
{% data reusables.enterprise-migration-tool.trial-migrations-tasks %}
115115
{% data reusables.enterprise-migration-tool.configure-destination-ip-allow-list %} For more information, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-between-github-products/managing-access-for-a-migration-between-github-products#configuring-ip-allow-lists-for-migrations).
116-
1. If you're running a repository migration and you want to migrate {% data variables.product.prodname_GH_advanced_security %} settings, enable {% data variables.product.prodname_GH_advanced_security %} for the destination organization. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization).
116+
1. If you're running a repository migration and you want to migrate settings for {% data variables.product.prodname_GHAS %}{% ifversion ghas-products %} products{% endif %}, enable {% data variables.product.prodname_GHAS %}{% ifversion ghas-products %} products{% endif %} for the destination organization. For more information, see [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization).
117117
1. Run your production migrations. For more information, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-repositories-with-github-enterprise-importer) or [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-organizations-with-github-enterprise-importer).
118118
{% data reusables.enterprise-migration-tool.delete-test-organization %}
119119

@@ -127,7 +127,7 @@ For repository migrations, we recommend creating a test organization to use as a
127127
* [Setting repository visibility](#setting-repository-visibility)
128128
* [Configuring {% data variables.product.prodname_actions %}](#configuring-github-actions)
129129
* [Configuring IP allow lists](#configuring-ip-allow-lists)
130-
* [Managing {% data variables.product.prodname_GH_advanced_security %}](#managing-github-advanced-security)
130+
* [Managing {% data variables.product.prodname_GHAS %} features](#managing-github-advanced-security-features)
131131
* [Enabling webhooks](#enabling-webhooks)
132132
* [Reinstalling {% data variables.product.prodname_github_apps %}](#reinstalling-github-apps)
133133
* [Recreating teams](#recreating-teams)
@@ -181,9 +181,9 @@ If you added the IP ranges for {% data variables.product.prodname_importer_prope
181181

182182
For more information, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-between-github-products/managing-access-for-a-migration-between-github-products#configuring-ip-allow-lists-for-migrations).
183183

184-
### Managing {% data variables.product.prodname_GH_advanced_security %}
184+
### Managing {% data variables.product.prodname_GHAS %} features
185185

186-
If you enabled {% data variables.product.prodname_GH_advanced_security %} for the destination organization before migrating repositories, the settings for individual features were migrated. If not, you'll need to re-enable individual features after the migration. For more information, see [AUTOTITLE](/enterprise-cloud@latest/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository).
186+
If you enabled {% data variables.product.prodname_GHAS %}{% ifversion ghas-products %} products{% endif %} for the destination organization before migrating repositories, the settings for individual features were migrated. If not, you'll need to re-enable individual features after the migration. For more information, see [AUTOTITLE](/enterprise-cloud@latest/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository).
187187

188188
There are additional post-migration steps for each feature.
189189

data/features/ghas-products.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ versions:
66
ghes: '> 3.16'
77
#fpt: '*'
88
#ghec: '*'
9-
#ghes: '>= 3.16'
9+
#ghes: '> 3.16'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
versions:
2+
ghec: '*'
3+
ghes: '>3.16'

data/reusables/actions/azure-vnet-supported-regions.md

+12-10
Original file line numberDiff line numberDiff line change
@@ -5,37 +5,39 @@ The {% data variables.product.prodname_actions %} service supports a subset of a
55
The following regions are supported on {% data variables.product.prodname_dotcom_the_website %}.
66

77
<ul style="-webkit-column-count: 2; -moz-column-count: 2; column-count: 2;">
8+
<li><code>AustraliaEast</code></li>
9+
<li><code>BrazilSouth</code></li>
10+
<li><code>CentralUs</code></li>
11+
<li><code>EastAsia</code></li>
812
<li><code>EastUs</code></li>
913
<li><code>EastUs2</code></li>
10-
<li><code>WestUs2</code></li>
11-
<li><code>WestUs3</code></li>
12-
<li><code>CentralUs</code></li>
13-
<li><code>NorthCentralUs</code></li>
14-
<li><code>AustraliaEast</code></li>
15-
<li><code>JapanEast</code></li>
1614
<li><code>FranceCentral</code></li>
1715
<li><code>GermanyWestCentral</code></li>
16+
<li><code>JapanEast</code></li>
17+
<li><code>KoreaCentral</code></li>
18+
<li><code>NorthCentralUs</code></li>
1819
<li><code>NorthEurope</code></li>
1920
<li><code>NorwayEast</code></li>
21+
<li><code>SoutheastAsia</code></li>
2022
<li><code>SwedenCentral</code></li>
2123
<li><code>SwitzerlandNorth</code></li>
2224
<li><code>UkSouth</code></li>
23-
<li><code>SoutheastAsia</code></li>
24-
<li><code>KoreaCentral</code></li>
25+
<li><code>WestUs2</code></li>
26+
<li><code>WestUs3</code></li>
2527
</ul>
2628

2729
Azure private networking supports GPU runners in the following regions.
2830

2931
* `EastUs`
30-
* `WestUs`
3132
* `NorthCentralUs`
33+
* `WestUs`
3234

3335
Azure private networking supports arm64 runners in the following regions.
3436

3537
* `EastUs`
3638
* `EastUs2`
39+
* `NorthCentralUs`
3740
* `WestUs2`
3841
* `WestUs3`
39-
* `NorthCentralUs`
4042

4143
If your desired region is not supported, please submit a request for new region availability in [this GitHub form](https://resources.github.com/private-networking-for-github-hosted-runners-with-azure-virtual-networks/). You may also use global virtual network peering to connect virtual networks across Azure regions. For more information, see [Virtual network peering](https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-peering-overview) in the Azure documentation.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{% ifversion security-delegated-alert-dismissal %}
2+
3+
> [!NOTE]
4+
> The ability to use delegated alert dismissal for {% data variables.product.prodname_code_scanning %} is currently in {% data variables.release-phases.public_preview %} and subject to change.
5+
6+
{% endif %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Organization owners, security managers, and repository administrators can enable delegated alert dismissals. Once enabled, organization owners and security managers can dismiss alerts.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{% ifversion security-delegated-alert-dismissal %}
2+
3+
> [!NOTE]
4+
> The ability to use delegated alert dismissal for {% data variables.product.prodname_secret_scanning %} is currently in {% data variables.release-phases.public_preview %} and subject to change.
5+
6+
{% endif %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Delegated alert dismissal lets you restrict which users can directly dismiss an alert. When enabled, users attempting to dismiss an alert will instead create a request for dismissal.
2+
When this happens, security managers and organization owners will be notified via email so they can review the request and approve it or deny it. The alert will only be dismissed if the dismissal request is approved; otherwise, the alert will remain open.
3+
4+
When you enable this feature, only security managers and organization owners will be able to approve or deny dismissal requests for alerts.
5+
This might create friction and you should ensure to have sufficient coverage in your security managers team before you start.
6+
7+
In addition, dismissal request emails are sent to all organization owners and security managers. Be sure to review these lists periodically to ensure that these are the correct people to take action on these requests.
8+
9+
To learn more about the security manager role, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).

src/article-api/middleware/article.ts

+18-3
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,11 @@ async function getArticleBody(req: ExtendedRequestWithPageInfo) {
3333
// and is in the ExtendedRequestWithPageInfo
3434
const { page, pathname } = req.pageinfo
3535

36+
// for anything that's not an article (like index pages), don't try to render and
37+
// tell the user what's going on
38+
if (page.documentType !== 'article') {
39+
throw new Error(`Page ${pathname} isn't yet available in markdown.`)
40+
}
3641
// these parts allow us to render the page
3742
const mockedContext: Context = {}
3843
const renderingReq = {
@@ -69,7 +74,12 @@ router.get(
6974
catchMiddlewareError(async function (req: ExtendedRequestWithPageInfo, res: Response) {
7075
// First, fetch metadata
7176
const metaData = await getArticleMetadata(req)
72-
const bodyContent = await getArticleBody(req)
77+
let bodyContent
78+
try {
79+
bodyContent = await getArticleBody(req)
80+
} catch (error) {
81+
return res.status(403).json({ error: (error as Error).message })
82+
}
7383

7484
defaultCacheControl(res)
7585
return res.json({
@@ -84,9 +94,14 @@ router.get(
8494
pathValidationMiddleware as RequestHandler,
8595
pageValidationMiddleware as RequestHandler,
8696
catchMiddlewareError(async function (req: ExtendedRequestWithPageInfo, res: Response) {
87-
const rendered = await getArticleBody(req)
97+
let bodyContent
98+
try {
99+
bodyContent = await getArticleBody(req)
100+
} catch (error) {
101+
return res.status(403).json({ error: (error as Error).message })
102+
}
88103
defaultCacheControl(res)
89-
return res.type('text/markdown').send(rendered)
104+
return res.type('text/markdown').send(bodyContent)
90105
}),
91106
)
92107

0 commit comments

Comments
 (0)