极狐GitLab x 燧原科技|安全+同频+高效,「企业级软件架构」加速进化「中国芯」
2023-06-28 16:21
pipeline { agent any stages { stage('Source Code Checkout') { steps { checkout scmGit( branches: [[name: '*/main']], extensions: [], userRemoteConfigs: [ [ credentialsId: 'JiHu-GitLab-SSH-Key', url: 'git@jihulab.com:devops-summit-workshop/dev-sec-ops.git' ] ] ) } } stage('build') { steps{ withCredentials([usernamePassword(credentialsId: 'Docker-Hub-Cred', passwordVariable: 'password', usernameVariable: 'username')]) { sh "docker login docker.io -u $username -p $password" sh "docker build -t dllhb/node:1.0 ." sh "docker push dllhb/node:1.0" } } } stage('test') { steps { sh "Begin to do test" sh ''' yarn install --cache-folder .yarn yarn test ''' } } stage('deploy') { steps { sh "Begin to deploy" sh "docker run --rm -p 3000:3000 dllhb/node:1.0" } } } }
stages: - build - test - deploy build: stage: build image: docker:20.10.7-dind tags: - chatgpt variables: DOCKER_DRIVER: overlay2 before_script: - echo "$CI_REGISTRY_PASSWORD" | docker login $CI_REGISTRY -u "$CI_REGISTRY_USER" --password-stdin script: - docker build -t $CI_REGISTRY_IMAGE/node:1.0 . - docker push $CI_REGISTRY_IMAGE/node:1.0 test: stage: test image: node:latest script: - yarn install --cache-folder .yarn - yarn test deploy: stage: deploy image: docker:20.10.7-dind script: - docker run --rm -p 3000:3000 $CI_REGISTRY_IMAGE/node:1.0