# create a stream
stream = io.BytesIO()
# generate PDF
doc = SimpleDocTemplate(stream, pagesize=letter,
rightMargin=72, leftMargin=72,
topMargin=72, bottomMargin=18)
Story = []
styles = getSampleStyleSheet()
Story.append(Paragraph('<font size=11>This is a PDF</font>', styles["Normal"]))
doc.build(Story)
# get buffer
pdf_buffer = stream.getbuffer()
filename = "new.pdf"
bucket_name = 'insert_bucket_name'
object_name = bucket_name
# here is where I get stuck - how should be passing the pdf_buffer to s3?
# how you typically write to s3 :
# Method 1
s3 = boto3.client('s3')
with open(filename, "rb") as f:
s3.upload_fileobj(f, bucket_name, object_name)
# Method 2
s3.Bucket(bucket_name).put_object(Key=filename, Body=file)