Making it easier to build out ServiceCatalog products
Project description
servicecatalog-factory
This is a framework where you define a Service Catalog portfolio, products and versions using YAML. For versions of your products you specify where the source code for them can be found and the framework publishes the portfolio, products and versions in every* AWS Region after validating, linting and testing them.
High level architecture diagram
You build products in a central hub account using AWS CodePipeline and AWS CodeBuild, you then deploy them into AWS Service Catalog in every enabled region of your hub account using AWS CodePipeline and AWS CloudFormation.
Getting started
Follow the steps below to get started:
Install the tool
Optional, but recommended:
virtualenv --python=python3.7 venv
source venv/bin/activate
Install the package:
pip install aws-service-catalog-factory
Bootstrap your account
Create the AWS CodeCommit repo and AWS CodePipeline resources to run the factory:
servicecatalog-factory bootstrap
Setup your factory
Clone the configuration repo and configure your factory:
git clone --config 'credential.helper=!aws codecommit credential-helper $@' --config 'credential.UseHttpPath=true' https://git-codecommit.eu-west-1.amazonaws.com/v1/repos/ServiceCatalogFactory
servicecatalog-factory seed simple ServiceCatalogFactory
cd ServiceCatalogFactory
git add .
git commit -am "initial add"
git push
Wait for pipeline to complete and you have a working factory.
Setup your first product
Create your first product in your account:
aws codecommit create-repository --repository-name account-iam
git clone --config 'credential.helper=!aws codecommit credential-helper $@' --config 'credential.UseHttpPath=true' https://git-codecommit.eu-west-1.amazonaws.com/v1/repos/account-iam
cd account-iam
curl https://raw.githubusercontent.com/eamonnfaherty/cloudformation-templates/master/iam_admin_role/product.template.yaml -o product.template.yaml
git checkout -b v1
git add .
git commit -am "initial add"
git push --set-upstream origin v1
Wait for the product pipeline to complete and you have a Service Catalog product ready to deploy in each region of your account.
License
This library is licensed under the Apache 2.0 License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file aws-service-catalog-factory-0.1.16.tar.gz
.
File metadata
- Download URL: aws-service-catalog-factory-0.1.16.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e852129aa215e06b047ef075a990dcd49a2467d1d60b4f8a8fe1f92dff1ec5b |
|
MD5 | ff70c00998d694fcc6db86e337a4e49b |
|
BLAKE2b-256 | ffdf76b5a16dd65ce81b8cf023162cccf07846e1e268d2345b577c2e88e93ce6 |
File details
Details for the file aws_service_catalog_factory-0.1.16-py3-none-any.whl
.
File metadata
- Download URL: aws_service_catalog_factory-0.1.16-py3-none-any.whl
- Upload date:
- Size: 35.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 300f49e791b3da2f9733be067f958b0d859e34c7000e457c5a827fbec56b75be |
|
MD5 | 09082c8bbc10123b3529eec4dab99e5a |
|
BLAKE2b-256 | b5b2c7bbc46ade7eb86bd7018982988bfa3c9e6d3eee254df6250a2e132c367b |