Polemarch Versions Save

Simple WEB gui for infrastructure management by ansible playbooks or modules. This is only mirror with bins in releases.

3.0.3

9 months ago

Changelog:

  • Feature(backend): Migrate to vstutils 5.6.
  • Feature(backend): Provide to setup normal headers to endpoint operations.
  • Feature(plugins): Provide async support for history write plugins.
  • Feature(web): Provided lightweight healthcheck for webserver /api/live/.
  • Fix(backend): Improved healthcheck endpoint to make simple db requests and check current celery connection.
  • Fix(dev): Building with docker compose.
  • Chore(service): Improved centrifugo notification performance and stability.
  • Chore(web): Improved performance for static files.

3.0.2

1 year ago

Changelog:

  • Feature(backend): Setup filename for ANSIBLE_STRING plugin.
  • Feature(backend): Send object_name of models in hooks.
  • Fix(backend): Allow to configure rpc backend and broker using environment variables in dockerrun.
  • Fix(package): Do not store compressed files.
  • Chore(deps): Update rtd, prod and tests dependencies for backend.
  • Docs: Add more information about architecture, plugins and centrifugo settings.

3.0.1

1 year ago

Changelog:

  • Feature(backend): History inventory field now has value of arg_shown_on_history_as_inventory of execution plugin.
  • Fix(backend): Migrate initiator fields to new model instances.

3.0.0

1 year ago

BREAKING CHANGES:

  • Dropped Python<3.8.
  • Dropped API v2 and v3.
  • Execution template, template option, periodic task models and API changed a lot. See documentation for more info.
  • Hosts and groups count removed from /stats/. Execution and inventory plugins count added instead.
  • All API paths containing module or playbook now named ansible_module or ansible_playbook accordingly.
  • Old ci_template variable values are not compatible with new which require template option ids. Need to change manually.
  • Paths end with ../set_owner/ now handles PATCH method instead of POST. Same for /project/{id}/sync/, /history/{id}/cancel/.
  • Import inventory actions now called import_inventory.
  • plugins section renamed to execution.plugin in settings.ini.
  • Database migrations are potentially dangerous, it's recommended to make backup before.
  • Inventory model now has plugin field which is required in API.
  • Remove import_inventory_from_file action.
  • Rework import_inventory action.
  • Remove master_project from Host, Group and Inventory and remove InventoryItems abstract model itself.
  • Execution plugins now must provide compatible_inventory_plugins setting. If not provided this is understood that execution plugin is incompatible with any inventory.
  • Execution plugins now should be imported from polemarch.plugins.execution module instead of polemarch.plugins.
  • Execution plugin's get_execution_data now returns command and env vars only. For raw_inventory there is get_raw_inventory method.

Changelog:

  • Feature(backend): Send history output to multiple places.
  • Feature(backend): Create POLEMARCH_DB, ANSIBLE_STRING and ANSIBLE_FILE plugins which are handle inventory data structure and processing. Plugins may work with state or db and may support import or not.
  • Feature(backend): Hide hosts db stuff for state handled plugins and state action for db handled plugins.
  • Feature(backend): Option compatible_inventory_plugins is dictionary of field names and tuple of plugin names.
  • Feature(backend): Make get_pre_commands hook for execution plugins.
  • Feature(backend): Allow to save multiple commands in history instance.
  • Feature(backend): Create DynamicPluginField to allow inventory plugin have to_representation, to_internal etc.
  • Feature(frontend): Add inventory plugins counter to dashboard.
  • Feature(frontend): Support filters by InventoryAutoCompletionField field and filter supported plugins in execute actions.
  • Feature(frontend): Display execution args as fields in history page.
  • Fix(backend): Deleting template options when inventory removes doesn't work with postgres.
  • Fix(backend): Always save revision to history instead of branch.
  • Fix(backend): Make import_inventory action atomic.
  • Fix(backend): import_inventory creates state for inventory if it's state managed.
  • Fix(backend): Remove patch method from inventory state edit action because it resets data if no data sent.
  • Fix(docs): RTD build with new Python version.
  • Chore(backend): Test execution plugins.
  • Chore(backend): Bump vstutils version to 5.4.0.
  • Chore(frontend): Update frontend dependencies.
  • Chore(docs): Update execution plugins doc according to changes.
  • Chore(docs): Update information with latest changes of vstutils.
  • Refactor(backend): Rewrite all views using create_view, @SimpleAction, @Action, @EmptyAction where possible.
  • Refactor(backend): Refactor plugin executions so CELERY_TASK_SERIALIZER='json' now can be used.
  • Refactor(backend): Create ExecutionTemplate (instead of Template), ExecutionTemplateOption (instead of TemplateOption), TemplatePeriodicTask (instead of PeriodicTask) models.
  • Refactor(backend): Add support for parsing new template format in .polemarch.yaml, make old format deprecated.
  • Refactor(backend): Remove unnecessary frontend code, such as setting hideNotRequired = true, as it can be done now on backend.
  • Refactor(backend): Removed set_inventory_field openapi hook.
  • Refactor(backend): Move inventory rendering logic to plugins.
  • Refactor(backend): Move inventory import logic to plugins.
  • Refactor(backend): Move history and execution plugins to polemarch.plugins package.
  • Refactoring(backend): Execute and template option create actions now validates all fields related to Inventory instead of just inventory field.
  • Docs: Update GUI workflow docs screenshots.
  • Docs: Add manual for creating inventory plugins.
  • Docs: Add GUI workflow docs for ANSIBLE_STRING and ANSIBLE_FILE inventories.
  • Service: Use django.core.cache.backends.redis.RedisCache instead of django_redis.cache.RedisCache.

