Skip to main content

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.

Release files for shellfoundry 1.2.29

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

Source distribution (sdist)

Source distribution for shellfoundry 1.2.29
File Size Uploaded
shellfoundry-1.2.29.tar.gz 49.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for shellfoundry 1.2.29
File Interpreter ABI Platform
shellfoundry-1.2.29-py3-none-any.whl Python 3 none any Details

Total release size: 115.8 kB

Release files / shellfoundry-1.2.29.tar.gz

Download URL shellfoundry-1.2.29.tar.gz
Size 49.8 kB
Tags Source
SHA-256 checksum
How to use checksums
1e50b05e26db58c67fd7c04a1d3a1f95e109171f2effcb98318763f6203835b0
BLAKE2b-256 checksum
How to use checksums
fb363cc6d4cb7d768f6c9f9857e22a8eab21c84eca369a6e9bdf3fd0dcaff468
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / shellfoundry-1.2.29-py3-none-any.whl

Download URL shellfoundry-1.2.29-py3-none-any.whl
Size 66.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ce8a4fb03c7b983b53d775dfb1761889ea302a6d6240fd173c4a0834aa4ea8d5
BLAKE2b-256 checksum
How to use checksums
65d5e0200f1edac93c4174f7280e2b3bb01103c49bb73d8d7692f2a0aeffb52a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

1.2.29 This release

2 release files

1.2.28

1 release file

1.2.25

2 release files

1.2.24

1 release file

1.2.21

2 release files

1.2.20

2 release files

1.2.19

2 release files

1.2.17

1 release file

1.2.16

1 release file

1.2.14

1 release file

1.2.12

1 release file

1.2.10

1 release file

1.2.8

1 release file

1.2.4

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.9

1 release file

1.1.5

1 release file

1.1.3

1 release file

1.1.0

2 release files

1.0.3

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.0.32

1 release file

0.0.31

1 release file

0.0.30

1 release file

0.0.29

1 release file

0.0.28

1 release file

0.0.26

0.0.25

1 release file

0.0.24

1 release file

0.0.23

1 release file

0.0.22

1 release file

0.0.21

1 release file

0.0.20

1 release file

0.0.19

1 release file

0.0.18

1 release file

0.0.17

1 release file

0.0.16

1 release file

0.0.15

1 release file

0.0.14

1 release file

0.0.13

1 release file

0.0.12

1 release file

0.0.11

1 release file

0.0.10

1 release file

0.0.9

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

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