Skip to main content

Generic sls-source plugins for idem

Project description

Made with pop, a Python implementation of Plugin Oriented Programming Made with Python

Generic sls-source plugins for idem

About

This project provides generic sls-sources for idem. sls-sources can be used to collect params data or state definitions.

What is POP?

This project is built with pop, a Python-based implementation of Plugin Oriented Programming (POP). POP seeks to bring together concepts and wisdom from the history of computing in new ways to solve modern computing problems.

For more information:

Getting Started

Prerequisites

  • Python 3.6+

  • git (if installing from source, or contributing to the project)

Installation

If wanting to use idem-sources, you can do so by either installing from PyPI or from source.

Install from PyPI

pip install idem-sources

Install from source

# clone repo
git clone git@gitlab.com/vmware/idem/idem-sources.git
cd idem-sources

# Setup venv
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

Usage

SLS sources are directory trees, archives, and remote stores that contain sls files. SLS and param sources can come from many different places. The plugins that can be used to process SLS sources are in idem/idem/sls.

The format for an sls sources is:

<protocol>://<resource>

The format for authenticated sls sources is:

<protocol_plugin>://<acct_profile>@<resource>

The named acct profile associated with the protocol_plugin provider will have it’s values passed to ctx.acct of the appropriate “cache” function.

File sources that have a mimetype, such as zip files, will be unarchived before further processing.

This is an example of an idem config file that specifies sls_sources and param_sources:

idem:
  sls_sources:
    - file://path/to/sls_tree
    - file://path/to/sls_source.zip
    - git://github.com/my_user/my_project.git
    - git+http://github.com/my_user/my_project.git
    - git+https://github.com/my_user/my_project.git
  param_sources:
    - file://path/to/sls_tree
    - file://path/to/sls_source.zip
    - git://github.com/my_user/my_project.git
    - git+http://github.com/my_user/my_project.git
    - git+https://github.com/my_user/my_project.git

sls_sources and param_sources can also be specified from the CLI.

$ idem state my.sls.ref \
      --sls-sources \
      "file://path/to/sls_tree" \
      "file://path/to/sls_source.zip" \
      "git://github.com/my_user/my_project.git" \
      "git+http://github.com/my_user/my_project.git"
      "git+https://github.com/my_user/my_project.git"
      --param-sources \
      "file://path/to/sls_tree" \
      "file://path/to/sls_source.zip" \
      "git://github.com/my_user/my_project.git"
      "git+http://github.com/my_user/my_project.git"
      "git+https://github.com/my_user/my_project.git"

Roadmap

Reference the open issues for a list of proposed features (and known issues).

Acknowledgements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

idem-sources-0.1.0.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

idem_sources-0.1.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file idem-sources-0.1.0.tar.gz.

File metadata

  • Download URL: idem-sources-0.1.0.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/35.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12

File hashes

Hashes for idem-sources-0.1.0.tar.gz
Algorithm Hash digest
SHA256 719b902a3d98e9821a543accc76a2c51f1c8c4c7866a3ce1b0d18f1a3a32663e
MD5 d7b64e1926485543c92e1f2fb3e5dbf5
BLAKE2b-256 f4628a5d8668772a3059b629d336a276dab8e654eb08150a6b18246ddbf81eaa

See more details on using hashes here.

File details

Details for the file idem_sources-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: idem_sources-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/35.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12

File hashes

Hashes for idem_sources-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b55b78015560fd7607ae4632a758b476686dd0ef4ba00863d7bf2fa2be5a481b
MD5 25c1e5ec58fa777911860cc4bc4ad340
BLAKE2b-256 76564ba308c91385cf8a0e4e98d8a3e803d115d80e23c23bd81d4673ae30aaf6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page