Merge pull request #6 from delta523/master
Auto-configure reprepro-distributions from environment variables (#5)
This commit is contained in:
commit
c9b0d21d95
5 changed files with 60 additions and 5 deletions
|
@ -27,6 +27,11 @@ RUN chmod 755 /usr/local/sbin/reprepro-import
|
||||||
RUN mkdir -p /var/lib/reprepro/conf
|
RUN mkdir -p /var/lib/reprepro/conf
|
||||||
ADD configs/reprepro-distributions /var/lib/reprepro/conf/distributions
|
ADD configs/reprepro-distributions /var/lib/reprepro/conf/distributions
|
||||||
|
|
||||||
|
# reprepro config generator
|
||||||
|
ADD scripts/create-distros.sh /usr/local/sbin/create-distros
|
||||||
|
RUN chmod 755 /usr/local/sbin/create-distros
|
||||||
|
ADD configs/reprepro-distributions.temp /etc/reprepro-distributions.temp
|
||||||
|
|
||||||
# Configure nginx
|
# Configure nginx
|
||||||
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
|
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
|
||||||
RUN rm -f /etc/nginx/sites-enabled/default
|
RUN rm -f /etc/nginx/sites-enabled/default
|
||||||
|
|
8
configs/reprepro-distributions.temp
Normal file
8
configs/reprepro-distributions.temp
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
Origin: {{EASYREPO_ORIGIN}}
|
||||||
|
Label: {{EASYREPO_LABEL}}
|
||||||
|
Suite: {{EASYREPO_SUITE}}
|
||||||
|
Codename: {{EASYREPO_CODENAME}}
|
||||||
|
Version: 3.1
|
||||||
|
Architectures: {{EASYREPO_ARCHITECTURES}}
|
||||||
|
Components: main non-free contrib
|
||||||
|
Description: {{EASYREPO_DESCRIPTION}}
|
32
scripts/create-distros.sh
Normal file
32
scripts/create-distros.sh
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
REPREPRO_DIST="${REPREPRO_OVERRIDE:-/var/lib/reprepro/conf/distributions}"
|
||||||
|
|
||||||
|
# path to template file
|
||||||
|
REPREPRO_DIST_TEMP="/etc/reprepro-distributions.temp"
|
||||||
|
|
||||||
|
# Default results to configs/reprepro-distributions
|
||||||
|
EASYREPO_SUITES="${EASYREPO_SUITES:-unstable,sid/stable,buster/testing,bullseye}"
|
||||||
|
EASYREPO_ORIGIN="${EASYREPO_ORIGIN:-Test Origin}"
|
||||||
|
EASYREPO_LABEL="${EASYREPO_LABEL:-Easy Debian Repository}"
|
||||||
|
EASYREPO_ARCHITECTURES="${EASYREPO_ARCHITECTURES:-i386 amd64 powerpc source}"
|
||||||
|
EASYREPO_DESCRIPTION="${EASYREPO_LABEL:-Easy Debian Repository}"
|
||||||
|
|
||||||
|
# Empty the file
|
||||||
|
echo -n > $REPREPRO_DIST
|
||||||
|
|
||||||
|
# Slash delimited
|
||||||
|
for i in $(echo ${EASYREPO_SUITES} | sed "s/\// /g")
|
||||||
|
do
|
||||||
|
g=($(echo $i | sed "s/\,/ /g"))
|
||||||
|
sed -e "s/{{EASYREPO_ORIGIN}}/${EASYREPO_ORIGIN}/" \
|
||||||
|
-e "s/{{EASYREPO_LABEL}}/${EASYREPO_LABEL}/" \
|
||||||
|
-e "s/{{EASYREPO_SUITE}}/${g[0]}/" \
|
||||||
|
-e "s/{{EASYREPO_CODENAME}}/${g[1]}/" \
|
||||||
|
-e "s/{{EASYREPO_ARCHITECTURES}}/${EASYREPO_ARCHITECTURES}/" \
|
||||||
|
-e "s/{{EASYREPO_DESCRIPTION}}/${EASYREPO_DESCRIPTION}/" $REPREPRO_DIST_TEMP >> $REPREPRO_DIST
|
||||||
|
echo "" >> $REPREPRO_DIST
|
||||||
|
done
|
||||||
|
|
||||||
|
# Remove last line
|
||||||
|
sed -i '$ d' $REPREPRO_DIST
|
|
@ -1,4 +1,4 @@
|
||||||
#!/bin/sh
|
#!/bin/bash
|
||||||
|
|
||||||
BASEDIR=/var/lib/reprepro
|
BASEDIR=/var/lib/reprepro
|
||||||
INCOMING=/docker/incoming
|
INCOMING=/docker/incoming
|
||||||
|
@ -11,10 +11,17 @@ cd $INCOMING
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
#set -x
|
#set -x
|
||||||
reprepro -V --basedir $BASEDIR --outdir $OUTDIR createsymlinks stable
|
|
||||||
reprepro -V --basedir $BASEDIR --outdir $OUTDIR createsymlinks jessie
|
# Check for EASYREPO_SUITES to create symlinks
|
||||||
reprepro -V --basedir $BASEDIR --outdir $OUTDIR createsymlinks unstable
|
EASYREPO_SUITES="${EASYREPO_SUITES:-unstable,sid/stable,buster/testing,bullseye}"
|
||||||
reprepro -V --basedir $BASEDIR --outdir $OUTDIR createsymlinks sid
|
|
||||||
|
for k in $(echo ${EASYREPO_SUITES} | sed "s/\// /g")
|
||||||
|
do
|
||||||
|
g=($(echo $k | sed "s/\,/ /g"))
|
||||||
|
reprepro -V --basedir $BASEDIR --outdir $OUTDIR createsymlinks ${g[0]}
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# See if we found any new packages
|
# See if we found any new packages
|
||||||
#
|
#
|
||||||
|
|
|
@ -30,6 +30,9 @@ crontab <<EOF
|
||||||
* * * * * /usr/local/sbin/reprepro-import >> /var/log/reprepro.log
|
* * * * * /usr/local/sbin/reprepro-import >> /var/log/reprepro.log
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
# run distro config generator
|
||||||
|
/usr/local/sbin/create-distros
|
||||||
|
|
||||||
# run import once, to create the right directory structure
|
# run import once, to create the right directory structure
|
||||||
/usr/local/sbin/reprepro-import
|
/usr/local/sbin/reprepro-import
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue