refactoring most of bootstrap into makefile. bootstrap supports branch checkouts, and using existing cloned dokku repos
This commit is contained in:
28
Makefile
28
Makefile
@@ -1,22 +1,28 @@
|
|||||||
GITRECEIVE_URL = https://raw.github.com/progrium/gitreceive/master/gitreceive
|
GITRECEIVE_URL = https://raw.github.com/progrium/gitreceive/master/gitreceive
|
||||||
SSHCOMMAND_URL = https://raw.github.com/progrium/sshcommand/master/sshcommand
|
SSHCOMMAND_URL = https://raw.github.com/progrium/sshcommand/master/sshcommand
|
||||||
PLUGINHOOK_URL = https://s3.amazonaws.com/progrium-pluginhook/pluginhook_0.1.0_amd64.deb
|
PLUGINHOOK_URL = https://s3.amazonaws.com/progrium-pluginhook/pluginhook_0.1.0_amd64.deb
|
||||||
|
DOCKER_URL = https://launchpad.net/~dotcloud/+archive/lxc-docker/+files/lxc-docker_0.4.2-1_amd64.deb
|
||||||
|
STACK_URL = https://s3.amazonaws.com/progrium-dokku/progrium_buildstep.tgz
|
||||||
|
|
||||||
all: install
|
all: install-all
|
||||||
|
|
||||||
install: gitreceive sshcommand pluginhook copy
|
install-all: dependencies stack install plugins
|
||||||
|
|
||||||
copy:
|
install:
|
||||||
cp dokku /usr/local/bin/dokku
|
cp dokku /usr/local/bin/dokku
|
||||||
cp receiver /home/git/receiver
|
cp receiver /home/git/receiver
|
||||||
|
|
||||||
|
plugins: pluginhook docker
|
||||||
mkdir -p /var/lib/dokku/plugins
|
mkdir -p /var/lib/dokku/plugins
|
||||||
cp -r plugins/* /var/lib/dokku/plugins
|
cp -r plugins/* /var/lib/dokku/plugins
|
||||||
PLUGIN_PATH=/var/lib/dokku/plugins pluginhook install
|
dokku plugins
|
||||||
|
|
||||||
|
dependencies: gitreceive sshcommand pluginhook docker stack
|
||||||
|
|
||||||
gitreceive:
|
gitreceive:
|
||||||
wget -qO /usr/local/bin/gitreceive ${GITRECEIVE_URL}
|
wget -qO /usr/local/bin/gitreceive ${GITRECEIVE_URL}
|
||||||
chmod +x /usr/local/bin/gitreceive
|
chmod +x /usr/local/bin/gitreceive
|
||||||
gitreceive init
|
test -f /home/git/receiver || gitreceive init
|
||||||
|
|
||||||
sshcommand:
|
sshcommand:
|
||||||
wget -qO /usr/local/bin/sshcommand ${SSHCOMMAND_URL}
|
wget -qO /usr/local/bin/sshcommand ${SSHCOMMAND_URL}
|
||||||
@@ -25,7 +31,17 @@ sshcommand:
|
|||||||
|
|
||||||
pluginhook:
|
pluginhook:
|
||||||
wget -qO /tmp/pluginhook_0.1.0_amd64.deb ${PLUGINHOOK_URL}
|
wget -qO /tmp/pluginhook_0.1.0_amd64.deb ${PLUGINHOOK_URL}
|
||||||
cd /tmp && dpkg -i pluginhook_0.1.0_amd64.deb
|
dpkg -i /tmp/pluginhook_0.1.0_amd64.deb
|
||||||
|
|
||||||
|
docker: aufs
|
||||||
|
wget -qO /tmp/lxc-docker_0.4.2-1_amd64.deb ${DOCKER_URL}
|
||||||
|
dpkg --force-depends -i /tmp/lxc-docker_0.4.2-1_amd64.deb && apt-get install -f -y
|
||||||
|
|
||||||
|
aufs:
|
||||||
|
modprobe aufs || apt-get install -y linux-image-extra-`uname -r`
|
||||||
|
|
||||||
|
stack:
|
||||||
|
@docker images | grep progrium/buildstep || curl ${STACK_URL} | gunzip -cd | docker import - progrium/buildstep
|
||||||
|
|
||||||
count:
|
count:
|
||||||
@echo "Core lines:"
|
@echo "Core lines:"
|
||||||
|
|||||||
20
bootstrap.sh
20
bootstrap.sh
@@ -1,19 +1,13 @@
|
|||||||
DOKKU_REPO=${DOKKU_REPO:-"https://github.com/progrium/dokku.git"}
|
|
||||||
DOKKU_STACK=${DOKKU_STACK:-"https://s3.amazonaws.com/progrium-dokku/progrium_buildstep.tgz"}
|
|
||||||
DOCKER_PKG=${DOCKER_PKG:-"https://launchpad.net/~dotcloud/+archive/lxc-docker/+files/lxc-docker_0.4.2-1_amd64.deb"}
|
|
||||||
set -e
|
set -e
|
||||||
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
export DOKKU_REPO=${DOKKU_REPO:-"https://github.com/progrium/dokku.git"}
|
||||||
|
|
||||||
DEBIAN_FRONTEND=noninteractive apt-get install -y linux-image-extra-`uname -r`
|
apt-get update
|
||||||
apt-get update && apt-get install -y git make curl
|
apt-get install -y git make curl
|
||||||
|
|
||||||
wget -qO- "$DOCKER_PKG" > /tmp/lxc-docker_0.4.2-1_amd64.deb
|
cd ~ && test -d dokku || git clone $DOKKU_REPO
|
||||||
dpkg --force-depends -i /tmp/lxc-docker_0.4.2-1_amd64.deb && apt-get install -f -y
|
cd dokku && test $DOKKU_BRANCH && git checkout origin/$DOKKU_BRANCH || true
|
||||||
rm /tmp/lxc-docker_0.4.2-1_amd64.deb
|
make install-all
|
||||||
|
|
||||||
cd ~ && git clone ${DOKKU_REPO}
|
|
||||||
cd dokku && make install
|
|
||||||
|
|
||||||
curl "$DOKKU_STACK" | gunzip -cd | docker import - progrium/buildstep
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "Be sure to upload a public key for your user:"
|
echo "Be sure to upload a public key for your user:"
|
||||||
|
|||||||
Reference in New Issue
Block a user