-
Notifications
You must be signed in to change notification settings - Fork 5
chore(deps): update actions/upload-pages-artifact action to v4 #931
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ham-renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/actions-upload-pages-artifact-4.x
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
π§© Analysis chain
π Web query:
`Please verify from official GitHub Action docs/release notes:
with: pathbehavior compatible with v3?π‘ Result:
Yes, actions/upload-pages-artifact@v4 keeps the with: path behavior compatible with v3. The path input remains required with default "_site/", and the action.yml shows it tars the directory from the provided path, passing to actions/upload-artifact@v4.6.2. No new required inputs; same inputs: name (optional, default 'github-pages'), path (required, default '_site/'), retention-days (optional, default '1'). Breaking change: Hidden files (dotfiles) are not included in the artifact by default (due to upstream upload-artifact@v4 behavior and explicit --exclude=".[^/]*" in tar). If dotfiles are needed, create custom artifact per validation docs instead of using this action. No other breaking changes to inputs/defaults relevant to basic workflow usage. Pin upload-artifact to SHA mentioned, but internal. Requires actions/deploy-pages@v4 or newer for deployment.
Citations:
actions/upload-pages-artifactfrom 3 to 4Β github/docs#40005π Script executed:
Repository: MetaState-Prototype-Project/prototype
Length of output: 1771
π Web query:
Docusaurus build output directory structure dotfiles hidden files necessary deploymentπ‘ Result:
The Docusaurus build output is generated in the build/ directory after running npm run build (or equivalent with yarn/pnpm/bun). This directory contains all static files necessary for deployment: HTML pages, CSS/JS bundles (in assets/ with content hashes for caching), static assets copied from static/ (preserved at root, including any dotfiles like .nojekyll or CNAME if placed there), and generated directories like _next/ or similar for routes/images depending on configuration. Typical structure (varies by site content, i18n, themes): build/ βββ index.html βββ CNAME (if static/CNAME exists for GitHub Pages custom domains) βββ .nojekyll (common for GitHub Pages to disable Jekyll) βββ assets/ β βββ js/ (hashed JS bundles, e.g. 123abc.js) β βββ css/ (hashed CSS) βββ / (e.g. docs/, blog/) β βββ index.html βββ img/ (processed images from MDX links, hashed) For deployment: - Upload/serve the entire build/ directory contents to your static host (Netlify publish dir: build, GitHub Pages root/gh-pages branch, Vercel, etc.). - No source files (docs/, src/, static/ except via copy) or dev artifacts (.docusaurus, node_modules) are includedβonly production static files. - Dotfiles/hidden files are necessary if intentionally placed (e.g., static/.nojekyll copies to build/.nojekyll to prevent GitHub Pages Jekyll processing; static/CNAME for custom domains). Docusaurus copies all files from static/ verbatim to build/ root, preserving names including dots/underscores (unless excluded via config). Official docs confirm: "Anything within the static directory will be copied to the root of the build directory." - The project .gitignore ignores build/ entirely during development (not deployed via git typically), confirming it's a clean static output. - Test locally: npm run serve -- --build serves build/ exactly as production. No hidden dev files (e.g. .git) are in build/βit's purely deployable static assets. If custom dotfiles are needed, add to static/.
Citations:
π Script executed:
Repository: MetaState-Prototype-Project/prototype
Length of output: 104
Version bump introduces breaking change: dotfiles excluded in v4.
Line 34upgradesactions/upload-pages-artifactfrom v3 to v4, but this change has a critical side effect. The v4 action excludes dotfiles (hidden files starting with.) from the artifact by default, due to upstream upload-artifact@v4 behavior using--exclude=".[^/]*".The project contains
docs/static/.nojekyll, which Docusaurus copies to the build output. The.nojekyllfile is required by GitHub Pages to disable Jekyll processing. Without it in the artifact, GitHub Pages may process the site incorrectly, breaking the deployment.To fix this, either:
actions/upload-pages-artifact@v3, or.nojekyllinto the artifact during the workflow.π€ Prompt for AI Agents