Files
nuget-push-action/action.yaml
Jeffery 624a8a8bb9
All checks were successful
/ CD > 發布專案 (push) Successful in 4s
first commit
2025-09-18 14:22:02 +08:00

38 lines
1.1 KiB
YAML

name: 'NUGET PUSH'
description: '打包套件'
author: 'Jeffery'
inputs:
token:
default: ''
version:
required: true
source:
required: true
api_key:
required: true
index:
default: 0
runs:
using: "composite"
steps:
- run: |
HEADER="Authorization: token ${{ inputs.token }}"
SOURCE="${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}/releases/tags/v${{ inputs.version }}"
echo "HEADER: $HEADER"
echo "SOURCE: $SOURCE"
RELEASE_JSON="$(curl -s -H "$HEADER" "$SOURCE")"
DOWNLOAD_NAME="$(echo "$RELEASE_JSON" | jq -r ".assets[${{ inputs.index }}].name")"
DOWNLOAD_URL="$(echo "$RELEASE_JSON" | jq -r ".assets[${{ inputs.index }}].browser_download_url")"
echo "DOWNLOAD_NAME: $DOWNLOAD_NAME"
echo "DOWNLOAD_URL: $DOWNLOAD_URL"
echo "ARTIFACT DOWNLOADING..."
curl -s -H "$HEADER" "$DOWNLOAD_URL" -o "$DOWNLOAD_NAME"
echo "ARTIFACT UNZIPPING..."
unzip "$DOWNLOAD_NAME" -d output
echo "ARTIFACT PUSHING..."
dotnet nuget push "output/*.nupkg" --source "${{ inputs.source }}" --api-key "${{ inputs.api_key }}" --skip-duplicate