1
0
Fork 0
mirror of https://code.forgejo.org/actions/upload-artifact.git synced 2024-12-22 19:36:00 +01:00

Merge pull request #466 from actions/v4-beta

upload-artifact@v4
This commit is contained in:
Rob Herley 2023-12-14 10:04:00 -05:00 committed by GitHub
commit c7d193f32e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
132 changed files with 120968 additions and 4717 deletions

View file

@ -10,9 +10,11 @@ on:
push:
branches:
- main
paths-ignore:
- '**.md'
pull_request:
branches:
- main
paths-ignore:
- '**.md'
workflow_dispatch:
jobs:
@ -20,33 +22,32 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup Node 16
uses: actions/setup-node@v3
- name: Setup Node 20
uses: actions/setup-node@v4
with:
node-version: 16.x
node-version: 20.x
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Move the committed index.js file
run: mv dist/index.js /tmp
- name: Rebuild with tsc
- name: Rebuild the dist/ directory
run: npm run build
- name: Rebuild the index.js file
run: npm run release
- name: Compare the expected and actual index.js files
run: git diff --ignore-all-space dist/index.js /tmp/index.js
- name: Compare the expected and actual dist/ directories
run: |
if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then
echo "Detected uncommitted changes after build. See status below:"
git diff
exit 1
fi
id: diff
# If index.js was different than expected, upload the expected version as an artifact
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4-beta
if: ${{ failure() && steps.diff.conclusion == 'failure' }}
with:
name: index.js
path: dist/index.js
name: dist
path: dist/

View file

@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
name: Check licenses
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- run: npm ci
- name: Install licensed
run: |

View file

@ -1,4 +1,5 @@
name: Test
on:
push:
branches:
@ -10,7 +11,6 @@ on:
- '**.md'
jobs:
build:
name: Build
@ -23,12 +23,12 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Node 16
uses: actions/setup-node@v3
- name: Setup Node 20
uses: actions/setup-node@v4
with:
node-version: 16.x
node-version: 20.x
cache: 'npm'
- name: Install dependencies
@ -54,33 +54,26 @@ jobs:
mkdir -p path/to/dir-3
echo "Lorem ipsum dolor sit amet" > path/to/dir-1/file1.txt
echo "Hello world from file #2" > path/to/dir-2/file2.txt
echo "This is a going to be a test for a large enough file that should get compressed with GZip. The @actions/artifact package uses GZip to upload files. This text should have a compression ratio greater than 100% so it should get uploaded using GZip" > path/to/dir-3/gzip.txt
# Upload a single file artifact
- name: 'Upload artifact #1'
uses: ./
with:
name: 'Artifact-A'
name: 'Artifact-A-${{ matrix.runs-on }}'
path: path/to/dir-1/file1.txt
# Upload using a wildcard pattern, name should default to 'artifact' if not provided
# Upload using a wildcard pattern
- name: 'Upload artifact #2'
uses: ./
with:
name: 'Artifact-Wildcard-${{ matrix.runs-on }}'
path: path/**/dir*/
# Upload a directory that contains a file that will be uploaded with GZip
# Upload a multi-path artifact
- name: 'Upload artifact #3'
uses: ./
with:
name: 'GZip-Artifact'
path: path/to/dir-3/
# Upload a directory that contains a file that will be uploaded with GZip
- name: 'Upload artifact #4'
uses: ./
with:
name: 'Multi-Path-Artifact'
name: 'Multi-Path-Artifact-${{ matrix.runs-on }}'
path: |
path/to/dir-1/*
path/to/dir-[23]/*
@ -88,9 +81,9 @@ jobs:
# Download Artifact #1 and verify the correctness of the content
- name: 'Download artifact #1'
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4-beta
with:
name: 'Artifact-A'
name: 'Artifact-A-${{ matrix.runs-on }}'
path: some/new/path
- name: 'Verify Artifact #1'
@ -108,9 +101,9 @@ jobs:
# Download Artifact #2 and verify the correctness of the content
- name: 'Download artifact #2'
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4-beta
with:
name: 'artifact'
name: 'Artifact-Wildcard-${{ matrix.runs-on }}'
path: some/other/path
- name: 'Verify Artifact #2'
@ -127,31 +120,11 @@ jobs:
}
shell: pwsh
# Download Artifact #3 and verify the correctness of the content
- name: 'Download artifact #3'
uses: actions/download-artifact@v3
with:
name: 'GZip-Artifact'
path: gzip/artifact/path
# Because a directory was used as input during the upload the parent directories, path/to/dir-3/, should not be included in the uploaded artifact
- name: 'Verify Artifact #3'
run: |
$gzipFile = "gzip/artifact/path/gzip.txt"
if(!(Test-Path -path $gzipFile))
{
Write-Error "Expected file do not exist"
}
if(!((Get-Content $gzipFile) -ceq "This is a going to be a test for a large enough file that should get compressed with GZip. The @actions/artifact package uses GZip to upload files. This text should have a compression ratio greater than 100% so it should get uploaded using GZip"))
{
Write-Error "File contents of downloaded artifact is incorrect"
}
shell: pwsh
# Download Artifact #4 and verify the correctness of the content
- name: 'Download artifact #4'
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4-beta
with:
name: 'Multi-Path-Artifact'
name: 'Multi-Path-Artifact-${{ matrix.runs-on }}'
path: multi/artifact
- name: 'Verify Artifact #4'

Binary file not shown.

BIN
.licenses/npm/@actions/github.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
.licenses/npm/@azure/core-auth.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@azure/core-http.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@azure/core-lro.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@azure/core-paging.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@azure/core-tracing.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@azure/logger.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@azure/storage-blob.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@fastify/busboy.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@octokit/auth-token.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@octokit/core.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@octokit/endpoint.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@octokit/graphql.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
.licenses/npm/@octokit/request.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
.licenses/npm/@opentelemetry/api.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

BIN
.licenses/npm/@protobuf-ts/plugin.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@protobuf-ts/protoc.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

BIN
.licenses/npm/@protobuf-ts/runtime.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@types/node-fetch.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@types/node.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/@types/tunnel.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/archiver-utils-2.1.0.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/archiver-utils-3.0.4.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/archiver.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/async.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/asynckit.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/base64-js.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/before-after-hook.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/binary.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/bl.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/bottleneck.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

BIN
.licenses/npm/buffer-crc32.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/buffer.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/buffers.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/camel-case.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/chainsaw.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/combined-stream.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/commander.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/compress-commons.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/core-util-is.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/crc-32.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/crc32-stream.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/crypto.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/delayed-stream.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/deprecation.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/dot-object.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/end-of-stream.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/events.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/form-data.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/fs-constants.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/graceful-fs.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/ieee754.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/is-plain-object.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/isarray.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/jwt-decode.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lazystream.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lodash.defaults.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lodash.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lodash.difference.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lodash.flatten.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lodash.isplainobject.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lodash.union.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/lower-case.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/mime-db.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/mime-types.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/minimist.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/mkdirp.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/no-case.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/node-fetch.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/normalize-path.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/pascal-case.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/path-to-regexp.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/prettier.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/process-nextick-args.dep.yml generated Normal file

Binary file not shown.

BIN
.licenses/npm/process.dep.yml generated Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show more