Frequently installing apps via any FTP
Your app is in a tarball and clients only have FTP access to install your app on their host. Furthermore, you need to customize the config file (or do other process) for each install. What you need is Net::xFTP and Archive::Tar. Net::xFTP's put allows you to pass in an open filehandle typeglob as the local file. So you can open a filehandle on a string reference and use that as the LOCAL FILE. This is a simplified version.
my $xftp = Net::xFTP->new('Foreign', 'hostname', user => $user, password => $password,); my $next = Archive::Tar…