我正在尝试使用Powershell将一组两个.net核心项目上载到我的AWS Elastic beantalk环境中。
在教程here之后,我运行了一个脚本来更新EB版本,如下所示:
$applicationName = "PaveStateOnline"
$environmentName = "PaveStateOnline-prod6"
$versionLabel = [System.DateTime]::Now.Ticks.ToString()
New-EBApplicationVersion -ApplicationName $applicationName -VersionLabel $versionLabel -SourceBundle_S3Bucket $s3Bucket -SourceBundle_S3Key app-bundle.zip -Region "Asia Pacific (Sydney)"
但是,此代码具有以下异常:
New-EBApplicationVersion : Invalid URI: The hostname could not be parsed.
At C:\Users\jpn\Projects\FieldLogger\deploy.ps1:57 char:1
+ New-EBApplicationVersion -ApplicationName $applicationName -VersionLa ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [New-EBApplicationVersion], UriFormatException
+ FullyQualifiedErrorId : System.UriFormatException,Amazon.PowerShell.Cmdlets.EB.NewEBApplicationVersionCmdlet
因此,这是说存在一个无效的URI。但是,当我签出另一个使用此方法的地方以及那个doesn't even use a URI at all。 任何人都知道为什么它崩溃了,或者为什么它认为我应该传递URI?
答案 0 :(得分:2)
该命令的region参数至少部分定义了uri。该区域的正确代码应为“ ap-southeast-2”。对于其他任何人,此页面上都有代码列表:https://docs.aws.amazon.com/general/latest/gr/rande.html
那将使您的命令:
New-EBApplicationVersion -ApplicationName $applicationName -VersionLabel $versionLabel -SourceBundle_S3Bucket $s3Bucket -SourceBundle_S3Key app-bundle.zip -Region "ap-southeast-2"