AppEngine灵活环境的部署使用gcloud app deploy
通常较慢,因为AppEngine必须先部署容器环境,然后才能部署代码并向其切换流量。
加快部署速度的常用方法是指定版本,这样AppEngine会将新代码部署到同一容器环境中。如:
gcloud app deploy --version=12345
在节点环境中,我想在我的部署脚本中使用package.json版本,例如:
{
"name": "MyApp",
"version": "1.3.4",
"scripts": {
"deploy":"gcloud app deploy --version=$npm_package_version"
}
NPM开箱即用,将配置中的值添加到以$ npm_package_为前缀的环境变量中,这样就可以了。
但是,AppEngine.
的版本名称不接受。
所以,我在找一个好办法能够把它传递到之前转换$ npm_package_version到AppEngine上认可的版本号gcloud
上的<scripts>
节点。
我找到了一个适用于我的简单解决方案。
在我下面 package.json
{
"name": "...",
"version": "1.0.1",
"scripts": {
"deploy": "GAE_VERSION=$(echo ${npm_package_version} | sed 's/\\./-/g') && gcloud app deploy --version $GAE_VERSION"
},
"dependencies": {...},
"devDependencies": {...}
}
实际上-这很简单。
npm_package_version
并更改sed
.
为-
(GAE可以使用连字符)GAE_VERSION
)gcloud
命令部署使用GAE_VERSION
变量。本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句