mirror of https://github.com/dirtbags/moth.git
Remove legacy cruft, back to original name for moth package
This commit is contained in:
parent
5abdfa09e0
commit
910e6b22a7
|
@ -1,10 +0,0 @@
|
||||||
FROM alpine
|
|
||||||
|
|
||||||
RUN apk --no-cache add python3 py3-pillow
|
|
||||||
|
|
||||||
COPY tools/package-puzzles.py /pp/
|
|
||||||
COPY tools/moth.py /pp/
|
|
||||||
COPY tools/mistune.py /pp/
|
|
||||||
COPY tools/answer_words.txt /pp/
|
|
||||||
|
|
||||||
ENTRYPOINT ["python3", "/pp/package-puzzles.py"]
|
|
|
@ -36,7 +36,7 @@ Click the `[mb]` link by a puzzle category to compile and download a mothball th
|
||||||
Running a Production Server
|
Running a Production Server
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
docker run --rm -it -p 8080:8080 -v /path/to/moth:/moth dirtbags/mothd
|
docker run --rm -it -p 8080:8080 -v /path/to/moth:/moth dirtbags/moth
|
||||||
|
|
||||||
You can be more fine-grained about directories, if you like.
|
You can be more fine-grained about directories, if you like.
|
||||||
Inside the container, you need the following paths:
|
Inside the container, you need the following paths:
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
version=$(date +%Y%m%d%H%M)
|
||||||
|
|
||||||
|
for img in moth moth-devel; do
|
||||||
|
echo "==== $img"
|
||||||
|
docker build --build-arg http_proxy=$http_proxy --tag dirtbags/$img --tag dirtbags/$img:$version -f Dockerfile.$img .
|
||||||
|
[ "$1" = "--push" ] && docker push dirtbags/$img:$version && docker push dirtbags/$img
|
||||||
|
done
|
82
install.sh
82
install.sh
|
@ -1,82 +0,0 @@
|
||||||
#! /bin/sh -e
|
|
||||||
|
|
||||||
DESTDIR=$1
|
|
||||||
|
|
||||||
if [ -z "$DESTDIR" ]; then
|
|
||||||
echo "Usage: $0 DESTDIR"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd $(dirname $0)
|
|
||||||
|
|
||||||
older () {
|
|
||||||
[ -z "$1" ] && return 1
|
|
||||||
target=$1; shift
|
|
||||||
[ -f $target ] || return 0
|
|
||||||
for i in "$@"; do
|
|
||||||
[ $i -nt $target ] && return 0
|
|
||||||
done
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
copy () {
|
|
||||||
src=$1
|
|
||||||
target=$2/$src
|
|
||||||
targetdir=$(dirname $target)
|
|
||||||
if older $target $src; then
|
|
||||||
echo "COPY $src"
|
|
||||||
mkdir -p $targetdir
|
|
||||||
cp $src $target
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
setup() {
|
|
||||||
[ -d $DESTDIR/state ] && return
|
|
||||||
echo "SETUP"
|
|
||||||
for i in points.new points.tmp teams; do
|
|
||||||
dir=$DESTDIR/state/$i
|
|
||||||
mkdir -p $dir
|
|
||||||
setfacl -m ${www}:rwx $dir
|
|
||||||
done
|
|
||||||
mkdir -p $DESTDIR/packages
|
|
||||||
>> $DESTDIR/state/points.log
|
|
||||||
if ! [ -f $DESTDIR/assigned.txt ]; then
|
|
||||||
hd </dev/urandom | awk '{print $3 $4 $5 $6;}' | head -n 100 > $DESTDIR/assigned.txt
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir -p $DESTDIR/www
|
|
||||||
ln -sf ../state/points.json $DESTDIR/www
|
|
||||||
ln -sf ../state/puzzles.json $DESTDIR/www
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
echo "Figuring out web user..."
|
|
||||||
for www in www-data http tc _ _www; do
|
|
||||||
id $www && break
|
|
||||||
done
|
|
||||||
if [ $www = _ ]; then
|
|
||||||
echo "Unable to determine httpd user on this system. Dying."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir -p $DESTDIR || exit 1
|
|
||||||
|
|
||||||
setup
|
|
||||||
git $SRCDIR ls-files | while read fn; do
|
|
||||||
case "$fn" in
|
|
||||||
example-puzzles/*|tools/*|docs/*|install.sh|setup.cfg|README.md|.gitignore|src/mothd)
|
|
||||||
true # skip
|
|
||||||
;;
|
|
||||||
www/*)
|
|
||||||
copy $fn $DESTDIR/
|
|
||||||
;;
|
|
||||||
bin/*)
|
|
||||||
copy $fn $DESTDIR/
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "??? $fn"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "All done installing."
|
|
Loading…
Reference in New Issue