Skip to main content

shellfoundry - Quali tool for creating, building and installing CloudShell shells

Project description

shellfoundry

Create, Innovate and Automate with ShellFoundry

|Chat| |BuildStatus| |CoverageStatus| |PyVersion| |PyPI| |DependencyStatus|

Command line utility for CloudShell shells developers. The utility helps to create a new shell based on a template, build an installable shell package and install a shell into your CloudShell.

Installation

.. code:: bash

$ pip install shellfoundry

Usage

ShellFoundry streamlines the whole process of shell development from choosing a template, via code generation and installation.

  1. Choose a TOSCA template

.. code:: bash

$ shellfoundry list
  1. Create a shell

.. code:: bash

$ shellfoundry new <shell> –-template <template>
$ cd <shell>
  1. Define data model in shell-definition.yml
  2. Generate data model

.. code:: bash

$ shellfoundry generate
  1. Implement logic in driver.py using classes from data_model.py
  2. Install the shell package into Cloudshell

.. code:: bash

$ shellfoundry install

Additional Links

  • For more commands and detailed usage please refer to Documentation_

  • Opening issues and feature requests: Issue Tracker_

  • Forum for questions and discussions: Gitter.im_

License

Apache License 2.0_

.. _Documentation: docs/readme.md .. _Issue Tracker: https://github.com/QualiSystems/shellfoundry/issues .. _Gitter.im: https://gitter.im/QualiSystems/shellfoundry .. _Apache License 2.0: https://github.com/QualiSystems/shellfoundry/blob/master/LICENSE

.. |Chat| image:: https://badges.gitter.im/QualiSystems/shellfoundry.svg :target: https://gitter.im/QualiSystems/shellfoundry?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge .. |BuildStatus| image:: https://travis-ci.org/QualiSystems/shellfoundry.svg?branch=develop :target: https://travis-ci.org/QualiSystems/shellfoundry .. |CoverageStatus| image:: https://coveralls.io/repos/github/QualiSystems/shellfoundry/badge.svg?branch=develop :target: https://coveralls.io/github/QualiSystems/shellfoundry?branch=develop .. |PyVersion| image:: https://img.shields.io/pypi/pyversions/shellfoundry.svg?maxAge=2592000 :target: https://pypi.python.org/pypi/shellfoundry .. |PyPI| image:: https://img.shields.io/pypi/v/shellfoundry.svg?maxAge=2592000 :target: https://pypi.python.org/pypi/shellfoundry .. |DependencyStatus| image:: https://dependencyci.com/github/QualiSystems/shellfoundry/badge :target: https://dependencyci.com/github/QualiSystems/shellfoundry

======= History

1.2.25 (2024-07-30)

  • Added support for the latest cloudshell-rest-api
  • Added possibility to pack shell without src folder

1.2.22 (2022-09-05)

  • Set default Python version for new Shells to "3"

1.2.21 (2022-03-31)

  • Fixed issue with list command in offline mode
  • Fixed GH issue "Uninformative error message when configured domain is incorrect #254"
  • Fixed GH issue "'Error' word repeats twice #251"

1.2.20 (2021-08-19)

  • Fixed password decryption error

1.2.19 (2021-07-27)

  • Fixed encoding issue

1.2.18 (2021-04-14)

  • Fixed encoding issue

1.2.17 (2020-02-12)

  • Fixed error with click and cookiecutter versions incompatibility
  • Fixed multiple traceback issues

1.2.16 (2020-01-02)

  • Fixed error with click and cookiecutter versions incompatibility
  • Fixed multiple traceback issues

1.2.13 (2019-10-18)

  • Fixed password modification error

1.2.11 (2019-08-14)

  • Added Python 3 support

1.2.10 (2019-04-22)

  • Added setuptools to requirements
  • Changed setuptools import according to the latest version

1.2.9 (2019-03-27)

  • Added possibility to download dependencies from local CS repository during 'shellfoundry dist' command

1.2.8 (2019-03-05)

  • Fixed issue with wrong setuptools import

1.2.7 (2019-02-12)

  • Fixed issue in "generate" command after renaming root folder

1.2.6 (2019-01-30)

  • Added "get_templates" command
  • Added "delete" command
  • Removed driver zip-file after pack command
  • Added generating shell documentation based on the template

1.2.5 (2018-10-04)

  • Set strict python version

1.2.4 (2018-09-26)

  • Removed unnecessary cloudshell-automation-api dependency from requirements
  • Set static version for package click in requirements. click==6.7

1.2.2 (2018-08-16)

  • Fixed bug in verification template and standards compatibility

1.2.1 (2018-08-13)

  • Added dynamical determination of minimal CloudShell version from templates

1.2.0 (2018-07-26)

  • Extended the "new" command behaviour for offline mode
  • Added verification is template and standard version are compatible

1.1.9 (2018-05-03)

  • Added offline mode functionality

1.1.8 (2018-04-23)

  • Fixed typo in pack command behaviour
  • Added new online template for Cloud Provider

1.1.7 (2018-04-03)

  • Shellfoundry will now pack deployment options if exists
  • Modified unpack method logic in extended command

