Skip to main content
Made with pop, a Python implementation of Plugin Oriented Programming Made with idem, a Python implementation of Plugin Oriented Programming Documentation is published with Sphinx on docs.idemproject.io Made with Python

About

pop-create-idem is an extension of pop-create that creates boilerplate code for new idem-cloud projects. pop-create-idem includes code that transforms a CloudSpec dictionary into idem states, tools, and exec modules. Your unique pop_create plugin’s purpose is to convert API documentation into the CloudSpec format.

Note: It is recommended that you use a Python virtual environment when creating a new Idem provider plugin.

Getting Started

Before you start, ensure that you installed Python 3.8 or later. If you are running 3.7 or earlier, you might need to use python3 instead of python in the commands in the rest of this tutorial.

To verify your Python version, run the following command:

python -V

Next, create your virtual environment:

python -m venv env
source env/bin/activate

Now you should be in your new Python virtual environment.

Update pip

Next, update to the latest version of pip inside your virtual environment:

pip install -U pip

Install dependencies

Next, you need to install pop-create:

pip install pop-create

You now have access to the pop-create command for creating Idem plugins.

Install pop-create-idem

Install pop-create-idem with pip from the project root:

pip install -e {project_root}

Next, install pop-create-idem with pip from PyPi:

pip install pop-create-idem

Generate an Idem Cloud plugin

Now you are ready to run pop-create to generate an Idem plugin. You can generate a skeleton project to write exec and state modules for your cloud manually or completely auto-generate your plugin based on your cloud OpenAPI or Swagger specification.

Skeleton plugin

To generate a new skeleton Idem Cloud plugin, run the following command:

pop-create idem-cloud --directory /path/to/new/project --project-name=idem-{my_cloud} --simple_cloud_name={my_cloud} --author={company_name}

This command creates a new project with the directory structure needed to get started with your plugin.

See Create Idem Provider Plugin for information about developing an Idem plugin.

Swagger specification

To generate a new Idem plugin with a Swagger specification, run the following command:

pop-create swagger --directory /path/to/new/project --specification={swagger-spec-yaml-or-accessible-swagger-spec-json-url} --project-name=idem-{my_cloud} --simple_cloud_name={my_cloud} --author={company_name}

OpenAPI3 specification

To generate a new Idem plugin project with an OpenAPI3 specification, run the following command:

pop-create openapi3 --directory /path/to/new/project --specification={openapi3-spec-yaml-or-accessible-openapi3-spec-json-url} --project-name=idem-{my_cloud} --simple_cloud_name={my_cloud} --author={company_name}

This command creates a new project with the boilerplate code needed to get started with each respective cloud provider.

Next steps

After you generate your Idem plugin:

Metadata

Release files for pop-create-idem 4.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pop-create-idem 4.5.1
File Size Uploaded
pop-create-idem-4.5.1.tar.gz 51.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pop-create-idem 4.5.1
File Interpreter ABI Platform
pop_create_idem-4.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 137.8 kB

Release files / pop-create-idem-4.5.1.tar.gz

Download URL pop-create-idem-4.5.1.tar.gz
Size 51.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2692dea3eb770fe7584d361b51d88ed29c5b04cd801d3eca5ec8a3586c3d430e
BLAKE2b-256 checksum
How to use checksums
d4523ca03bcf4b13e635f9e32f884d42c452e5f5758db39fd2f695f955609195
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/41.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.5 tqdm/4.66.1 importlib-metadata/6.8.0 keyring/24.2.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.18

Release files / pop_create_idem-4.5.1-py3-none-any.whl

Download URL pop_create_idem-4.5.1-py3-none-any.whl
Size 86.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fa9c03be8ea9dcae0b595e3b0fec88463ddbc49c26d65317217c682af1c1ab50
BLAKE2b-256 checksum
How to use checksums
a06d4d56508e3b809e2fb818eabf2f17ba45f58c9c615fc3318202842d19334f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/41.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.5 tqdm/4.66.1 importlib-metadata/6.8.0 keyring/24.2.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.18

Release history Release notifications | RSS feed

This release

4.5.1 This release

2 release files

4.4.9

2 release files

4.4.8

2 release files

4.4.7

2 release files

4.4.6

2 release files

4.4.5

2 release files

4.4.4

2 release files

4.4.3

2 release files

4.4.2

2 release files

4.4.1

2 release files

4.4.0

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.0

2 release files

4.1.1

2 release files

4.1.0

2 release files

4.0.0

2 release files

3.5.1

2 release files

3.5.0

2 release files

3.4.1

2 release files

3.4.0

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.0

2 release files

3.0.3

2 release files

3.0.2

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page