Openshift Configmap: команда создания и обновления

Я пишу пример программы для развертывания в Openshift с configmap. У меня есть следующий configmap yaml в папке с исходным кодом, поэтому, когда devops настроен, Jenkins должен взять этот yaml и создать / обновить конфигурации.

 apiVersion: v1
 kind: ConfigMap
 metadata:
  name: sampleapp
 data:  
  username: usernameTest
  password: passwordTest

Тем не менее, я не смог найти команду, которая создаст / обновит, если конфиг уже существует (аналог команды kubectl apply). Можете ли вы помочь с правильной командой, которая создаст Ресурс, если задание запускается в первый раз, и обновит, если это не так.

Я также хочу создать / обновить Сервисы, Маршруты из файлов yaml в репозитории src.

Благодарю.

1 ответ

Вы можете использовать команду "oc apply" для обновления уже существующих ресурсов.

Как ниже пример:

#oc process -f openjdk-basic-template.yml  -p APPLICATION_NAME=spring-rest -p SOURCE_REPOSITORY_URL=https://github.com/rest.git -p CONTEXT_DIR='' | oc apply -f-

service "spring-rest" configured
route "spring-rest" created
imagestream "spring-rest" configured
buildconfig "spring-rest" configured
deploymentconfig "spring-rest" configured

If you have configmap in yaml file or you store in some place you can do replace

oc replace --force -f config-map.yaml >> This will update the existing configmap (it actually deletes and creates a new one)

after this - i did oc set env --from=configmap/example-cm dc/example-dc

Другие вопросы по тегам