Metadata-Version: 1.1
Name: chacractl
Version: 0.0.7
Summary: client tool for a chacra service
Home-page: https://github.com/ceph/chacractl
Author: Alfredo Deza
Author-email: alfredo [at] deza.pe
License: MIT
Description: ``chacractl``
        -------------
        A client interface to interact with the ``chacra`` service
        (http://github.com/ceph/chacra).
        
        
        configuration
        -------------
        The client writes a configuration file at ``$HOME/.chacractl`` with some needed
        information::
        
            # This file was automatically generated by the chacractl CLI
            # make sure to update it with the correct user and key to talk to the API
        
            url = "http://example/"
            user = "admin"
            key = "secret"
        
        These values need to be modified so that the CLI can interact with the remote
        API.
        
        binaries
        --------
        The CLI allows for a few interactions with binaries, depending on the action
        needed the requirements may change. For example when trying to upload a binary,
        the tool can accept either ``stdin`` or an actual file input.
        
        create
        ^^^^^^
        For POSTing a binary, if posting a single binary it is best to just pass the
        full path as the last argument to the ``binary`` subcommand::
        
            chacractl binary create project/ref/distro/distro-version/arch /path/to/binary.rpm
        
        But for convenience, if sending many files, it can also accept them from stdin,
        usually with the output of a ``find`` command that can be filtered with
        ``grep`` or similar.
        
        Below is an example of such a command for a project like ``ceph-deploy``::
        
            find ~/repos | grep ceph-deploy | grep rpm | grep noarch | grep el6
            | chacractl binary create ceph-deploy/master/centos/6/noarch
        
        
        If a binary already exists and there is a need to re-upload it, the ``--force``
        flag must be used. In that case the request will be a ``PUT`` and the resource
        will be overwritten in the API.
        
        exists
        ------
        Check whether a given url endpoint exists or not. This subcommand requires the
        full url part (as opposed to other subcommands that require the url starting
        from the project name)::
        
            chacractl exists repos/ceph-deploy/master/centos/7
        
        If the endpoint is not found it will return a non-zero exit status
        
        
        repos
        -----
        Repositories can be updated or fully re-created. This is useful when the API
        changes and the repository creation wasn't triggered.
        
        recreate
        ^^^^^^^^
        A ``recreate`` call will fully remove a repository on disc and will instruct
        the API to queue a repo creation. These actions are not immediate: the removal
        of the repository will happen as soon as the request is processed and the
        repository creation will be done when the queue does the job (possibly after
        a configured timeout)
        
        A simple call would look like::
        
            chacractl repo recreate ceph/infernalis/debian/jessie
        
        Note how the full path to the distribution version is needed.
        
        update
        ^^^^^^
        Similar to ``recreate``, but it will not remove the actual repository on disc
        before queuing the request. It is useful when a binary has been added and the
        client wants to ensure it is added to the repo::
        
            chacractl repo update ceph/infernalis/debian/jessie
        
Keywords: http api chacra
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Build Tools
Classifier: Topic :: Utilities
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.3
