mirror of
https://github.com/actions/upload-pages-artifact.git
synced 2025-12-08 08:06:18 +00:00
Merge branch 'main' into reapply-chmod-removal-for-v2
This commit is contained in:
70
README.md
70
README.md
@@ -2,17 +2,17 @@
|
||||
|
||||
A composite Action for packaging and uploading artifact that can be deployed to [GitHub Pages][pages].
|
||||
|
||||
# Scope
|
||||
## Scope
|
||||
|
||||
⚠️ Official support for building Pages with Actions is in public beta at the moment.
|
||||
|
||||
# Usage
|
||||
## Usage
|
||||
|
||||
See [action.yml](action.yml)
|
||||
|
||||
<!-- TODO: document custom workflow -->
|
||||
|
||||
# Artifact validation
|
||||
## Artifact validation
|
||||
|
||||
While using this action is optional, we highly recommend it since it takes care of producing (mostly) valid artifacts.
|
||||
|
||||
@@ -25,40 +25,48 @@ The [`tar` file][tar] must:
|
||||
|
||||
- be under 10GB in size
|
||||
- not contain any symbolic or hard links
|
||||
- contain only files and directories that all meet the expected minimum [file permissions](#file-permissions)
|
||||
|
||||
# File Permissions
|
||||
### File permissions
|
||||
|
||||
When using this action ensure your files have appropriate file permission, we expect at a minimum for the files to have permission for the current user (e.g 0744).
|
||||
Failure to do so will result in a `deployment_perms_error` when attempting to deploy your artifacts.
|
||||
When using this action, ensure that your files have appropriate file permissions.
|
||||
At a minimum, GitHub Pages expects:
|
||||
- files to have read permission for the current user and the "Others" user role (e.g. `0744`, `0644`, `0444`)
|
||||
- directories to have read and execute permissions for the current user and the "Others" user role (e.g. `0755`, `0555`)
|
||||
|
||||
Failure to supply adequate permissions will result in a `deployment_perms_error` when attempting to deploy your artifacts to GitHub Pages.
|
||||
|
||||
#### Example permissions fix for Linux
|
||||
|
||||
```yaml
|
||||
...
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Archive artifact
|
||||
shell: sh
|
||||
if: runner.os == 'Linux'
|
||||
run: |
|
||||
chmod -c -R +rX "$INPUT_PATH" |
|
||||
while read line; do
|
||||
echo "::warning title=Invalid file permissions automatically fixed::$line"
|
||||
done
|
||||
tar \
|
||||
--dereference --hard-dereference \
|
||||
--directory "$INPUT_PATH" \
|
||||
-cvf "$RUNNER_TEMP/artifact.tar" \
|
||||
--exclude=.git \
|
||||
--exclude=.github \
|
||||
.
|
||||
env:
|
||||
INPUT_PATH: ${{ inputs.path }}
|
||||
|
||||
...
|
||||
steps:
|
||||
# ...
|
||||
- name: Fix permissions
|
||||
run: |
|
||||
chmod -c -R +rX "_site/" | while read line; do
|
||||
echo "::warning title=Invalid file permissions automatically fixed::$line"
|
||||
done
|
||||
- name: Upload Pages artifact
|
||||
uses: actions/upload-pages-artifact@v2
|
||||
# ...
|
||||
```
|
||||
|
||||
#### Example permissions fix for Mac
|
||||
|
||||
# Release instructions
|
||||
```yaml
|
||||
steps:
|
||||
# ...
|
||||
- name: Fix permissions
|
||||
run: |
|
||||
chmod -v -R +rX "_site/" | while read line; do
|
||||
echo "::warning title=Invalid file permissions automatically fixed::$line"
|
||||
done
|
||||
- name: Upload Pages artifact
|
||||
uses: actions/upload-pages-artifact@v2
|
||||
# ...
|
||||
```
|
||||
|
||||
## Release instructions
|
||||
|
||||
In order to release a new version of this Action:
|
||||
|
||||
@@ -70,7 +78,7 @@ In order to release a new version of this Action:
|
||||
|
||||
⚠️ Environment approval is required. Check the [Release workflow run list][release-workflow-runs].
|
||||
|
||||
# License
|
||||
## License
|
||||
|
||||
The scripts and documentation in this project are released under the [MIT License](LICENSE).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user