node.js - 有没有办法通过节点 js 执行 gcloud 命令?
问题描述
所以,我有一个特定的 kubernetes 和 bash 命令链,我必须在 gcloud 上执行,我想知道是否有任何方法可以通过脚本自动执行这些命令,而无需实际打开并与之交互gcloud CLI。也许使用 npm 包,但我不知道是否有用于此用途的包。
我已经在本地安装了 gcloud cli,exec 和/或 spawn 命令应该工作吗?我尝试过,但最终失败了。
TL;DR:我只想知道如何使用代码自动化 gcloud 命令!最好在 node.js 上,但我也可以用另一种语言学习它。
解决方案
请提供更多关于您尝试自动化的细节,因为这将有助于指导建议。
gcloud
从另一个程序中自动化子流程(例如调用 bash 并运行它)有几个挑战。其中最重要的是,shell 脚本不提供非常强大的参数传递(并且不提供字符串以外的类型)并且错误处理很困难。
对于 NodeJS,您可以使用child_process
. 您需要确保子进程环境能够访问gcloud
二进制文件及其配置,并且它也可以进行身份验证。gcloud
由于您正在运行一个程序来与
虽然这些需要更多工作,但还有其他选择,但它们提供了更强大的解决方案:
- 使用明确的“基础设施即代码”工具(例如terraform)。Google Cloud为 Terraform提供模板
- 使用 Google Cloud SDK(解释了 2 种风格),它们涵盖了除 Kubernetes 本身(您可以管理 GKE 集群)和 NodeJS Kubernetes客户端库之外的所有内容
如果您在问题中添加更多详细信息,我可以在此答案中添加更多详细信息。
推荐阅读
- uwp - UWP 中的动画
- javascript - nodejs中分配的全局变量问题
- jquery - 如何在 JsonResult 中按降序对数据进行排序?
- angular - 角度中 sharedVar 中的模板问题
- python - Scrapy CrawlSpider 抓取页面时遵循什么顺序?
- tomcat - Tomcat 因 StringCache.findClosest NPE 崩溃
- ios - 'NSRangeException',原因:'*** -[NSBigMutableString characterAtIndex:]:索引 1258 越界;字符串长度 1176'
- php - php没有更新
- c# - 通过单击超链接(不是加号和减号)在网格视图中展开和折叠
- javascript - 通过检查两个元素从数组中获取重复值