ACTIONS

demo_push

OBSOLETE

Push and symlink binary_build/ to the server/directory specified in server_details.yml

server: example.com
directory: foo
distribute:
  - user@host:dir/
bindistribute

Distribute binary_build/ to each of the @distribute entries in the server_details.yml file.

package_push

Push the packaged binary release for the current platform.

parts_push

Push the par archives for the current platform.

Unlike the other 'push' items, this *probably* doesn't involve symlinks.

dist_push

Push the source tarball.

Complete the release by checking and renaming all of the -ready links on the server.

checkserver

Just tests connection, remote execution.

Remote Execution

jailshell_ssh

Wrapper on jailshell_ssh2 which returns true/false rather than output.

my $bool = $self->jailshell_ssh($server, $command, @opts);

jailshell_ssh2

Workaround for buggy, proprietary code.

Required for getting success/failure from cpanel's broken jailshell implementation (which doesn't return the remote command exit status like any good ssh shell would.)

my $answer = $self->jailshell_ssh2($server, $command, @opts);

Trouble is that it assumes stderr output means an error exit code. So, pretty much everything is broken and buggy from here down.

Dies on error.

ssh_rsync

The $to argument must not contain the "$server:" bit.

$self->ssh_rsync($server, @args, $from, $to);

Multiple from files is okay too. See the rsync manpage.

$self->ssh_rsync($server, @args, @from, $to);
$self->transfer_and_link($file);

server_details

Loads the yaml data.

my $data = $self->server_details;

ssh_opts

my @opts = $self->ssh_opts($server);

make_md5_file

my $md5_filename = $self->make_md5_file($filename);