1.1.6 (2018-03-27)

  • Added limitation installing a gen2 shell(regular/service) into a non global domain

1.1.5 (2018-03-01)

  • Added new online template for Traffic Generator Controller Service

1.1.4 (2018-02-21)

  • Added new online template for Traffic Generator Chassis 2 Generation

1.1.2 (2018-01-09)

  • Fixed extend command logic (unzip driver archive)

1.1.1 (2017-11-14)

  • Added new online templates
  • Added specific error message to Layer 1 Shells pack and install commands

1.1.0 (2017-10-30)

  • Added author field to shellfoundry configuration
  • Added extend command behavior
  • Added verification when upgrading an official shell to unofficial

1.0.4 (2017-08-28)

  • Fixed some inconsistencies between update and add shell specifically around the shell name

1.0.3 (2017-06-28)

  • list command aborts if there is a new major version on pypi
  • old shellfoundry versions are NOT supported anymore. Please use pip install shellfoundry -U in order to upgrade to the newest version

1.0.2 (2017-06-27)

  • new command aborts if there is a new major version on pypi

1.0.1 (2017-06-26)

  • new command now conforms to CloudShell naming rules

1.0.0 (2017-06-19)

  • Please upgrade to this version as from now on, older versions will be obsolete
  • list command will now show templates that are installable on your cloudshell
  • new command will now create the latest version of the template that match the standards installed on your cloudshell
  • When invoking new or list commands, there will be a notification in the case of a new shellfoundry version

0.2.7 (2017-05-16)

  • Shellfoundry will now pack categories.xml if exists

0.2.6 (2017-03-14)

  • Fixed some minor bugs

0.2.2 (2017-01-22)

  • gen2/resource is the now the default template for new command instead of gen1/resource

0.2.0 (2017-01-17)

  • List command filtering parameters have changed (legacy => gen1, tosca => gen2)
  • Added another filtering parameter --layer1
  • Minimum CloudShell version column appears on list command output table
  • gen2 is now the default view for list command

0.1.3 (2016-12-27)

  • shellfoundry config will now echo all default configuration if not override by user

0.1.2 (2016-12-26)

  • Config command will now encrypt password field

0.1.0 (2016-12-14)

  • Show command was added to view all available versions of a template
  • A new option was added to the 'new' command. Please welcome --version. It enables template versioning on shellfoundry.

0.0.44 (2016-12-12)

  • Fixed a bug in config command which caused shellfoundry to crash when config file was missing

0.0.43 (2016-12-11)

  • List command is now able to filter results based on shell type (--tosca, --legacy, --all)

0.0.41 (2016-12-08)

  • Config command was added to allow setting configuration once for all shells in addition to local configuration

0.0.39 (2016-10-09)

  • Pack Shell icon if specified in shell-definition.yml file under metadata\template_icon for TOSCA based shells

0.0.38 (2016-09-28)

  • Update reference to cloudshell-rest-api 7.2.0.7 to use PUT method in update shell

0.0.35 (2016-09-15)

  • TOSCA support was added to pack and install commands
  • Generate command was added that generates driver data model in Python

0.0.32 (2016-08-10)

  • Pack command downloads dependencies into dist directory
  • Dependency for git was removed
  • Local shell templates are supported
  • Proxy support was added for access to github

0.0.31 (2016-08-04)

  • git prerequisite was removed. shellfoundry works without git being preinstalled

0.0.28 (2016-07-07)

  • Installation of package into CloudShell was fixed

0.0.26 (2016-06-23)

  • Images copied to the DataModel folder (Issue #21)

0.0.17 (2016-05-25)

  • Proper error message when install command fails in logging in into CloudShell

0.0.1 (2016-05-02)

  • First release on PyPI.

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

shellfoundry-1.2.27.tar.gz (49.5 kB view details)

Uploaded Source

Built Distribution

shellfoundry-1.2.27-py3-none-any.whl (65.7 kB view details)

Uploaded Python 3

File details

Details for the file shellfoundry-1.2.27.tar.gz.

File metadata

  • Download URL: shellfoundry-1.2.27.tar.gz
  • Upload date:
  • Size: 49.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for shellfoundry-1.2.27.tar.gz
Algorithm Hash digest
SHA256 a3e41f117e6bae35cb815074f94d1dab6d78d76090e1eaa6283712ede57769f0
MD5 785b4c543b3951f95740e3bc6e07e08c
BLAKE2b-256 f32225c6ba6f407ef27d837f6b674a16f42456e2369f5b434b3627814d017798

See more details on using hashes here.

File details

Details for the file shellfoundry-1.2.27-py3-none-any.whl.

File metadata

File hashes

Hashes for shellfoundry-1.2.27-py3-none-any.whl
Algorithm Hash digest
SHA256 c7e374031a29f20aa364a7ccc62dd90a6aeb6d791f756e4abd477a8aaa28863c
MD5 8f788ab086e0a0d2cc2a614baa50aff1
BLAKE2b-256 32b2fbfb8644a57823a716dc59fd3bfd811d92a32490742f360444e2880a0cb8

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