shellfoundry 1.2.4__tar.gz → 1.2.25__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/HISTORY.rst +90 -1
  2. shellfoundry-1.2.25/MANIFEST.in +8 -0
  3. shellfoundry-1.2.25/PKG-INFO +417 -0
  4. shellfoundry-1.2.25/dev_requirements.txt +5 -0
  5. shellfoundry-1.2.25/requirements.txt +11 -0
  6. shellfoundry-1.2.25/setup.cfg +4 -0
  7. shellfoundry-1.2.25/setup.py +51 -0
  8. shellfoundry-1.2.25/shellfoundry/__init__.py +8 -0
  9. shellfoundry-1.2.25/shellfoundry/__main__.py +7 -0
  10. shellfoundry-1.2.25/shellfoundry/bootstrap.py +169 -0
  11. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/commands/config_command.py +27 -14
  12. shellfoundry-1.2.25/shellfoundry/commands/delete_command.py +24 -0
  13. shellfoundry-1.2.25/shellfoundry/commands/dist_command.py +34 -0
  14. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/commands/extend_command.py +65 -55
  15. shellfoundry-1.2.25/shellfoundry/commands/generate_command.py +44 -0
  16. shellfoundry-1.2.25/shellfoundry/commands/get_templates_command.py +151 -0
  17. shellfoundry-1.2.25/shellfoundry/commands/install_command.py +81 -0
  18. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/commands/list_command.py +53 -32
  19. shellfoundry-1.2.25/shellfoundry/commands/new_command.py +393 -0
  20. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/commands/pack_command.py +13 -8
  21. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/commands/show_command.py +27 -12
  22. shellfoundry-1.2.25/shellfoundry/decorators/__init__.py +1 -0
  23. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/decorators/standards.py +10 -2
  24. shellfoundry-1.2.25/shellfoundry/decorators/version_check.py +52 -0
  25. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/exceptions.py +3 -3
  26. shellfoundry-1.2.25/shellfoundry/models/install_config.py +82 -0
  27. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/models/shell_template.py +10 -1
  28. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/models/shellfoundry_settings.py +5 -2
  29. shellfoundry-1.2.25/shellfoundry/utilities/__init__.py +114 -0
  30. shellfoundry-1.2.25/shellfoundry/utilities/archive_creator.py +35 -0
  31. shellfoundry-1.2.25/shellfoundry/utilities/cloudshell_api/__init__.py +1 -0
  32. shellfoundry-1.2.25/shellfoundry/utilities/cloudshell_api/client_wrapper.py +71 -0
  33. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/config/config_context.py +14 -7
  34. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/config/config_file_creation.py +13 -8
  35. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/config/config_providers.py +9 -6
  36. shellfoundry-1.2.25/shellfoundry/utilities/config/config_record.py +24 -0
  37. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/config_reader.py +67 -20
  38. shellfoundry-1.2.25/shellfoundry/utilities/constants.py +37 -0
  39. shellfoundry-1.2.25/shellfoundry/utilities/cookiecutter_integration.py +67 -0
  40. shellfoundry-1.2.25/shellfoundry/utilities/driver_generator.py +121 -0
  41. shellfoundry-1.2.25/shellfoundry/utilities/filters.py +45 -0
  42. shellfoundry-1.2.25/shellfoundry/utilities/installer.py +44 -0
  43. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/modifiers/configuration/aggregated_modifiers.py +8 -2
  44. shellfoundry-1.2.25/shellfoundry/utilities/modifiers/configuration/password_modification.py +48 -0
  45. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/modifiers/definition/definition_modification.py +52 -44
  46. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/package_builder.py +45 -33
  47. shellfoundry-1.2.25/shellfoundry/utilities/python_dependencies_packager.py +53 -0
  48. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/repository_downloader.py +17 -11
  49. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/shell_config_reader.py +28 -19
  50. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/shell_datamodel_merger.py +18 -9
  51. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/shell_package.py +21 -35
  52. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/shell_package_builder.py +55 -29
  53. shellfoundry-1.2.25/shellfoundry/utilities/shell_package_installer.py +231 -0
  54. shellfoundry-1.2.25/shellfoundry/utilities/standards/__init__.py +3 -0
  55. shellfoundry-1.2.25/shellfoundry/utilities/standards/consts.py +2 -0
  56. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/standards/standards_retriever.py +6 -3
  57. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/standards/standards_versions.py +9 -6
  58. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/temp_dir_context.py +2 -3
  59. shellfoundry-1.2.25/shellfoundry/utilities/template_retriever.py +309 -0
  60. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/template_url.py +7 -5
  61. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/template_versions.py +19 -14
  62. shellfoundry-1.2.25/shellfoundry/utilities/validations/__init__.py +2 -0
  63. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/validations/shell_generation_validation.py +4 -5
  64. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/version_utilities.py +8 -5
  65. shellfoundry-1.2.25/shellfoundry.egg-info/PKG-INFO +417 -0
  66. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry.egg-info/SOURCES.txt +5 -52
  67. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry.egg-info/entry_points.txt +0 -1
  68. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry.egg-info/not-zip-safe +1 -1
  69. shellfoundry-1.2.25/shellfoundry.egg-info/requires.txt +13 -0
  70. shellfoundry-1.2.25/test_requirements.txt +8 -0
  71. shellfoundry-1.2.25/tests/test_bootstrap.py +352 -0
  72. shellfoundry-1.2.25/version.txt +1 -0
  73. shellfoundry-1.2.4/AUTHORS.rst +0 -10
  74. shellfoundry-1.2.4/MANIFEST.in +0 -14
  75. shellfoundry-1.2.4/PKG-INFO +0 -314
  76. shellfoundry-1.2.4/requirements.txt +0 -11
  77. shellfoundry-1.2.4/setup.cfg +0 -14
  78. shellfoundry-1.2.4/setup.py +0 -41
  79. shellfoundry-1.2.4/shellfoundry/__init__.py +0 -9
  80. shellfoundry-1.2.4/shellfoundry/__main__.py +0 -18
  81. shellfoundry-1.2.4/shellfoundry/bootstrap.py +0 -129
  82. shellfoundry-1.2.4/shellfoundry/commands/dist_command.py +0 -16
  83. shellfoundry-1.2.4/shellfoundry/commands/generate_command.py +0 -38
  84. shellfoundry-1.2.4/shellfoundry/commands/install_command.py +0 -54
  85. shellfoundry-1.2.4/shellfoundry/commands/new_command.py +0 -286
  86. shellfoundry-1.2.4/shellfoundry/decorators/__init__.py +0 -1
  87. shellfoundry-1.2.4/shellfoundry/decorators/version_check.py +0 -46
  88. shellfoundry-1.2.4/shellfoundry/models/install_config.py +0 -50
  89. shellfoundry-1.2.4/shellfoundry/utilities/__init__.py +0 -66
  90. shellfoundry-1.2.4/shellfoundry/utilities/archive_creator.py +0 -34
  91. shellfoundry-1.2.4/shellfoundry/utilities/cloudshell_api/__init__.py +0 -1
  92. shellfoundry-1.2.4/shellfoundry/utilities/cloudshell_api/client_wrapper.py +0 -47
  93. shellfoundry-1.2.4/shellfoundry/utilities/config/config_record.py +0 -26
  94. shellfoundry-1.2.4/shellfoundry/utilities/constants.py +0 -24
  95. shellfoundry-1.2.4/shellfoundry/utilities/cookiecutter_integration.py +0 -37
  96. shellfoundry-1.2.4/shellfoundry/utilities/driver_generator.py +0 -79
  97. shellfoundry-1.2.4/shellfoundry/utilities/filters.py +0 -33
  98. shellfoundry-1.2.4/shellfoundry/utilities/installer.py +0 -25
  99. shellfoundry-1.2.4/shellfoundry/utilities/modifiers/configuration/password_modification.py +0 -30
  100. shellfoundry-1.2.4/shellfoundry/utilities/python_dependencies_packager.py +0 -27
  101. shellfoundry-1.2.4/shellfoundry/utilities/shell_package_installer.py +0 -122
  102. shellfoundry-1.2.4/shellfoundry/utilities/standards/__init__.py +0 -3
  103. shellfoundry-1.2.4/shellfoundry/utilities/standards/consts.py +0 -2
  104. shellfoundry-1.2.4/shellfoundry/utilities/template_retriever.py +0 -189
  105. shellfoundry-1.2.4/shellfoundry/utilities/validations/__init__.py +0 -2
  106. shellfoundry-1.2.4/shellfoundry/version.py +0 -1
  107. shellfoundry-1.2.4/shellfoundry.egg-info/PKG-INFO +0 -314
  108. shellfoundry-1.2.4/shellfoundry.egg-info/requires.txt +0 -11
  109. shellfoundry-1.2.4/test_requirements.txt +0 -5
  110. shellfoundry-1.2.4/tests/__init__.py +0 -1
  111. shellfoundry-1.2.4/tests/asserts.py +0 -10
  112. shellfoundry-1.2.4/tests/test_commands/__init__.py +0 -0
  113. shellfoundry-1.2.4/tests/test_commands/test_config_command.py +0 -219
  114. shellfoundry-1.2.4/tests/test_commands/test_dist_command.py +0 -37
  115. shellfoundry-1.2.4/tests/test_commands/test_extend_command.py +0 -169
  116. shellfoundry-1.2.4/tests/test_commands/test_generate_command.py +0 -60
  117. shellfoundry-1.2.4/tests/test_commands/test_install_command.py +0 -196
  118. shellfoundry-1.2.4/tests/test_commands/test_list_command.py +0 -505
  119. shellfoundry-1.2.4/tests/test_commands/test_new_command.py +0 -500
  120. shellfoundry-1.2.4/tests/test_commands/test_pack_command.py +0 -103
  121. shellfoundry-1.2.4/tests/test_commands/test_show_command.py +0 -172
  122. shellfoundry-1.2.4/tests/test_decorators/__init__.py +0 -0
  123. shellfoundry-1.2.4/tests/test_decorators/test_version_check.py +0 -73
  124. shellfoundry-1.2.4/tests/test_models/__init__.py +0 -0
  125. shellfoundry-1.2.4/tests/test_models/test_install_config.py +0 -37
  126. shellfoundry-1.2.4/tests/test_utilities/__init__.py +0 -0
  127. shellfoundry-1.2.4/tests/test_utilities/config/__init__.py +0 -0
  128. shellfoundry-1.2.4/tests/test_utilities/config/test_config_record.py +0 -104
  129. shellfoundry-1.2.4/tests/test_utilities/modifiers/__init__.py +0 -0
  130. shellfoundry-1.2.4/tests/test_utilities/modifiers/configuration/__init__.py +0 -0
  131. shellfoundry-1.2.4/tests/test_utilities/modifiers/configuration/test_password_modification.py +0 -13
  132. shellfoundry-1.2.4/tests/test_utilities/standards/__init__.py +0 -0
  133. shellfoundry-1.2.4/tests/test_utilities/standards/test_standards_retriever.py +0 -55
  134. shellfoundry-1.2.4/tests/test_utilities/standards/test_standards_versions.py +0 -65
  135. shellfoundry-1.2.4/tests/test_utilities/test_cloudshell_api/__init__.py +0 -0
  136. shellfoundry-1.2.4/tests/test_utilities/test_cloudshell_api/test_client_wrapper.py +0 -79
  137. shellfoundry-1.2.4/tests/test_utilities/test_config_reader.py +0 -138
  138. shellfoundry-1.2.4/tests/test_utilities/test_cookiecutter_integration.py +0 -49
  139. shellfoundry-1.2.4/tests/test_utilities/test_data/datamodel.xml +0 -459
  140. shellfoundry-1.2.4/tests/test_utilities/test_data/shell_model.xml +0 -17
  141. shellfoundry-1.2.4/tests/test_utilities/test_datamodel_merger.py +0 -300
  142. shellfoundry-1.2.4/tests/test_utilities/test_dependencies_packager.py +0 -76
  143. shellfoundry-1.2.4/tests/test_utilities/test_driver_generator.py +0 -123
  144. shellfoundry-1.2.4/tests/test_utilities/test_filters.py +0 -78
  145. shellfoundry-1.2.4/tests/test_utilities/test_package_builder.py +0 -312
  146. shellfoundry-1.2.4/tests/test_utilities/test_repo_downloader.py +0 -94
  147. shellfoundry-1.2.4/tests/test_utilities/test_shell_config_reader.py +0 -35
  148. shellfoundry-1.2.4/tests/test_utilities/test_shell_installer.py +0 -40
  149. shellfoundry-1.2.4/tests/test_utilities/test_shell_package.py +0 -106
  150. shellfoundry-1.2.4/tests/test_utilities/test_shell_package_builder.py +0 -258
  151. shellfoundry-1.2.4/tests/test_utilities/test_shell_package_installer.py +0 -247
  152. shellfoundry-1.2.4/tests/test_utilities/test_template_retriever.py +0 -192
  153. shellfoundry-1.2.4/tests/test_utilities/test_template_url.py +0 -25
  154. shellfoundry-1.2.4/tests/test_utilities/test_template_versions.py +0 -82
  155. shellfoundry-1.2.4/tests/test_utilities/test_validations/__init__.py +0 -0
  156. shellfoundry-1.2.4/tests/test_utilities/test_validations/test_shell_name_validations.py +0 -71
  157. shellfoundry-1.2.4/tests/test_utilities/test_version_utilities.py +0 -43
  158. shellfoundry-1.2.4/tests/test_utilities/test_versions.py +0 -73
  159. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/LICENSE +0 -0
  160. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/README.rst +0 -0
  161. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/commands/__init__.py +0 -0
  162. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/data/standards.json +0 -0
  163. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/data/templates.yml +0 -0
  164. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/models/__init__.py +0 -0
  165. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/config/__init__.py +0 -0
  166. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/modifiers/__init__.py +0 -0
  167. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/modifiers/configuration/__init__.py +0 -0
  168. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/modifiers/definition/__init__.py +0 -0
  169. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry/utilities/validations/shell_name_validations.py +0 -0
  170. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry.egg-info/dependency_links.txt +0 -0
  171. {shellfoundry-1.2.4 → shellfoundry-1.2.25}/shellfoundry.egg-info/top_level.txt +0 -0
