Skip to content

Commit 4ca59c4

Browse files
committed
Determine whether to use package via 'use_package' in vhost config.
With it being overridable by 'USE_PACKAGE' envvar.
1 parent f2fa2f9 commit 4ca59c4

2 files changed

Lines changed: 8 additions & 14 deletions

File tree

bin/deploy-vhost

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,10 @@ die "Specify virtual host name as first parameter, deploy/stop/update/start/remo
4646

4747
my $flush;
4848
my $force;
49-
my $from_package;
5049
my $thread_id = '';
5150
GetOptions(
5251
flush => \$flush,
5352
force => \$force,
54-
'from-package' => \$from_package,
5553
'thread:s' => \$thread_id,
5654
);
5755

@@ -60,13 +58,7 @@ my $vhost = shift @ARGV;
6058
my $action = shift @ARGV;
6159
die "Specify 'deploy', 'stop', 'update', 'start', 'servers', 'balancers' or 'remove' as second parameter" if $action ne "deploy" && $action ne "stop" && $action ne "update" && $action ne "start" && $action ne 'remove' && $action ne 'servers' && $action ne 'balancers';
6260

63-
my $vhost_package;
64-
if ($from_package) {
65-
$vhost_package = $ENV{VHOST_PACKAGE};
66-
if (!$vhost_package) {
67-
die "--from-package was given but VHOST_PACKAGE was not set";
68-
}
69-
}
61+
my $vhost_package = $ENV{VHOST_PACKAGE};
7062

7163
my $hostname = `hostname`;
7264
chomp($hostname);
@@ -453,7 +445,7 @@ sub create_or_update_files {
453445
make_symlink($web_dir, "$vhost_dir/docs");
454446
shell("chown", "-h", "$conf->{user_uid}:$conf->{user_gid}", "$vhost_dir/docs"); # perl's chown doesn't do symlinks
455447

456-
if ($from_package) {
448+
if ($vhost_package) {
457449
print "Will deploy from package $vhost_package.\n";
458450
print "Fetching $vhost_package..\n.";
459451
shell(

bin/mysociety

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,11 @@ COMMAND is one of:
2424
config
2525
Tell Puppet to pull new manifests and apply them
2626
27-
vhost [--server server | --all] VHOST [--force] [--flush] [--from-package]
27+
vhost [--server server | --all] VHOST [--force] [--flush]
2828
Deploy latest version of VHOST, e.g. www.pledgebank.com,
2929
optionally on [server] or, with --all, on all VHOST's servers
3030
--force will override any local uncommitted changes
3131
--flush will ban VHOST and its aliases from local Varnish
32-
--from-package will build a vhost package if needed, and use it for the deploy
3332
3433
vhost stop/update/start [--server server | --all] VHOST
3534
Stop/update/start VHOST, e.g. www.pledgebank.com
@@ -131,7 +130,10 @@ case $COMMAND in
131130
VHOST=$1
132131
shift || die "specify a virtual host"
133132
fi
134-
if [[ "$COMMAND" == "package" || $* == *"--from-package"* ]]
133+
134+
USE_PACKAGE_FROM_CONFIG=$(jq .vhosts.\"${VHOST}\".use_package /data/vhosts.json 2>/dev/null)
135+
USE_PACKAGE=${USE_PACKAGE-$USE_PACKAGE_FROM_CONFIG}
136+
if [[ "$COMMAND" == "package" || "$USE_PACKAGE" == "1" || "$USE_PACKAGE" == "true" ]]
135137
then
136138
if [ -z "$VHOST_PACKAGE" ]
137139
then
@@ -191,7 +193,7 @@ case $COMMAND in
191193
sleep 5
192194
fi
193195
echo -e "\033[34m[deploy] Performing ${COMMAND:-deploy} for ${VHOST} on ${s}...\033[0m"
194-
ssh -t "$s" sudo ${VHOST_PACKAGE:+env VHOST_PACKAGE="$VHOST_PACKAGE"} mysociety vhost "$COMMAND" "$VHOST" "$@" --thread $THREAD_ID
196+
ssh -t "$s" sudo ${VHOST_PACKAGE:+env VHOST_PACKAGE="$VHOST_PACKAGE"} mysociety vhost "$COMMAND" "$VHOST" "$@" --thread $THREAD_ID
195197
if [ "$COMMAND" != "stop" ] && [ "$COMMAND" != "remove" ]; then
196198
if [ -n "$BALANCERS" ] && [ "$DO_VARNISH" == "yes" ]; then
197199
# This should provide a bit of time for process manager to start, or at least have the

0 commit comments

Comments
 (0)