Skip to content

Commit 0725006

Browse files
authored
Merge branch 'main' into dependabot/npm_and_yarn/webpack-5.105.0
2 parents 5810b7b + fb9acf4 commit 0725006

41 files changed

Lines changed: 3644 additions & 931 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.devcontainer/devcontainer.json

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,7 @@
3232
"golang.go",
3333
// Recommended for Hextra theme
3434
"mhutchie.git-graph",
35-
"prettier.prettier-vscode",
36-
"tamasfe.even-better-toml",
37-
"budparr.language-hugo-vscode",
35+
"esbenp.prettier-vscode",
3836

3937
// Recommended extensions from https://gohugo.io/tools/editors/#visual-studio-code
4038
"eliostruyf.vscode-front-matter",
@@ -50,7 +48,7 @@
5048
"--whole-files",
5149
"--new-from-rev=origin/main"
5250
],
53-
"editor.defaultFormatter": "prettier.prettier-vscode",
51+
"editor.defaultFormatter": "esbenp.prettier-vscode",
5452
"editor.tabSize": 2,
5553
"editor.insertSpaces": true,
5654
"editor.detectIndentation": false,

.github/CODEOWNERS

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
# Default owners for all files in the repository
3-
* @github/github-well-architected-admins @github/cse-intelligence-engine-squad @bot-digital-customer-success @github/github-well-architected-maintainers
3+
# This includes CICD workflows (/.github), utility scripts for production deployments (/script), and other CSE-specific configurations
4+
* @github/github-well-architected-admins @github/cse-intelligence-engine-squad @bot-digital-customer-success
45

5-
# Owners for .github and script directories
6-
# This includes CICD workflows, and other CSE-specific configurations
7-
/.github/ @github/github-well-architected-admins @github/cse-intelligence-engine-squad @bot-digital-customer-success
6+
# Owners for content directory
7+
/content/ @github/github-well-architected-admins @github/github-well-architected-maintainers

.github/dependabot.yml

Lines changed: 38 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,52 @@
1+
# Dependabot version update configuration for GitHub Well-Architected Framework
2+
# Optimized for static site operations - balancing security with maintenance effort
3+
#
4+
# Configuration principles:
5+
# - Monthly scheduled updates to balance dependency freshness with maintenance effort
6+
# - increase-if-necessary versioning for npm to minimize breaking changes
7+
# - Grouped updates per ecosystem per intentional for easier review
8+
19
version: 2
210
updates:
11+
# GitHub Actions dependencies
312
- package-ecosystem: "github-actions"
4-
directory: "/"
13+
directory: "/.github/workflows"
514
schedule:
6-
interval: "daily"
7-
labels:
8-
- "CI/CD"
9-
- "dependabot"
15+
# Monthly scheduled updates to balance freshness with maintenance effort; security updates can still be raised separately
16+
interval: "monthly"
1017
commit-message:
11-
prefix: ci
18+
prefix: "chore(deps)"
19+
reviewers:
20+
- "github/cse-intelligence-engine-squad"
21+
# Group version and security updates separately.
1222
groups:
13-
actions-deps:
23+
actions-version:
24+
applies-to: version-updates
25+
patterns:
26+
- "*"
27+
actions-security:
28+
applies-to: security-updates
1429
patterns:
1530
- "*"
31+
32+
# NPM dependencies (Hugo site and tooling)
1633
- package-ecosystem: "npm"
1734
directory: "/"
1835
schedule:
19-
interval: "daily"
36+
# Monthly scheduled updates to balance freshness with maintenance effort; security updates can still be raised separately
37+
interval: "monthly"
38+
commit-message:
39+
prefix: "chore(deps)"
40+
versioning-strategy: increase-if-necessary
41+
reviewers:
42+
- "github/cse-intelligence-engine-squad"
43+
# Group version and security updates separately.
2044
groups:
21-
npm-deps:
45+
npm-version:
46+
applies-to: version-updates
47+
patterns:
48+
- "*"
49+
npm-security:
50+
applies-to: security-updates
2251
patterns:
2352
- "*"
Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
1-
fail-on-severity: moderate
1+
# Dependency review configuration for GitHub Well-Architected Framework
2+
# Optimized for static site operations - balancing security with maintenance effort
23

