MapComplete/.forgejo/upload_hetzner/action.yml

23 lines
600 B
YAML

name: 'Upload_hetzner'
description: 'Uploads a directory to hetzner. Will zip first, for performance'
inputs:
src:
description: 'The source directory'
required: true
dst:
description: "The destination directory. The source directory will be placed _inside_"
required: true
runs:
using: 'composite'
steps:
- name: Upload
shell: bash
run: |
F=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 16)
zip $F.zip ${{ inputs.src }}/*
scp $F.zip hetzner:${{ inputs.dst }}/
ssh hetzner "cd ${{ inputs.dst }} unzip $F.zip && rm $F.zip"