biomapas-aws-test


Namebiomapas-aws-test JSON
Version 0.0.2 PyPI version JSON
download
home_pagehttps://github.com/biomapas/BiomapasAwsTest.git
SummaryAWS infrastructure testing framework that supports multiple IAC tools.
upload_time2020-06-30 14:38:55
maintainer
docs_urlNone
authorLaimonas Sutkus
requires_python
licenseApache License 2.0
keywords aws test iac
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # BiomapasAwsTest

A python based AWS infrastructure testing micro-framework.<br>
It supports multiple IAC tools like AWS CDK, AWS CloudFormation, and more...

#### Description

Creating infrastructure in AWS is quite hard. There are many nuances,
pitfalls and "gotchas" that sometimes are awfully frustrating. Often some 
IAC code changes might result in some unexpected infrastructure changes.
That is why the created infrastructure should have automated integration tests. 
This python based framework provides you basic functionality to help you
write unit ant integration tests to test AWS infrastructure created
via UI or via tools like AWS CDK. 

The framework is based on pytest - a python based testing library. With that
said, all pytest functionality and configs can be applied on this framework too.

The framework tries to cover some of the most popular IAC tools available on
the market: AWS CDK, Terraform, Troposphere, CloudFormation. More coming...

The framework is easy to use with explicit examples for each IAC tool. Go to
examples section and find which example suits you the most.

#### Remarks

