子嘉的博客 子嘉的博客
首页
bic-bic
技术
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

高子嘉

没有比脚更长的路,没有比人更高的山
首页
bic-bic
技术
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 技术文档

  • GitHub技巧

  • 博客搭建

  • 服务端

  • distributed

  • golang

    • gomod
    • compile
    • code_snippet

    • protobuf
    • 单元测试
    • script

      • auto_build
      • pre-commit
  • db

  • docker

  • linux

  • 技术
  • golang
  • script
子嘉
2022-06-05

auto_build

#!/bin/bash

BRANCH_NAME=$1
BRANCH_DIR=${BRANCH_NAME//\//_}
# 在以分支名命名的目录下编译分支
if [ ! -d "$BRANCH_DIR" ]; then
  mkdir "$BRANCH_DIR"
fi
cd $BRANCH_DIR

WORKDIR=`pwd`
LOGDIR=`pwd`/logs
if [ ! -d "$LOGDIR" ]; then
  mkdir "$LOGDIR"
fi
STEP=1
ONE=1

function Log(){
    echo `date '+%Y-%m-%d %H:%M:%S'` "[$STEP] $1"
    STEP=`expr $STEP + $ONE`
}

# 清空目录并拉取tygit代码
rm -rf ./ludo-srv
rm -rf ./ludo-protobuf
Log "git clone"
git clone https://tygit.touch4.me/rich-joy/ludo-srv.git > ${LOGDIR}/git.log
git clone https://tygit.touch4.me/rich-joy/ludo-protobuf.git >> ${LOGDIR}/git.log

cd ludo-srv

# 切换分支
Log "git checkout $BRANCH_NAME"
git checkout $BRANCH_NAME > "$LOGDIR/checkout.log"

# 更新包依赖
Log "go mod tidy"
go mod tidy > "$LOGDIR/gomod.log"

# 编译代码
Log "build"
echo "replace tygit.touch4.me/rich-joy/ludo-protobuf => ${WORKDIR}/ludo-protobuf" >> go.mod
sh build.sh > "$LOGDIR/build.log"

# 运行测试
# 测试有问题,测试需要先启动服务
Log "run test"
sh run_test.sh > "$LOGDIR/test_result.log"

echo ""
#echo "test fail grep"
grep FAIL "$LOGDIR/test_result.log"
echo ""
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
编辑 (opens new window)
上次更新: 2023/02/24, 10:34:03
单元测试
pre-commit

← 单元测试 pre-commit→

最近更新
01
mongodb restore
03-06
02
pytesseract
02-28
03
consul
02-24
更多文章>
Theme by Vdoing | Copyright © 2022-2025 子嘉 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式