mirror of
https://github.com/actions/upload-pages-artifact.git
synced 2026-02-09 11:51:33 +00:00
Compare commits
15 Commits
v1.0.10
...
artifacts-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a5c144074 | ||
|
|
7e3f6bb53b | ||
|
|
257e666c05 | ||
|
|
0313a19afa | ||
|
|
1228e65686 | ||
|
|
eb31309b6c | ||
|
|
241a975ec2 | ||
|
|
ef95519d72 | ||
|
|
ecdd3edff7 | ||
|
|
e699324f6a | ||
|
|
a753861a5d | ||
|
|
dca6bac0e5 | ||
|
|
3138c05496 | ||
|
|
07f501f6a0 | ||
|
|
9c071e6bed |
5
.github/workflows/test-hosted-runners.yml
vendored
5
.github/workflows/test-hosted-runners.yml
vendored
@@ -31,12 +31,13 @@ jobs:
|
||||
- name: Upload Pages artifact
|
||||
uses: ./
|
||||
with:
|
||||
name: pages-artifact-${{ matrix.os }}
|
||||
path: artifact
|
||||
|
||||
- name: Download artifact
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: github-pages
|
||||
name: pages-artifact-${{ matrix.os }}
|
||||
path: artifact2
|
||||
|
||||
- name: Extract artifact
|
||||
|
||||
62
README.md
62
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,8 +25,9 @@ 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 that your files have appropriate file permissions.
|
||||
At a minimum, GitHub Pages expects:
|
||||
@@ -35,34 +36,37 @@ At a minimum, GitHub Pages expects:
|
||||
|
||||
Failure to supply adequate permissions will result in a `deployment_perms_error` when attempting to deploy your artifacts to GitHub Pages.
|
||||
|
||||
```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 }}
|
||||
#### Example permissions fix for Linux
|
||||
|
||||
...
|
||||
```yaml
|
||||
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:
|
||||
|
||||
@@ -74,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).
|
||||
|
||||
|
||||
13
action.yml
13
action.yml
@@ -14,6 +14,10 @@ inputs:
|
||||
description: "Duration after which artifact will expire in days."
|
||||
required: false
|
||||
default: "1"
|
||||
outputs:
|
||||
artifact_id:
|
||||
description: "The ID of the artifact that was uploaded."
|
||||
value: ${{ steps.upload-artifact.outputs.artifact-id }}
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
@@ -21,9 +25,6 @@ runs:
|
||||
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" \
|
||||
@@ -39,9 +40,6 @@ runs:
|
||||
shell: sh
|
||||
if: runner.os == 'macOS'
|
||||
run: |
|
||||
chmod -v -R +rX "$INPUT_PATH" | while read line; do
|
||||
echo "::warning title=Invalid file permissions automatically fixed::$line"
|
||||
done
|
||||
gtar \
|
||||
--dereference --hard-dereference \
|
||||
--directory "$INPUT_PATH" \
|
||||
@@ -69,7 +67,8 @@ runs:
|
||||
INPUT_PATH: ${{ inputs.path }}
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
id: upload-artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ inputs.name }}
|
||||
path: ${{ runner.temp }}/artifact.tar
|
||||
|
||||
Reference in New Issue
Block a user