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
相关文章
|
6月前
|
开发工具 git
Gitlab配置mirrorRepository 镜像仓库
Gitlab配置mirrorRepository 镜像仓库 🔊业务场景📆1.在a项目中点击settings-》repository-》mirroring repositories📌tips🧣最后的话
192 0
|
7月前
|
Shell 网络安全 开发工具
手把手教你配置Git客户端上传代码至Gitlab仓库
手把手教你配置Git客户端上传代码至Gitlab仓库
146 1
手把手教你配置Git客户端上传代码至Gitlab仓库
|
9月前
|
JSON 网络安全 数据安全/隐私保护
gitlab--安装和配置
gitlab--安装和配置
|
7月前
|
安全
Gitlab配置webhook报错:Urlis blocked: Requests to the local netwo..解决
Gitlab配置webhook报错:Urlis blocked: Requests to the local netwo..解决
382 0
|
8月前
|
Linux 开发工具 数据安全/隐私保护
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。 Gitlab是被广泛使用的基于git的开源代码管理平台, 基于Ruby on Rails构建, 主要针对软件开发过程中产生的代码和文档进行管理, Gitlab主要针对group和project两个维度进行代码和文档管理, 其中group是群组, project是工程项目, 一个group可以管理多个project, 可以理解为一个群组中有多项软件开发任务, 而一个project中可能包含多个branch, 意为每个项目中有多个分支, 分支间相互独立, 不同分支可以进行归并。 下面我们
|
5月前
|
存储 网络安全 数据安全/隐私保护
docker 安装gitlab,配置邮件,备份全流程
docker 安装gitlab,配置邮件,备份全流程
147 0
|
2天前
|
jenkins 持续交付 API
上传gitlab代码后jenkins自动进行发布的配置
上传gitlab代码后jenkins自动进行发布的配置
|
5天前
|
存储 JSON Java
gitlab配置hook,commit message的时候校验提交的信息
gitlab配置hook,commit message的时候校验提交的信息
21 0
|
23天前
|
Linux 网络安全 开发工具
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
|
2月前
|
Devops 开发工具 数据安全/隐私保护
Docker Swarm总结+CI/CD Devops、gitlab、sonarqube以及harbor的安装集成配置(3/5)
Docker Swarm总结+CI/CD Devops、gitlab、sonarqube以及harbor的安装集成配置(3/5)
78 0

相关实验场景

更多