tomcatmanager


Nametomcatmanager JSON
Version 3.0.0 PyPI version JSON
download
home_pagehttps://github.com/tomcatmanager/tomcatmanager
SummaryA command line tool and python library for managing a tomcat server.
upload_time2021-05-04 23:54:47
maintainer
docs_urlNone
authorJared Crapo
requires_python>=3.6
licenseMIT
keywords java tomcat command line
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            tomcatmanager
=============

.. image:: https://img.shields.io/pypi/v/tomcatmanager?label=latest%20version
      :target: https://pypi.python.org/pypi/tomcatmanager
      :alt: latest version
.. image:: https://img.shields.io/pypi/pyversions/tomcatmanager
      :target: https://pypi.python.org/pypi/tomcatmanager
      :alt: supported python versions
.. image:: https://img.shields.io/badge/license-MIT-orange
      :target: https://github.com/tomcatmanager/tomcatmanager/blob/master/LICENSE
      :alt: license
.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Quick%20Test/main?label=build%20%28main%29
      :target: https://github.com/tomcatmanager/tomcatmanager/tree/main
      :alt: main branch build status
.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Quick%20Test/develop?label=build%20%28develop%29
      :target: https://github.com/tomcatmanager/tomcatmanager/tree/develop
      :alt: develop branch build status
.. image:: https://img.shields.io/codecov/c/github/tomcatmanager/tomcatmanager/main?token=3YbxJ1PKwJ
      :target: https://codecov.io/gh/tomcatmanager/tomcatmanager
      :alt: code coverage
.. image:: https://img.shields.io/badge/code%20style-black-000000
      :target: https://github.com/psf/black
      :alt: code style black
.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Docs%20Test/main?label=docs%20%28main%29
      :target: http://tomcatmanager.readthedocs.io/en/stable
      :alt: main branch documentation status
.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Quick%20Test/develop?label=docs%20%28develop%29
      :target: https://tomcatmanager.readthedocs.io/en/develop/
      :alt: develop branch documentation status


If you use Apache Tomcat for any sort of development work you’ve probably deployed
lots of applications to it. There are a several ways to get your war files deployed:

- use the `Tomcat Manager <https://tomcat.apache.org/tomcat-9.0-doc/manager-howto.html>`_
  application in your browser
- use the `Tomcat Ant Tasks <https://cwiki.apache.org/confluence/display/tomcat/AntDeploy>`_ included with
  Tomcat
- use `Cargo <https://codehaus-cargo.github.io/>`_ and its plugins for ant and maven

Here's another way: a command line tool and python library for managing a Tomcat server.


How Do I Use It?
----------------

This package installs a command line utility called ``tomcat-manager``. It's
easily scriptable using your favorite shell:

.. code-block::

   $ tomcat-manager --user=ace --password=newenglandclamchowder \
   http://localhost:8080/manager deploy local sample.war /sampleapp
   $ echo $?
   0

There is also an interactive mode:

.. code-block::

   $ tomcat-manager
   tomcat-manager>connect http://localhost:8080/manager ace
   Password:
   --connected to http://localhost:8080/manager as ace
   tomcat-manager>list
   Path                     Status  Sessions Directory
   ------------------------ ------- -------- ------------------------------------
   /                        running        0 ROOT
   /sampleapp               stopped        0 sampleapp##9
   /sampleapp               running        0 sampleapp##8
   /host-manager            running        0 /usr/share/tomcat8-admin/host-manage
   /manager                 running        0 /usr/share/tomcat8-admin/manager

And for the ultimate in flexibility, you can use the python package directly:

.. code-block:: python

   >>> import tomcatmanager as tm
   >>> tomcat = tm.TomcatManager()
   >>> r = tomcat.connect(url="http://localhost:8080/manager",
   ... user="ace", password="newenglandclamchowder")
   >>> tomcat.is_connected
   True
   >>> r = tomcat.stop("/someapp")
   >>> r.ok
   False
   >>> r.status_message
   'No context exists named /someapp'


What Can It Do?
---------------

Tomcatmanager has the following capabilities, all available from the command line,
interactive mode, and as a python library:

- **deploy** - deploy a war file containing a tomcat application in the tomcat server
- **redeploy** - remove the application currently installed at a given path and
  install a new war file there
- **undeploy** - remove an application from the tomcat server
- **start** - start a tomcat application that has been deployed but isn't running
- **stop** - stop a tomcat application and leave it deployed on the server
- **reload** - stop and start a tomcat application
- **sessions** - show active sessions for a particular tomcat application
- **expire** - expire idle sessions
- **list** - show all installed applications
- **serverinfo** - show information about the server, including tomcat version, OS
  version and architecture, and jvm version
- **status** - show server status information in xml format
- **vminfo** - show diagnostic information about the jvm
- **threaddump** - show a jvm thread dump
- **resources** - show the global jdni resources configured in tomcat
- **findleakers** - show tomcat applications that leak memory
- **sslconnectorciphers** - show tls ciphers configured for each connector
- **sslconnectorcerts** - show tls certificate chain for each virtual host
- **sslconnectortrustedcerts** - show trusted certificates for each virtual host
- **sslreload** - reload tls certificate and key files


