name: 'pack' description: 'Use pack to upload a package' inputs: file: description: 'the file to upload' required: true feature: description: 'the feature to upload to, i.e docs, nightly' required: true secret: description: 'the secret for pack' required: true prefix: description: 'an optional prefix for the filename' required: false default: '' is_folder: description: 'specify as "true" if uploading a folder' required: false default: false runs: using: 'composite' steps: - run: if [ ${{ inputs.is_folder }} == true ] && [ ! -d ${{ inputs.file }} ]; then echo "Not a folder!"; exit 1; fi - run: if [ ${{ inputs.is_folder }} == false ] && [ ! -f ${{ inputs.file }} ]; then echo "Not a file!"; exit 1; fi - run: | if [ ${{ inputs.is_folder }} == true ]; then \ echo "Packaging folder..." && cd ${{ inputs.file }} && tar -czf file.tgz * && echo "Uploading '${{ inputs.file }}' to '${{ vars.PACK_HOST }}/api/upload/${{ gitea.repository }}/${{ inputs.feature }}'" && curl -v -H 'Authorization: Bearer ${{ inputs.secret }}' \ -F sha=${{ gitea.sha }} \ -F ref='${{ gitea.ref }}' \ -F prefix='${{ inputs.prefix }}' \ -F filename=file.tgz \ -F data=@file.tgz \ -F is_folder='${{ inputs.is_folder }}' \ ${{ vars.PACK_HOST }}/api/upload/${{ gitea.repository }}/${{ inputs.feature }} else echo "Uploading '${{ inputs.file }}' to '${{ vars.PACK_HOST }}/api/upload/${{ gitea.repository }}/${{ inputs.feature }}'" && curl -v -H 'Authorization: Bearer ${{ inputs.secret }}' \ -F sha=${{ gitea.sha }} \ -F ref='${{ gitea.ref }}' \ -F prefix='${{ inputs.prefix }}' \ -F filename='${{ inputs.file }}' \ -F data=@'${{ inputs.file }}' \ -F is_folder='${{ inputs.is_folder }}' \ ${{ vars.PACK_HOST }}/api/upload/${{ gitea.repository }}/${{ inputs.feature }} fi - run: echo "Upload complete"