use own logic for b2 uploads

This commit is contained in:
surtur 2020-05-10 06:58:01 +02:00
parent 670e52eda3
commit 11789ced43
Signed by: wanderer
GPG Key ID: 19CE1EC1D9E0486D

View File

@ -103,20 +103,39 @@ depends_on:
- test-set-default
steps:
- name: b2
- name: backblaze-b2
pull: always
image: techknowlogick/drone-b2:latest
image: immawanderer/archlinux-rf:latest
volumes:
- name: cache
path: /run/cache
bucket: robot-test
account:
from_secret: b2_account
key:
from_secret: b2_key
commands:
- ls -la /run/cache
- export FILE_TO_UPLOAD=$(ls /run/cache | head -1)
- export MIME_TYPE=text/plain
- export SHA1_OF_FILE=$(openssl dgst -sha1 $FILE_TO_UPLOAD | awk '{print $2;}')
- export apiUrl=$(curl -s 'https://api.backblazeb2.com/b2api/v2/b2_authorize_account' -u "$B2_KEY_ID:B2_KEY" | \
python -c "import sys, json; print json.load(sys.stdin)['apiUrl']")
- export UPLOAD_URL=$(curl -s -H 'Authorization: $B2_TOKEN' -d '{"bucketId": "$B2_BUCKET_ID"}' $apiUrl/b2api/v2/b2_get_upload_url)
- curl -H "Authorization: $B2_TOKEN" -H "X-Bz-File-Name: $FILE_TO_UPLOAD" -H "Content-Type: $MIME_TYPE" -H "X-Bz-Content-Sha1: $SHA1_OF_FILE" -H "X-Bz-Info-Author: ${DRONE_COMMIT_AUTHOR}" --data-binary "@$FILE_TO_UPLOAD" $UPLOAD_URL
- export FILE_TO_UPLOAD=$(ls /run/cache | tail -1)
- export MIME_TYPE=application/zstd
- export SHA1_OF_FILE=$(openssl dgst -sha1 $FILE_TO_UPLOAD | awk '{print $2;}')
- curl -H "Authorization: $B2_TOKEN" -H "X-Bz-File-Name: $FILE_TO_UPLOAD" -H "Content-Type: $MIME_TYPE" -H "X-Bz-Content-Sha1: $SHA1_OF_FILE" -H "X-Bz-Info-Author: ${DRONE_COMMIT_AUTHOR}" --data-binary "@$FILE_TO_UPLOAD" $UPLOAD_URL
environment:
B2_ACCOUNT:
from_secret: b2_account
B2_BUCKET_ID:
from_secret: b2_bucketId
B2_TOKEN:
from_secret: b2_token
B2_KEY_ID:
from_secret: b2_keyId
B2_KEY:
from_secret: b2_key
source: /archives/*
target: results
strip_prefix: /archives/
volumes:
- name: cache