ปรับใช้จาก bitbucket ไปยัง AWS S3 ซึ่งเป็นเว็บไซต์ htm แบบคงที่ที่เรียบง่าย

ดังนั้นฉันจึงทำงานบนเว็บไซต์สแตติกธรรมดาๆ ธรรมดาๆ ที่ไม่มี EC2 instance หรืออะไรทำนองนั้น ฉันกำลังดู S3 เพราะมันสามารถโฮสต์เว็บไซต์ดังกล่าวได้ และฉันก็ใช้ bitbucket เช่นกัน (บริษัทที่ฉันทำงานด้วยก็ใช้สิ่งนั้นอยู่) ตอนนี้ฉันกำลังพยายามค้นหาว่าเมื่อใดก็ตามที่ฉันทำ git push ไปที่ bitbucket มันจะไปตลอดทางจนถึงบัคเก็ต S3 ฉันดูไปป์ไลน์ AWS ที่นี่

https://bitbucket.org/awslabs/amazon-s3-bitbucket-pipelines-python?_ga=2.244703245.988359590.1519921827-876742115.1519921827

แต่ต้องการให้ฉันอัปโหลดเป็นสิ่งประดิษฐ์และเพิ่มสคริปต์เพิ่มเติม ฉันแน่ใจว่ามีคนอื่นที่เคยทำงานนี้มาก่อน มีสคริปต์ใดบ้างที่ฉันสามารถใช้เพื่อทริกเกอร์ทันทีหลังจากที่ฉันกด git เพื่อส่งไปที่ S3

การรวม CodeDeploy ระหว่าง AWS และ bitbucket กำหนดให้ฉันต้องมี EC2 instance ณ จุดหนึ่ง ฉันไม่ต้องการ และไม่มี นั่นคือเหตุผลว่าทำไมฉันถึงไม่ใช้โค้ดปรับใช้


person Huang    schedule 01.03.2018    source แหล่งที่มา


คำตอบ (3)


git หลังการคอมมิต hooks และ aws cli?

https://github.com/mark-schaal/git-hooks-AWSCLI-S3

person Sudharsan Sivasankaran    schedule 01.03.2018
comment
ดูดี ขอโทษที ฉันจะติดตั้งสิ่งนี้ได้อย่างไร? มันเป็นแพ็คเกจ npm หรือไม่? ฉันจะใช้มันได้อย่างไร? - person Huang; 01.03.2018

นั่นคือวิธีที่ฉันทำ:

npx s3-deploy './dist/**' --cwd './dist/' --region ap-southeast-2 --bucket my-bucket-name --filePrefix bucket-folder

ต้องใช้ npm (และ node.js) มันจะคัดลอกเฉพาะไฟล์ที่ไม่มีอยู่ในบัคเก็ต S3

  • npx - คำสั่งในตัว npm (>= v5) เพื่อดาวน์โหลดและดำเนินการไบนารี่
  • s3-deploy - เป็นโมดูล npm อาร์กิวเมนต์ที่เหลือจะถูกส่งไปที่ s3-deploy
  • './dist/**' - ไฟล์ที่คุณต้องการคัดลอกไปยัง S3
  • vars AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY env ควรมีอยู่ ดูที่นี่
  • ข้อมูลเพิ่มเติมเกี่ยวกับ s3-deploy - https://www.npmjs.com/package/s3-deploy
person Vasyl Boroviak    schedule 09.05.2018

ฉันได้อัปโหลดเว็บไซต์แบบคงที่โดยใช้โค้ดต่อไปนี้เขียนในไฟล์ bitbucket-pipelines.yml

    image: python:3.5.1
    pipelines:
      branches:
        master:
          - step:
              script:
                - pipe: atlassian/aws-s3-deploy:0.2.1
                variables:
                   AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
                   AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
                   AWS_DEFAULT_REGION: "ap-south-1"
                   ACL: "public-read"
                   S3_BUCKET: "bucket_name"
                   LOCAL_PATH: $BITBUCKET_CLONE_DIR 
                   #DELETE_FLAG: "true"

โปรดตั้งค่าตัวแปรสภาพแวดล้อมบนไปป์ไลน์ bitbucket AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY ด้วย เปลี่ยน AWS_DEFAULT_REGION เป็นภูมิภาคที่เก็บข้อมูลและแทนที่ bucket_name ด้วยชื่อที่เก็บข้อมูลของคุณ สำหรับข้อมูลเพิ่มเติม โปรดดูวิดีโอ YouTube นี้ ไปป์ไลน์ Bitbucket สำหรับการปรับใช้เว็บไซต์แบบคงที่บน S3 และดู ธุรกรรมซื้อคืนของ bitbucket

person Ajay    schedule 27.04.2019