3
3
# Copyright (C) 2021 Jingli Chen (Wine93), NetEase Inc.
4
4
5
5
# ########################### GLOBAL VARIABLES
6
+ ` `
6
7
g_os=" debian11"
8
+ g_ci=0
9
+ g_docker_opts=(
10
+ " -v ${HOME} :${HOME} "
11
+ " --user $( id -u ${USER} ) :$( id -g ${USER} ) "
12
+ " -v /etc/passwd:/etc/passwd:ro"
13
+ " -v /etc/group:/etc/group:ro"
14
+ " -v /etc/sudoers.d/:/etc/sudoers.d/"
15
+ " -v /etc/sudoers:/etc/sudoers:ro"
16
+ " -v /etc/shadow:/etc/shadow:ro"
17
+ " -v /var/run/docker.sock:/var/run/docker.sock"
18
+ " -v /root/.docker:/root/.docker"
19
+ " --ulimit core=-1"
20
+ " --privileged"
21
+ )
7
22
8
23
# ########################### BASIC FUNCTIONS
9
24
msg () {
@@ -27,7 +42,7 @@ print_title() {
27
42
# ########################### FUNCTIONS
28
43
29
44
get_options () {
30
- local args=` getopt -o ldorh --long os: -n " $0 " -- " $@ " `
45
+ local args=` getopt -o ldorh --long os:,ci: -n " $0 " -- " $@ " `
31
46
eval set -- " ${args} "
32
47
while true
33
48
do
@@ -36,6 +51,10 @@ get_options() {
36
51
g_os=$2
37
52
shift 2
38
53
;;
54
+ -c|--ci)
55
+ g_ci=$2
56
+ shift 2
57
+ ;;
39
58
-h)
40
59
usage
41
60
exit 1
@@ -54,7 +73,16 @@ get_options() {
54
73
main () {
55
74
get_options " $@ "
56
75
57
- sudo docker run -it --rm -w $( pwd) -v $( pwd) :$( pwd) -v ${HOME} :${HOME} --user $( id -u ${USER} ) :$( id -g ${USER} ) -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v /etc/sudoers.d/:/etc/sudoers.d/ -v /etc/sudoers:/etc/sudoers:ro -v /etc/shadow:/etc/shadow:ro -v /var/run/docker.sock:/var/run/docker.sock -v /root/.docker:/root/.docker --ulimit core=-1 --privileged opencurvedocker/curve-base:build-$g_os bash
76
+ if [ $g_ci -eq 0 ]; then
77
+ g_docker_opts+=(" --rm" )
78
+ g_docker_opts+=(" -v $( pwd) :$( pwd) " )
79
+ g_docker_opts+=(" -w $( pwd) " )
80
+ else
81
+ g_docker_opts+=(" -v $( pwd) :/var/lib/jenkins/workspace/curve/curve_multijob/" )
82
+ g_docker_opts+=(" -w /var/lib/jenkins/workspace/curve/curve_multijob/" )
83
+ fi
84
+
85
+ sudo docker run -it ${g_docker_opts[@]} opencurvedocker/curve-base:build-$g_os bash
58
86
}
59
87
60
88
# ########################### MAIN()
0 commit comments