exordos 2.0.0__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 (423) hide show
  1. exordos-2.0.0/.github/dependabot.yml +12 -0
  2. exordos-2.0.0/.github/workflows/build.yml +46 -0
  3. exordos-2.0.0/.github/workflows/docs.yml +55 -0
  4. exordos-2.0.0/.github/workflows/markdownlint.yml +26 -0
  5. exordos-2.0.0/.github/workflows/publish-to-pypi.yml +172 -0
  6. exordos-2.0.0/.github/workflows/tests.yml +72 -0
  7. exordos-2.0.0/.github/workflows/upload_exordos_install.yml +35 -0
  8. exordos-2.0.0/.gitignore +132 -0
  9. exordos-2.0.0/.markdownlint.yaml +150 -0
  10. exordos-2.0.0/CODEOWNERS +5 -0
  11. exordos-2.0.0/LICENSE +201 -0
  12. exordos-2.0.0/Makefile +23 -0
  13. exordos-2.0.0/PKG-INFO +443 -0
  14. exordos-2.0.0/README.md +385 -0
  15. exordos-2.0.0/data/backups/local.yaml +4 -0
  16. exordos-2.0.0/data/backups/s3.yaml +7 -0
  17. exordos-2.0.0/data/stands/stand-small.yaml +11 -0
  18. exordos-2.0.0/docs/cli/auth_login.md +104 -0
  19. exordos-2.0.0/docs/cli/auth_me.md +39 -0
  20. exordos-2.0.0/docs/cli/auth_refresh.md +55 -0
  21. exordos-2.0.0/docs/cli/certificates_add.md +70 -0
  22. exordos-2.0.0/docs/cli/certificates_delete.md +39 -0
  23. exordos-2.0.0/docs/cli/certificates_list.md +43 -0
  24. exordos-2.0.0/docs/cli/certificates_show.md +39 -0
  25. exordos-2.0.0/docs/cli/certificates_update.md +66 -0
  26. exordos-2.0.0/docs/cli/clients_add.md +95 -0
  27. exordos-2.0.0/docs/cli/clients_delete.md +39 -0
  28. exordos-2.0.0/docs/cli/clients_list.md +43 -0
  29. exordos-2.0.0/docs/cli/clients_show.md +39 -0
  30. exordos-2.0.0/docs/cli/compute_hypervisors.md +40 -0
  31. exordos-2.0.0/docs/cli/compute_nodes.md +41 -0
  32. exordos-2.0.0/docs/cli/compute_sets.md +39 -0
  33. exordos-2.0.0/docs/cli/configs_add-from-env.md +97 -0
  34. exordos-2.0.0/docs/cli/configs_delete.md +52 -0
  35. exordos-2.0.0/docs/cli/configs_list.md +43 -0
  36. exordos-2.0.0/docs/cli/configs_show.md +39 -0
  37. exordos-2.0.0/docs/cli/e_elements.md +49 -0
  38. exordos-2.0.0/docs/cli/e_exports.md +38 -0
  39. exordos-2.0.0/docs/cli/e_imports.md +38 -0
  40. exordos-2.0.0/docs/cli/e_manifests.md +39 -0
  41. exordos-2.0.0/docs/cli/e_resources.md +38 -0
  42. exordos-2.0.0/docs/cli/e_services.md +41 -0
  43. exordos-2.0.0/docs/cli/elements_available.md +34 -0
  44. exordos-2.0.0/docs/cli/elements_clear.md +43 -0
  45. exordos-2.0.0/docs/cli/elements_edit.md +57 -0
  46. exordos-2.0.0/docs/cli/elements_i.md +57 -0
  47. exordos-2.0.0/docs/cli/elements_install.md +57 -0
  48. exordos-2.0.0/docs/cli/elements_ips.md +39 -0
  49. exordos-2.0.0/docs/cli/elements_list.md +43 -0
  50. exordos-2.0.0/docs/cli/elements_show.md +39 -0
  51. exordos-2.0.0/docs/cli/elements_u.md +57 -0
  52. exordos-2.0.0/docs/cli/elements_un.md +39 -0
  53. exordos-2.0.0/docs/cli/elements_uninstall.md +39 -0
  54. exordos-2.0.0/docs/cli/elements_update.md +57 -0
  55. exordos-2.0.0/docs/cli/elements_versions.md +39 -0
  56. exordos-2.0.0/docs/cli/exordos.md +123 -0
  57. exordos-2.0.0/docs/cli/exordos_auth.md +39 -0
  58. exordos-2.0.0/docs/cli/exordos_autocomplete.md +43 -0
  59. exordos-2.0.0/docs/cli/exordos_autocomplete_help.md +34 -0
  60. exordos-2.0.0/docs/cli/exordos_backup-decrypt.md +39 -0
  61. exordos-2.0.0/docs/cli/exordos_backup.md +139 -0
  62. exordos-2.0.0/docs/cli/exordos_bootstrap.md +250 -0
  63. exordos-2.0.0/docs/cli/exordos_build.md +132 -0
  64. exordos-2.0.0/docs/cli/exordos_compute.md +29 -0
  65. exordos-2.0.0/docs/cli/exordos_configs.md +40 -0
  66. exordos-2.0.0/docs/cli/exordos_dumphelp.md +29 -0
  67. exordos-2.0.0/docs/cli/exordos_e.md +29 -0
  68. exordos-2.0.0/docs/cli/exordos_elements.md +49 -0
  69. exordos-2.0.0/docs/cli/exordos_get-version.md +39 -0
  70. exordos-2.0.0/docs/cli/exordos_hello.md +34 -0
  71. exordos-2.0.0/docs/cli/exordos_iam.md +29 -0
  72. exordos-2.0.0/docs/cli/exordos_init.md +87 -0
  73. exordos-2.0.0/docs/cli/exordos_latest.md +34 -0
  74. exordos-2.0.0/docs/cli/exordos_manifests.md +39 -0
  75. exordos-2.0.0/docs/cli/exordos_nodes.md +41 -0
  76. exordos-2.0.0/docs/cli/exordos_openapi.md +60 -0
  77. exordos-2.0.0/docs/cli/exordos_push.md +84 -0
  78. exordos-2.0.0/docs/cli/exordos_realms.md +39 -0
  79. exordos-2.0.0/docs/cli/exordos_repo.md +40 -0
  80. exordos-2.0.0/docs/cli/exordos_secret.md +40 -0
  81. exordos-2.0.0/docs/cli/exordos_settings.md +50 -0
  82. exordos-2.0.0/docs/cli/exordos_sync.md +48 -0
  83. exordos-2.0.0/docs/cli/exordos_version.md +34 -0
  84. exordos-2.0.0/docs/cli/exordos_vs.md +39 -0
  85. exordos-2.0.0/docs/cli/exports_list.md +43 -0
  86. exordos-2.0.0/docs/cli/exports_show.md +48 -0
  87. exordos-2.0.0/docs/cli/hypervisors_delete.md +39 -0
  88. exordos-2.0.0/docs/cli/hypervisors_init.md +59 -0
  89. exordos-2.0.0/docs/cli/hypervisors_list.md +43 -0
  90. exordos-2.0.0/docs/cli/hypervisors_show.md +39 -0
  91. exordos-2.0.0/docs/cli/iam_clients.md +40 -0
  92. exordos-2.0.0/docs/cli/iam_idps.md +40 -0
  93. exordos-2.0.0/docs/cli/iam_organizations.md +40 -0
  94. exordos-2.0.0/docs/cli/iam_permission_bindings.md +40 -0
  95. exordos-2.0.0/docs/cli/iam_permissions.md +40 -0
  96. exordos-2.0.0/docs/cli/iam_projects.md +40 -0
  97. exordos-2.0.0/docs/cli/iam_role_bindings.md +40 -0
  98. exordos-2.0.0/docs/cli/iam_roles.md +41 -0
  99. exordos-2.0.0/docs/cli/iam_users.md +40 -0
  100. exordos-2.0.0/docs/cli/idps_add.md +101 -0
  101. exordos-2.0.0/docs/cli/idps_delete.md +39 -0
  102. exordos-2.0.0/docs/cli/idps_list.md +43 -0
  103. exordos-2.0.0/docs/cli/idps_show.md +39 -0
  104. exordos-2.0.0/docs/cli/imports_list.md +43 -0
  105. exordos-2.0.0/docs/cli/imports_show.md +48 -0
  106. exordos-2.0.0/docs/cli/manifests_list.md +43 -0
  107. exordos-2.0.0/docs/cli/manifests_show.md +39 -0
  108. exordos-2.0.0/docs/cli/manifests_validate.md +48 -0
  109. exordos-2.0.0/docs/cli/nodes_add-or-update.md +114 -0
  110. exordos-2.0.0/docs/cli/nodes_add.md +114 -0
  111. exordos-2.0.0/docs/cli/nodes_delete.md +39 -0
  112. exordos-2.0.0/docs/cli/nodes_list.md +43 -0
  113. exordos-2.0.0/docs/cli/nodes_show.md +39 -0
  114. exordos-2.0.0/docs/cli/organizations_add.md +61 -0
  115. exordos-2.0.0/docs/cli/organizations_delete.md +39 -0
  116. exordos-2.0.0/docs/cli/organizations_list.md +43 -0
  117. exordos-2.0.0/docs/cli/organizations_show.md +39 -0
  118. exordos-2.0.0/docs/cli/passwords_add.md +70 -0
  119. exordos-2.0.0/docs/cli/passwords_delete.md +39 -0
  120. exordos-2.0.0/docs/cli/passwords_list.md +43 -0
  121. exordos-2.0.0/docs/cli/passwords_show.md +39 -0
  122. exordos-2.0.0/docs/cli/passwords_update.md +66 -0
  123. exordos-2.0.0/docs/cli/permission_bindings_add.md +68 -0
  124. exordos-2.0.0/docs/cli/permission_bindings_delete.md +39 -0
  125. exordos-2.0.0/docs/cli/permission_bindings_list.md +43 -0
  126. exordos-2.0.0/docs/cli/permission_bindings_show.md +39 -0
  127. exordos-2.0.0/docs/cli/permissions_add.md +61 -0
  128. exordos-2.0.0/docs/cli/permissions_delete.md +39 -0
  129. exordos-2.0.0/docs/cli/permissions_list.md +43 -0
  130. exordos-2.0.0/docs/cli/permissions_show.md +39 -0
  131. exordos-2.0.0/docs/cli/profiles_activate.md +39 -0
  132. exordos-2.0.0/docs/cli/profiles_add.md +79 -0
  133. exordos-2.0.0/docs/cli/profiles_delete.md +39 -0
  134. exordos-2.0.0/docs/cli/profiles_list.md +34 -0
  135. exordos-2.0.0/docs/cli/profiles_show.md +39 -0
  136. exordos-2.0.0/docs/cli/projects_add.md +70 -0
  137. exordos-2.0.0/docs/cli/projects_delete.md +39 -0
  138. exordos-2.0.0/docs/cli/projects_list.md +43 -0
  139. exordos-2.0.0/docs/cli/projects_show.md +39 -0
  140. exordos-2.0.0/docs/cli/realms_delete.md +39 -0
  141. exordos-2.0.0/docs/cli/realms_list.md +34 -0
  142. exordos-2.0.0/docs/cli/realms_ssh.md +52 -0
  143. exordos-2.0.0/docs/cli/repo_delete.md +57 -0
  144. exordos-2.0.0/docs/cli/repo_init.md +66 -0
  145. exordos-2.0.0/docs/cli/repo_list.md +66 -0
  146. exordos-2.0.0/docs/cli/repo_push.md +84 -0
  147. exordos-2.0.0/docs/cli/resources_list.md +43 -0
  148. exordos-2.0.0/docs/cli/resources_show.md +48 -0
  149. exordos-2.0.0/docs/cli/role_bindings_add.md +68 -0
  150. exordos-2.0.0/docs/cli/role_bindings_delete.md +39 -0
  151. exordos-2.0.0/docs/cli/role_bindings_list.md +43 -0
  152. exordos-2.0.0/docs/cli/role_bindings_show.md +39 -0
  153. exordos-2.0.0/docs/cli/roles_add.md +70 -0
  154. exordos-2.0.0/docs/cli/roles_delete.md +39 -0
  155. exordos-2.0.0/docs/cli/roles_list.md +43 -0
  156. exordos-2.0.0/docs/cli/roles_show.md +39 -0
  157. exordos-2.0.0/docs/cli/roles_update.md +66 -0
  158. exordos-2.0.0/docs/cli/rsa_keys_add.md +70 -0
  159. exordos-2.0.0/docs/cli/rsa_keys_delete.md +39 -0
  160. exordos-2.0.0/docs/cli/rsa_keys_list.md +43 -0
  161. exordos-2.0.0/docs/cli/rsa_keys_show.md +39 -0
  162. exordos-2.0.0/docs/cli/rsa_keys_update.md +66 -0
  163. exordos-2.0.0/docs/cli/secret_certificates.md +41 -0
  164. exordos-2.0.0/docs/cli/secret_passwords.md +41 -0
  165. exordos-2.0.0/docs/cli/secret_rsa_keys.md +41 -0
  166. exordos-2.0.0/docs/cli/secret_ssh_keys.md +41 -0
  167. exordos-2.0.0/docs/cli/services_add.md +70 -0
  168. exordos-2.0.0/docs/cli/services_delete.md +39 -0
  169. exordos-2.0.0/docs/cli/services_list.md +43 -0
  170. exordos-2.0.0/docs/cli/services_show.md +39 -0
  171. exordos-2.0.0/docs/cli/services_update.md +66 -0
  172. exordos-2.0.0/docs/cli/sets_delete.md +39 -0
  173. exordos-2.0.0/docs/cli/sets_list.md +43 -0
  174. exordos-2.0.0/docs/cli/sets_show.md +39 -0
  175. exordos-2.0.0/docs/cli/settings_current-realm.md +34 -0
  176. exordos-2.0.0/docs/cli/settings_delete-context.md +48 -0
  177. exordos-2.0.0/docs/cli/settings_delete-realm.md +39 -0
  178. exordos-2.0.0/docs/cli/settings_get.md +39 -0
  179. exordos-2.0.0/docs/cli/settings_init.md +34 -0
  180. exordos-2.0.0/docs/cli/settings_list-realms.md +51 -0
  181. exordos-2.0.0/docs/cli/settings_rename-context.md +53 -0
  182. exordos-2.0.0/docs/cli/settings_set-context.md +92 -0
  183. exordos-2.0.0/docs/cli/settings_set-realm.md +74 -0
  184. exordos-2.0.0/docs/cli/settings_set.md +44 -0
  185. exordos-2.0.0/docs/cli/settings_unset.md +39 -0
  186. exordos-2.0.0/docs/cli/settings_use-context.md +48 -0
  187. exordos-2.0.0/docs/cli/settings_use-realm.md +39 -0
  188. exordos-2.0.0/docs/cli/settings_view.md +42 -0
  189. exordos-2.0.0/docs/cli/ssh_keys_add.md +102 -0
  190. exordos-2.0.0/docs/cli/ssh_keys_delete.md +39 -0
  191. exordos-2.0.0/docs/cli/ssh_keys_list.md +43 -0
  192. exordos-2.0.0/docs/cli/ssh_keys_show.md +39 -0
  193. exordos-2.0.0/docs/cli/ssh_keys_update.md +66 -0
  194. exordos-2.0.0/docs/cli/users_add.md +130 -0
  195. exordos-2.0.0/docs/cli/users_delete.md +39 -0
  196. exordos-2.0.0/docs/cli/users_list.md +43 -0
  197. exordos-2.0.0/docs/cli/users_show.md +39 -0
  198. exordos-2.0.0/docs/cli/values_add.md +87 -0
  199. exordos-2.0.0/docs/cli/values_delete.md +39 -0
  200. exordos-2.0.0/docs/cli/values_list.md +43 -0
  201. exordos-2.0.0/docs/cli/values_show.md +39 -0
  202. exordos-2.0.0/docs/cli/values_update.md +84 -0
  203. exordos-2.0.0/docs/cli/variables_add.md +70 -0
  204. exordos-2.0.0/docs/cli/variables_delete.md +39 -0
  205. exordos-2.0.0/docs/cli/variables_list.md +43 -0
  206. exordos-2.0.0/docs/cli/variables_select.md +48 -0
  207. exordos-2.0.0/docs/cli/variables_set.md +77 -0
  208. exordos-2.0.0/docs/cli/variables_show.md +39 -0
  209. exordos-2.0.0/docs/cli/vs_profiles.md +41 -0
  210. exordos-2.0.0/docs/cli/vs_values.md +41 -0
  211. exordos-2.0.0/docs/cli/vs_variables.md +42 -0
  212. exordos-2.0.0/docs/config.md +60 -0
  213. exordos-2.0.0/docs/index.md +374 -0
  214. exordos-2.0.0/docs/realms.md +113 -0
  215. exordos-2.0.0/docs/versioning.md +50 -0
  216. exordos-2.0.0/etc/install.sh +156 -0
  217. exordos-2.0.0/exordos/__init__.py +0 -0
  218. exordos-2.0.0/exordos/autocomplete/autocomplete_help +12 -0
  219. exordos-2.0.0/exordos/autocomplete/bashrc-complete +3 -0
  220. exordos-2.0.0/exordos/autocomplete/exordos-complete.bash +28 -0
  221. exordos-2.0.0/exordos/autocomplete/exordos-complete.zsh +40 -0
  222. exordos-2.0.0/exordos/autocomplete/zshrc-complete +3 -0
  223. exordos-2.0.0/exordos/backup/backup.py +262 -0
  224. exordos-2.0.0/exordos/backup/base.py +95 -0
  225. exordos-2.0.0/exordos/backup/local.py +277 -0
  226. exordos-2.0.0/exordos/backup/qcow.py +186 -0
  227. exordos-2.0.0/exordos/backup/s3.py +136 -0
  228. exordos-2.0.0/exordos/builder/__init__.py +17 -0
  229. exordos-2.0.0/exordos/builder/base.py +342 -0
  230. exordos-2.0.0/exordos/builder/builder.py +337 -0
  231. exordos-2.0.0/exordos/builder/dependency.py +277 -0
  232. exordos-2.0.0/exordos/builder/packer.py +242 -0
  233. exordos-2.0.0/exordos/clients/__init__.py +0 -0
  234. exordos-2.0.0/exordos/clients/base.py +503 -0
  235. exordos-2.0.0/exordos/clients/base_client.py +141 -0
  236. exordos-2.0.0/exordos/clients/ecosystem.py +100 -0
  237. exordos-2.0.0/exordos/clients/iam.py +240 -0
  238. exordos-2.0.0/exordos/clients/repo.py +173 -0
  239. exordos-2.0.0/exordos/cmd/__init__.py +0 -0
  240. exordos-2.0.0/exordos/cmd/aliases.py +122 -0
  241. exordos-2.0.0/exordos/cmd/cli.py +264 -0
  242. exordos-2.0.0/exordos/cmd/compute/__init__.py +30 -0
  243. exordos-2.0.0/exordos/cmd/compute/hypervisors/__init__.py +0 -0
  244. exordos-2.0.0/exordos/cmd/compute/hypervisors/commands.py +319 -0
  245. exordos-2.0.0/exordos/cmd/compute/nodes/__init__.py +0 -0
  246. exordos-2.0.0/exordos/cmd/compute/nodes/commands.py +348 -0
  247. exordos-2.0.0/exordos/cmd/compute/sets/__init__.py +0 -0
  248. exordos-2.0.0/exordos/cmd/compute/sets/commands.py +102 -0
  249. exordos-2.0.0/exordos/cmd/configs/__init__.py +0 -0
  250. exordos-2.0.0/exordos/cmd/configs/commands.py +269 -0
  251. exordos-2.0.0/exordos/cmd/em/__init__.py +36 -0
  252. exordos-2.0.0/exordos/cmd/em/builder/__init__.py +0 -0
  253. exordos-2.0.0/exordos/cmd/em/builder/commands.py +191 -0
  254. exordos-2.0.0/exordos/cmd/em/elements/__init__.py +0 -0
  255. exordos-2.0.0/exordos/cmd/em/elements/commands.py +612 -0
  256. exordos-2.0.0/exordos/cmd/em/exports/__init__.py +0 -0
  257. exordos-2.0.0/exordos/cmd/em/exports/commands.py +140 -0
  258. exordos-2.0.0/exordos/cmd/em/imports/__init__.py +0 -0
  259. exordos-2.0.0/exordos/cmd/em/imports/commands.py +140 -0
  260. exordos-2.0.0/exordos/cmd/em/manifests/__init__.py +0 -0
  261. exordos-2.0.0/exordos/cmd/em/manifests/commands.py +154 -0
  262. exordos-2.0.0/exordos/cmd/em/resources/__init__.py +0 -0
  263. exordos-2.0.0/exordos/cmd/em/resources/commands.py +150 -0
  264. exordos-2.0.0/exordos/cmd/em/services/__init__.py +0 -0
  265. exordos-2.0.0/exordos/cmd/em/services/commands.py +200 -0
  266. exordos-2.0.0/exordos/cmd/iam/__init__.py +51 -0
  267. exordos-2.0.0/exordos/cmd/iam/auth/__init__.py +0 -0
  268. exordos-2.0.0/exordos/cmd/iam/auth/commands.py +201 -0
  269. exordos-2.0.0/exordos/cmd/iam/client/__init__.py +0 -0
  270. exordos-2.0.0/exordos/cmd/iam/client/commands.py +178 -0
  271. exordos-2.0.0/exordos/cmd/iam/idp/__init__.py +0 -0
  272. exordos-2.0.0/exordos/cmd/iam/idp/commands.py +198 -0
  273. exordos-2.0.0/exordos/cmd/iam/organization/__init__.py +0 -0
  274. exordos-2.0.0/exordos/cmd/iam/organization/commands.py +148 -0
  275. exordos-2.0.0/exordos/cmd/iam/permission/__init__.py +0 -0
  276. exordos-2.0.0/exordos/cmd/iam/permission/commands.py +145 -0
  277. exordos-2.0.0/exordos/cmd/iam/permission_binding/__init__.py +0 -0
  278. exordos-2.0.0/exordos/cmd/iam/permission_binding/commands.py +153 -0
  279. exordos-2.0.0/exordos/cmd/iam/project/__init__.py +0 -0
  280. exordos-2.0.0/exordos/cmd/iam/project/commands.py +157 -0
  281. exordos-2.0.0/exordos/cmd/iam/role/__init__.py +0 -0
  282. exordos-2.0.0/exordos/cmd/iam/role/commands.py +201 -0
  283. exordos-2.0.0/exordos/cmd/iam/role_binding/__init__.py +0 -0
  284. exordos-2.0.0/exordos/cmd/iam/role_binding/commands.py +154 -0
  285. exordos-2.0.0/exordos/cmd/iam/user/__init__.py +0 -0
  286. exordos-2.0.0/exordos/cmd/iam/user/commands.py +242 -0
  287. exordos-2.0.0/exordos/cmd/initialization/__init__.py +0 -0
  288. exordos-2.0.0/exordos/cmd/initialization/commands.py +187 -0
  289. exordos-2.0.0/exordos/cmd/realms/__init__.py +0 -0
  290. exordos-2.0.0/exordos/cmd/realms/commands.py +111 -0
  291. exordos-2.0.0/exordos/cmd/repo/__init__.py +0 -0
  292. exordos-2.0.0/exordos/cmd/repo/commands.py +248 -0
  293. exordos-2.0.0/exordos/cmd/secret/__init__.py +29 -0
  294. exordos-2.0.0/exordos/cmd/secret/certificate/__init__.py +0 -0
  295. exordos-2.0.0/exordos/cmd/secret/certificate/commands.py +207 -0
  296. exordos-2.0.0/exordos/cmd/secret/passwords/__init__.py +0 -0
  297. exordos-2.0.0/exordos/cmd/secret/passwords/commands.py +205 -0
  298. exordos-2.0.0/exordos/cmd/secret/rsa_keys/__init__.py +0 -0
  299. exordos-2.0.0/exordos/cmd/secret/rsa_keys/commands.py +203 -0
  300. exordos-2.0.0/exordos/cmd/secret/ssh_keys/__init__.py +0 -0
  301. exordos-2.0.0/exordos/cmd/secret/ssh_keys/commands.py +266 -0
  302. exordos-2.0.0/exordos/cmd/settings/__init__.py +0 -0
  303. exordos-2.0.0/exordos/cmd/settings/commands.py +487 -0
  304. exordos-2.0.0/exordos/cmd/settings/config.py +119 -0
  305. exordos-2.0.0/exordos/cmd/stand/__init__.py +0 -0
  306. exordos-2.0.0/exordos/cmd/stand/commands.py +1188 -0
  307. exordos-2.0.0/exordos/cmd/stand/constants.py +81 -0
  308. exordos-2.0.0/exordos/cmd/stand/utils_commands.py +205 -0
  309. exordos-2.0.0/exordos/cmd/version/__init__.py +0 -0
  310. exordos-2.0.0/exordos/cmd/version/commands.py +107 -0
  311. exordos-2.0.0/exordos/cmd/vs/__init__.py +27 -0
  312. exordos-2.0.0/exordos/cmd/vs/profiles/__init__.py +0 -0
  313. exordos-2.0.0/exordos/cmd/vs/profiles/commands.py +171 -0
  314. exordos-2.0.0/exordos/cmd/vs/values/__init__.py +0 -0
  315. exordos-2.0.0/exordos/cmd/vs/values/commands.py +252 -0
  316. exordos-2.0.0/exordos/cmd/vs/vars/__init__.py +0 -0
  317. exordos-2.0.0/exordos/cmd/vs/vars/commands.py +312 -0
  318. exordos-2.0.0/exordos/common/__init__.py +0 -0
  319. exordos-2.0.0/exordos/common/cmd_context.py +24 -0
  320. exordos-2.0.0/exordos/common/crypto.py +75 -0
  321. exordos-2.0.0/exordos/common/md_click.py +119 -0
  322. exordos-2.0.0/exordos/common/run.py +104 -0
  323. exordos-2.0.0/exordos/common/table.py +39 -0
  324. exordos-2.0.0/exordos/common/version.py +86 -0
  325. exordos-2.0.0/exordos/constants.py +92 -0
  326. exordos-2.0.0/exordos/exceptions.py +23 -0
  327. exordos-2.0.0/exordos/infra/driver/base.py +22 -0
  328. exordos-2.0.0/exordos/infra/driver/libvirt.py +290 -0
  329. exordos-2.0.0/exordos/infra/libvirt/__init__.py +0 -0
  330. exordos-2.0.0/exordos/infra/libvirt/constants.py +28 -0
  331. exordos-2.0.0/exordos/infra/libvirt/libvirt.py +728 -0
  332. exordos-2.0.0/exordos/logger.py +85 -0
  333. exordos-2.0.0/exordos/packer/debian_12/debian-12.pkr.hcl +124 -0
  334. exordos-2.0.0/exordos/packer/debian_12/plugins.pkr.hcl +12 -0
  335. exordos-2.0.0/exordos/packer/exordos_base/exordos-base.pkr.hcl +115 -0
  336. exordos-2.0.0/exordos/packer/exordos_base/plugins.pkr.hcl +12 -0
  337. exordos-2.0.0/exordos/packer/genesis_base/genesis-base.pkr.hcl +115 -0
  338. exordos-2.0.0/exordos/packer/genesis_base/plugins.pkr.hcl +12 -0
  339. exordos-2.0.0/exordos/packer/genesis_core/genesis-core.pkr.hcl +114 -0
  340. exordos-2.0.0/exordos/packer/genesis_core/plugins.pkr.hcl +12 -0
  341. exordos-2.0.0/exordos/packer/genesis_custom/genesis-custom.pkr.hcl +122 -0
  342. exordos-2.0.0/exordos/packer/genesis_custom/plugins.pkr.hcl +12 -0
  343. exordos-2.0.0/exordos/packer/ubuntu_24/plugins.pkr.hcl +12 -0
  344. exordos-2.0.0/exordos/packer/ubuntu_24/ubuntu-24.pkr.hcl +124 -0
  345. exordos-2.0.0/exordos/password.py +23 -0
  346. exordos-2.0.0/exordos/repo/__init__.py +0 -0
  347. exordos-2.0.0/exordos/repo/base.py +84 -0
  348. exordos-2.0.0/exordos/repo/fs.py +177 -0
  349. exordos-2.0.0/exordos/repo/nginx.py +361 -0
  350. exordos-2.0.0/exordos/repo/utils.py +71 -0
  351. exordos-2.0.0/exordos/spec/genesis_spec.yaml +100 -0
  352. exordos-2.0.0/exordos/stand/__init__.py +0 -0
  353. exordos-2.0.0/exordos/stand/models.py +272 -0
  354. exordos-2.0.0/exordos/templates/cicd/gitlab/.gitlab-ci.yml +42 -0
  355. exordos-2.0.0/exordos/templates/platformizers/languages/common/genesis/genesis.yaml +43 -0
  356. exordos-2.0.0/exordos/templates/platformizers/languages/common/genesis/images/bootstrap.sh +21 -0
  357. exordos-2.0.0/exordos/templates/platformizers/languages/common/genesis/images/install.sh +26 -0
  358. exordos-2.0.0/exordos/templates/platformizers/languages/node20/genesis/genesis.yaml +45 -0
  359. exordos-2.0.0/exordos/templates/platformizers/languages/node20/genesis/images/bootstrap.sh +27 -0
  360. exordos-2.0.0/exordos/templates/platformizers/languages/node20/genesis/images/install.sh +132 -0
  361. exordos-2.0.0/exordos/templates/platformizers/languages/node22/genesis/genesis.yaml +45 -0
  362. exordos-2.0.0/exordos/templates/platformizers/languages/node22/genesis/images/bootstrap.sh +27 -0
  363. exordos-2.0.0/exordos/templates/platformizers/languages/node22/genesis/images/install.sh +132 -0
  364. exordos-2.0.0/exordos/templates/platformizers/languages/node24/genesis/genesis.yaml +45 -0
  365. exordos-2.0.0/exordos/templates/platformizers/languages/node24/genesis/images/bootstrap.sh +27 -0
  366. exordos-2.0.0/exordos/templates/platformizers/languages/node24/genesis/images/install.sh +132 -0
  367. exordos-2.0.0/exordos/templates/platformizers/languages/python/genesis/genesis.yaml +51 -0
  368. exordos-2.0.0/exordos/templates/platformizers/languages/python/genesis/images/bootstrap.sh +21 -0
  369. exordos-2.0.0/exordos/templates/platformizers/languages/python/genesis/images/install.sh +95 -0
  370. exordos-2.0.0/exordos/templates/platformizers/manifests/pgsql/genesis/manifests/{{ project_name }}.yaml.j2 +77 -0
  371. exordos-2.0.0/exordos/templates/platformizers/manifests/pgsql_communal/genesis/manifests/{{ project_name }}.yaml.j2 +69 -0
  372. exordos-2.0.0/exordos/templates/platformizers/manifests/stateless/genesis/manifests/{{ project_name }}.yaml.j2 +36 -0
  373. exordos-2.0.0/exordos/tests/__init__.py +0 -0
  374. exordos-2.0.0/exordos/tests/functional/__init__.py +0 -0
  375. exordos-2.0.0/exordos/tests/functional/cli/__init__.py +0 -0
  376. exordos-2.0.0/exordos/tests/functional/cli/test_cli.py +211 -0
  377. exordos-2.0.0/exordos/tests/functional/conftest.py +45 -0
  378. exordos-2.0.0/exordos/tests/functional/utils/exordos_repo.yaml +4 -0
  379. exordos-2.0.0/exordos/tests/functional/utils/exordosctl.yaml +30 -0
  380. exordos-2.0.0/exordos/tests/manual/__init__.py +0 -0
  381. exordos-2.0.0/exordos/tests/manual/test_cli.py +28 -0
  382. exordos-2.0.0/exordos/tests/unit/__init__.py +0 -0
  383. exordos-2.0.0/exordos/tests/unit/conftest.py +109 -0
  384. exordos-2.0.0/exordos/tests/unit/test_basic.py +20 -0
  385. exordos-2.0.0/exordos/tests/unit/test_builder.py +199 -0
  386. exordos-2.0.0/exordos/tests/unit/test_cmd_backup.py +318 -0
  387. exordos-2.0.0/exordos/tests/unit/test_dependency.py +325 -0
  388. exordos-2.0.0/exordos/tests/unit/test_domains_for_backup.py +58 -0
  389. exordos-2.0.0/exordos/tests/unit/test_get_project_version.py +117 -0
  390. exordos-2.0.0/exordos/tests/unit/test_packer.py +33 -0
  391. exordos-2.0.0/exordos/tests/unit/test_templaters_engine.py +127 -0
  392. exordos-2.0.0/exordos/tests/unit/test_wizard_base.py +121 -0
  393. exordos-2.0.0/exordos/utils.py +565 -0
  394. exordos-2.0.0/exordos/version.py +25 -0
  395. exordos-2.0.0/exordos/wizards/__init__.py +0 -0
  396. exordos-2.0.0/exordos/wizards/constants.py +17 -0
  397. exordos-2.0.0/exordos/wizards/engines/__init__.py +0 -0
  398. exordos-2.0.0/exordos/wizards/engines/base.py +26 -0
  399. exordos-2.0.0/exordos/wizards/engines/templaters/__init__.py +0 -0
  400. exordos-2.0.0/exordos/wizards/engines/templaters/functions.py +75 -0
  401. exordos-2.0.0/exordos/wizards/engines/templaters/settings.py +205 -0
  402. exordos-2.0.0/exordos/wizards/engines/templaters/templaters.py +131 -0
  403. exordos-2.0.0/exordos/wizards/exceptions.py +29 -0
  404. exordos-2.0.0/exordos/wizards/scenarios/__init__.py +0 -0
  405. exordos-2.0.0/exordos/wizards/scenarios/base.py +106 -0
  406. exordos-2.0.0/exordos/wizards/scenarios/cicd.py +90 -0
  407. exordos-2.0.0/exordos/wizards/scenarios/platformizers.py +444 -0
  408. exordos-2.0.0/exordos/wizards/wizards/__init__.py +0 -0
  409. exordos-2.0.0/exordos/wizards/wizards/base.py +115 -0
  410. exordos-2.0.0/exordos/wizards/wizards/console.py +170 -0
  411. exordos-2.0.0/exordos/wizards/wizards/terminal.py +260 -0
  412. exordos-2.0.0/exordos.egg-info/PKG-INFO +443 -0
  413. exordos-2.0.0/exordos.egg-info/SOURCES.txt +421 -0
  414. exordos-2.0.0/exordos.egg-info/dependency_links.txt +1 -0
  415. exordos-2.0.0/exordos.egg-info/entry_points.txt +10 -0
  416. exordos-2.0.0/exordos.egg-info/requires.txt +43 -0
  417. exordos-2.0.0/exordos.egg-info/top_level.txt +5 -0
  418. exordos-2.0.0/mkdocs.yml +89 -0
  419. exordos-2.0.0/pyproject.toml +218 -0
  420. exordos-2.0.0/setup.cfg +4 -0
  421. exordos-2.0.0/setup.py +100 -0
  422. exordos-2.0.0/tox.ini +90 -0
  423. exordos-2.0.0/uv.lock +1991 -0
