openshift 持續集成與部署 -- 構建部署流水線

Jenkins持續構建說得更直白點,就是各類項目的"自動化"編譯、打包、分發部署。j跟svn、git能無縫集成,也支持直接與知名源代碼託管網站,好比github、bitbucket直接集成。
簡單點說,Jenkins其實就是大的框架集!
如:自動化,性能,打包,部署,發佈&發佈結果自動化驗證,接口測試,單元測試node

1.建立項目和mybank應用git

oc login -u dev -p dev
oc new-project mybank-dev --display-name="MyBank DEV" --description=" mydev"
oc new-app openshift/wildfly-100-centos7~https://github.com/nichochen/mybank-demo-maven
oc status
oc get build -n mybank-dev
oc expose svc/mybank-demo-maven --hostname=mybank-dev.apps.example.com
curl http://mybank-dev.apps.example.com
oc new-project mybank-sit --display-name="MyBnak SIT" --description="mybank sit"
oc new-project mybank-release --display-name="MyBnak RELEASE" --description="mybank release"github

2.配置Jenkins的訪問權限
oc policy add-role-to-user edit system:serviceaccount:ci:jenkins -n mybank-dev
oc policy add-role-to-user edit system:serviceaccount:ci:jenkins -n mybank-sit
oc policy add-role-to-user edit system:serviceaccount:ci:jenkins -n mybank-release
oc policy add-role-to-user edit system:image-pullersystem:serviceaccount:mybank-sit:jenkins -n mybank-dev
oc policy add-role-to-user edit system:image-pullersystem:serviceaccount:mybank-release:jenkins -n mybank-devmongodb

3.應用測試環境的鏡像
oc tag mybank-dev/mybank-demo-maven:latest mybank-sit/mybank-demo-maven:latest
oc project mybank-sit
oc new-app -i mybank-demo-maven:latest
oc project mybank-release
oc tag mybank-sit/mybank-demo-maven:latest mybank-release/mybank-demo-maven:stage
oc new-app -i mybank-demo-maven:stage -n mybank-release
curl mybank-demo-maven.mybank-dev.svc.cluster.local:8080json

4.OpenShift流水線
vim /etc/profile
source /etc/profile
oc login -u system:admin
oc create -f https://raw.githubusercontent.com/openshift/origin/master/examples/image-streams/image-streams-centos7.json -n openshift
oc login -u dev -p dev
oc new-project pipeline-demo
oc new-app --template=jenkins-ephemeral --param=JENKINS_PASSWORD=welcome1
oc new-app --template=jenkins-ephemeral -e JENKINS_PASSWORD=welcome1
oc new-app -f https://raw.githubusercontent.com/openshift/origin/master/examples/jenkins/pipeline/samplepipeline.json
oc new-app -f https://raw.githubusercontent.com/openshift/origin/master/examples/jenkins/pipeline/samplepipeline.yaml
oc get pods
oc describe pod mongodb-1-9frq2
oc get pods
oc get bc
oc describe bc sample-pipeline
oc start-build sample-pipeline
oc get pods
oc get project
oc get pods -n pipeline-demo
oc describe pod nodejs-4z1t9
oc get pods -n pipeline-demovim

相關文章
相關標籤/搜索