从bitbucket部署到AWS S3,一个简单的静态htm网站

时间:2018-03-01 17:05:33

标签: git amazon-web-services amazon-s3 bitbucket

所以我正在开发一个简单的愚蠢的静态网站,没有EC2实例或任何类型的东西。 我正在看S3它可以托管这样一个网站,我也在使用bitbucket(我工作的公司正在使用它)。 现在我试图找出,每当我执行git push into bitbucket时,它会一直到S3存储桶,我在这里查看AWS管道

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

但它要求我上传为工件并添加额外的脚本。 我确定之前有其他人必须执行此任务,在我执行git push将其推送到S3之后是否可以使用任何脚本来触发?

AWS和bitbucket之间的CodeDeploy集成要求我在某一点上拥有一个EC2实例,我不需要而且没有;这就是为什么我没有使用代码部署。

3 个答案:

答案 0 :(得分:0)

git post-commit hooks和aws cli?

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

答案 1 :(得分:0)

我就是这样做的:

xmlns:s="clr-namespace:System;assembly=mscorlib"

<Button Content="5"
        VerticalAlignment="Center"
        HorizontalAlignment="Center"
        Command="{Binding ProcessAmount}"
        FontSize="24"
        Height="75"
        Width="85">
    <Button.CommandParameter>
        <s:Decimal>5.00000</s:Decimal>
    </Button.CommandParameter>
</Button>

它需要npm(和node.js)。它只会复制S3存储桶中不存在的文件。

  • npx s3-deploy './dist/**' --cwd './dist/' --region ap-southeast-2 --bucket my-bucket-name --filePrefix bucket-folder - 用于下载和执行二进制文件的npm(&gt; = v5)内置命令。
  • npx - 是一个npm模块。其余参数将传递给s3-deploy
  • s3-deploy - 您要复制到S3的文件。
  • './dist/**' + AWS_ACCESS_KEY_ID env vars应该存在。见here
  • 有关AWS_SECRET_ACCESS_KEY - https://www.npmjs.com/package/s3-deploy
  • 的更多信息

答案 2 :(得分:0)

我已经使用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"

还请在位桶管道AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY上设置环境变量。 将AWS_DEFAULT_REGION更改为存储区区域,并将bucket_name替换为您的存储区名称。 有关更多信息,请观看YouTube视频Bitbucket pipelines for deploy static website on S3,并参考bitbucket Repo