[Biomapas](https://biomapas.com) aims to modernise life-science 
industry by sharing its IT knowledge with other companies and 
the community. This is an open source library intended to be used 
by anyone. Improvements and pull requests are welcome.

#### Related technology

- Python 3
- Pytest
- AWS CDK
- AWS CloudFormation

#### Assumptions

The project assumes the following:

- You have basic-good knowledge in python programming.
- You have basic-good knowledge in AWS.
- You have basic knowledge in testing.

#### Useful sources

- Read more about pytest:<br>
https://docs.pytest.org/en/latest/

#### Install

The project is built and uploaded to PyPi. Install it by using pip.

```bash
pip install biomapas-aws-test
```

Or directly install it through source.

```bash
pip install .
```

#### Examples

- [Testing AWS CDK based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-cdk.md)
- [Testing CloudFormation based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-cf.md)
- [Testing Terraform based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-tf.md)
- [Testing Troposphere based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-troposphere.md)

#### Testing

The project has tests that can be run. 
Note, that tests are integration tests inherently because they
test how resources are created in AWS environment. Since resources 
are created and tested in AWS you are subject for all the applicable
charges while tests are being run.

##### Setting environment

Before running tests set an environment variable `BIOMAPAS_AWS_TEST_PROFILE`.
This environment variable specifies an aws account to use for deployment and testing.
Usually this profile is called `default` when created with `aws configure` cli command.

Set on Windows:
```bash
set BIOMAPAS_AWS_TEST_PROFILE=default
```

Set on Linux:
```bash
export BIOMAPAS_AWS_TEST_PROFILE=default
```

##### Running tests

Then run tests from a root directory with `pytest` python testing library.

Testing *CloudFormation* functionality:
```bash
pytest biomapas_aws_test_test/tools/testing_with_cf
```

Testing *Cloud Development Kit* functionality:
```bash
pytest biomapas_aws_test_test/tools/testing_with_cdk
```

Testing *Troposphere* functionality:
```bash
pytest biomapas_aws_test_test/tools/testing_with_troposphere
```

Testing *Terraform* functionality:
```bash
pytest biomapas_aws_test_test/tools/testing_with_tf
```

Note that integration tests usually take a while to complete (from 5 to 30
minutes on average).

#### Contribution

Found a bug? Want to add or suggest a new feature?<br>
Contributions of any kind are gladly welcome. You may contact us 
directly, create a pull-request or an issue in github platform.
Lets modernize the world together.


# Release history

### 0.0.2
Add hyperlinks for examples.

### 0.0.1
Initial build.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/biomapas/BiomapasAwsTest.git",
    "name": "biomapas-aws-test",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "AWS Test IAC",
    "author": "Laimonas Sutkus",
    "author_email": "laimonas.sutkus@biomapas.com",
    "download_url": "https://files.pythonhosted.org/packages/99/32/1a7827768a86d90c576902c87f5f859ccbac9d83e788bcf0510fd7808fe0/biomapas_aws_test-0.0.2.tar.gz",
    "platform": "",
    "description": "# BiomapasAwsTest\n\nA python based AWS infrastructure testing micro-framework.<br>\nIt supports multiple IAC tools like AWS CDK, AWS CloudFormation, and more...\n\n#### Description\n\nCreating infrastructure in AWS is quite hard. There are many nuances,\npitfalls and \"gotchas\" that sometimes are awfully frustrating. Often some \nIAC code changes might result in some unexpected infrastructure changes.\nThat is why the created infrastructure should have automated integration tests. \nThis python based framework provides you basic functionality to help you\nwrite unit ant integration tests to test AWS infrastructure created\nvia UI or via tools like AWS CDK. \n\nThe framework is based on pytest - a python based testing library. With that\nsaid, all pytest functionality and configs can be applied on this framework too.\n\nThe framework tries to cover some of the most popular IAC tools available on\nthe market: AWS CDK, Terraform, Troposphere, CloudFormation. More coming...\n\nThe framework is easy to use with explicit examples for each IAC tool. Go to\nexamples section and find which example suits you the most.\n\n#### Remarks\n\n[Biomapas](https://biomapas.com) aims to modernise life-science \nindustry by sharing its IT knowledge with other companies and \nthe community. This is an open source library intended to be used \nby anyone. Improvements and pull requests are welcome.\n\n#### Related technology\n\n- Python 3\n- Pytest\n- AWS CDK\n- AWS CloudFormation\n\n#### Assumptions\n\nThe project assumes the following:\n\n- You have basic-good knowledge in python programming.\n- You have basic-good knowledge in AWS.\n- You have basic knowledge in testing.\n\n#### Useful sources\n\n- Read more about pytest:<br>\nhttps://docs.pytest.org/en/latest/\n\n#### Install\n\nThe project is built and uploaded to PyPi. Install it by using pip.\n\n```bash\npip install biomapas-aws-test\n```\n\nOr directly install it through source.\n\n```bash\npip install .\n```\n\n#### Examples\n\n- [Testing AWS CDK based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-cdk.md)\n- [Testing CloudFormation based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-cf.md)\n- [Testing Terraform based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-tf.md)\n- [Testing Troposphere based projects](https://github.com/Biomapas/BiomapasAwsTest/blob/master/example-troposphere.md)\n\n#### Testing\n\nThe project has tests that can be run. \nNote, that tests are integration tests inherently because they\ntest how resources are created in AWS environment. Since resources \nare created and tested in AWS you are subject for all the applicable\ncharges while tests are being run.\n\n##### Setting environment\n\nBefore running tests set an environment variable `BIOMAPAS_AWS_TEST_PROFILE`.\nThis environment variable specifies an aws account to use for deployment and testing.\nUsually this profile is called `default` when created with `aws configure` cli command.\n\nSet on Windows:\n```bash\nset BIOMAPAS_AWS_TEST_PROFILE=default\n```\n\nSet on Linux:\n```bash\nexport BIOMAPAS_AWS_TEST_PROFILE=default\n```\n\n##### Running tests\n\nThen run tests from a root directory with `pytest` python testing library.\n\nTesting *CloudFormation* functionality:\n```bash\npytest biomapas_aws_test_test/tools/testing_with_cf\n```\n\nTesting *Cloud Development Kit* functionality:\n```bash\npytest biomapas_aws_test_test/tools/testing_with_cdk\n```\n\nTesting *Troposphere* functionality:\n```bash\npytest biomapas_aws_test_test/tools/testing_with_troposphere\n```\n\nTesting *Terraform* functionality:\n```bash\npytest biomapas_aws_test_test/tools/testing_with_tf\n```\n\nNote that integration tests usually take a while to complete (from 5 to 30\nminutes on average).\n\n#### Contribution\n\nFound a bug? Want to add or suggest a new feature?<br>\nContributions of any kind are gladly welcome. You may contact us \ndirectly, create a pull-request or an issue in github platform.\nLets modernize the world together.\n\n\n# Release history\n\n### 0.0.2\nAdd hyperlinks for examples.\n\n### 0.0.1\nInitial build.\n\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "AWS infrastructure testing framework that supports multiple IAC tools.",
    "version": "0.0.2",
    "split_keywords": [
        "aws",
        "test",
        "iac"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "857c51fe376e797ac5a413bf389d5d20",
                "sha256": "e7fa180637f834b6e829ba6b712b6acb8671a5c5bac10236cd0e6b6960a7618e"
            },
            "downloads": -1,
            "filename": "biomapas_aws_test-0.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "857c51fe376e797ac5a413bf389d5d20",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 23346,
            "upload_time": "2020-06-30T14:38:52",
            "upload_time_iso_8601": "2020-06-30T14:38:52.644275Z",
            "url": "https://files.pythonhosted.org/packages/18/ee/465fdbca16200a6a3c106ec00ee9d93945f391db143b89530eec228086a6/biomapas_aws_test-0.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "5e218eddff5e8bb02a70e233ae65ac7e",
                "sha256": "efe54cce103ec0ff4437b811d99ef03e18678e8ad72e0eca634526bde423d115"
            },
            "downloads": -1,
            "filename": "biomapas_aws_test-0.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "5e218eddff5e8bb02a70e233ae65ac7e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 15549,
            "upload_time": "2020-06-30T14:38:55",
            "upload_time_iso_8601": "2020-06-30T14:38:55.188845Z",
            "url": "https://files.pythonhosted.org/packages/99/32/1a7827768a86d90c576902c87f5f859ccbac9d83e788bcf0510fd7808fe0/biomapas_aws_test-0.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2020-06-30 14:38:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": null,
    "github_project": "biomapas",
    "error": "Could not fetch GitHub repository",
    "lcname": "biomapas-aws-test"
}
        
Elapsed time: 0.13633s