-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild-napi.sh
41 lines (34 loc) · 1.52 KB
/
build-napi.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
#!/bin/bash
set -ex
mkdir -p artifacts
PACKAGE_VERSION=`head -1 node-addon-api/ubuntu/debian/changelog | cut -f 2 -d "(" | cut -f 1 -d "~"`
NAPI_VERSION=`echo ${PACKAGE_VERSION} | cut -f 1 -d "-"`
if [ ! -r node-addon-api/dist/node-addon-api_${NAPI_VERSION}.orig.tar.gz ]; then
wget https://github.com/nodejs/node-addon-api/archive/refs/tags/v${NAPI_VERSION}.tar.gz \
-O node-addon-api/dist/node-addon-api_${NAPI_VERSION}.orig.tar.gz
fi
if [ -z "${RELEASES}" ]; then
RELEASES="bionic focal jammy"
fi
for RELEASE in ${RELEASES}; do
rm -rf node-addon-api/ubuntu/${RELEASE}/node-addon-api-${NAPI_VERSION}
mkdir -p node-addon-api/ubuntu/${RELEASE}
tar -C node-addon-api/ubuntu/${RELEASE} \
-zxvf node-addon-api/dist/node-addon-api_${NAPI_VERSION}.orig.tar.gz
cp node-addon-api/dist/node-addon-api_${NAPI_VERSION}.orig.tar.gz \
node-addon-api/ubuntu/${RELEASE}
cp -a node-addon-api/ubuntu/debian \
node-addon-api/ubuntu/${RELEASE}/node-addon-api-${NAPI_VERSION}
(
cd node-addon-api/ubuntu/${RELEASE}/node-addon-api-${NAPI_VERSION}
sed -i s/UNIVERSAL/${RELEASE}/g debian/changelog
sed -i s/_NAPI_VERSION_/${NAPI_VERSION}/g debian/rules
debuild
debuild -sa -S
cd ..
if [ -n "${PUBLISH}" ]; then
dput --force ppa:mmomtchev/libnode node-addon-api_${PACKAGE_VERSION}~${RELEASE}_source.changes
dput --force ppa:mmomtchev/libnode-18.x node-addon-api_${PACKAGE_VERSION}~${RELEASE}_source.changes
fi
)
done