@@ -3,15 +3,17 @@ name: Release
3
3
on : workflow_dispatch
4
4
5
5
env :
6
- FPM_OPTS : >-
7
- -s dir --prefix '/usr' -n kvrocks --verbose -a native
8
- --config-files /usr/share/kvrocks/kvrocks.conf
9
- --description 'A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol'
6
+ DEB_FPM_OPTS : >-
7
+ --prefix '/usr'
8
+ --config-files /usr/share/kvrocks/kvrocks.conf
9
+ COMMON_FPM_OPTS : >-
10
+ -s dir -n kvrocks --verbose -a native
11
+ --description 'A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol'
10
12
--url 'https://kvrocks.apache.org' --license 'Apache-2.0'
11
13
12
14
jobs :
13
15
release-packages :
14
- name : Release DEB Package
16
+ name : Release DEB & RPM Package
15
17
runs-on : ubuntu-20.04
16
18
steps :
17
19
33
35
cd kvrocks
34
36
./x.py build -DPORTABLE=1 -DCMAKE_BUILD_TYPE=Release -j $(nproc)
35
37
36
- - name : Make release directory
38
+ - name : Make DEB release directory
37
39
run : |
38
40
mkdir release
39
41
mkdir release/bin release/share
@@ -44,11 +46,30 @@ jobs:
44
46
cp -r kvrocks/LICENSE kvrocks/NOTICE kvrocks/licenses release/share/kvrocks
45
47
cp kvrocks/utils/systemd/kvrocks.service release/share/kvrocks
46
48
47
- - name : Package Deb
49
+ - name : Package DEB
48
50
49
51
with :
50
52
fpm_args : ' .'
51
- fpm_opts : ' -t deb -v ${{ env.VERSION }} --iteration ${{ env.ITERATION }} -C release ${{ env.FPM_OPTS }}'
53
+ fpm_opts : ' -t deb -v ${{ env.VERSION }} --iteration ${{ env.ITERATION }} -C release ${{ env.COMMON_FPM_OPTS }} ${{ env.DEB_FPM_OPTS }}'
54
+
55
+ - name : Make RPM release directory
56
+ run : |
57
+ mkdir -p rpm-release/etc/kvrocks
58
+ mkdir -p rpm-release/usr/bin
59
+ mkdir -p rpm-release/usr/lib/systemd/system
60
+ mkdir -p rpm-release/usr/share/licenses/kvrocks
61
+
62
+ cp kvrocks/build/kvrocks rpm-release/usr/bin/
63
+ cp kvrocks/build/kvrocks2redis rpm-release/usr/bin/
64
+ cp kvrocks/kvrocks.conf rpm-release/etc/kvrocks/
65
+ cp -r kvrocks/LICENSE kvrocks/NOTICE kvrocks/licenses/* rpm-release/usr/share/licenses/kvrocks/
66
+ cp kvrocks/utils/systemd/kvrocks.service rpm-release/usr/lib/systemd/system/
67
+
68
+ - name : Package RPM
69
+
70
+ with :
71
+ fpm_args : ' .'
72
+ fpm_opts : ' -t rpm -v ${{ env.VERSION }} --iteration ${{ env.ITERATION }} -C rpm-release ${{ env.COMMON_FPM_OPTS }}'
52
73
53
74
- name : Release
54
75
57
78
${{ env.VERSION }}-${{ env.ITERATION }}
58
79
files : |
59
80
./*.deb
81
+ ./*.rpm
60
82
env :
61
83
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments