Skip to content

Commit 5ea5070

Browse files
committed
Use postrun script to properly link for certificate
1 parent 4f8f1fe commit 5ea5070

File tree

4 files changed

+48
-3
lines changed

4 files changed

+48
-3
lines changed

.github/workflows/release.yml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,11 @@ jobs:
9393
run: |
9494
# name is like assets manticore-executor_v0.5.1-221214-e089052_linux_amd64:
9595
tar -xzf *.tar.gz
96+
97+
# Setup openssl workaround
98+
mkdir -p .debpkg/DEBIAN
99+
cp -p packages/postrun .debpkg/DEBIAN/postinst
100+
96101
mkdir -p .debpkg/usr/bin
97102
mkdir -p .rpmpkg/usr/bin
98103
mkdir -p .rpmpkg/usr/share/
@@ -135,6 +140,7 @@ jobs:
135140
sed -i 's/{{ MAINTAINER }}/${{ env.MAINTAINER }}/g' $spec_file
136141
sed -i 's/{{ DESC }}/${{ env.DESC }}/g' $spec_file
137142
sed -i 's/{{ ARCH }}/x86_64/g' $spec_file
143+
# sed -i "s@{{ POSTRUN }}@$(<packages/postrun)@g" $spec_file
138144
139145
tar czf tmp.tar.gz "${{ env.APP_NAME }}/"
140146
mkdir -p "$RPMBUILD_SOURCE_DIR"
@@ -187,6 +193,11 @@ jobs:
187193
run: |
188194
# name is like assets manticore-executor_v0.5.1-221214-e089052_linux_arm64:
189195
tar -xzf *.tar.gz
196+
197+
# Setup openssl workaround
198+
mkdir -p .debpkg/DEBIAN
199+
cp -p packages/postrun .debpkg/DEBIAN/postinst
200+
190201
mkdir -p .debpkg/usr/bin
191202
mkdir -p .rpmpkg/usr/bin
192203
mkdir -p .rpmpkg/usr/share
@@ -221,7 +232,7 @@ jobs:
221232
distro: centos7
222233
githubToken: ${{ github.token }}
223234
setup: |
224-
mkdir -p "${PWD}/artifacts"
235+
mkdir -p "${PWD}/artifacts/packages"
225236
cp -rp .rpmpkg "${PWD}/artifacts/.rpmpkg"
226237
dockerRunArgs: |
227238
--volume "${PWD}/artifacts:/artifacts"
@@ -245,6 +256,8 @@ jobs:
245256
sed -i 's/{{ MAINTAINER }}/${{ env.MAINTAINER }}/g' $spec_file
246257
sed -i 's/{{ DESC }}/${{ env.DESC }}/g' $spec_file
247258
sed -i 's/{{ ARCH }}/aarch64/g' $spec_file
259+
# sed -i "s@{{ POSTRUN }}@$(<packages/postrun)@g" $spec_file
260+
248261
249262
tar czf tmp.tar.gz "${{ env.APP_NAME }}/"
250263
mkdir -p "$RPMBUILD_SOURCE_DIR"
@@ -294,7 +307,7 @@ jobs:
294307
arch: 'all'
295308
desc: '${{ env.EXTRA_DESC }}'
296309
license: 'Apache-2.0'
297-
depends: '${{ env.APP_NAME }} (>= ${{ steps.vars.outputs.app_version }}), ${{ env.COLUMNAR_NAME }} (>= ${{ env. COLUMNAR_VERSION }})'
310+
depends: '${{ env.APP_NAME }} (>= ${{ steps.vars.outputs.app_version }}), ${{ env.COLUMNAR_NAME }} (>= ${{ env. COLUMNAR_VERSION }}), ca-certificates'
298311
- name: Build RPM packages
299312
run: |
300313
sudo apt-get update -y -q

packages/extra.spec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ Packager: {{ MAINTAINER }}
88
Vendor: {{ MAINTAINER }}
99
Requires: {{ EXECUTOR_NAME }} >= {{ EXECUTOR_VERSION }}
1010
Requires: {{ COLUMNAR_NAME }} >= {{ COLUMNAR_VERSION }}
11+
Requires: ca-certificates
1112

1213
Source: tmp.tar.gz
1314
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot

packages/main.spec

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,22 @@ rm -rf %{buildroot}
3232

3333
%post
3434

35-
%postun
35+
%postrun
36+
if [ -f /etc/ssl/cert.pem ]; then
37+
exit 0
38+
fi
39+
40+
for cert in "/etc/ssl/certs/ca-certificates.crt" \
41+
"/etc/pki/tls/certs/ca-bundle.crt" \
42+
"/etc/ssl/ca-bundle.pem" \
43+
"/etc/pki/tls/cacert.pem" \
44+
"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"; do
45+
if [ -f "$cert" ]; then
46+
ln -s "$cert" /etc/ssl/cert.pem
47+
break
48+
fi
49+
done
50+
3651

3752
%files
3853
%doc usr/share/{{ NAME }}-README.md

packages/postrun

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# This script used in postrun and postinst for packages
2+
# Used only in deb but we copy paste this file for main.spec (rpm)
3+
if [ -f /etc/ssl/cert.pem ]; then
4+
exit 0
5+
fi
6+
7+
for cert in "/etc/ssl/certs/ca-certificates.crt" \
8+
"/etc/pki/tls/certs/ca-bundle.crt" \
9+
"/etc/ssl/ca-bundle.pem" \
10+
"/etc/pki/tls/cacert.pem" \
11+
"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"; do
12+
if [ -f "$cert" ]; then
13+
ln -s "$cert" /etc/ssl/cert.pem
14+
break
15+
fi
16+
done

0 commit comments

Comments
 (0)