install Drush8
(composer comes from stretch!)
This commit is contained in:
parent
7d9c571dd9
commit
4f746575f4
2 changed files with 66 additions and 5 deletions
|
@ -1,7 +1,10 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -u
|
||||
set -x
|
||||
|
||||
# small library for output
|
||||
. "$(dirname $0)/out.sh"
|
||||
|
||||
# questo coso assume che si usa machinectl
|
||||
|
||||
# questa macchina e' una debian pulita
|
||||
|
@ -14,25 +17,66 @@ testmachine=wwwd8-test-$(date +%y%m%d%H%M%S)
|
|||
conf="$(dirname $0)/../config.sh"
|
||||
[[ -f "$conf" ]] && . "$conf"
|
||||
|
||||
|
||||
machineexists() {
|
||||
machinectl list-images|awk '{ print $1 }'|egrep -q "^${1}\$"
|
||||
}
|
||||
|
||||
inm() {
|
||||
# execute command IN Machine
|
||||
machine=$1
|
||||
shift 1
|
||||
systemd-nspawn --setenv='DEBIAN_FRONTEND=noninteractive' -D "/var/lib/machines/${machine}" "$@"
|
||||
}
|
||||
|
||||
# intermediate creation END {{{1
|
||||
if ! machineexists "$intermediate"; then
|
||||
if ! machineexists "$sourcemachine"; then
|
||||
progress "Creating source machine"
|
||||
debootstrap "/var/lib/machines/${sourcemachine}"
|
||||
ok "Source machine created ($sourcemachine)"
|
||||
fi
|
||||
machinectl clone "${sourcemachine}" "${intermediate}"
|
||||
fi
|
||||
progress "Setting up intermediate machine $intermediate"
|
||||
cat <<EOF > /var/lib/machines/${intermediate}/etc/gitconfig
|
||||
[transfer]
|
||||
fsckobjects = true
|
||||
[fetch]
|
||||
fsckobjects = true
|
||||
[receive]
|
||||
fsckObjects = true
|
||||
EOF
|
||||
cat <<EOF > /var/lib/machines/${intermediate}/etc/apt/apt.conf.d/default.conf
|
||||
APT::Default-Release "jessie";
|
||||
EOF
|
||||
if [[ ! -f /var/lib/machines/${intermediate}/etc/apt/sources.list.d/stretch.list ]]; then
|
||||
cat <<EOF > /var/lib/machines/${intermediate}/etc/apt/sources.list.d/stretch.list
|
||||
deb http://ftp.debian.org/debian stretch main
|
||||
EOF
|
||||
inm $intermediate apt-get update
|
||||
fi
|
||||
# those are idempotent, so...
|
||||
systemd-nspawn --setenv='DEBIAN_FRONTEND=noninteractive' -D "/var/lib/machines/${intermediate}" /usr/bin/apt-get -y install apache2 libapache2-mod-php5 php5-gd mariadb-server
|
||||
systemd-nspawn --setenv='DEBIAN_FRONTEND=noninteractive' -D "/var/lib/machines/${intermediate}" /usr/sbin/a2enmod rewrite
|
||||
systemd-nspawn --setenv='DEBIAN_FRONTEND=noninteractive' -D "/var/lib/machines/${intermediate}" /usr/sbin/a2enmod php5
|
||||
systemd-nspawn --setenv='DEBIAN_FRONTEND=noninteractive' -D "/var/lib/machines/${intermediate}" /bin/mkdir -p /mig
|
||||
inm $intermediate /usr/bin/apt-get -y install apache2 libapache2-mod-php5 php5-gd mariadb-server git
|
||||
inm $intermediate /usr/bin/apt-get -y install -t stretch composer
|
||||
inm $intermediate /usr/sbin/a2enmod rewrite
|
||||
inm $intermediate /usr/sbin/a2enmod php5
|
||||
inm $intermediate /bin/mkdir -p /mig
|
||||
progress "Installation of Drush"
|
||||
inm $intermediate /usr/bin/composer global require drush/drush:8.0.3
|
||||
if ! inm $intermediate /usr/bin/test -x /root/.composer/vendor/bin/drush; then
|
||||
error Cannot install drush
|
||||
exit 1
|
||||
else
|
||||
ln -sf /root/.composer/vendor/bin/drush /usr/bin/drush
|
||||
ok "Drush installed"
|
||||
fi
|
||||
ok "Intermediate machine $intermediate set up"
|
||||
# intermediate creation END }}}1
|
||||
|
||||
machinectl clone "${intermediate}" "${testmachine}"
|
||||
progress "deploying on ${testmachine}"
|
||||
systemd-nspawn -D "/var/lib/machines/${testmachine}" --bind-ro="$(readlink -f $(dirname $0)/../):/mig" /mig/deploy/deploy.sh
|
||||
ok "all done"
|
||||
|
||||
# vim: set fdm=marker:
|
||||
|
|
17
testingtoolchain/out.sh
Normal file
17
testingtoolchain/out.sh
Normal file
|
@ -0,0 +1,17 @@
|
|||
# output utilities
|
||||
|
||||
tp() {
|
||||
tput "$@"
|
||||
}
|
||||
|
||||
error() {
|
||||
echo "$(tp bold)$(tp setaf 1)$*$(tp sgr0)" >&2
|
||||
}
|
||||
|
||||
progress() {
|
||||
echo "[$(tp setaf 3)DOING$(tp sgr0)] $(tp sgr0)$*"
|
||||
}
|
||||
|
||||
ok() {
|
||||
echo "[$(tp bold)$(tp setaf 2)DONE$(tp sgr0)] $(tp sgr0)$*"
|
||||
}
|
Loading…
Reference in a new issue