-------gitlab-------
--安装:
rpm -i gitlab-ce-XXX.rpm
systemctl enable gitlab-runsvdir.service
systemctl start gitlab-runsvdir.service
gitlab-ctl start/status/stop
配置:
vim /etc/gitlab/gitlab.rb
external_url 'http://172.19.2.191'
汉化:
patch -d /opt/gitlab/embedded/service/gitlab-rails </root/gitlab/hanhua/v9.5.10-zh.diff
--gitlab-runner
1 安装gitlab-ci-multi-runner
2 注册
gitlab-ci-multi-runner register
#所需url和token从gitlab的配置--》Runners中获取
3 启用
gitlab Runners中,在指定的项目中启用
4 修改配置文件工作目录
]# cat /etc/gitlab-runner/config.toml
concurrent = 1
check_interval = 0
[[runners]]
name = "191"
url = "http://192.168.80.191/"
token = "xxxxxxxxxxxxxxxxxx"
executor = "shell"
builds_dir = "/home/gitlab-runner/builds"
cache_dir = "/home/gitlab-runner/cache"
[runners.cache]
5 在项目根目录下,vim .gitlab-ci.yml
6 推送,如:
git commit -am 'update gitlab-ci.yml'
git push origin v1.0
-- .gitlab-ci.yml
简单示例:
stages:
- build
zip:
stage: build
script:
- export relend=`bash /home/gitlab-runner/scripts/serial.sh ${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}`
- zip ${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}.${relend}.zip ./*
# $CI_PROJECT_NAME 项目名
# $CI_COMMIT_REF_NAME 分支名
# $CI_PIPELINE_ID 流水线ID
# 更多变量 https://docs.gitlab.com/ee/ci/variables/predefined_variables.html
- scp *.zip cscloud@172.17.1.1:/home/smbuser/tmp/MyProject/ #打包后推送位置需要配置gitlab-runner用户的免密登录
示例中序列号生成脚本serial.sh:
#! /bin/bash
version=$1
#版本名命名一个文件
file="/home/gitlab-runner/cache/${version}"
#每次build让序列号加1
if [ -f "${file}" ];then
i=`cat ${file}`
let i++
else
i=1
fi
echo $i >${file}
echo $i
-------git------
--初始化
git init
git add .
git checkout -b 'v2020.05.20' #一定要先创建分支,再commit,不然会出现master分支
git commit -m "Initial commit"
git remote add origin git@172.19.2.191:shell/sqlscripts.git
git push -u origin --all
--清空所有修改,重新拉取代码
git reset --hard
git pull