3-
comment-summary-in-pr: always
4+
# Only fail on high severity vulnerabilities (includes both high and critical severity levels)
5+
fail-on-severity: high
46

5-
# allow-licenses:
6-
# - MIT
7+
# Always provide PR comments summarizing dependency changes
8+
comment-summary-in-pr: always
79

10+
# Only fail on runtime and unknown scope vulnerabilities
11+
# Development dependencies are excluded to reduce noise for this static site
812
fail-on-scopes:
9-
- development
1013
- runtime
1114
- unknown

.github/workflows/deploy-merged-pr.yml

Lines changed: 36 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,38 @@ permissions:
1111
actions: read
1212

1313
jobs:
14+
check-file-changes:
15+
if: github.event.review.state == 'approved'
16+
runs-on: ubuntu-latest
17+
env:
18+
PR_NUMBER: ${{ github.event.pull_request.number }}
19+
SOURCE_REPO: ${{ github.repository }}
20+
outputs:
21+
should_sync: ${{ steps.filter.outputs.should_sync }}
22+
steps:
23+
- name: Check Changed File Paths
24+
id: filter
25+
env:
26+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
27+
run: |
28+
EXCLUDED_PATHS=(
29+
".github/workflows/"
30+
)
31+
32+
CHANGED_FILES=$(gh pr view $PR_NUMBER --json files --repo $SOURCE_REPO --jq '[.files[].path]')
33+
34+
EXCLUDE_FILTER=$(printf '"%s",' "${EXCLUDED_PATHS[@]}")
35+
EXCLUDE_FILTER="[${EXCLUDE_FILTER%,}]"
36+
37+
NON_WORKFLOW_CHANGES=$(echo "$CHANGED_FILES" | jq --argjson exclude "$EXCLUDE_FILTER" '[.[] | select(. as $f | $exclude | any(. as $p | $f | startswith($p)) | not)] | length')
38+
if [ "$NON_WORKFLOW_CHANGES" -gt 0 ]; then
39+
echo "PR contains changes outside filtered paths — proceeding."
40+
echo "should_sync=true" >> $GITHUB_OUTPUT
41+
else
42+
echo "All changes are under filtered paths — skipping workflow."
43+
echo "should_sync=false" >> $GITHUB_OUTPUT
44+
fi
45+
1446
check-merge-state:
1547
if: github.event.review.state == 'approved'
1648
runs-on: ubuntu-latest
@@ -75,7 +107,7 @@ jobs:
75107
# OSS App
76108
- name: Generate GitHub App Token
77109
id: pr_app_token
78-
uses: actions/create-github-app-token@v2
110+
uses: actions/create-github-app-token@v3
79111
with:
80112
app-id: ${{ vars.WELLARCHITECTED_OSS_APP_ID }}
81113
private-key: ${{ secrets.WELLARCHITECTED_OSS_APP_PRIVATE_KEY }}
@@ -95,8 +127,8 @@ jobs:
95127
echo "Auto-merge enabled successfully!"
96128
97129
dispatch-to-internal:
98-
needs: check-merge-state
99-
if: needs.check-merge-state.outputs.checks_passed == 'true' && github.event.review.state == 'approved'
130+
needs: [check-file-changes, check-merge-state]
131+
if: needs.check-merge-state.outputs.checks_passed == 'true' && needs.check-file-changes.outputs.should_sync == 'true' && github.event.review.state == 'approved'
100132
runs-on: ubuntu-latest
101133
env:
102134
SOURCE_REPO: github/github-well-architected
@@ -108,7 +140,7 @@ jobs:
108140
# OSS App
109141
- name: Generate GitHub App Token
110142
id: dispatch_app_token
111-
uses: actions/create-github-app-token@v2
143+
uses: actions/create-github-app-token@v3
112144
with:
113145
app-id: ${{ vars.WELLARCHITECTED_OSS_APP_ID }}
114146
private-key: ${{ secrets.WELLARCHITECTED_OSS_APP_PRIVATE_KEY }}