2.3.1

1 year ago

Changelog:

  • Fix: Execution output now works as expected (probably).
  • Chore: Update frontend dependencies.
  • Chore: Add babel config.
  • Chore: Update eslint config.
  • Chore: Add vue and corejs dev dependencies.
  • Chore(docs): Migrate to sphinxcontrib-openapi for building schema docs.
  • Chore(docs): Add information about admin in installation.rst
  • Refactor: Remove OldLinesMixin, use script setup and use useAutoUpdate.

2.3.0

1 year ago

Changelog:

  • Feature(git): Provide to setup config params for git operations.
  • Feature(CI): Deploy latest release with werf export.
  • Feature(service): Deploy Polemarch to k8s via werf
  • Feature(backend): Add project and execution metrics.
  • Feature(backend): Process override field in template execute action.
  • Fix(docs): RTD can't build docs.
  • Chore(deps): Update vstutils to 5.2.1.
  • Chore(api): Use schema field inspection for inventory field.
  • Chore(CI): Migrate to lightweight image for js linting.
  • Chore(tests): Add unit tests for ansible plugins.
  • Chore(deps): Update frontend dependencies.
  • Chore(deps): Update vstutils to 5.2.4.
  • Chore: Fix typo in "Statistics" word.
  • Refactoring: Move template kind/plugin map to constants.
  • Refactoring: Remove ACL handlers.
  • Refactoring: Remove default permission ModelPermission and use single SetOwnerPermission.
  • Refactoring: Remove BaseModel, BModel and so on and use them from vstutils.
  • Optimization: Optimize filter_by_user query.
  • Docs: Add info about sqlite troubles with nested groups.

2.2.1

1 year ago

Changelog:

  • Fix(backend): ansible_ssh_private_key_file not generates in execution folder.

2.1.2

1 year ago

Changelog:

  • Feature(service): Split notifications about updates in centrifugo by labels.
  • Feature: Display values of view field in breadcrumbs instead of id.
  • Chore(deps): Update vstutils to 5.1 release.
  • Fix(UI): Fix pagination, groups surfing, etc.
  • Optimization(api): Improve serialization performance.
  • Optimization(UI): Less requests to api.

2.2.0

1 year ago

Changelog:

  • Feature: Create plugins system which allows to execute custom command from Polemarch.
  • Fix: Fix FK inventory field showing id instead of name (vstutils>=5.2.0).
  • Fix: Add patch to setup.py which raises compile error if frontend hasn't built.
  • Refactor: Use BaseEnum.LOWER in enums.
  • Refactor: test_community_templates now uses MockServer and doesn't make calls outside.
  • Refactor: Get rid of weird template execution approach with test client and use PLUGIN_HANDLERS instead.
  • Chore: Update vstutils to 5.1.11.
  • Chore: Add openssh-client dependency to production docker build.

2.1.1

1 year ago
Changelog:
  • Fix: repo_sync_on_run in git projects with credentials now working.