В настоящее время я не могу развернуть этапы выполнения с помощью поставщика Kubernetes v1 на Spinnaker. По умолчанию при создании этапа я не могу выбрать учетную запись, поле выбора пусто.
Отредактировав указанный этап в формате JSON, заметил, что для cloudProvider по умолчанию установлено значение «titus», хотя у меня нет ничего, связанного с настроенным поставщиком Titus.
Изменив этот ключ на «kubernetes», интерфейс изменится и позволит мне выбрать учетную запись, пространство имен, изображение, команду и множество других настроек, которые я хочу использовать.
Затем, когда я пытаюсь выполнить этот конвейер, он немедленно завершается, выдавая следующую ошибку в spin-orca:
[handlers-18] c.n.s.orca.q.handler.RunTaskHandler: Ошибка выполнения
RunJobTask для конвейера [01CWF8DSF15F5EWY915YTKCYKD]
java.lang.NullPointerException: невозможно получить свойство imageDescription.
на нулевом объекте в
org.codehaus.groovy.runtime.NullObject.getProperty (NullObject.java:60)
в
org.codehaus.groovy.runtime.InvokerHelper.getProperty (InvokerHelper.java:174)
в
org.codehaus.groovy.runtime.callsite.NullCallSite.getProperty (NullCallSite.java:47)
Насколько я понимаю, массив контейнеров не передается в Orca, а отображается правильно построенным в редакторе JSON.
Это пример объекта JSON, сгенерированного интерфейсом:
{
"account": "example-account",
"annotations": {},
"application": "website",
"cloudProvider": "kubernetes",
"cloudProviderType": "kubernetes",
"cluster": {
"application": "website",
"capacity": {
"desired": 1,
"max": 1,
"min": 1
},
"env": {},
"resources": {
"cpu": 1,
"disk": 10000,
"gpu": 0,
"memory": 512,
"networkMbps": 128
},
"retries": 0,
"runtimeLimitSecs": 3600,
"securityGroups": []
},
"containers": [
{
"args": [],
"command": [],
"envFrom": [],
"envVars": [],
"imageDescription": {
"account": "gcr-docker-registry",
"fromTrigger": true,
"imageId": "gcr.io/example/example-backend (Tag resolved at runtime)",
"registry": "gcr.io",
"repository": "example/example-backend",
"tag": ""
},
"imagePullPolicy": "IFNOTPRESENT",
"limits": {
"cpu": null,
"memory": null
},
"livenessProbe": null,
"name": "example-web-backend",
"ports": [
{
"containerPort": 80,
"hostIp": null,
"hostPort": null,
"name": "http",
"protocol": "TCP"
}
],
"readinessProbe": null,
"requests": {
"cpu": null,
"memory": null
},
"volumeMounts": []
}
],
"deferredInitialization": true,
"dnsPolicy": "ClusterFirst",
"labels": {},
"name": "Run Job",
"namespace": "staging",
"nodeSelector": {},
"organization": "",
"refId": "3",
"registry": "",
"repository": "",
"requisiteStageRefIds": [],
"tag": "",
"type": "runJob",
"volumeSources": [],
"waitForCompletion": true
}
В настоящее время работает Spinnaker версии 1.10.5, установленная с использованием Halyard 1.12.0-20181024113436, в кластере Google Kubernetes Engine.