Gitlab的.gitlab-ci.yml配置

简介:

假如有 开发 测试 预发 生产1 生产2服务器

.gitlab-ci.yml
stages:
  - deploy
  - test
  - release
  - master
构建开发环境:
  stage: deploy
  script:
    - /data-ci/eatjoys-front.sh
  only:
    - develop
  tags:
    - my-erp
构建测试环境:
  stage: test
  script:
    - /data-ci/eatjoys-front.sh
  only:
    - test
  tags:
    - my-erp
构建预发环境:
  stage: release
  script:
    - /data-ci/eatjoys-front.sh
  only:
    - release
  tags:
    - my-erp
构建生产环境:
  stage: master
  script:
    - /data-ci/eatjoys-front.sh
  only:
    - master
  tags:
    - my-erp

1

[root@sannian data-ci]# vim eatjoys-front.sh
#!/bin/sh

#env

if [ $CI_BUILD_REF_SLUG = 'develop' ]; then
   projectdir="/work/front/${CI_PROJECT_NAME}"
    echo
    echo 
    echo "-----------------------------------------------------------------------"
    echo "发布 主机: $i  项目: $CI_PROJECT_NAME "
    cd $CI_PROJECT_DIR
#    yarn
#        npm run
        echo scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:${projectdir}/
        scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:${projectdir}/
    if [ $? = 0 ]; then
            echo "mvn 构建成功...."
    else
            echo "mvn 构建失败...."
                 exit 100

    fi
    echo
    echo
fi
if [ $CI_BUILD_REF_SLUG = 'test' ]; then
   projectdir="/work/front/${CI_PROJECT_NAME}"
    echo
    echo 
    echo "-----------------------------------------------------------------------"
    echo "发布 主机: $i  项目: $CI_PROJECT_NAME "
    cd $CI_PROJECT_DIR
#    yarn
#        npm run
        echo scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:${projectdir}/
        scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:/work/front/my-erp-test/
    if [ $? = 0 ]; then
            echo "mvn 构建成功...."
    else
            echo "mvn 构建失败...."
                 exit 100

    fi
    echo
    echo
fi
if [ $CI_BUILD_REF_SLUG = 'release' ]; then
   projectdir="/work/front/${CI_PROJECT_NAME}"
    echo
    echo 
    echo "-----------------------------------------------------------------------"
    echo "发布 主机: $i  项目: $CI_PROJECT_NAME "
    cd $CI_PROJECT_DIR
#    yarn
#        npm run
        echo scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:/work/front/my-erp-release/
        scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:/work/front/my-erp-release/
    if [ $? = 0 ]; then
            echo "mvn 构建成功...."
    else
            echo "mvn 构建失败...."
                 exit 100

    fi
    echo
    echo
fi
if [ $CI_BUILD_REF_SLUG = 'master' ]; then
   projectdir="/work/front/${CI_PROJECT_NAME}"
    echo
    echo 
    echo "-----------------------------------------------------------------------"
    echo "发布 主机: $i  项目: $CI_PROJECT_NAME "
    cd $CI_PROJECT_DIR
#    yarn
#        npm run
        echo scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:${projectdir}/
        scp -r $CI_PROJECT_DIR/*  root@47.99.89.247:/work/front/my-erp-master/
    if [ $? = 0 ]; then
            echo "mvn 构建成功...."
    else
            echo "mvn 构建失败...."
                 exit 100

    fi
    echo
    echo
fi
相关文章
|
Shell 网络安全 开发工具
手把手教你配置Git客户端上传代码至Gitlab仓库
手把手教你配置Git客户端上传代码至Gitlab仓库
263 1
手把手教你配置Git客户端上传代码至Gitlab仓库
|
开发工具 git
Gitlab配置mirrorRepository 镜像仓库
Gitlab配置mirrorRepository 镜像仓库 🔊业务场景📆1.在a项目中点击settings-》repository-》mirroring repositories📌tips🧣最后的话
377 0
|
安全
Gitlab配置webhook报错:Urlis blocked: Requests to the local netwo..解决
Gitlab配置webhook报错:Urlis blocked: Requests to the local netwo..解决
654 0
|
6月前
|
存储 网络安全 数据安全/隐私保护
docker 安装gitlab,配置邮件,备份全流程
docker 安装gitlab,配置邮件,备份全流程
243 0
|
3月前
|
jenkins Devops Java
jenkins学习笔记之十:配置Gitlab提交流水线
jenkins学习笔记之十:配置Gitlab提交流水线
|
3月前
|
Ubuntu 安全 网络安全
在Ubuntu 16.04上安装和配置GitLab的方法
在Ubuntu 16.04上安装和配置GitLab的方法
72 0
|
3月前
|
存储 Ubuntu 安全
在Ubuntu 18.04上安装和配置GitLab的方法
在Ubuntu 18.04上安装和配置GitLab的方法
64 0
|
3月前
|
数据采集 数据处理 持续交付
CI/CD笔记.Gitlab系列.`gitlab-ci.yml`中的头部关键字
CI/CD笔记.Gitlab系列.`gitlab-ci.yml`中的头部关键字
33 0
|
3月前
|
开发工具 git
[git]记配置本地git到gitlab并推送
[git]记配置本地git到gitlab并推送
|
5月前
|
jenkins Java 持续交付
蓝易云 - 从零开始配置Jenkins与GitLab集成:一步步实现持续集成
以上就是从零开始配置Jenkins与GitLab集成的步骤,希望对你有所帮助。
108 2

相关实验场景

更多