Documentation
-------------

Complete documentation for the last released version is available at
`<http://tomcatmanager.readthedocs.io/en/stable/>`_. It includes material
showing how to use ``tomcat-manager`` from the command line or using
interactive mode. There is also a walkthrough of how to use the API and an
API reference.

Documentation is also built from the `develop
<https://github.com/tomcatmanager/tomcatmanager/tree/develop>`_ branch, and
published at `<https://tomcatmanager.readthedocs.io/en/latest/>`_. The develop
branch may not yet be released to PyPi, but you can see the documentation for what's
coming up in the next release.


Installation
------------

You'll need Python >= 3.6. Install using pip:

.. code-block::

   $ pip install tomcatmanager

Works on Windows, macOS, and Linux.

Works with Tomcat >= 7 and <= 10.


Tomcat Configuration
--------------------

This library and associated tools do their work via the Tomcat Manager
web application included in the Tomcat distribution. You will need to
configure authentication in ``tomcat-users.xml`` with access to the
``manager-script`` role:

.. code-block:: xml

   <tomcat-users>
     ...
     <role rolename="manager-script"/>
     <user username="ace" password="newenglandclamchowder" roles="manager-script"/>
     ...
   </tomcat-users>




            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/tomcatmanager/tomcatmanager",
    "name": "tomcatmanager",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "java tomcat command line",
    "author": "Jared Crapo",
    "author_email": "jared@kotfu.net",
    "download_url": "https://files.pythonhosted.org/packages/c4/df/6b8eb1beea9d42c242421819a43ecc711367da82265ac172d96e77f216b9/tomcatmanager-3.0.0.tar.gz",
    "platform": "",
    "description": "tomcatmanager\n=============\n\n.. image:: https://img.shields.io/pypi/v/tomcatmanager?label=latest%20version\n      :target: https://pypi.python.org/pypi/tomcatmanager\n      :alt: latest version\n.. image:: https://img.shields.io/pypi/pyversions/tomcatmanager\n      :target: https://pypi.python.org/pypi/tomcatmanager\n      :alt: supported python versions\n.. image:: https://img.shields.io/badge/license-MIT-orange\n      :target: https://github.com/tomcatmanager/tomcatmanager/blob/master/LICENSE\n      :alt: license\n.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Quick%20Test/main?label=build%20%28main%29\n      :target: https://github.com/tomcatmanager/tomcatmanager/tree/main\n      :alt: main branch build status\n.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Quick%20Test/develop?label=build%20%28develop%29\n      :target: https://github.com/tomcatmanager/tomcatmanager/tree/develop\n      :alt: develop branch build status\n.. image:: https://img.shields.io/codecov/c/github/tomcatmanager/tomcatmanager/main?token=3YbxJ1PKwJ\n      :target: https://codecov.io/gh/tomcatmanager/tomcatmanager\n      :alt: code coverage\n.. image:: https://img.shields.io/badge/code%20style-black-000000\n      :target: https://github.com/psf/black\n      :alt: code style black\n.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Docs%20Test/main?label=docs%20%28main%29\n      :target: http://tomcatmanager.readthedocs.io/en/stable\n      :alt: main branch documentation status\n.. image:: https://img.shields.io/github/workflow/status/tomcatmanager/tomcatmanager/Quick%20Test/develop?label=docs%20%28develop%29\n      :target: https://tomcatmanager.readthedocs.io/en/develop/\n      :alt: develop branch documentation status\n\n\nIf you use Apache Tomcat for any sort of development work you\u2019ve probably deployed\nlots of applications to it. There are a several ways to get your war files deployed:\n\n- use the `Tomcat Manager <https://tomcat.apache.org/tomcat-9.0-doc/manager-howto.html>`_\n  application in your browser\n- use the `Tomcat Ant Tasks <https://cwiki.apache.org/confluence/display/tomcat/AntDeploy>`_ included with\n  Tomcat\n- use `Cargo <https://codehaus-cargo.github.io/>`_ and its plugins for ant and maven\n\nHere's another way: a command line tool and python library for managing a Tomcat server.\n\n\nHow Do I Use It?\n----------------\n\nThis package installs a command line utility called ``tomcat-manager``. It's\neasily scriptable using your favorite shell:\n\n.. code-block::\n\n   $ tomcat-manager --user=ace --password=newenglandclamchowder \\\n   http://localhost:8080/manager deploy local sample.war /sampleapp\n   $ echo $?\n   0\n\nThere is also an interactive mode:\n\n.. code-block::\n\n   $ tomcat-manager\n   tomcat-manager>connect http://localhost:8080/manager ace\n   Password:\n   --connected to http://localhost:8080/manager as ace\n   tomcat-manager>list\n   Path                     Status  Sessions Directory\n   ------------------------ ------- -------- ------------------------------------\n   /                        running        0 ROOT\n   /sampleapp               stopped        0 sampleapp##9\n   /sampleapp               running        0 sampleapp##8\n   /host-manager            running        0 /usr/share/tomcat8-admin/host-manage\n   /manager                 running        0 /usr/share/tomcat8-admin/manager\n\nAnd for the ultimate in flexibility, you can use the python package directly:\n\n.. code-block:: python\n\n   >>> import tomcatmanager as tm\n   >>> tomcat = tm.TomcatManager()\n   >>> r = tomcat.connect(url=\"http://localhost:8080/manager\",\n   ... user=\"ace\", password=\"newenglandclamchowder\")\n   >>> tomcat.is_connected\n   True\n   >>> r = tomcat.stop(\"/someapp\")\n   >>> r.ok\n   False\n   >>> r.status_message\n   'No context exists named /someapp'\n\n\nWhat Can It Do?\n---------------\n\nTomcatmanager has the following capabilities, all available from the command line,\ninteractive mode, and as a python library:\n\n- **deploy** - deploy a war file containing a tomcat application in the tomcat server\n- **redeploy** - remove the application currently installed at a given path and\n  install a new war file there\n- **undeploy** - remove an application from the tomcat server\n- **start** - start a tomcat application that has been deployed but isn't running\n- **stop** - stop a tomcat application and leave it deployed on the server\n- **reload** - stop and start a tomcat application\n- **sessions** - show active sessions for a particular tomcat application\n- **expire** - expire idle sessions\n- **list** - show all installed applications\n- **serverinfo** - show information about the server, including tomcat version, OS\n  version and architecture, and jvm version\n- **status** - show server status information in xml format\n- **vminfo** - show diagnostic information about the jvm\n- **threaddump** - show a jvm thread dump\n- **resources** - show the global jdni resources configured in tomcat\n- **findleakers** - show tomcat applications that leak memory\n- **sslconnectorciphers** - show tls ciphers configured for each connector\n- **sslconnectorcerts** - show tls certificate chain for each virtual host\n- **sslconnectortrustedcerts** - show trusted certificates for each virtual host\n- **sslreload** - reload tls certificate and key files\n\n\nDocumentation\n-------------\n\nComplete documentation for the last released version is available at\n`<http://tomcatmanager.readthedocs.io/en/stable/>`_. It includes material\nshowing how to use ``tomcat-manager`` from the command line or using\ninteractive mode. There is also a walkthrough of how to use the API and an\nAPI reference.\n\nDocumentation is also built from the `develop\n<https://github.com/tomcatmanager/tomcatmanager/tree/develop>`_ branch, and\npublished at `<https://tomcatmanager.readthedocs.io/en/latest/>`_. The develop\nbranch may not yet be released to PyPi, but you can see the documentation for what's\ncoming up in the next release.\n\n\nInstallation\n------------\n\nYou'll need Python >= 3.6. Install using pip:\n\n.. code-block::\n\n   $ pip install tomcatmanager\n\nWorks on Windows, macOS, and Linux.\n\nWorks with Tomcat >= 7 and <= 10.\n\n\nTomcat Configuration\n--------------------\n\nThis library and associated tools do their work via the Tomcat Manager\nweb application included in the Tomcat distribution. You will need to\nconfigure authentication in ``tomcat-users.xml`` with access to the\n``manager-script`` role:\n\n.. code-block:: xml\n\n   <tomcat-users>\n     ...\n     <role rolename=\"manager-script\"/>\n     <user username=\"ace\" password=\"newenglandclamchowder\" roles=\"manager-script\"/>\n     ...\n   </tomcat-users>\n\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A command line tool and python library for managing a tomcat server.",
    "version": "3.0.0",
    "split_keywords": [
        "java",
        "tomcat",
        "command",
        "line"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "688e4d465d70cdbd37685be3a4ed7562",
                "sha256": "4ea76feb48abdf8abcdc202c4d63d99fd33aba7a3a1aebab502bfc08a60be1e2"
            },
            "downloads": -1,
            "filename": "tomcatmanager-3.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "688e4d465d70cdbd37685be3a4ed7562",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 36724,
            "upload_time": "2021-05-04T23:54:45",
            "upload_time_iso_8601": "2021-05-04T23:54:45.394971Z",
            "url": "https://files.pythonhosted.org/packages/4d/9f/9cbad08f4a99e91a06ee20a1c11b33ec1ba41a56168fc4f231dc7c1e4053/tomcatmanager-3.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "2999d675e8fab09a3c4c6504d1a4814b",
                "sha256": "4451ade4175d17e9adfd26d8864c8498de22bf2a97fca0d446ac028e320b445f"
            },
            "downloads": -1,
            "filename": "tomcatmanager-3.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "2999d675e8fab09a3c4c6504d1a4814b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 110370,
            "upload_time": "2021-05-04T23:54:47",
            "upload_time_iso_8601": "2021-05-04T23:54:47.914781Z",
            "url": "https://files.pythonhosted.org/packages/c4/df/6b8eb1beea9d42c242421819a43ecc711367da82265ac172d96e77f216b9/tomcatmanager-3.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2021-05-04 23:54:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": null,
    "github_project": "tomcatmanager",
    "error": "Could not fetch GitHub repository",
    "lcname": "tomcatmanager"
}
        
Elapsed time: 0.27050s