In my answer to one SO post, Christian Semrau commented:
In standard configuration, Tomcat
monitors its webapps folder and
deploys any webapp for which you copy
a .war file into the webapps folder,
and undeploys it if you remove the
.war file, and re-deploys it when you
change the .war file. But when doing
that, you don't get automatic feedback
about the success of a deployment,
which you do get from the Tomcat
Manager.
That said, your task becomes as easy as copying or removing the file on the remote server.
Yet, I still don't understand why having manager app is a problem. You could, for example, only deploy it on different host/port:
<Connector port="8080" address="main.ip.add.ress">
...
<Context path="/your_main_context">
...
</Context>
</Connector>
<Connector port="18080" address="another.ip.add.ress">
...
<Context path="/manager">
...
</Context>
</Connector>
and put relevant firewall restrictions. Or, alternatively, you could place
<Valve className="org.apache.catalina.valves.RemoteHostValve"
allow=".*\.mycompany\.com|www\.yourcompany\.com"/>
inside Context
and achieve similar results.