image: ebits/openshift-client stages: - deployToOpenShift variables: OPENSHIFT_SERVER: https://openshift.ext.cetic.be:8443 OPENSHIFT_DOMAIN: openshift.ext.cetic.be # Configure this variable in Secure Variables: # OPENSHIFT_TOKEN: my.openshift.token .deploy: &deploy before_script: - oc login "$OPENSHIFT_SERVER" --token="$OPENSHIFT_TOKEN" --insecure-skip-tls-verify # login with the service account - oc project "slides-openshift" # enter into our slides project on OpenShift script: - "oc get services $APP 2> /dev/null || oc new-app . --name=$APP" # create a new application from the image in the OpenShift registry - "oc start-build $APP --from-dir=. --follow || sleep 3s" # start a new build - "oc get routes $APP 2> /dev/null || oc expose service $APP --hostname=$APP_HOST" # expose our application develop: <<: *deploy stage: deployToOpenShift tags: - docker variables: APP: slides-openshift APP_HOST: demo-slides.$OPENSHIFT_DOMAIN environment: name: develop url: http://demo-slides.$OPENSHIFT_DOMAIN except: - master