-
Notifications
You must be signed in to change notification settings - Fork 3
/
upload_model.py
36 lines (29 loc) · 955 Bytes
/
upload_model.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import argparse
import logging
import os
import boto3
from botocore.exceptions import ClientError
from dotenv import load_dotenv
from sentiment import MODEL_VERSION
def upload_file(file_name, bucket):
s3_client = boto3.client(
's3',
aws_access_key_id=os.getenv('YOUR_ACCESS_KEY'),
aws_secret_access_key=os.getenv('YOUR_SECRET_KEY'))
try:
s3_client.upload_file(file_name,
bucket,
file_name,
ExtraArgs={'ACL': 'public-read'})
except ClientError as e:
logging.error(e)
return False
return True
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('--model_path',
default=f'model_{MODEL_VERSION}.pkl',
type=str)
args = parser.parse_args()
load_dotenv()
upload_file(args.model_path, 'sentimentmodels')