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.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.22.zip (78.1 kB view hashes)

Uploaded Source

Built Distribution

shellfoundry-1.2.22-py2.py3-none-any.whl (65.6 kB view hashes)

Uploaded Python 2 Python 3

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