@@ -1,6 +1,95 @@
1
1
  =======
2
2
  History
3
3
  =======
4
+ 1.2.25 (2024-07-30)
5
+ -------------------
6
+
7
+ * Added support for the latest cloudshell-rest-api
8
+ * Added possibility to pack shell without src folder
9
+
10
+ 1.2.22 (2022-09-05)
11
+ -------------------
12
+
13
+ * Set default Python version for new Shells to "3"
14
+
15
+ 1.2.21 (2022-03-31)
16
+ -------------------
17
+
18
+ * Fixed issue with list command in offline mode
19
+ * Fixed GH issue "Uninformative error message when configured domain is incorrect #254"
20
+ * Fixed GH issue "'Error' word repeats twice #251"
21
+
22
+ 1.2.20 (2021-08-19)
23
+ -------------------
24
+
25
+ * Fixed password decryption error
26
+
27
+ 1.2.19 (2021-07-27)
28
+ -------------------
29
+
30
+ * Fixed encoding issue
31
+
32
+ 1.2.18 (2021-04-14)
33
+ -------------------
34
+
35
+ * Fixed encoding issue
36
+
37
+ 1.2.17 (2020-02-12)
38
+ -------------------
39
+
40
+ * Fixed error with click and cookiecutter versions incompatibility
41
+ * Fixed multiple traceback issues
42
+
43
+ 1.2.16 (2020-01-02)
44
+ -------------------
45
+
46
+ * Fixed error with click and cookiecutter versions incompatibility
47
+ * Fixed multiple traceback issues
48
+
49
+
50
+ 1.2.13 (2019-10-18)
51
+ -------------------
52
+
53
+ * Fixed password modification error
54
+
55
+ 1.2.11 (2019-08-14)
56
+ -------------------
57
+
58
+ * Added Python 3 support
59
+
60
+ 1.2.10 (2019-04-22)
61
+ -------------------
62
+
63
+ * Added setuptools to requirements
64
+ * Changed setuptools import according to the latest version
65
+
66
+ 1.2.9 (2019-03-27)
67
+ ------------------
68
+
69
+ * Added possibility to download dependencies from local CS repository during 'shellfoundry dist' command
70
+
71
+ 1.2.8 (2019-03-05)
72
+ ------------------
73
+
74
+ * Fixed issue with wrong setuptools import
75
+
76
+ 1.2.7 (2019-02-12)
77
+ ------------------
78
+
79
+ * Fixed issue in "generate" command after renaming root folder
80
+
81
+ 1.2.6 (2019-01-30)
82
+ ------------------
83
+
84
+ * Added "get_templates" command
85
+ * Added "delete" command
86
+ * Removed driver zip-file after pack command
87
+ * Added generating shell documentation based on the template
88
+
89
+ 1.2.5 (2018-10-04)
90
+ ------------------
91
+
92
+ * Set strict python version
4
93
 
5
94
  1.2.4 (2018-09-26)
6
95
  ------------------
@@ -146,7 +235,7 @@ History
146
235
  0.0.44 (2016-12-12)
147
236
  -------------------
148
237
 
149
- * Fixed a bug in config command which caused shellfoundry to crash when config file has not existed
238
+ * Fixed a bug in config command which caused shellfoundry to crash when config file was missing
150
239
 
151
240
  0.0.43 (2016-12-11)
152
241
  -------------------
@@ -0,0 +1,8 @@
1
+ include HISTORY.rst
2
+ include LICENSE
3
+ include README.rst
4
+ include *.txt
5
+
6
+ recursive-include shellfoundry/data *
7
+ recursive-exclude * __pycache__
8
+ recursive-exclude * *.py[co]
@@ -0,0 +1,417 @@
1
+ Metadata-Version: 2.1
2
+ Name: shellfoundry
3
+ Version: 1.2.25
4
+ Summary: shellfoundry - Quali tool for creating, building and installing CloudShell shells
5
+ Home-page: https://github.com/QualiSystems/shellfoundry
6
+ Author: Quali
7
+ Author-email: info@quali.com
8
+ License: Apache Software License 2.0
9
+ Keywords: shellfoundry sandbox cloud virtualization vcenter cmp cloudshell quali command-line cli
10
+ Classifier: Development Status :: 5 - Production/Stable
11
+ Classifier: Programming Language :: Python :: 2.7
12
+ Classifier: Programming Language :: Python :: 3.7
13
+ Classifier: Topic :: Software Development :: Libraries
14
+ Classifier: License :: OSI Approved :: Apache Software License
15
+ Requires-Python: >=2.7
16
+ Description-Content-Type: text/markdown
17
+ License-File: LICENSE
18
+ Requires-Dist: requests
19
+ Requires-Dist: cookiecutter~=1.7.2
20
+ Requires-Dist: click~=7.1.2
21
+ Requires-Dist: pyyaml
22
+ Requires-Dist: terminaltables
23
+ Requires-Dist: cloudshell-rest-api~=9.0.0
24
+ Requires-Dist: colorama
25
+ Requires-Dist: giturlparse.py
26
+ Requires-Dist: ruamel.yaml
27
+ Requires-Dist: cryptography
28
+ Requires-Dist: setuptools; python_version >= "3.12"
29
+
30
+ shellfoundry
31
+ ============
32
+
33
+ **Create, Innovate and Automate with ShellFoundry**
34
+
35
+ |Chat| |BuildStatus| |CoverageStatus| |PyVersion| |PyPI| |DependencyStatus|
36
+
37
+ Command line utility for CloudShell shells developers. The utility helps
38
+ to create a new shell based on a template, build an installable shell
39
+ package and install a shell into your CloudShell.
40
+
41
+ Installation
42
+ ============
43
+
44
+ .. code:: bash
45
+
46
+ $ pip install shellfoundry
47
+
48
+ Usage
49
+ =====
50
+
51
+ ShellFoundry streamlines the whole process of shell development from choosing a template, via code generation and
52
+ installation.
53
+
54
+ 1. Choose a TOSCA template
55
+
56
+ .. code:: bash
57
+
58
+ $ shellfoundry list
59
+
60
+ 2. Create a shell
61
+
62
+ .. code:: bash
63
+
64
+ $ shellfoundry new <shell> –-template <template>
65
+ $ cd <shell>
66
+
67
+ 3. Define data model in shell-definition.yml
68
+ 4. Generate data model
69
+
70
+ .. code:: bash
71
+
72
+ $ shellfoundry generate
73
+
74
+ 5. Implement logic in driver.py using classes from data\_model.py
75
+ 6. Install the shell package into Cloudshell
76
+
77
+ .. code:: bash
78
+
79
+ $ shellfoundry install
80
+
81
+ Additional Links
82
+ ================
83
+
84
+ - For more commands and detailed usage please refer to `Documentation`_
85
+
86
+ - Opening issues and feature requests: `Issue Tracker`_
87
+
88
+ - Forum for questions and discussions: `Gitter.im`_
89
+
90
+ License
91
+ =======
92
+
93
+ `Apache License 2.0`_
94
+
95
+ .. _Documentation: docs/readme.md
96
+ .. _Issue Tracker: https://github.com/QualiSystems/shellfoundry/issues
97
+ .. _Gitter.im: https://gitter.im/QualiSystems/shellfoundry
98
+ .. _Apache License 2.0: https://github.com/QualiSystems/shellfoundry/blob/master/LICENSE
99
+
100
+ .. |Chat| image:: https://badges.gitter.im/QualiSystems/shellfoundry.svg
101
+ :target: https://gitter.im/QualiSystems/shellfoundry?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
102
+ .. |BuildStatus| image:: https://travis-ci.org/QualiSystems/shellfoundry.svg?branch=develop
103
+ :target: https://travis-ci.org/QualiSystems/shellfoundry
104
+ .. |CoverageStatus| image:: https://coveralls.io/repos/github/QualiSystems/shellfoundry/badge.svg?branch=develop
105
+ :target: https://coveralls.io/github/QualiSystems/shellfoundry?branch=develop
106
+ .. |PyVersion| image:: https://img.shields.io/pypi/pyversions/shellfoundry.svg?maxAge=2592000
107
+ :target: https://pypi.python.org/pypi/shellfoundry
108
+ .. |PyPI| image:: https://img.shields.io/pypi/v/shellfoundry.svg?maxAge=2592000
109
+ :target: https://pypi.python.org/pypi/shellfoundry
110
+ .. |DependencyStatus| image:: https://dependencyci.com/github/QualiSystems/shellfoundry/badge
111
+ :target: https://dependencyci.com/github/QualiSystems/shellfoundry
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+ =======
121
+ History
122
+ =======
123
+ 1.2.25 (2024-07-30)
124
+ -------------------
125
+
126
+ * Added support for the latest cloudshell-rest-api
127
+ * Added possibility to pack shell without src folder
128
+
129
+ 1.2.22 (2022-09-05)
130
+ -------------------
131
+
132
+ * Set default Python version for new Shells to "3"
133
+
134
+ 1.2.21 (2022-03-31)
135
+ -------------------
136
+
137
+ * Fixed issue with list command in offline mode
138
+ * Fixed GH issue "Uninformative error message when configured domain is incorrect #254"
139
+ * Fixed GH issue "'Error' word repeats twice #251"
140
+
141
+ 1.2.20 (2021-08-19)
142
+ -------------------
143
+
144
+ * Fixed password decryption error
145
+
146
+ 1.2.19 (2021-07-27)
147
+ -------------------
148
+
149
+ * Fixed encoding issue
150
+
151
+ 1.2.18 (2021-04-14)
152
+ -------------------
153
+
154
+ * Fixed encoding issue
155
+
156
+ 1.2.17 (2020-02-12)
157
+ -------------------
158
+
159
+ * Fixed error with click and cookiecutter versions incompatibility
160
+ * Fixed multiple traceback issues
161
+
162
+ 1.2.16 (2020-01-02)
163
+ -------------------
164
+
165
+ * Fixed error with click and cookiecutter versions incompatibility
166
+ * Fixed multiple traceback issues
167
+
168
+
169
+ 1.2.13 (2019-10-18)
170
+ -------------------
171
+
172
+ * Fixed password modification error
173
+
174
+ 1.2.11 (2019-08-14)
175
+ -------------------
176
+
177
+ * Added Python 3 support
178
+
179
+ 1.2.10 (2019-04-22)
180
+ -------------------
181
+
182
+ * Added setuptools to requirements
183
+ * Changed setuptools import according to the latest version
184
+
185
+ 1.2.9 (2019-03-27)
186
+ ------------------
187
+
188
+ * Added possibility to download dependencies from local CS repository during 'shellfoundry dist' command
189
+
190
+ 1.2.8 (2019-03-05)
191
+ ------------------
192
+
193
+ * Fixed issue with wrong setuptools import
194
+
195
+ 1.2.7 (2019-02-12)
196
+ ------------------
197
+
198
+ * Fixed issue in "generate" command after renaming root folder
199
+
200
+ 1.2.6 (2019-01-30)
201
+ ------------------
202
+
203
+ * Added "get_templates" command
204
+ * Added "delete" command
205
+ * Removed driver zip-file after pack command
206
+ * Added generating shell documentation based on the template
207
+
208
+ 1.2.5 (2018-10-04)
209
+ ------------------
210
+
211
+ * Set strict python version
212
+
213
+ 1.2.4 (2018-09-26)
214
+ ------------------
215
+
216
+ * Removed unnecessary cloudshell-automation-api dependency from requirements
217
+ * Set static version for package click in requirements. click==6.7
218
+
219
+ 1.2.2 (2018-08-16)
220
+ ------------------
221
+
222
+ * Fixed bug in verification template and standards compatibility
223
+
224
+ 1.2.1 (2018-08-13)
225
+ ------------------
226
+
227
+ * Added dynamical determination of minimal CloudShell version from templates
228
+
229
+ 1.2.0 (2018-07-26)
230
+ ------------------
231
+
232
+ * Extended the "new" command behaviour for offline mode
233
+ * Added verification is template and standard version are compatible
234
+
235
+ 1.1.9 (2018-05-03)
236
+ ------------------
237
+
238
+ * Added offline mode functionality
239
+
240
+ 1.1.8 (2018-04-23)
241
+ ------------------
242
+
243
+ * Fixed typo in pack command behaviour
244
+ * Added new online template for Cloud Provider
245
+
246
+ 1.1.7 (2018-04-03)
247
+ ------------------
248
+
249
+ * Shellfoundry will now pack deployment options if exists
250
+ * Modified unpack method logic in extended command
251
+
252
+ 1.1.6 (2018-03-27)
253
+ ------------------
254
+
255
+ * Added limitation installing a gen2 shell(regular/service) into a non global domain
256
+
257
+ 1.1.5 (2018-03-01)
258
+ ------------------
259
+
260
+ * Added new online template for Traffic Generator Controller Service
261
+
262
+ 1.1.4 (2018-02-21)
263
+ ------------------
264
+
265
+ * Added new online template for Traffic Generator Chassis 2 Generation
266
+
267
+ 1.1.2 (2018-01-09)
268
+ ------------------
269
+
270
+ * Fixed extend command logic (unzip driver archive)
271
+
272
+ 1.1.1 (2017-11-14)
273
+ ------------------
274
+
275
+ * Added new online templates
276
+ * Added specific error message to Layer 1 Shells pack and install commands
277
+
278
+ 1.1.0 (2017-10-30)
279
+ ------------------
280
+
281
+ * Added author field to shellfoundry configuration
282
+ * Added extend command behavior
283
+ * Added verification when upgrading an official shell to unofficial
284
+
285
+ 1.0.4 (2017-08-28)
286
+ ------------------
287
+
288
+ * Fixed some inconsistencies between update and add shell specifically around the shell name
289
+
290
+ 1.0.3 (2017-06-28)
291
+ ------------------
292
+
293
+ * list command aborts if there is a new major version on pypi
294
+ * old shellfoundry versions are NOT supported anymore.
295
+ Please use `pip install shellfoundry -U` in order to upgrade to the newest version
296
+
297
+ 1.0.2 (2017-06-27)
298
+ ------------------
299
+
300
+ * new command aborts if there is a new major version on pypi
301
+
302
+ 1.0.1 (2017-06-26)
303
+ ------------------
304
+
305
+ * new command now conforms to CloudShell naming rules
306
+
307
+ 1.0.0 (2017-06-19)
308
+ ------------------
309
+
310
+ * Please upgrade to this version as from now on, older versions will be obsolete
311
+ * list command will now show templates that are installable on your cloudshell
312
+ * new command will now create the latest version of the template that match the standards installed on your cloudshell
313
+ * When invoking new or list commands, there will be a notification in the case of a new shellfoundry version
314
+
315
+ 0.2.7 (2017-05-16)
316
+ ------------------
317
+
318
+ * Shellfoundry will now pack categories.xml if exists
319
+
320
+ 0.2.6 (2017-03-14)
321
+ ------------------
322
+
323
+ * Fixed some minor bugs
324
+
325
+ 0.2.2 (2017-01-22)
326
+ ------------------
327
+
328
+ * gen2/resource is the now the default template for new command instead of gen1/resource
329
+
330
+ 0.2.0 (2017-01-17)
331
+ ------------------
332
+
333
+ * List command filtering parameters have changed (legacy => gen1, tosca => gen2)
334
+ * Added another filtering parameter --layer1
335
+ * Minimum CloudShell version column appears on list command output table
336
+ * gen2 is now the default view for list command
337
+
338
+ 0.1.3 (2016-12-27)
339
+ ------------------
340
+
341
+ * shellfoundry config will now echo all default configuration if not override by user
342
+
343
+ 0.1.2 (2016-12-26)
344
+ ------------------
345
+
346
+ * Config command will now encrypt password field
347
+
348
+ 0.1.0 (2016-12-14)
349
+ ------------------
350
+
351
+ * Show command was added to view all available versions of a template
352
+ * A new option was added to the 'new' command. Please welcome --version. It enables template versioning on shellfoundry.
353
+
354
+ 0.0.44 (2016-12-12)
355
+ -------------------
356
+
357
+ * Fixed a bug in config command which caused shellfoundry to crash when config file was missing
358
+
359
+ 0.0.43 (2016-12-11)
360
+ -------------------
361
+
362
+ * List command is now able to filter results based on shell type (--tosca, --legacy, --all)
363
+
364
+ 0.0.41 (2016-12-08)
365
+ -------------------
366
+
367
+ * Config command was added to allow setting configuration once for all shells in addition to local configuration
368
+
369
+ 0.0.39 (2016-10-09)
370
+ -------------------
371
+
372
+ * Pack Shell icon if specified in shell-definition.yml file under metadata\template_icon for TOSCA based shells
373
+
374
+ 0.0.38 (2016-09-28)
375
+ -------------------
376
+
377
+ * Update reference to cloudshell-rest-api 7.2.0.7 to use PUT method in update shell
378
+
379
+ 0.0.35 (2016-09-15)
380
+ -------------------
381
+
382
+ * TOSCA support was added to pack and install commands
383
+ * Generate command was added that generates driver data model in Python
384
+
385
+ 0.0.32 (2016-08-10)
386
+ -------------------
387
+
388
+ * Pack command downloads dependencies into dist directory
389
+ * Dependency for git was removed
390
+ * Local shell templates are supported
391
+ * Proxy support was added for access to github
392
+
393
+ 0.0.31 (2016-08-04)
394
+ -------------------
395
+
396
+ * git prerequisite was removed. shellfoundry works without git being preinstalled
397
+
398
+ 0.0.28 (2016-07-07)
399
+ -------------------
400
+
401
+ * Installation of package into CloudShell was fixed
402
+
403
+
404
+ 0.0.26 (2016-06-23)
405
+ -------------------
406
+
407
+ * Images copied to the DataModel folder (Issue #21)
408
+
409
+ 0.0.17 (2016-05-25)
410
+ -------------------
411
+
412
+ * Proper error message when install command fails in logging in into CloudShell
413
+
414
+ 0.0.1 (2016-05-02)
415
+ ------------------
416
+
417
+ * First release on PyPI.
@@ -0,0 +1,5 @@
1
+ pre-commit
2
+ tox
3
+ tox-factor
4
+ -r test_requirements.txt
5
+ -r requirements.txt
@@ -0,0 +1,11 @@
1
+ requests
2
+ cookiecutter~=1.7.2
3
+ click~=7.1.2
4
+ pyyaml
5
+ terminaltables
6
+ cloudshell-rest-api~=9.0.0
7
+ colorama
8
+ giturlparse.py
9
+ ruamel.yaml
10
+ cryptography
11
+ setuptools; python_version >= '3.12'
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,51 @@
1
+ #!/usr/bin/env python
2
+
3
+ from setuptools import find_packages, setup
4
+
5
+ with open("version.txt") as version_file:
6
+ version_from_file = version_file.read().strip()
7
+
8
+ with open("requirements.txt") as f_required:
9
+ required = f_required.read().splitlines()
10
+
11
+ with open("test_requirements.txt") as f_tests:
12
+ required_for_tests = f_tests.read().splitlines()
13
+
14
+
15
+ def get_file_content(file_name):
16
+ with open(file_name) as f:
17
+ return f.read()
18
+
19
+
20
+ setup(
21
+ name="shellfoundry",
22
+ version=version_from_file,
23
+ description="shellfoundry - Quali tool for creating, "
24
+ "building and installing CloudShell shells",
25
+ long_description=get_file_content("README.rst")
26
+ + "\n\n"
27
+ + get_file_content("HISTORY.rst"),
28
+ long_description_content_type="text/markdown",
29
+ author="Quali",
30
+ author_email="info@quali.com",
31
+ url="https://github.com/QualiSystems/shellfoundry",
32
+ packages=find_packages(exclude=["*.tests", "*.tests.*", "tests.*", "tests"]),
33
+ package_data={"shellfoundry": ["data/*.yml", "data/*.json"]},
34
+ entry_points={"console_scripts": ["shellfoundry = shellfoundry.bootstrap:cli"]},
35
+ include_package_data=True,
36
+ install_requires=required,
37
+ tests_require=required_for_tests,
38
+ license="Apache Software License 2.0",
39
+ zip_safe=False,
40
+ keywords="shellfoundry sandbox cloud virtualization "
41
+ "vcenter cmp cloudshell quali command-line cli",
42
+ classifiers=[
43
+ "Development Status :: 5 - Production/Stable",
44
+ "Programming Language :: Python :: 2.7",
45
+ "Programming Language :: Python :: 3.7",
46
+ "Topic :: Software Development :: Libraries",
47
+ "License :: OSI Approved :: Apache Software License",
48
+ ],
49
+ python_requires=">=2.7",
50
+ test_suite="tests",
51
+ )
@@ -0,0 +1,8 @@
1
+ from os.path import dirname, join
2
+
3
+ ALTERNATIVE_TEMPLATES_PATH = join(dirname(__file__), "data", "templates.yml")
4
+ ALTERNATIVE_STANDARDS_PATH = join(dirname(__file__), "data", "standards.json")
5
+
6
+ MASTER_BRANCH_NAME = "master"
7
+
8
+ PACKAGE_NAME = __package__.split(".")[0]
@@ -0,0 +1,7 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+
4
+ """bootstrap.cli: executed when bootstrap directory is called as script."""
5
+ from .bootstrap import cli
6
+
7
+ cli()