.github/workflows/op-stale.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: "Close stale issues and PRs"
2+
on:
3+
schedule:
4+
- cron: '0 0 * * *' # Runs every day at midnight
5+
6+
jobs:
7+
stale:
8+
permissions:
9+
issues: write
10+
pull-requests: write
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/stale@b5d41d4e1d5dceea10e7104786b73624c18a190f # v10.2.0
14+
with:
15+
repo-token: ${{ secrets.GITHUB_TOKEN }}
16+
stale-issue-message: 'Thanks for opening this issue! To keep the project healthy, we close inactive issues after some time. There has not been any activity in the last 28 days - if you are still working on this or feel it should remain open, just leave a quick comment in the next 7 days to let us know where things are at. We really appreciate your input!'
17+
stale-pr-message: 'Thanks for raising this PR! To keep the project healthy, we close inactive PRs after some time. There has not been any activity in the last 28 days - if you are still working on this or feel it should remain open, just leave a quick comment in the next 7 days to let us know where things are at. We really appreciate your input!'
18+
close-issue-message: 'Closing this issue as it has been marked stale and has not received any updates in the past 7 days. If you are still working on this or believe it should be reopened, feel free to leave an update. Thanks again for contributing!'
19+
close-pr-message: 'Closing this PR as it has been marked stale and has not received any updates in the past 7 days. If you are still working on this or believe it should be reopened, feel free to leave an update. Thanks again for contributing!'
20+
stale-issue-label: 'stale'
21+
stale-pr-label: 'stale'
22+
exempt-pr-labels: 'dependencies'
23+
days-before-stale: 28
24+
days-before-close: 7

.github/workflows/pr-check.yml

Lines changed: 9 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ env:
1515
CI: development
1616
SITE_DIR: public
1717
HUGO_VERSION: 0.151.0
18+
DART_SASS_VERSION: 1.99.0
1819

1920
jobs:
2021
lint:
@@ -35,7 +36,7 @@ jobs:
3536
- name: Install dependencies
3637
run: npm ci -o
3738

38-
- uses: super-linter/super-linter/slim@61abc07d755095a68f4987d1c2c3d1d64408f1f9 # v8.5.0
39+
- uses: super-linter/super-linter/slim@9e863354e3ff62e0727d37183162c4a88873df41 # v8.6.0
3940
env:
4041
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4142
DEFAULT_BRANCH: main
@@ -49,14 +50,11 @@ jobs:
4950
actions: write
5051
checks: write
5152
contents: read
52-
id-token: write
53-
pages: write
5453
pull-requests: write
5554
security-events: write
5655

5756
environment:
5857
name: development
59-
url: ${{ steps.deployment.outputs.page_url }}
6058

6159
runs-on: ubuntu-latest
6260

@@ -67,7 +65,7 @@ jobs:
6765
fetch-depth: 0
6866

