Compare commits

..
94 Commits
Author SHA1 Message Date
Jess Bees 2a5c144074 Use actions/download-artifact@v4 in test 2023-12-14 15:31:31 -05:00
Jess BeesandGitHub 7e3f6bb53b Merge pull request #80 from robherley/patch-1
Use `v4` upload-artifact tag
2023-12-14 15:28:39 -05:00
Rob HerleyandGitHub 257e666c05 Use v4 upload-artifact tag
Artifacts v4 have been GA'd:
- https://github.blog/changelog/2023-12-14-github-actions-artifacts-v4-is-now-generally-available

We should use that tag going forward!
2023-12-14 14:04:50 -05:00
James M. GreeneandGitHub 0313a19afa Merge pull request #78 from konradpabjan/main
Upload pages artifact with upload-artifact v4-beta
2023-10-27 11:48:18 -05:00
1228e65686 Update action.yml
Co-authored-by: James M. Greene <[email protected]>
2023-10-27 11:19:41 -04:00
Konrad Pabjan eb31309b6c Update artifact names in tests 2023-10-27 10:12:08 -04:00
Konrad Pabjan 241a975ec2 Correct artifact name during download 2023-10-26 14:59:03 -04:00
Konrad Pabjan ef95519d72 Unique artifact name per job 2023-10-26 14:57:05 -04:00
Konrad Pabjan ecdd3edff7 Switch to using download@v4-beta 2023-10-26 14:50:49 -04:00
Konrad Pabjan e699324f6a Upload pages artifact with upload-artifact@v4-beta 2023-10-26 13:48:59 -04:00
James M. GreeneandGitHub a753861a5d Merge pull request #69 from actions/reapply-chmod-removal-for-v2
Re-remove built-in `chmod` commands for `v2`
2023-07-10 13:12:45 -05:00
James M. GreeneandGitHub dca6bac0e5 Merge branch 'main' into reapply-chmod-removal-for-v2 2023-07-10 13:04:16 -05:00
James M. GreeneandGitHub 3138c05496 Merge pull request #70 from actions/v2-docs-improvements
Update README for `v2`
2023-07-10 13:04:05 -05:00
James M. GreeneandGitHub 07f501f6a0 Update README for v2
Better topic hierarchy and more copy-paste-friendly `chmod` examples
2023-07-10 11:59:59 -05:00
James M. GreeneandGitHub 84bb4cd4b7 Merge pull request #65 from tshepang/patch-1
readme: fix/improve note about permissions
2023-07-10 11:49:41 -05:00
James M. GreeneandGitHub 8f17ae6041 Update README.md 2023-07-10 11:48:50 -05:00
James M. GreeneandGitHub bc7aff665b Update README.md 2023-07-10 11:48:45 -05:00
James M. GreeneandGitHub 6327a23a11 Merge branch 'main' into patch-1 2023-07-10 11:35:16 -05:00
James M. GreeneandGitHub 81e1caf958 Merge pull request #68 from actions/revert-chmod-for-v1
Revert `chmod` removal for `v1`
2023-07-10 11:26:08 -05:00
James M. Greene 9c071e6bed Reapply PR #63 for v2 2023-07-10 11:05:03 -05:00
James M. Greene 75e09bde99 Revert PR #63
It represents a breaking change that we should move into a v2.0.0 release
2023-07-10 10:54:54 -05:00
Tshepang MbamboandGitHub 74d0f02a66 readme: fix/improve note about permissions 2023-06-23 11:25:45 +02:00
Fabian Aguilar GomezandGitHub 6e866d065b Merge pull request #64 from actions/file-perms-error-docs
Add file perms handling
2023-06-19 12:59:47 -05:00
Fabian Aguilar GomezandGitHub a3f792f9c5 Update README.md 2023-06-19 12:48:14 -05:00
Fabian Aguilar GomezandGitHub 66b63f4a7d Merge pull request #63 from actions/chmod-delete
Chmod delete
2023-06-16 13:37:20 -05:00
MingziandGitHub 82a6ae9add Merge branch 'main' into chmod-delete 2023-06-16 11:33:49 -07:00
Fabian Aguilar GomezandGitHub dd7005653b Update action.yml 2023-06-15 12:37:17 -05:00
Yoann ChaudetandGitHub f6a706f190 Merge pull request #62 from jsoref/use-absolute-url
Use absolute URL
2023-06-15 10:31:33 -07:00
Fabian Aguilar GomezandGitHub 2642ae83d2 Update action.yml 2023-06-13 16:33:18 -05:00
Josh SorefandGitHub 4d8166c5f5 Use absolute URL 2023-06-12 14:11:29 -04:00
James M. GreeneandGitHub 64bcae551a Merge pull request #55 from actions/err-if-no-files-found
Fail if no artifact file is found to upload
2023-03-24 10:12:27 -05:00
James M. GreeneandGitHub d07e4817c2 Lock in at a major version of actions/upload-artifact to prevent potential future breaks 2023-03-24 10:10:04 -05:00
James M. GreeneandGitHub 07744da919 Fail if no artifact file is found to upload
Fixes #24
2023-03-23 22:37:03 -05:00
James M. GreeneandGitHub a3acd10bdf Merge pull request #53 from waldyrious/patch-1
Fix link to releases in README
2023-02-10 21:34:47 -06:00
James M. GreeneandGitHub 1e171d0d53 Use absolute URL 2023-02-10 21:34:01 -06:00
Waldir PimentaandGitHub c06cea93b0 Fix link to releases in README 2023-02-05 09:27:34 +00:00
Yoann ChaudetandGitHub d8fa6d6dc2 Merge pull request #47 from actions/dependabot/github_actions/actions/publish-action-0.2.2
Bump actions/publish-action from 0.2.1 to 0.2.2
2023-01-13 14:39:12 -08:00
dependabot[bot]andGitHub 2b33ce347b Bump actions/publish-action from 0.2.1 to 0.2.2
Bumps [actions/publish-action](https://github.com/actions/publish-action) from 0.2.1 to 0.2.2.
- [Release notes](https://github.com/actions/publish-action/releases)
- [Commits](https://github.com/actions/publish-action/compare/v0.2.1...v0.2.2)

---
updated-dependencies:
- dependency-name: actions/publish-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2023-01-13 22:35:44 +00:00
James M. GreeneandGitHub 6fae3a4821 Merge pull request #46 from actions/dependabot-config
Add Dependabot config for Actions usage updates
2023-01-13 16:35:20 -06:00
James M. GreeneandGitHub c55689491b Add Dependabot config for Actions usage updates 2023-01-13 15:57:36 -06:00
Yoann ChaudetandGitHub 253fd476ed Merge pull request #44 from KyeRussell/patch-1
Don't change file permissions of other files
2022-12-16 09:59:57 -08:00
Kye RussellandGitHub 98c5608efa Don't change file permissions of other files
Fixes #43
2022-12-16 12:44:24 +08:00
Yoann ChaudetandGitHub c8641e8004 Merge pull request #41 from yuradanyliuk/customize-artifact-name
Customize artifact name
2022-12-08 15:28:55 -08:00
Yoann ChaudetandGitHub b27b6af8bf Merge branch 'main' into customize-artifact-name 2022-12-08 15:27:57 -08:00
Yoann ChaudetandGitHub 73907447a0 Merge pull request #42 from actions/fix-permissions
Fix permissions
2022-12-08 15:21:43 -08:00
Yoann Chaudet 6da3417318 Wording 2022-12-08 14:48:49 -08:00
Yoann Chaudet 386aa88c28 Include folder 2022-12-08 14:44:29 -08:00
Yuriy Danyliuk 90d4377601 Add new input for artifact name 2022-12-05 03:31:49 +02:00
Jess BeesandGitHub 79d3b41b30 Merge pull request #38 from actions/change-file-permissions
Print warnings about changed file permissions in bulk
2022-11-30 16:09:50 -05:00
Jess Bees 7d0004809d Print warnings about changed file permissions in bulk
This will avoid mangled output when files have spaces within them.
2022-11-29 16:56:15 -05:00
James M. GreeneandGitHub 1ca738b002 Merge pull request #36 from actions/JamesMGreene-patch-1
Update to latest `actions/publish-action`
2022-11-22 22:26:59 -06:00
James M. GreeneandGitHub 4103baae3e Update to latest actions/publish-action
To avoid Actions core deprecation messages.

https://github.com/actions/publish-action/releases/tag/v0.2.1
2022-11-22 10:27:53 -06:00
Jess BeesandGitHub 4506126207 Merge pull request #34 from actions/change-file-permissions
Before tarring site, set file read permissions
2022-11-15 12:37:36 -05:00
Jess Bees 6de1c7ae49 Fix the mac shell script 2022-11-15 10:18:49 -05:00
Jess Bees de1b81a30a Use macos's non-gnu version of chmod 2022-11-14 11:41:47 -05:00
Jess Bees 61a978d261 Send a workflow warning when changing file permissions 2022-11-08 10:53:50 -05:00
Jess Bees 3cb2c0f93b Before tarring site, set file read permissions
Pages DFS needs the "group read" permission set on any file it serves,
so add read permission before tarring to prevent unreadable files from
being deployed.

This only applies to files that are built on an actions runner, not
files that are cloned from a git repoitory, because git's permissions
are limited to the equivalents of chmod 644 and 755.
2022-11-07 13:02:01 -05:00
Yoann ChaudetandGitHub e02d70a4e3 Merge pull request #32 from actions/bump-actions
Update actions/checkout
2022-11-01 16:53:27 -07:00
Yoann ChaudetandGitHub 73b4a0753a Merge branch 'main' into bump-actions 2022-11-01 16:49:06 -07:00
Yoann ChaudetandGitHub aff0f4398b Merge pull request #14 from ncfavier/patch-1
Fall back to `sh` on non-Windows
2022-11-01 16:30:32 -07:00
Yoann Chaudet 42a1761ba2 Update actions/checkout 2022-10-31 16:25:59 -07:00
Naïm Favier 12e73a1efa Fall back to sh on non-Windows
Fixes https://github.com/actions/upload-pages-artifact/issues/13
2022-10-29 11:59:56 +02:00
James M. GreeneandGitHub a597aecd27 Merge pull request #19 from kylewlacy/handle-weird-paths
Handle weird input paths
2022-09-02 17:16:39 -05:00
James M. GreeneandGitHub fa880244ea Remove redundant environment variable 2022-09-02 17:14:45 -05:00
Kyle Lacy 70a14093be Handle weird input paths by passing as env var 2022-08-27 12:42:58 -07:00
James M. GreeneandGitHub fb03cce750 Merge pull request #18 from actions/major-update-on-published
Run major version updates only on newly published releases
2022-08-19 13:25:51 -05:00
James M. GreeneandGitHub 287627f624 Trigger on "released" to avoid prereleases 2022-08-19 12:31:18 -05:00
James M. GreeneandGitHub 88565766e5 Only update the major tag upon publishing release 2022-08-19 12:29:14 -05:00
Yoann ChaudetandGitHub d3a918bb5e Merge pull request #16 from actions/add-tests
Add tests
2022-08-19 08:56:20 -07:00
8ad82273b5 Update script/new-artifact.sh
Co-authored-by: James M. Greene <[email protected]>
2022-08-19 08:55:21 -07:00
2f3239288b Update .github/workflows/test-hosted-runners.yml
Co-authored-by: James M. Greene <[email protected]>
2022-08-19 08:55:15 -07:00
Yoann Chaudet fc6db751bf doc 2022-08-18 17:43:49 -07:00
Yoann Chaudet 888798aeba Add symlink check 2022-08-18 16:49:51 -07:00
Yoann Chaudet 2ab5cde5b2 Normalize 2022-08-18 16:42:34 -07:00
Yoann Chaudet ae9ee82aa6 Add extract 2022-08-18 16:41:23 -07:00
Yoann Chaudet 78f064a158 Fix path 2022-08-18 16:36:57 -07:00
Yoann Chaudet 6b3212610f Add tests 2022-08-18 16:33:31 -07:00
James M. GreeneandGitHub 6a57e48bf6 Merge pull request #12 from actions/release-procedure
Update release procedure
2022-08-10 14:20:53 -05:00
James M. GreeneandGitHub 724b9438f5 Update release procedure 2022-08-10 14:12:37 -05:00
James M. GreeneandGitHub f422a5a910 Lowercase the README title 2022-08-10 14:03:15 -05:00
James M. GreeneandGitHub 0ab6893735 Merge pull request #11 from actions/marketplace-action-rename
Rename to include "GitHub" in "GitHub Pages" for Marketplace
2022-08-10 14:02:16 -05:00
James M. GreeneandGitHub fd7afbc054 Add author 2022-08-10 13:59:28 -05:00
James M. GreeneandGitHub 16e781d8a4 Update action.yml 2022-08-10 12:49:12 -05:00
Yoann ChaudetandGitHub f4e69017a7 Merge pull request #10 from Robert-96/main
Add support for macOS-based workflows
2022-08-09 11:57:32 -07:00
e361946409 Apply suggestions from code review
Co-authored-by: Yoann Chaudet <[email protected]>
2022-08-09 21:49:27 +03:00
Robert-96 ef7661905b Add support for macOS-based workflows 2022-08-09 02:25:59 +03:00
Yoann ChaudetandGitHub 780ca3f8cd Merge pull request #7 from meowsbits/patch-1
fix syntax typo
2022-08-04 09:36:09 -07:00
meowsbitsandGitHub 4fe9084ffa fix syntax typo 2022-08-03 08:05:15 -07:00
Yoann ChaudetandGitHub ceec27c96b Merge pull request #5 from yoannchaudet/main
Add support for `tar` on Windows
2022-08-01 16:17:14 -07:00
Yoann Chaudet 4143b6e8b8 Add support for tar on Windows 2022-08-01 06:53:06 -07:00
Yoann ChaudetandGitHub 9bd2be6899 Merge pull request #1 from actions/doc
Document artifacts validation + reformat a few things
2022-07-13 12:15:18 -07:00
Yoann ChaudetandGitHub 763007bcf1 Merge pull request #2 from actions/ignore-gh
Also .github folder from artifacts
2022-07-13 12:14:47 -07:00
Yoann Chaudet f4df6221cc Also .github folder from artifacts 2022-07-13 11:56:17 -07:00
Yoann Chaudet 8b46ca5bf4 Document artifacts validation + reformat a few things 2022-07-13 11:47:37 -07:00
9 changed files with 227 additions and 57 deletions
+2 -1
View File
@@ -1 +1,2 @@
* @paper-spa/pages # Default PR reviewers
* @actions/pages
+6
View File
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
+22 -22
View File
@@ -1,6 +1,6 @@
--- ---
name-template: 'v$RESOLVED_VERSION' name-template: "v$RESOLVED_VERSION"
tag-template: 'v$RESOLVED_VERSION' tag-template: "v$RESOLVED_VERSION"
template: | template: |
# Changelog # Changelog
@@ -8,33 +8,33 @@ template: |
See details of [all code changes](https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...v$RESOLVED_VERSION) since previous release. See details of [all code changes](https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...v$RESOLVED_VERSION) since previous release.
categories: categories:
- title: '🚀 Features' - title: "🚀 Features"
labels: labels:
- 'feature' - "feature"
- 'enhancement' - "enhancement"
- title: '🐛 Bug Fixes' - title: "🐛 Bug Fixes"
labels: labels:
- 'fix' - "fix"
- 'bugfix' - "bugfix"
- 'bug' - "bug"
- title: '🧰 Maintenance' - title: "🧰 Maintenance"
labels: labels:
- 'infrastructure' - "infrastructure"
- 'automation' - "automation"
- 'documentation' - "documentation"
- title: '🏎 Performance' - title: "🏎 Performance"
label: 'performance' label: "performance"
change-template: '- $TITLE @$AUTHOR (#$NUMBER)' change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
version-resolver: version-resolver:
major: major:
labels: labels:
- 'type: breaking' - "type: breaking"
minor: minor:
labels: labels:
- 'type: enhancement' - "type: enhancement"
patch: patch:
labels: labels:
- 'type: bug' - "type: bug"
- 'type: maintenance' - "type: maintenance"
- 'type: documentation' - "type: documentation"
default: patch default: patch
+1 -1
View File
@@ -8,7 +8,7 @@ jobs:
draft-release: draft-release:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- uses: release-drafter/release-drafter@v5 - uses: release-drafter/release-drafter@v5
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+2 -2
View File
@@ -1,7 +1,7 @@
name: Release name: Release
on: on:
release: release:
types: [edited] types: [released]
workflow_dispatch: workflow_dispatch:
inputs: inputs:
TAG_NAME: TAG_NAME:
@@ -24,7 +24,7 @@ jobs:
steps: steps:
- name: Update the ${{ env.TAG_NAME }} tag - name: Update the ${{ env.TAG_NAME }} tag
id: update-major-tag id: update-major-tag
uses: actions/publish-action@v0.1.0 uses: actions/publish-action@v0.2.2
with: with:
source-tag: ${{ env.TAG_NAME }} source-tag: ${{ env.TAG_NAME }}
slack-webhook: ${{ secrets.SLACK_WEBHOOK }} slack-webhook: ${{ secrets.SLACK_WEBHOOK }}
+53
View File
@@ -0,0 +1,53 @@
name: Run Tests
#
# Create some files with script/new-artifact.sh and confirm they are properly packaged and uploaded
# as artifacts with the actions.
#
# This is tested on all OS platforms where we have hosted runners.
#
on:
push:
branches:
- main
pull_request:
jobs:
test:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Generate files
run: mkdir artifact && mkdir artifact2 && cd artifact && ../script/new-artifact.sh
shell: bash
- name: Upload Pages artifact
uses: ./
with:
name: pages-artifact-${{ matrix.os }}
path: artifact
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: pages-artifact-${{ matrix.os }}
path: artifact2
- name: Extract artifact
run: tar -xf artifact2/artifact.tar -C artifact2 && rm artifact2/artifact.tar
shell: bash
- name: Compare files
run: diff -qr artifact artifact2
shell: bash
- name: Check for absence of symlinks
run: if [ $(find artifact2 -type l | wc -l) != 0 ]; then echo "Symlinks found"; exit 1; fi
shell: bash
+70 -17
View File
@@ -1,39 +1,92 @@
# Upload-Pages-Artifact # upload-pages-artifact
A composite action for packaging and uploading artifact that can be deployed to [GitHub Pages][pages]. 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. The scope is currently limited to **public repositories only**. ⚠️ Official support for building Pages with Actions is in public beta at the moment.
# Usage ## Usage
See [action.yml](action.yml) See [action.yml](action.yml)
<!-- TODO: document custom workflow --> <!-- TODO: document custom workflow -->
# Release instructions ## Artifact validation
While using this action is optional, we highly recommend it since it takes care of producing (mostly) valid artifacts.
A Pages artifact must:
- Be called `github-pages`
- Be a single [`gzip` archive][gzip] containing a single [`tar` file][tar]
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
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
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
```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: In order to release a new version of this Action:
1. Locate the semantic version of the upcoming release (a draft is maintained by the [`draft-release` workflow][draft-release]) 1. Locate the semantic version of the [upcoming release][release-list] (a draft is maintained by the [`draft-release` workflow][draft-release]).
2. Push a matching tag, for instance for `v0.1.0`: 2. Publish the draft release from the `main` branch with semantic version as the tag name, _with_ the checkbox to publish to the GitHub Marketplace checked. :ballot_box_with_check:
```bash 3. After publishing the release, the [`release` workflow][release] will automatically run to create/update the corresponding the major version tag such as `v0`.
git tag v0.1.0
git push origin v0.1.0
```
3. Publish the draft release (the major tag such as `v0` will be created/updated by the [`release` workflow][release]) ⚠️ Environment approval is required. Check the [Release workflow run list][release-workflow-runs].
⚠️ Environment approval is required. ## License
# License
The scripts and documentation in this project are released under the [MIT License](LICENSE). The scripts and documentation in this project are released under the [MIT License](LICENSE).
<!-- references --> <!-- references -->
[pages]: https://pages.github.com [pages]: https://pages.github.com
[release-list]: https://github.com/actions/upload-pages-artifact/releases
[draft-release]: .github/workflows/draft-release.yml [draft-release]: .github/workflows/draft-release.yml
[release]: .github/workflows/release.yml [release]: .github/workflows/release.yml
[release-workflow-runs]: https://github.com/actions/upload-pages-artifact/actions/workflows/release.yml
[gzip]: https://en.wikipedia.org/wiki/Gzip
[tar]: https://en.wikipedia.org/wiki/Tar_(computing)
+61 -14
View File
@@ -1,29 +1,76 @@
name: 'Upload Pages artifact' name: "Upload GitHub Pages artifact"
description: 'A composite action that prepares your static assets to be deployed to GitHub Pages' description: "A composite action that prepares your static assets to be deployed to GitHub Pages"
author: "GitHub"
inputs: inputs:
path: name:
description: 'Path of the directoring containing the static assets.' description: 'Artifact name'
required: true
default: '_site/'
retention-days:
description: 'Duration after which artifact will expire in days.'
required: false required: false
default: '1' default: 'github-pages'
path:
description: "Path of the directory containing the static assets."
required: true
default: "_site/"
retention-days:
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: runs:
using: composite using: composite
steps: steps:
- name: Archive artifact - name: Archive artifact
shell: bash shell: sh
if: runner.os == 'Linux'
run: | run: |
tar \ tar \
--dereference --hard-dereference \ --dereference --hard-dereference \
--directory ${{ inputs.path }} \ --directory "$INPUT_PATH" \
-cvf ${{ runner.temp }}/artifact.tar \ -cvf "$RUNNER_TEMP/artifact.tar" \
--exclude=.git \ --exclude=.git \
--exclude=.github \
. .
env:
INPUT_PATH: ${{ inputs.path }}
# Switch to gtar (GNU tar instead of bsdtar which is the default in the MacOS runners so we can use --hard-dereference)
- name: Archive artifact
shell: sh
if: runner.os == 'macOS'
run: |
gtar \
--dereference --hard-dereference \
--directory "$INPUT_PATH" \
-cvf "$RUNNER_TEMP/artifact.tar" \
--exclude=.git \
--exclude=.github \
.
env:
INPUT_PATH: ${{ inputs.path }}
# Massage the paths for Windows only
- name: Archive artifact
shell: bash
if: runner.os == 'Windows'
run: |
tar \
--dereference --hard-dereference \
--directory "$INPUT_PATH" \
-cvf "$RUNNER_TEMP\artifact.tar" \
--exclude=.git \
--exclude=.github \
--force-local \
"."
env:
INPUT_PATH: ${{ inputs.path }}
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@main id: upload-artifact
uses: actions/upload-artifact@v4
with: with:
name: github-pages name: ${{ inputs.name }}
path: ${{ runner.temp }}/artifact.tar path: ${{ runner.temp }}/artifact.tar
retention-days: ${{ inputs.retention-days }} retention-days: ${{ inputs.retention-days }}
if-no-files-found: error
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/env sh
# Create some files and directories in the current folder
echo 'hello' > hello.txt
mkdir subdir
echo 'world' > subdir/world.txt
# Add some symlinks (which we should dereference properly when archiving)
ln -s subdir subdir-link
ln -s hello.txt bonjour.txt