Split up actions better.
This commit is contained in:
96
gitea/download-previous-artifact/action.yaml
Normal file
96
gitea/download-previous-artifact/action.yaml
Normal file
@@ -0,0 +1,96 @@
|
||||
name: github-download-previous-artifact
|
||||
description: "Download a single artifact from a previous Workflow run."
|
||||
inputs:
|
||||
host:
|
||||
description: "Gitea host to query."
|
||||
required: true
|
||||
default: "${{ github.server_url }}"
|
||||
username:
|
||||
description: "Gitea user to query with."
|
||||
required: true
|
||||
default: "${{ github.actor }}"
|
||||
password:
|
||||
description: "Credentials to use for Gitea. If not specified, the GitHub/Gitea token will be used."
|
||||
required: true
|
||||
default: "${{ github.token }}"
|
||||
repoFullName:
|
||||
description: "The full name of the repository that ran the workflow to download from. Default: ${{ github.repository }}"
|
||||
required: true
|
||||
default: "${{ github.repository }}"
|
||||
workflowPattern:
|
||||
description: "Pattern of the workflow name to match. Supports wildcard or RegEx. Default: ${{ github.event.repository.workflow }}"
|
||||
required: true
|
||||
default: "${{ github.event.repository.workflow }}"
|
||||
artifactPattern:
|
||||
description: "Pattern of the artifacts to match. Supports wildcard or RegEx. Default: *"
|
||||
required: true
|
||||
default: "*"
|
||||
branchPattern:
|
||||
description: "Branch of the workflow to match. Supports wildcard or RegEx. Default: ${{ github.ref }}"
|
||||
required: false
|
||||
default: "${{ github.ref }}"
|
||||
unzipDir:
|
||||
description: "Directory to unzip the artifacts into. If not specified, the artifacts will not be unzipped."
|
||||
required: false
|
||||
default: ""
|
||||
unzipPattern:
|
||||
description: "Pattern of the files to upload from the unzipped artifacts."
|
||||
required: false
|
||||
default: "*"
|
||||
deleteAfterUnzip:
|
||||
description: "Whether to delete the artifacts after unzipping. Default: false"
|
||||
required: false
|
||||
default: "false"
|
||||
nugetSources:
|
||||
description: "List of additional NuGet sources to use."
|
||||
required: false
|
||||
default: "${{ github.server_url }}/api/packages/FORK/nuget/index.json"
|
||||
nugetUsernames:
|
||||
description: "List of additional NuGet usernames to use."
|
||||
required: false
|
||||
default: "${{ github.actor }}"
|
||||
nugetPasswords:
|
||||
description: "List of additional NuGet passwords to use."
|
||||
required: false
|
||||
default: "${{ github.token }}"
|
||||
outputs:
|
||||
downloadedArtifactName:
|
||||
description: "The downloaded artifacts names"
|
||||
value: ${{ steps.artifacts.outputs.fileName }}
|
||||
downloadedArtifactPath:
|
||||
description: "The downloaded artifact paths."
|
||||
value: ${{ steps.artifacts.outputs.filePath }}
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: act/common/gitea/download-previous-artifacts@master
|
||||
id: download
|
||||
with:
|
||||
host: ${{ inputs.host }}
|
||||
username: ${{ inputs.username }}
|
||||
password: ${{ inputs.password }}
|
||||
repoFullName: ${{ inputs.repoFullName }}
|
||||
workflowPattern: ${{ inputs.workflowPattern }}
|
||||
artifactPattern: ${{ inputs.artifactPattern }}
|
||||
branchPattern: ${{ inputs.branchPattern }}
|
||||
unzipDir: ${{ inputs.unzipDir }}
|
||||
deleteAfterUnzip: ${{ inputs.deleteAfterUnzip }}
|
||||
nugetSources: ${{ inputs.nugetSources }}
|
||||
nugetUsernames: ${{ inputs.nugetUsernames }}
|
||||
nugetPasswords: ${{ inputs.nugetPasswords || inputs.password }}
|
||||
- name: "Get the file to upload."
|
||||
id: artifacts
|
||||
run: |
|
||||
if [[ -n "${{ inputs.unzipDir }}" ]]; then
|
||||
echo "Using unzipPattern: ${{ inputs.unzipPattern }}"
|
||||
FIRST_DIR=$(echo '${{ steps.download.outputs.downloadedArtifactDirs }}' | tr ',' '\n' | head -n 1)
|
||||
FILE_PATH=$(ls -1 ${FIRST_DIR}/*${{ inputs.unzipPattern }} | head -n 1)
|
||||
echo "filePath=$FILE_PATH" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "Using first downloaded artifact path"
|
||||
FILE_PATH=$(echo '${{ steps.download.outputs.downloadedArtifactPaths }}' | tr ',' '\n' | head -n 1)
|
||||
echo "filePath=$FILE_PATH" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
FILE_NAME=$(basename "$FILE_PATH")
|
||||
echo "fileName=$FILE_NAME" >> "$GITHUB_OUTPUT"
|
||||
shell: bash
|
||||
Reference in New Issue
Block a user