Metadata-Version: 1.1
Name: ipa
Version: 0.2.0
Summary: Package for automated testing of cloud images.
Home-page: https://github.com/SUSE/pubcloud/ipa
Author: SUSE
Author-email: public-cloud-dev@susecloud.net
License: GPLv3+
Description: = ipa
        :toc:
        
        image:https://travis-ci.org/SUSE/ipa.svg?branch=master["Build Status", link="https://travis-ci.org/SUSE/ipa"]
        
        *ipa* (Image Proofing App)
        
        == overview
        
        *ipa* provides a command line utility to test images in the
        Public Cloud (AWS, Azure, GCE, etc.).
        
        == Installation
        
        To install the package use the following commands as root:
        
        [source]
        ----
        zypper ar http://download.opensuse.org/repositories/Cloud:/Tools/<distribution>
        zypper refresh
        zypper in python3-ipa
        ----
        
        == Requirements
        
        * apache-libcloud
        * azurectl
        * boto3
        * Click
        * cryptography
        * paramiko
        * pycrypto
        * pytest
        * PyYaml
        * testinfra
        
        == Configuration
        
        The framework configuration is ini format ~/.config/ipa/config. Anything
        specific to the test framework can be found in this file. Thus anything
        that is cloud framework independent such as the test dir and results dir.
        
        [source,ini]
        ----
        [ipa]
        tests=~/ipa/tests/
        results=~/ipa/results/
        
        [EC2]
        region=us-west-1
        ----
        
        === Azure Configuration
        
        *ipa* shares the azurectl configuration file. See the
        link:https://github.com/SUSE/azurectl#configuration-file[azurectl readme] for
        more info on the location and format.
        
        === EC2 Configuration
        
        For testing EC2 instances *ipa* will use the ec2utils configuration file
        located at ~/.ec2utils.conf. See
        link:https://github.com/SUSE/Enceladus/tree/master/ec2utils[ec2utils] for an
        example configuration file.
        
        === GCE Configuration
        
        GCE uses service accounts for authentication. See
        link:https://cloud.google.com/compute/docs/access/create-enable-service-accounts-for-instances[GCE docs]
        for more info on creating a service account json file. The file must include
        a key pair for proper authentication. Additional configuration options can
        be placed in the `GCE` section of the `ipa` configuration file.
        
        == Tests
        
        *ipa* uses the Testinfra package for writing unit tests. Testinfra leverages
        Pytest and provides modules such as Package, Process and Service to test the
        state of images. See the
        link:https://testinfra.readthedocs.io/en/latest/[Testinfra Docs] for more
        information on writing infrastructure tests.
        
        [NOTE]
        ====
        *ipa* currently passes the Pytest option `-x` (stop on first failure) through
        as `--early-exit`. If there's an interest or need for any other options/args
        please submit an issue to link:https://github.com/SUSE/ipa/issues[Github].
        ====
        
        == CLI Overview
        
        The CLI provides multiple subcommands to initiate image testing:
        
        `ipa test`::
        Test image in the given framework using the supplied test files.
        
        `ipa results`::
        Print test results info.
        
        `ipa list`::
        Print a list of test files or test cases.
        
        == Issues/Enhancements
        
        Please submit issues and requests to
        link:https://github.com/SUSE/ipa/issues[Github].
        
        == Contributing
        
        Contributions to *ipa* are welcome and encouraged.
        See link:CONTRIBUTING.asciidoc[CONTRIBUTING] for info on getting started.
        
        == License
        
        Copyright (c) 2017 SUSE LLC.
        
        Distributed under the terms of GPL-3.0+ license, see
        link:LICENSE[LICENSE] for details.
        
Keywords: ipa
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Testing
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3+)
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
