Amazon web services 如何从GitHub Actions部署AWS Amplify应用程序?

Amazon web services 如何从GitHub Actions部署AWS Amplify应用程序?,amazon-web-services,deployment,aws-amplify,github-actions,Amazon Web Services,Deployment,Aws Amplify,Github Actions,我想通过GitHub操作控制Amplify部署,因为Amplify自动生成 不提供GitHub环境 不监视CI的故障,并将以任何方式部署,或 需要我复制CI设置并在Amplify中重新运行它 不支持运行现成的cypress作业 关闭自动生成(在应用程序设置/常规/分支中) 添加以下脚本和作业 脚本/放大部署.sh echo“部署应用程序$1分支机构$2” JOB_ID=$(aws amplify start JOB--app ID$1--branch name$2--JOB type RE

我想通过GitHub操作控制Amplify部署,因为Amplify自动生成

  • 不提供GitHub环境
  • 不监视CI的故障,并将以任何方式部署,或
  • 需要我复制CI设置并在Amplify中重新运行它
  • 不支持运行现成的
    cypress
    作业
      • 关闭自动生成(在应用程序设置/常规/分支中)
      • 添加以下脚本和作业
      脚本/放大部署.sh

      echo“部署应用程序$1分支机构$2”
      JOB_ID=$(aws amplify start JOB--app ID$1--branch name$2--JOB type RELEASE | jq-r'.jobSummary.jobId')
      回显“发布已开始”
      echo“作业ID为$Job\u ID”
      而[[“$(aws放大获取作业--应用程序id$1--分支名称$2--作业id$job|u id | jq-r.job.summary.status')”=~ ^(挂起|运行)$];做睡眠1;完成
      JOB_STATUS=“$(aws amplify get JOB--app id$1--branch name$2--JOB id$JOB_id | jq-r'.JOB.summary.STATUS')”
      回显“作业已完成”
      echo“作业状态为$Job\u status”
      
      如果发布失败,您可以将脚本改进为失败,添加所需的步骤(例如lint、test),添加GitHub环境,等等

      也有,但对我来说不起作用

        deploy:
          runs-on: ubuntu-latest
          env:
            AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
            AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
            AWS_DEFAULT_REGION: us-east-1
            AWS_DEFAULT_OUTPUT: json
          steps:
          - uses: actions/checkout@v2
          - name: Deploy
            run: ./scripts/amplify-deploy.sh xxxxxxxxxxxxx master