@@ -0,0 +1,12 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "uv"
4
+ directory: "/"
5
+ schedule:
6
+ interval: "weekly"
7
+ open-pull-requests-limit: 10
8
+ - package-ecosystem: "github-actions"
9
+ directory: "/"
10
+ schedule:
11
+ interval: "weekly"
12
+ open-pull-requests-limit: 10
@@ -0,0 +1,46 @@
1
+ name: build binary
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ jobs:
7
+ build_binaries:
8
+ strategy:
9
+ matrix:
10
+ os: [
11
+ ubuntu-latest,
12
+ macos-latest
13
+ ]
14
+ python-version: ["3.14"]
15
+ runs-on: ${{ matrix.os }}
16
+ steps:
17
+ - name: Checkout repository
18
+ uses: actions/checkout@v6
19
+ with:
20
+ fetch-depth: 30
21
+ - name: Set up Python
22
+ uses: actions/setup-python@v6
23
+ with:
24
+ python-version: ${{ matrix.python-version }}
25
+ - name: Install deps (Linux)
26
+ if: runner.os == 'Linux'
27
+ run: sudo apt update && sudo apt install --yes ca-certificates
28
+ - name: Install uv
29
+ uses: astral-sh/setup-uv@v7
30
+ - name: Install tox-uv
31
+ run: uv tool install tox --with tox-uv
32
+ - name: Build executable
33
+ run: tox -e bin
34
+ - name: Rename executable
35
+ run: |
36
+ if [[ "$RUNNER_OS" == "Linux" ]]; then
37
+ mv dist/exordos dist/exordos-linux
38
+ elif [[ "$RUNNER_OS" == "macOS" ]]; then
39
+ mv dist/exordos dist/exordos-macos
40
+ fi
41
+ shell: bash
42
+ - name: Upload artifact
43
+ uses: actions/upload-artifact@v7
44
+ with:
45
+ name: exordos-${{ matrix.os }}
46
+ path: dist/*
@@ -0,0 +1,55 @@
1
+ name: Build GitHub Pages
2
+ on:
3
+ push:
4
+ branches:
5
+ - master
6
+ paths:
7
+ - 'docs/**'
8
+ - mkdocs.yml
9
+ workflow_dispatch:
10
+ permissions:
11
+ contents: write
12
+ pages: write
13
+ id-token: write
14
+
15
+ jobs:
16
+ build_mkdocs:
17
+ runs-on: ubuntu-latest
18
+
19
+ steps:
20
+ - name: Checkout code
21
+ uses: actions/checkout@v6
22
+ with:
23
+ fetch-depth: 0
24
+ - uses: actions/setup-python@v6
25
+ with:
26
+ python-version: 3.12
27
+ - name: Install requirements
28
+ run: sudo apt update && sudo apt install --yes libev-dev
29
+ - name: Install uv
30
+ uses: astral-sh/setup-uv@v7
31
+ - name: Install tox-uv
32
+ run: uv tool install tox --with tox-uv
33
+ - name: Deploy docs to GitHub Pages
34
+ run: tox -e docs-deploy
35
+
36
+ deploy_mkdocs:
37
+ needs: build_mkdocs
38
+ environment:
39
+ name: github-pages
40
+ url: ${{ steps.deployment.outputs.page_url }}
41
+ runs-on: ubuntu-latest
42
+ steps:
43
+ - name: Checkout
44
+ uses: actions/checkout@v6
45
+ with:
46
+ ref: gh-pages
47
+ - name: Setup Pages
48
+ uses: actions/configure-pages@v6
49
+ - name: Upload artifact
50
+ uses: actions/upload-pages-artifact@v5
51
+ with:
52
+ path: '.'
53
+ - name: Deploy to GitHub Pages
54
+ id: deployment
55
+ uses: actions/deploy-pages@v5
@@ -0,0 +1,26 @@
1
+ name: Markdown Lint
2
+ description: Lint Markdown files
3
+
4
+ on:
5
+ push:
6
+ paths:
7
+ - 'docs/**'
8
+ - mkdocs.yml
9
+
10
+ jobs:
11
+ lint:
12
+ runs-on: ubuntu-24.04
13
+ steps:
14
+ - uses: actions/checkout@v6
15
+ with:
16
+ fetch-depth: 0
17
+ - uses: tj-actions/changed-files@v47
18
+ id: changed-files
19
+ with:
20
+ files: '**/*.md'
21
+ separator: ","
22
+ - uses: DavidAnson/markdownlint-cli2-action@v23
23
+ if: steps.changed-files.outputs.any_changed == 'true'
24
+ with:
25
+ globs: ${{ steps.changed-files.outputs.all_changed_files }}
26
+ separator: ","
@@ -0,0 +1,172 @@
1
+ name: Publish Python 🐍 distribution 📦 and binaries
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - '*'
7
+
8
+ env:
9
+ PROJECT_NAME: exordos
10
+ DEVTOOLS_PATH: https://repository.genesis-core.tech/exordos/
11
+ REPO_ENDPOINT_PUT: http://10.20.0.1:8082
12
+
13
+ jobs:
14
+ build_python:
15
+ name: Build distribution 📦
16
+ runs-on: ubuntu-latest
17
+
18
+ steps:
19
+ - uses: actions/checkout@v6
20
+ with:
21
+ persist-credentials: false
22
+ - name: Set up Python
23
+ uses: actions/setup-python@v6
24
+ with:
25
+ python-version: "3.14"
26
+ - name: Install pypa/build
27
+ run: >-
28
+ python3 -m
29
+ pip install
30
+ build
31
+ --user
32
+ - name: Build a binary wheel and a source tarball
33
+ run: python3 -m build
34
+ - name: Store the distribution packages
35
+ uses: actions/upload-artifact@v7
36
+ with:
37
+ name: python-package-distributions
38
+ path: dist/
39
+
40
+ publish-to-pypi:
41
+ name: Publish Python 🐍 distribution 📦 to PyPI
42
+ needs:
43
+ - build_python
44
+ runs-on: ubuntu-latest
45
+ environment:
46
+ name: pypi
47
+ url: https://pypi.org/p/exordos
48
+ permissions:
49
+ id-token: write # IMPORTANT: mandatory for trusted publishing
50
+
51
+ steps:
52
+ - name: Download all the dists
53
+ uses: actions/download-artifact@v8
54
+ with:
55
+ name: python-package-distributions
56
+ path: dist/
57
+ - name: Publish distribution 📦 to PyPI
58
+ uses: pypa/gh-action-pypi-publish@release/v1
59
+
60
+ build_binaries:
61
+ strategy:
62
+ matrix:
63
+ os: [ubuntu-latest, macos-latest]
64
+ python-version: ["3.14"]
65
+ runs-on: ${{ matrix.os }}
66
+ steps:
67
+ - name: Checkout repository
68
+ uses: actions/checkout@v6
69
+ with:
70
+ fetch-depth: 30
71
+ - name: Set up Python
72
+ uses: actions/setup-python@v6
73
+ with:
74
+ python-version: ${{ matrix.python-version }}
75
+ - name: Install libev (Linux)
76
+ if: runner.os == 'Linux'
77
+ run: sudo apt update && sudo apt install --yes ca-certificates
78
+ - name: Install uv
79
+ uses: astral-sh/setup-uv@v7
80
+ - name: Install tox-uv
81
+ run: uv tool install tox --with tox-uv
82
+ - name: Build executable
83
+ run: tox -e bin
84
+ - name: Rename executable
85
+ run: |
86
+ if [[ "$RUNNER_OS" == "Linux" ]]; then
87
+ mv dist/exordos dist/exordos-linux
88
+ elif [[ "$RUNNER_OS" == "macOS" ]]; then
89
+ mv dist/exordos dist/exordos-macos
90
+ fi
91
+ shell: bash
92
+ - name: Upload artifact
93
+ uses: actions/upload-artifact@v7
94
+ with:
95
+ name: exordos-${{ matrix.os }}
96
+ path: dist/*
97
+
98
+ github-release:
99
+ name: Create GitHub Release with artifacts
100
+ needs:
101
+ - publish-to-pypi
102
+ - build_binaries
103
+ runs-on: ubuntu-latest
104
+ permissions:
105
+ contents: write
106
+ id-token: write
107
+
108
+ steps:
109
+ - name: Download Python distributions
110
+ uses: actions/download-artifact@v8
111
+ with:
112
+ name: python-package-distributions
113
+ path: dist/
114
+ - name: Download Linux binary
115
+ uses: actions/download-artifact@v8
116
+ with:
117
+ name: exordos-ubuntu-latest
118
+ path: dist/
119
+ - name: Download macOS binary
120
+ uses: actions/download-artifact@v8
121
+ with:
122
+ name: exordos-macos-latest
123
+ path: dist/
124
+ - name: Create GitHub Release
125
+ env:
126
+ GITHUB_TOKEN: ${{ github.token }}
127
+ run: >-
128
+ gh release create
129
+ "$GITHUB_REF_NAME"
130
+ --repo "$GITHUB_REPOSITORY"
131
+ --notes ""
132
+ - name: Upload release artifacts
133
+ env:
134
+ GITHUB_TOKEN: ${{ github.token }}
135
+ run: >-
136
+ gh release upload
137
+ "$GITHUB_REF_NAME" dist/**
138
+ --repo "$GITHUB_REPOSITORY"
139
+
140
+ exordos-release:
141
+ name: Create exordos Release with artifacts
142
+ needs:
143
+ - build_binaries
144
+ runs-on: self-hosted
145
+ steps:
146
+ - name: Download Linux binary
147
+ uses: actions/download-artifact@v8
148
+ with:
149
+ name: exordos-ubuntu-latest
150
+ path: dist/
151
+ - name: Download macOS binary
152
+ uses: actions/download-artifact@v8
153
+ with:
154
+ name: exordos-macos-latest
155
+ path: dist/
156
+ - name: Push artifacts to repository
157
+ run: |
158
+ set -eux
159
+ chmod +x ./dist/exordos-linux
160
+ VERSION=$(./dist/exordos-linux --silent version)
161
+
162
+ # Upload VERSION release
163
+ curl -X PUT --upload-file ./dist/exordos-macos \
164
+ $REPO_ENDPOINT_PUT/${PROJECT_NAME}/${VERSION}/exordos-macos
165
+ curl -X PUT --upload-file ./dist/exordos-linux \
166
+ $REPO_ENDPOINT_PUT/${PROJECT_NAME}/${VERSION}/exordos-linux
167
+
168
+ # Upload latest release
169
+ curl -X PUT --upload-file ./dist/exordos-macos \
170
+ $REPO_ENDPOINT_PUT/${PROJECT_NAME}/latest/exordos-macos
171
+ curl -X PUT --upload-file ./dist/exordos-linux \
172
+ $REPO_ENDPOINT_PUT/${PROJECT_NAME}/latest/exordos-linux
@@ -0,0 +1,72 @@
1
+ name: tests
2
+
3
+ on:
4
+ push:
5
+ paths-ignore:
6
+ - 'docs/**'
7
+ - 'mkdocs.yml'
8
+ - '.markdownlint.yaml'
9
+ pull_request:
10
+ paths-ignore:
11
+ - 'docs/**'
12
+ - 'mkdocs.yml'
13
+ - '.markdownlint.yaml'
14
+
15
+ jobs:
16
+ Lint:
17
+ runs-on: ubuntu-24.04
18
+ strategy:
19
+ fail-fast: true
20
+ matrix:
21
+ python-version: ["3.14"]
22
+ steps:
23
+ - uses: actions/checkout@v6
24
+ - name: Set up Python ${{ matrix.python-version }}
25
+ uses: actions/setup-python@v6
26
+ with:
27
+ python-version: ${{ matrix.python-version }}
28
+ - name: Install uv
29
+ uses: astral-sh/setup-uv@v7
30
+ - name: Install tox-uv
31
+ run: uv tool install tox --with tox-uv
32
+ - name: ruff
33
+ run: |
34
+ tox -e ruff-check
35
+ Tests:
36
+ runs-on: ubuntu-24.04
37
+ strategy:
38
+ fail-fast: true
39
+ matrix:
40
+ python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
41
+ steps:
42
+ - uses: actions/checkout@v6
43
+ - name: Set up Python ${{ matrix.python-version }}
44
+ uses: actions/setup-python@v6
45
+ with:
46
+ python-version: ${{ matrix.python-version }}
47
+ - name: Install uv
48
+ uses: astral-sh/setup-uv@v7
49
+ - name: Install tox-uv
50
+ run: uv tool install tox --with tox-uv
51
+ - name: Unit tests
52
+ run: |
53
+ tox -e ${{ matrix.python-version }}
54
+ Coverage:
55
+ runs-on: ubuntu-24.04
56
+ strategy:
57
+ fail-fast: true
58
+ matrix:
59
+ python-version: ["3.14"]
60
+ steps:
61
+ - uses: actions/checkout@v6
62
+ - name: Set up Python ${{ matrix.python-version }}
63
+ uses: actions/setup-python@v6
64
+ with:
65
+ python-version: ${{ matrix.python-version }}
66
+ - name: Install uv
67
+ uses: astral-sh/setup-uv@v7
68
+ - name: Install tox-uv
69
+ run: uv tool install tox --with tox-uv
70
+ - name: Coverage
71
+ run: |
72
+ tox -e begin,${{ matrix.python-version }},${{ matrix.python-version }}-functional,end
@@ -0,0 +1,35 @@
1
+ name: Upload and update on self-hosted
2
+
3
+ on: workflow_dispatch
4
+
5
+ env:
6
+ REPO_ENDPOINT_PUT: http://10.20.0.1:8082
7
+
8
+ jobs:
9
+ upload-install-sh:
10
+ name: Upload install.sh
11
+ runs-on: self-hosted
12
+ steps:
13
+ - uses: actions/checkout@v6
14
+ with:
15
+ persist-credentials: false
16
+ - name: Push artifacts to repository
17
+ run: curl -X PUT --upload-file ./etc/install.sh $REPO_ENDPOINT_PUT/install.sh
18
+
19
+ update-exordos-cli:
20
+ name: update exordos cli
21
+ needs: upload-install-sh
22
+ runs-on: self-hosted
23
+ steps:
24
+ - name: update exordos cli
25
+ run: |
26
+ set -eux
27
+
28
+ mkdir -p "$HOME/bin"
29
+ curl --fail --show-error --location --progress-bar https://repository.genesis-core.tech/exordos/latest/exordos-linux --output "$HOME/bin/exordos"
30
+ chmod +x "$HOME/bin/exordos"
31
+
32
+ source ~/.profile
33
+ which exordos
34
+ exordos version
35
+
@@ -0,0 +1,132 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # editors
10
+ *~
11
+
12
+ # IDE
13
+ .idea/
14
+ .gigaide/
15
+ .vscode/
16
+
17
+ # Distribution / packaging
18
+ .Python
19
+ build/
20
+ develop-eggs/
21
+ dist/
22
+ docker/common/bin
23
+ downloads/
24
+ eggs/
25
+ .eggs/
26
+ lib/
27
+ lib64/
28
+ parts/
29
+ sdist/
30
+ var/
31
+ wheels/
32
+ *.egg-info/
33
+ .installed.cfg
34
+ *.egg
35
+ MANIFEST
36
+ AUTHORS
37
+ ChangeLog
38
+ cover/
39
+
40
+ # OS
41
+ .DS_Store
42
+
43
+ # PyInstaller
44
+ # Usually these files are written by a python script from a template
45
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
46
+ *.manifest
47
+ *.spec
48
+
49
+ # Installer logs
50
+ pip-log.txt
51
+ pip-delete-this-directory.txt
52
+
53
+ # Unit test / coverage reports
54
+ htmlcov/
55
+ .tox/
56
+ .tox
57
+ .coverage
58
+ .coverage.*
59
+ .cache
60
+ nosetests.xml
61
+ coverage.xml
62
+ *.cover
63
+ .hypothesis/
64
+ .pytest_cache/
65
+ .testrepository/
66
+
67
+ # Translations
68
+ *.mo
69
+ *.pot
70
+
71
+ # Django stuff:
72
+ *.log
73
+ local_settings.py
74
+ db.sqlite3
75
+
76
+ # Flask stuff:
77
+ instance/
78
+ .webassets-cache
79
+
80
+ # Scrapy stuff:
81
+ .scrapy
82
+
83
+ # Sphinx documentation
84
+ docs/_build/
85
+
86
+ # PyBuilder
87
+ target/
88
+
89
+ # Jupyter Notebook
90
+ .ipynb_checkpoints
91
+
92
+ # pyenv
93
+ .python-version
94
+
95
+ # celery beat schedule file
96
+ celerybeat-schedule
97
+
98
+ # SageMath parsed files
99
+ *.sage.py
100
+
101
+ # Environments
102
+ .env
103
+ .venv
104
+ env/
105
+ venv/
106
+ ENV/
107
+ env.bak/
108
+ venv.bak/
109
+ *.conf
110
+
111
+ # Spyder project settings
112
+ .spyderproject
113
+ .spyproject
114
+
115
+ # Rope project settings
116
+ .ropeproject
117
+
118
+ # mkdocs documentation
119
+ /site
120
+
121
+ # mypy
122
+ .mypy_cache/
123
+
124
+ # Documentation
125
+ docs/build
126
+ docs/source/*.png
127
+
128
+ # Vagrant
129
+ .vagrant/
130
+
131
+ # GC build
132
+ output/
@@ -0,0 +1,150 @@
1
+ default: false
2
+
3
+ # MD001/heading-increment : Heading levels should only increment by one level at a time : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md001.md
4
+ MD001: true
5
+
6
+ # MD003/heading-style : Heading style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md003.md
7
+ MD003:
8
+ style: "consistent"
9
+
10
+ # MD004/ul-style : Unordered list style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md004.md
11
+ MD004:
12
+ style: "consistent"
13
+
14
+ # MD005/list-indent : Inconsistent indentation for list items at the same level : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md005.md
15
+ MD005: true
16
+
17
+ # MD007/ul-indent : Unordered list indentation : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md007.md
18
+ MD007:
19
+ indent: 4
20
+
21
+ # MD009/no-trailing-spaces : Trailing spaces : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md009.md
22
+ MD009: true
23
+
24
+ # MD010/no-hard-tabs : Hard tabs : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md010.md
25
+ MD010: true
26
+
27
+ # MD011/no-reversed-links : Reversed link syntax : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md011.md
28
+ MD011: true
29
+
30
+ # MD012/no-multiple-blanks : Multiple consecutive blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md012.md
31
+ MD012: true
32
+
33
+ # MD013/line-length Line length https://github.com/DavidAnson/markdownlint/blob/v0.40.0/doc/md013.md
34
+ MD013: false
35
+
36
+ # MD014/commands-show-output : Dollar signs used before commands without showing output : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md014.md
37
+ MD014: true
38
+
39
+ # MD018/no-missing-space-atx : No space after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md018.md
40
+ MD018: true
41
+
42
+ # MD019/no-multiple-space-atx : Multiple spaces after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md019.md
43
+ MD019: true
44
+
45
+ # MD020/no-missing-space-closed-atx : No space inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md020.md
46
+ MD020: true
47
+
48
+ # MD021/no-multiple-space-closed-atx : Multiple spaces inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md021.md
49
+ MD021: true
50
+
51
+ # MD022/blanks-around-headings : Headings should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md022.md
52
+ MD022: true
53
+
54
+ # MD023/heading-start-left : Headings must start at the beginning of the line : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md023.md
55
+ MD023: true
56
+
57
+ # MD024/no-duplicate-heading : Multiple headings with the same content : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md024.md
58
+ MD024:
59
+ siblings_only: true
60
+
61
+ # MD025/single-title/single-h1 : Multiple top-level headings in the same document : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md025.md
62
+ MD025: true
63
+
64
+ # MD026/no-trailing-punctuation : Trailing punctuation in heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md026.md
65
+ MD026: true
66
+
67
+ # MD027/no-multiple-space-blockquote : Multiple spaces after blockquote symbol : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md027.md
68
+ MD027: true
69
+
70
+ # MD028/no-blanks-blockquote : Blank line inside blockquote : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md028.md
71
+ MD028: true
72
+
73
+ # MD029/ol-prefix : Ordered list item prefix : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md029.md
74
+ MD029:
75
+ style: "ordered"
76
+
77
+ # MD030/list-marker-space : Spaces after list markers : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md030.md
78
+ MD030:
79
+ ul_single: 1
80
+ ol_single: 1
81
+ ul_multi: 1
82
+ ol_multi: 1
83
+
84
+ # MD031/blanks-around-fences : Fenced code blocks should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md031.md
85
+ MD031: true
86
+
87
+ # MD032/blanks-around-lists : Lists should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md032.md
88
+ MD032: true
89
+
90
+ # MD034/no-bare-urls : Bare URL used : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md034.md
91
+ MD034: true
92
+
93
+ # MD035/hr-style : Horizontal rule style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md035.md
94
+ MD035: true
95
+
96
+ # MD036/no-emphasis-as-heading : Emphasis used instead of a heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md036.md
97
+ MD036: true
98
+
99
+ # MD037/no-space-in-emphasis : Spaces inside emphasis markers : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md037.md
100
+ MD037: true
101
+
102
+ # MD038/no-space-in-code : Spaces inside code span elements : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md038.md
103
+ MD038: true
104
+
105
+ # MD039/no-space-in-links : Spaces inside link text : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md039.md
106
+ MD039: true
107
+
108
+ # MD040/fenced-code-language : Fenced code blocks should have a language specified : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md040.md
109
+ MD040: true
110
+
111
+ # MD042/no-empty-links : No empty links : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md042.md
112
+ MD042: true
113
+
114
+ # MD045/no-alt-text : Images should have alternate text (alt text) : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md045.md
115
+ MD045: true
116
+
117
+ # MD046/code-block-style : Code block style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md046.md
118
+ MD046:
119
+ style: "fenced"
120
+
121
+ # MD047/single-trailing-newline : Files should end with a single newline character : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md047.md
122
+ MD047: true
123
+
124
+ # MD048/code-fence-style : Code fence style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md048.md
125
+ MD048:
126
+ style: "backtick"
127
+
128
+ # MD049/emphasis-style : Emphasis style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md049.md
129
+ MD049:
130
+ style: "asterisk"
131
+
132
+ # MD050/strong-style : Strong style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md050.md
133
+ MD050:
134
+ style: "consistent"
135
+
136
+ # MD051/link-fragments : Link fragments should be valid : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md051.md
137
+ MD051: true
138
+
139
+ # MD053/link-image-reference-definitions : Link and image reference definitions should be needed : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md053.md
140
+ MD053: true
141
+
142
+ # MD054/link-image-style : Link and image style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md054.md
143
+ MD054: true
144
+
145
+ # MD055/table-pipe-style : Table pipe style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md055.md
146
+ MD055:
147
+ style: "no_leading_or_trailing"
148
+
149
+ # MD056/table-column-count : Table column count : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md056.md
150
+ MD056: true