Upload files til s3 bucket på Amazon.

Hvis du som jeg gerne vil upload dine backup filer til Amazon s3 service kan du bruge et script som dette python script.

Du skal udfylde min access_key samt access_secret og bucket_name disse parameter siger hvordan access og upload bibliotek ligger på s3. Gen dette script i dit home dir så har du altid adgang til at upload filer til s3 smart. Du kan jo lave scriptet om så den kan modtage en parameter på biblioteket som skal overføres til s3.

Det sidste du skal gøre er at installere det som cron script.

 

 

import glob,os
import boto3
from botocore.exceptions import ClientError

access_key = 'LS3L1DG82CBKLJ5AHG7J'
access_secret = 'tPztEgMk7lxoDGO31YaAwl1jOYukB1ws40j6gv6p'
bucket_name = 'my-postgres-backups'


client_s3 = boto3.client(
's3',
aws_access_key_id = access_key,
aws_secret_access_key = access_secret
)

data_file_folder = '/mnt/_db/active_running_backup/'

os.chdir("/mnt/_db/active_running_backup/")

for file in glob.glob("*.tar.gz"):
print('Uploading file {0}...'.format(file))
try:
client_s3.upload_file (
os.path.join(data_file_folder,file),
bucket_name,
file
)
except ClientError as err:
print('Credential is incorrect')
print(err)
except Exception as err:
print(err)