mirror of
https://github.com/eosswedenorg/antelope-api-healthcheck
synced 2026-06-16 04:44:55 +02:00
Modify package scripts to use build/ directory to store tmp directory and output files.
This commit is contained in:
parent
6ffc6f66c5
commit
91bad080ee
4 changed files with 45 additions and 35 deletions
4
Makefile
4
Makefile
|
|
@ -28,10 +28,10 @@ info-file :
|
|||
PACKAGE_PROGRAM=\"build/$(PROGRAM_NAME)\" > scripts/info
|
||||
|
||||
package_deb: info-file
|
||||
./scripts/build.sh deb
|
||||
./scripts/build.sh deb $(realpath build)
|
||||
|
||||
package_freebsd: info-file
|
||||
./scripts/build.sh freebsd
|
||||
./scripts/build.sh freebsd $(realpath build)
|
||||
|
||||
clean:
|
||||
$(GO) clean
|
||||
|
|
|
|||
|
|
@ -1,5 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
############################
|
||||
# Read cli args #
|
||||
############################
|
||||
|
||||
if [ $# -lt 2 ]; then
|
||||
echo "$0 <pkg_type> <build_dir>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
PKG_TYPE=$1
|
||||
BUILD_DIR=$2
|
||||
|
||||
############################
|
||||
# Exported variables. #
|
||||
############################
|
||||
|
|
@ -18,14 +30,13 @@ export PACKAGE_ETCDIR=etc/${PACKAGE_NAME}
|
|||
export PACKAGE_LOGDIR=/var/log
|
||||
export PACKAGE_LOGFILE=${PACKAGE_LOGDIR}/${PACKAGE_NAME}.log
|
||||
export PACKAGE_SHAREDIR=${PACKAGE_PREFIX}/share/${PACKAGE_NAME}
|
||||
export PACKAGE_TMPDIR="pack"
|
||||
export PACKAGE_TMPDIR="${BUILD_DIR}/pkg_${PKG_TYPE}"
|
||||
export BUILD_DIR
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "$0 <pkg_type>"
|
||||
exit 1
|
||||
fi
|
||||
############################
|
||||
# Run script #
|
||||
############################
|
||||
|
||||
PKG_TYPE=$1
|
||||
PKG_SCRIPT="${BASE_DIR}/build_${PKG_TYPE}.sh"
|
||||
|
||||
# Check and call script
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
PACKAGE_TMPDIR="${PACKAGE_TMPDIR}/debian"
|
||||
PACKAGE_SYSUNITDIR=etc/systemd/system
|
||||
PACKAGE_RSYSLOGDIR=etc/rsyslog.d
|
||||
PACKAGE_LOGROTATEDIR=etc/logrotate.d
|
||||
|
|
@ -23,10 +22,10 @@ fi
|
|||
|
||||
PACKAGE_FULLNAME="${PACKAGE_NAME}_${PACKAGE_VERSION}-${RELEASE}-${DISTRIB_ID}-${DISTRIB_RELEASE}_amd64"
|
||||
|
||||
rm -fr ${BASE_DIR}/${PACKAGE_TMPDIR}
|
||||
rm -fr ${PACKAGE_TMPDIR}
|
||||
|
||||
# Create debian files.
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/DEBIAN
|
||||
mkdir -p ${PACKAGE_TMPDIR}/DEBIAN
|
||||
echo "Package: ${PACKAGE_NAME}
|
||||
Version: ${PACKAGE_VERSION}-${RELEASE}
|
||||
Section: introspection
|
||||
|
|
@ -34,44 +33,44 @@ Priority: optional
|
|||
Architecture: amd64
|
||||
Homepage: https://github.com/eosswedenorg/eos-api-healthcheck
|
||||
Maintainer: Henrik Hautakoski <henrik@eossweden.org>
|
||||
Description: ${PACKAGE_DESCRIPTION}" &> ${BASE_DIR}/${PACKAGE_TMPDIR}/DEBIAN/control
|
||||
Description: ${PACKAGE_DESCRIPTION}" &> ${PACKAGE_TMPDIR}/DEBIAN/control
|
||||
|
||||
cat ${BASE_DIR}/${PACKAGE_TMPDIR}/DEBIAN/control
|
||||
cat ${PACKAGE_TMPDIR}/DEBIAN/control
|
||||
|
||||
# Create service file
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_SYSUNITDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_SYSUNITDIR}
|
||||
cat ${TEMPLATE_DIR}/sysunit.service \
|
||||
| sed "s~{{ PACKAGE_NAME }}~${PACKAGE_NAME}~" \
|
||||
| sed "s~{{ DESCRIPTION }}~${PACKAGE_DESCRIPTION}~" \
|
||||
| sed "s~{{ PROGRAM }}~/${PACKAGE_PREFIX}/bin/${PACKAGE_NAME}~" \
|
||||
> ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_SYSUNITDIR}/${PACKAGE_NAME}.service
|
||||
> ${PACKAGE_TMPDIR}/${PACKAGE_SYSUNITDIR}/${PACKAGE_NAME}.service
|
||||
|
||||
# Create rsyslog file
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RSYSLOGDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_RSYSLOGDIR}
|
||||
cat ${TEMPLATE_DIR}/rsyslog.conf \
|
||||
| sed "s~{{ PROGRAM }}~${PACKAGE_NAME}~" \
|
||||
| sed "s~{{ LOG_FILE }}~${PACKAGE_LOGFILE}~" \
|
||||
> ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RSYSLOGDIR}/49-${PACKAGE_NAME}.conf
|
||||
> ${PACKAGE_TMPDIR}/${PACKAGE_RSYSLOGDIR}/49-${PACKAGE_NAME}.conf
|
||||
|
||||
# Create logrotate file
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_LOGROTATEDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_LOGROTATEDIR}
|
||||
cat ${TEMPLATE_DIR}/logrotate.conf \
|
||||
| sed "s~{{ LOG_FILE }}~${PACKAGE_LOGFILE}~" \
|
||||
> ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_LOGROTATEDIR}/${PACKAGE_NAME}.conf
|
||||
chmod 644 ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_LOGROTATEDIR}/${PACKAGE_NAME}.conf
|
||||
> ${PACKAGE_TMPDIR}/${PACKAGE_LOGROTATEDIR}/${PACKAGE_NAME}.conf
|
||||
chmod 644 ${PACKAGE_TMPDIR}/${PACKAGE_LOGROTATEDIR}/${PACKAGE_NAME}.conf
|
||||
|
||||
# Cerate config file
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_ETCDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_ETCDIR}
|
||||
cat ${TEMPLATE_DIR}/config \
|
||||
| sed "s~{{ PACKAGE_NAME }}~${PACKAGE_NAME}~" \
|
||||
> ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_ETCDIR}/env
|
||||
> ${PACKAGE_TMPDIR}/${PACKAGE_ETCDIR}/env
|
||||
|
||||
# Copy program
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}
|
||||
cp ${BASE_DIR}/../${PACKAGE_PROGRAM} ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}/${PACKAGE_NAME}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}
|
||||
cp ${BASE_DIR}/../${PACKAGE_PROGRAM} ${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}/${PACKAGE_NAME}
|
||||
|
||||
# Copy files.
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_SHAREDIR}
|
||||
cp ${BASE_DIR}/../README.md ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_SHAREDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_SHAREDIR}
|
||||
cp ${BASE_DIR}/../README.md ${PACKAGE_TMPDIR}/${PACKAGE_SHAREDIR}
|
||||
|
||||
fakeroot dpkg-deb --build ${BASE_DIR}/${PACKAGE_TMPDIR} ${BASE_DIR}/${PACKAGE_FULLNAME}.deb
|
||||
fakeroot dpkg-deb --build ${PACKAGE_TMPDIR} ${BUILD_DIR}/${PACKAGE_FULLNAME}.deb
|
||||
|
|
|
|||
|
|
@ -15,35 +15,35 @@ PID_FILE=/var/run/${PACKAGE_NAME}.pid
|
|||
# rc does not like "-" in the filename.
|
||||
RC_NAME=$(echo ${PACKAGE_NAME} | sed "s~-~_~g")
|
||||
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}
|
||||
cat ${TEMPLATE_DIR}/rc.conf \
|
||||
| sed "s~{{ RC_NAME }}~${RC_NAME}~g" \
|
||||
| sed "s~{{ PID_FILE }}~${PID_FILE}~g" \
|
||||
| sed "s~{{ LOG_FILE }}~${PACKAGE_LOGFILE}~" \
|
||||
| sed "s~{{ DESCRIPTION }}~${PACKAGE_DESCRIPTION}~" \
|
||||
| sed "s~{{ PROGRAM }}~/${PACKAGE_BINDIR}/${PACKAGE_NAME}~" \
|
||||
> ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}/${RC_NAME}
|
||||
> ${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}/${RC_NAME}
|
||||
|
||||
# Must be executable.
|
||||
chmod 755 ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}/${RC_NAME}
|
||||
chmod 755 ${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}/${RC_NAME}
|
||||
|
||||
############################
|
||||
# Create newsyslog config #
|
||||
############################
|
||||
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_NEWSYSLOGDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_NEWSYSLOGDIR}
|
||||
cat ${TEMPLATE_DIR}/newsyslog.conf \
|
||||
| sed "s~{{ LOG_FILE }}~${PACKAGE_LOGFILE}~" \
|
||||
| sed "s~{{ PID_FILE }}~${PID_FILE}~g" \
|
||||
> ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_NEWSYSLOGDIR}/${PACKAGE_NAME}.conf
|
||||
> ${PACKAGE_TMPDIR}/${PACKAGE_NEWSYSLOGDIR}/${PACKAGE_NAME}.conf
|
||||
|
||||
|
||||
############################
|
||||
# Copy binary #
|
||||
############################
|
||||
|
||||
mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}
|
||||
cp ${BASE_DIR}/../${PACKAGE_PROGRAM} ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}
|
||||
mkdir -p ${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}
|
||||
cp ${BASE_DIR}/../${PACKAGE_PROGRAM} ${PACKAGE_TMPDIR}/${PACKAGE_BINDIR}
|
||||
|
||||
############################
|
||||
# Create archive #
|
||||
|
|
@ -51,4 +51,4 @@ cp ${BASE_DIR}/../${PACKAGE_PROGRAM} ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BIN
|
|||
|
||||
TAR_FILENAME="${PACKAGE_NAME}-${PACKAGE_VERSION}-freebsd.tar.gz"
|
||||
|
||||
tar -C ${BASE_DIR}/${PACKAGE_TMPDIR} --owner root --group root -zcvf ${BASE_DIR}/${TAR_FILENAME} .
|
||||
tar -C ${PACKAGE_TMPDIR} --owner root --group root -zcvf ${BUILD_DIR}/${TAR_FILENAME} .
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue