Create a key pair on the remote host just for this purpose add it to root's authorized keys file on the server your are deploying to. In front of the key add 'command="cat - >> file.name;deploy_script.sh" ,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty' On the remote host run "cat /path/to/file|ssh -i /path/to/key"
You can also set this up with scp using the following in the authorized keys file
command="scp -t /destination/directory/;deploy_script.sh",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-dss xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx user@remote_server
If you can't get access to root's authorized_keys2 file combine it with password less sudo. If that is not allowed use ssh,scp and expect.