【问题标题】:elasticbeanstalk describe-application-versions returning emptyelasticbeanstalk 描述应用程序版本返回空
【发布时间】:2021-03-31 11:52:46
【问题描述】:

我有以下脚本在 AWS 上的代码构建结束时运行。它成功创建了一个新的应用程序版本,我希望它自动更新环境以部署新的应用程序版本。命令describe-application-versions 返回空,命令update-environment 开始更新,但很快失败并出现错误InvalidParameterValue: Not a valid Base64 function。我已经仔细检查了环境变量是否设置正确,我可以从我自己的终端很好地调用这两个命令。这可能是凭据错误吗?如果是这种情况,我希望看到权限错误。

if [ -z $APPLICATION ];
then echo "No beanstalk application specified";
else aws elasticbeanstalk create-application-version --application-name $APPLICATION --version-label $VER_LBL --source-bundle S3Bucket=$DEPLOYPATH,S3Key=builds/$APPLICATION/$VER_LBL --region $REGION;
    if [ -z $ENVIRONMENT ];
    then echo "No beanstalk environment specified";
    else 
        aws elasticbeanstalk describe-application-versions --application-name $APPLICATION --version-labels $VER_LBL --region $REGION
        aws elasticbeanstalk update-environment --application-name $APPLICATION --environment-name $ENVIRONMENT --version-label $VER_LBL --region $REGION; 
    fi
fi

【问题讨论】:

    标签: amazon-web-services amazon-elastic-beanstalk aws-cli


    【解决方案1】:

    所以,我遇到了同样的问题。 我尝试删除配置文件,因为我认为.ebextensions 中的配置文件可能存在问题。

    但是,事实并非如此。

    我使用 CodePipeline 部署 elasticbeanstalk(elasticbeanstalk 已经使用 CFN 部署)。 在我的情况下,该错误有点欺骗性,问题在于 IAM 角色

    我在 CodePipelineIAM 角色缺少以下部分:

              - Action:
                  - iam:PassRole
                Resource: "*"
                Effect: Allow
                Condition:
                  StringEqualsIfExists:
                    iam:PassedToService:
                      - cloudformation.amazonaws.com
                      - elasticbeanstalk.amazonaws.com
                      - ec2.amazonaws.com
                      - ecs-tasks.amazonaws.com
    

    【讨论】:

      猜你喜欢
      • 2011-03-29
      • 2019-10-11
      • 2016-05-13
      • 2022-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-26
      相关资源
      最近更新 更多