6967
- name: Dependency Review
70-
uses: actions/dependency-review-action@v4
68+
uses: actions/dependency-review-action@v5
7169
with:
7270
config-file: >-
7371
./.github/dependency-review-config.yml
@@ -77,13 +75,16 @@ jobs:
7775
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb
7876
sudo dpkg -i ${{ runner.temp }}/hugo.deb
7977
hugo version
80-
- name: Install Dart Sass
81-
run: sudo snap install dart-sass
8278
8379
- uses: actions/setup-node@v6
8480
with:
8581
node-version: lts/*
8682

83+
- name: Install Dart Sass
84+
run: |
85+
npm install -g sass@${DART_SASS_VERSION}
86+
sass --version
87+
8788
- name: Install test dependencies
8889
run: |
8990
# Clean install of the node modules
@@ -114,10 +115,6 @@ jobs:
114115
exit 1
115116
fi
116117
117-
- name: Setup Pages
118-
uses: actions/configure-pages@v5
119-
id: setup-pages
120-
121118
- name: Build site
122119
run: |
123120
hugo --gc --minify --baseURL "/"
@@ -128,18 +125,6 @@ jobs:
128125
echo "::warning title=Invalid file permissions automatically fixed::$line"
129126
done
130127
131-
- name: Upload Pages artifact
132-
uses: actions/upload-pages-artifact@v4
133-
with:
134-
path: './${{ env.SITE_DIR }}'
135-
retention-days: '7'
136-
137-
- name: Deploy site to GitHub Pages
138-
id: deployment
139-
uses: actions/deploy-pages@v4
140-
with:
141-
preview: true
142-
143128
- name: HTML Proofer
144129
uses: chabad360/htmlproofer@c2750eb7eb937599ac859517e7dd23a29f1b3ed7 # v2
145130
with:
@@ -150,7 +135,7 @@ jobs:
150135
run: |
151136
npm run test:functional
152137
153-
- uses: actions/upload-artifact@v6
138+
- uses: actions/upload-artifact@v7
154139
if: always()
155140
with:
156141
name: playwright-report

CONTRIBUTING.md

Lines changed: 28 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -133,18 +133,13 @@ Once you're ready to start, fork the repository and begin authoring. We **strong
133133

134134
There are three options to create a new article:
135135

136-
##### 1. Copy/paste the template into a new file
137-
138-
Simply copy [`archetypes/default.md`] and paste it into:
139-
140-
```plaintext
141-
content/library/{PILLAR}/recommendations/{ARTICLE-NAME}.md
142-
```
143-
144-
##### 2. Use the command `hugo new content` to create a new file (recommended in Codespaces)
136+
##### Option 1. Use the command `hugo new content` to create a new file (recommended in Codespaces)
145137

146138
```shell
139+
# For recommendations:
147140
hugo new content library/{PILLAR}/recommendations/{ARTICLE-NAME}.md
141+
# For scenarios:
142+
hugo new content library/scenarios/{ARTICLE-NAME}.md
148143
```
149144

150145
For example,
@@ -156,7 +151,7 @@ hugo new content library/productivity/recommendations/my-article.md
156151
> [!IMPORTANT]
157152
> When you use this method, you do not need to put `content/` in the command since Hugo considers it the root.
158153
159-
##### 3. Use a page bundle to create a new article with associated files like images
154+
##### Option 2. Use a page bundle to create a new article with associated files like images
160155

161156
Add a folder (instead of one markdown file) at that location and bundle the files together. The format is:
162157

@@ -166,6 +161,22 @@ content/library/{PILLAR}/recommendations/{ARTICLE-NAME}/image1.png
166161
content/library/{PILLAR}/recommendations/{ARTICLE-NAME}/image2.png
167162
```
168163

164+
##### Option 3. Copy/paste the template into a new file
165+
166+
Simply copy [`archetypes/default.md`] and paste it into:
167+
168+
For **recommendation** articles:
169+
170+
```plaintext
171+
content/library/{PILLAR}/recommendations/{ARTICLE-NAME}.md
172+
```
173+
174+
For **scenario** articles:
175+
176+
```plaintext
177+
content/library/scenarios/{ARTICLE-NAME}.md
178+
```
179+
169180
##### Writing Style:
170181

171182
- Always use sentence case
@@ -185,9 +196,10 @@ publishDate: 2024-12-05 # Date the article is published
185196

186197
# Add author details
187198
params:
188-
author:
189-
name: Mona
190-
handle: octocat
199+
authors:
200+
[
201+
{ name: 'Mona', handle: 'octocat' },
202+
]
191203

192204
# Classifications of the framework to drive key concepts, design principles, and architectural best practices
193205
pillars:
@@ -198,6 +210,8 @@ pillars:
198210

199211
- When you are done with your article, set `draft: false` when you are ready to publish.
200212

213+
- Set `publishDate` to the date the article is first merged to `main`. Do not change it on future revisions.
214+
201215
- All recommended values for all of these fields are described in [Taxonomies]. **Insert all that apply to your article. This is how your article will be discoverable!**
202216

203217
---
@@ -411,7 +425,7 @@ See [Framework Overview] for details on each pillar.
411425
- Keep sentences **short and clear**
412426
- Avoid unnecessary jargon
413427
- Include practical examples
414-
- Prefer GitHub Docs links to **Enterprise Cloud**: `https://docs.github.com/en/enterprise-cloud@latest` (unless the guidance is specific to GitHub Enterprise Server)
428+
- Prefer GitHub Docs links to **Enterprise Cloud**: `https://docs.github.com/enterprise-cloud@latest` (unless the guidance is specific to GitHub Enterprise Server)
415429
- Use Hugo shortcodes to keep articles consistent (see `archetypes/default.md`):
416430
- Further assistance: `{{% seeking-further-assistance-details %}}`
417431
- Related links: `{{% related-links-github-docs %}}`

0 commit comments

Comments
 (0)