forked from kubeovn/kube-ovn
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmodule.sh
executable file
·78 lines (73 loc) · 1.66 KB
/
module.sh
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
71
72
73
74
75
76
77
#!/bin/bash
set -euo pipefail
rm -f /tmp/kube_ovn_fastpath.ko
centosins(){
sys="$1"; shift
way="$1"; shift
case $sys in
centos)
case $way in
install)
yum install -y kernel-devel-$(uname -r)
make all
cp ./kube_ovn_fastpath.ko /tmp/kube_ovn_fastpath.ko
;;
local-install)
# shellcheck disable=SC2145
rpm -i /tmp/"$@"
make all
cp ./kube_ovn_fastpath.ko /tmp/kube_ovn_fastpath.ko
;;
*)
echo "unknown action $way"
esac
;;
*)
echo "unknown system $sys "
esac
}
sttins(){
sys="$1"; shift
way="$1"; shift
case $sys in
stt)
case $way in
install)
yum install -y kernel-devel-$(uname -r)
cd /ovs/
sed -i 's/INT_MAX/NF_IP_PRI_FIRST/g' ./datapath/linux/compat/stt.c
./boot.sh
./configure --with-linux=/lib/modules/$(uname -r)/build CFLAGS="-g -O2 -mpopcnt -msse4.2"
make rpm-fedora-kmod
cp ./rpm/rpmbuild/RPMS/x86_64/* /tmp/
;;
local-install)
# shellcheck disable=SC2145
rpm -i /tmp/"$@"
cd /ovs/
sed -i 's/INT_MAX/NF_IP_PRI_FIRST/g' ./datapath/linux/compat/stt.c
./boot.sh
./configure --with-linux=/lib/modules/$(uname -r)/build CFLAGS="-g -O2 -mpopcnt -msse4.2"
make rpm-fedora-kmod
cp ./rpm/rpmbuild/RPMS/x86_64/* /tmp/
;;
*)
echo "unknown action $way"
esac
;;
*)
echo "unknown command $sys "
esac
}
subcommand="$1"; shift
case $subcommand in
centos)
centosins "$subcommand" "$@"
;;
stt)
sttins "$subcommand" "$@"
;;
*)
echo "unknown subcommand $subcommand"
;;
esac