summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 605f99f02cadac8f57d43d78dcfd00a1ab38a6d3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#定义变量
variables:
  #定义克隆的路径  $CI_BUILDS_DIR 为 runners.builds_dir 设置的路径
  GIT_CLONE_PATH: $CI_BUILDS_DIR/gap_tsg_api$(date +%Y%m%d%H%I%s)

  #git ssh 地址
  GITLAB_SSH: [email protected]:yangyongqiang/yyq_test.git

  # 指定git获取代码的方式(clone,fetch,none)
  GIT_STRATEGY: clone
  #获取当前时间戳
  # DATE = $(date +%Y%m%d%H%I%s)

 #在作业之前执行的脚本或命令
before_script:
  - echo "环境部署操作"
  # 创建对应目录
  - DATE=$(date +%Y%m%d%H%I%s)
  - echo $DATE
  - GIT_CLONE_PATH=$GIT_CLONE_PATH/gap_tsg_api$DATE
  - echo $GIT_CLONE_PATH
  - mkdir -p $GIT_CLONE_PATH
  - cd $GIT_CLONE_PATH
  - pwd

#在作业之后执行的脚本或命令
after_script:
  # - echo "克隆完成"
  #配置目录的用户权限
  # - chown root $GIT_CLONE_PATH

# 全局定义流水线阶段(pipeline)
stages:
  - build

# develop_build:
#   stage: build
#   #需要执行的shell脚本
#   script:
#     - echo "开发服务器环境配置"
#     - if [ ! -d ".git" ]; then
#     - git clone -b master $GITLAB_SSH $GIT_CLONE_PATH --depth 1
#     - else
#     - git stash
#     - fi
#     - git pull
#   only:
#     # 指定分支
#     - develop
#   tags:
#     # 指定执行作业的runner
#     - develop

master_build:
  stage: build
  script:
    - DATE=$(date +%Y%m%d%H%I%s)
    - echo $DATE
    - echo "正式服务器环境配置"
    - if [ ! -d ".git" ]; then
    - git clone -b master $GITLAB_SSH $GIT_CLONE_PATH --depth 1
    - else
    - git stash
    - fi
    - git pull
    - echo $DATE
  only:
    - master
  tags:
    - master