Openshift Configmap : create and update command

jack picture jack · May 12, 2018 · Viewed 7.7k times · Source

I am writing sample program to deploy into Openshift with configmap. I have the following configmap yaml in the source code folder so when devops is setup, Jenkins should pick up this yaml and create/update the configs.

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

However, I could not find the command that would create/update if the config already exist (similar to kubectl apply command). Can you help with the correct command which would create the Resource if the job is run for the first time and update if otherwise.

I also want to create/update the Services,Routes from the yaml files in the src repository.

Thanks.

Answer

Keerthivarman picture Keerthivarman · May 14, 2018

you can use "oc apply" command to update the resources already exists.

Like below Example:

#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