2

我们正在评估 Spinnaker 的采用情况,并想了解哪些 API(如果有)可用于创建 Spinnaker 资源?如果我想在 Spinnaker 中编写/模板化创建我的应用程序,那么最好的方法是什么?

目前我所看到的最好的脚本是在 Spinnaker(例如 CloudFormation)之外创建您的基础设施,从您的 AWS 帐户加载它,然后保留一个可以复制/粘贴到 JSON 中的管道 JSON 文件库用于将在后面添加的管道的表单。

4

2 回答 2

5

您可以通过 Spinnaker UI 管理的所有项目(服务器组、负载均衡器、安全组、应用程序、项目、管道)都可以通过 Spinnaker 的 REST API 编写脚本。目前缺少 API 文档(但即将推出,敬请期待)。现在,您可以通过开发人员工具查看 UI 与 API 的网络交互,以获取示例有效负载。

对于其他更静态的云基础设施(VPC、子网等),我们并没有真正通过 Spinnaker 的 API 了解情况,建议您查看 Terraform 或 CloudFormation

于 2015-12-23T00:15:38.303 回答
0

该文档似乎已过时。我在使用管道模板创建管道时遇到了类似的问题。它使用 Deck(UI) 运行良好,因为https://www.spinnaker.io/reference/pipeline/templates/#pipeline-json中描述的管道 json不起作用。

在使用 UI 从管道模板创建管道后,我分析了有效负载并意识到文档缺少有效负载中的某些字段。下面给出的有效载荷对我来说很好。我也建议您通过浏览器中的 UI 分析有效负载并将其用作参考。

{
  "schema": "v2",
  "template": {
    "artifactAccount": "front50ArtifactCredentials",
    "reference": "spinnaker://k8s-bake-approve-deploy-s3-23-oct:latest",
    "type": "front50/pipelineTemplate"
  },
  "application": "v2poc",
  "name": "test-6",
  "triggers": [],
  "type": "templatedPipeline",
  "stages": [],
  "variables": {
    "namespace": "default",
    "docker_registry": "docker.io",
    "k8s_account": "my-k8-account",
    "helm_package_s3_object_path": "s3://spin-helm/node-1.0.0.tgz",
    "helm_override_file_s3_object_path": "s3://spin-helm/values.yaml",
    "docker_registry_org": "athakur",
    "docker_repository": "athakur/node",
    "hal_s3_account": "my-s3-account",
    "hal_docker_registry_account": "my-docker-registry",
    "docker_image_tag": "0.1.0",
    "spinnaker_application": "v2poc"
  },
  "exclude": [],
  "parameterConfig": [],
  "notifications": []
}
于 2019-10-23T06:33:25.470 回答