js7-client-python 2.0.1__py3-none-any.whl
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.
- js7/__init__.py +8 -0
- js7/api/joc/http/v_2_8_2/agent/cluster/confirm_node_loss.py +36 -0
- js7/api/joc/http/v_2_8_2/agent/cluster/switchover.py +36 -0
- js7/api/joc/http/v_2_8_2/agent/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/agents.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/cluster/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/cluster/deploy.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/cluster/revoke.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/cluster/store.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/export.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/import.py +74 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/deploy.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/revoke.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/store.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/subagents/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/subagents/disable.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/subagents/enable.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/subagents/reset.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/cluster/subagents/store.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/deploy.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/disable.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/enable.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/revoke.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/inventory/store.py +36 -0
- js7/api/joc/http/v_2_8_2/agents/reset.py +36 -0
- js7/api/joc/http/v_2_8_2/authentication/auth.py +32 -0
- js7/api/joc/http/v_2_8_2/authentication/joc_cockpit_permissions.py +28 -0
- js7/api/joc/http/v_2_8_2/authentication/login.py +35 -0
- js7/api/joc/http/v_2_8_2/authentication/logout.py +28 -0
- js7/api/joc/http/v_2_8_2/configuration/configuration.py +36 -0
- js7/api/joc/http/v_2_8_2/configuration/save.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/abort.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/abort_and_restart.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/cluster/appoint_nodes.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/cluster/confirm_node_loss.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/cluster/switchover.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/components.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/controller.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/register.py +42 -0
- js7/api/joc/http/v_2_8_2/controller/restart.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/terminate.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/test.py +36 -0
- js7/api/joc/http/v_2_8_2/controller/unregister.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/cancel.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/copy.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/generate.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/modify.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/orders.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/orders/submit.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/projections/calendar.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/projections/dates.py +36 -0
- js7/api/joc/http/v_2_8_2/daily_plan/projections/recreate.py +28 -0
- js7/api/joc/http/v_2_8_2/daily_plan/submissions/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/account/change_password.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/account/permissions.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/account/rename.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/account/store.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/accounts/accounts.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/accounts/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/accounts/disable.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/accounts/enable.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/accounts/reset_password.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/blocked_account/store.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/blocked_accounts/blocked_accounts.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/blocked_accounts/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/folder/folder.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/folder/rename.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/folders/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/folders/folders.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/folders/store.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/identity_service/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/identity_service/identity_service.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/identity_service/rename.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/identity_service/store.py +42 -0
- js7/api/joc/http/v_2_8_2/iam/identity_services/identity_services.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/permission/permission.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/permission/rename.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/permissions/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/permissions/permissions.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/permissions/store.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/role/rename.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/role/role.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/role/store.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/roles/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/iam/roles/roles.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/changes/changes.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/dependencies.py +33 -0
- js7/api/joc/http/v_2_8_2/inventory/deployment/deploy.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/deployment/import_deploy.py +66 -0
- js7/api/joc/http/v_2_8_2/inventory/deployment/revoke.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/export/export.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/export/folder.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/import_objects.py +88 -0
- js7/api/joc/http/v_2_8_2/inventory/releasables/recall/folder.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/releasables/recall/recall.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/release.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/remove/folder.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/remove/remove.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/add.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/checkout.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/clone.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/commit.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/credentials/add.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/credentials/credentials.py +28 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/credentials/remove.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/pull.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/git/push.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/read.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/store.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/repository/update.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/revalidate/folder.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/store.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/trash/delete/delete.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/trash/delete/folder.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/trash/restore.py +36 -0
- js7/api/joc/http/v_2_8_2/inventory/validate.py +42 -0
- js7/api/joc/http/v_2_8_2/joc/cluster/restart.py +36 -0
- js7/api/joc/http/v_2_8_2/joc/cluster/run.py +36 -0
- js7/api/joc/http/v_2_8_2/joc/cluster/switch_member.py +36 -0
- js7/api/joc/http/v_2_8_2/joc/license.py +28 -0
- js7/api/joc/http/v_2_8_2/joc/proxies/restart.py +36 -0
- js7/api/joc/http/v_2_8_2/joc/version.py +28 -0
- js7/api/joc/http/v_2_8_2/joc/versions.py +36 -0
- js7/api/joc/http/v_2_8_2/orders/add.py +33 -0
- js7/api/joc/http/v_2_8_2/orders/cancel.py +33 -0
- js7/api/joc/http/v_2_8_2/orders/confirm.py +36 -0
- js7/api/joc/http/v_2_8_2/orders/continue.py +36 -0
- js7/api/joc/http/v_2_8_2/orders/history.py +36 -0
- js7/api/joc/http/v_2_8_2/orders/orders.py +36 -0
- js7/api/joc/http/v_2_8_2/orders/remove_when_terminated.py +33 -0
- js7/api/joc/http/v_2_8_2/orders/resume.py +36 -0
- js7/api/joc/http/v_2_8_2/orders/suspend.py +36 -0
- js7/api/joc/http/v_2_8_2/settings/settings.py +28 -0
- js7/api/joc/http/v_2_8_2/settings/store.py +36 -0
- js7/api/joc/http/v_2_8_2/tasks/history.py +36 -0
- js7/api/joc/http/v_2_8_2/workflow/transition.py +36 -0
- js7/api/joc/http/v_2_8_2/workflow/workflow.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/resume.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/skip.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/stop.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/suspend.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/unskip.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/unstop.py +36 -0
- js7/api/joc/http/v_2_8_2/workflows/workflows.py +36 -0
- js7/api/joc/interface/dispatcher.py +76 -0
- js7/api/joc/interface/interface.py +8 -0
- js7/api/joc/interface/resolver.py +75 -0
- js7/client/action/agent/confirm_node_loss_agent_action.py +75 -0
- js7/client/action/agent/delete_subagent_action.py +77 -0
- js7/client/action/agent/delete_subagent_clusters_action.py +75 -0
- js7/client/action/agent/deploy_cluster_agents_action.py +75 -0
- js7/client/action/agent/deploy_standalone_agents_action.py +75 -0
- js7/client/action/agent/deploy_subagent_clusters_action.py +75 -0
- js7/client/action/agent/disable_standalone_agents_action.py +75 -0
- js7/client/action/agent/disable_subagents_action.py +75 -0
- js7/client/action/agent/enable_standalone_agents_action.py +75 -0
- js7/client/action/agent/enable_subagents_action.py +75 -0
- js7/client/action/agent/export_agents_action.py +101 -0
- js7/client/action/agent/get_agents_status_action.py +55 -0
- js7/client/action/agent/import_agents_action.py +139 -0
- js7/client/action/agent/remove_agent_action.py +79 -0
- js7/client/action/agent/reset_agents_action.py +79 -0
- js7/client/action/agent/reset_subagent_action.py +79 -0
- js7/client/action/agent/revoke_cluster_agents_action.py +75 -0
- js7/client/action/agent/revoke_standalone_agents_action.py +75 -0
- js7/client/action/agent/revoke_subagent_clusters_action.py +75 -0
- js7/client/action/agent/store_cluster_agents_action.py +99 -0
- js7/client/action/agent/store_standalone_agents_action.py +87 -0
- js7/client/action/agent/store_subagent_clusters_action.py +83 -0
- js7/client/action/agent/store_subagents_action.py +97 -0
- js7/client/action/agent/switchover_agent_action.py +75 -0
- js7/client/action/controller/appoint_nodes_controller_action.py +67 -0
- js7/client/action/controller/cancel_and_restart_controller_action.py +72 -0
- js7/client/action/controller/cancel_controller_action.py +71 -0
- js7/client/action/controller/confirm_cluster_node_loss_action.py +68 -0
- js7/client/action/controller/get_controller_components_action.py +41 -0
- js7/client/action/controller/get_controller_status_action.py +72 -0
- js7/client/action/controller/register_controller_action.py +93 -0
- js7/client/action/controller/restart_controller_action.py +72 -0
- js7/client/action/controller/switchover_controller_cluster_action.py +67 -0
- js7/client/action/controller/terminate_controller_action.py +72 -0
- js7/client/action/controller/test_controller_instance_action.py +65 -0
- js7/client/action/controller/unregister_controller_action.py +68 -0
- js7/client/action/daily_plan/cancel_orders_action.py +59 -0
- js7/client/action/daily_plan/copy_orders_action.py +108 -0
- js7/client/action/daily_plan/create_projections_action.py +24 -0
- js7/client/action/daily_plan/delete_orders_action.py +80 -0
- js7/client/action/daily_plan/delete_submissions_action.py +83 -0
- js7/client/action/daily_plan/generate_orders_action.py +121 -0
- js7/client/action/daily_plan/get_calendar_projections_action.py +59 -0
- js7/client/action/daily_plan/get_orders_action.py +70 -0
- js7/client/action/daily_plan/get_projection_dates_action.py +59 -0
- js7/client/action/daily_plan/modify_orders_action.py +130 -0
- js7/client/action/daily_plan/submit_orders_action.py +79 -0
- js7/client/action/helper/decrypt_action.py +82 -0
- js7/client/action/helper/encrypt_action.py +87 -0
- js7/client/action/iam/block_account_action.py +71 -0
- js7/client/action/iam/change_account_password_action.py +96 -0
- js7/client/action/iam/disable_accounts_action.py +75 -0
- js7/client/action/iam/enable_accounts_action.py +75 -0
- js7/client/action/iam/get_account_permissions_action.py +75 -0
- js7/client/action/iam/get_accounts_action.py +76 -0
- js7/client/action/iam/get_blocked_accounts_action.py +76 -0
- js7/client/action/iam/get_folder_permissions_action.py +112 -0
- js7/client/action/iam/get_identity_service_settings_action.py +70 -0
- js7/client/action/iam/get_identity_services_action.py +102 -0
- js7/client/action/iam/get_permissions_action.py +113 -0
- js7/client/action/iam/get_roles_action.py +57 -0
- js7/client/action/iam/remove_accounts_action.py +75 -0
- js7/client/action/iam/remove_folder_permissions_action.py +91 -0
- js7/client/action/iam/remove_identity_service_action.py +67 -0
- js7/client/action/iam/remove_permissions_action.py +88 -0
- js7/client/action/iam/remove_roles_action.py +75 -0
- js7/client/action/iam/rename_account_action.py +83 -0
- js7/client/action/iam/rename_folder_permissions_action.py +100 -0
- js7/client/action/iam/rename_identity_service_action.py +75 -0
- js7/client/action/iam/rename_permission_action.py +103 -0
- js7/client/action/iam/rename_role_action.py +83 -0
- js7/client/action/iam/reset_account_passwords_action.py +75 -0
- js7/client/action/iam/set_folder_permissions_action.py +96 -0
- js7/client/action/iam/set_permissions_action.py +91 -0
- js7/client/action/iam/store_account_action.py +69 -0
- js7/client/action/iam/store_identity_service_action.py +75 -0
- js7/client/action/iam/store_identity_service_settings_action.py +74 -0
- js7/client/action/iam/store_role_action.py +79 -0
- js7/client/action/iam/unblock_accounts_action.py +67 -0
- js7/client/action/inventory/deploy_configurations_action.py +138 -0
- js7/client/action/inventory/export_configurations_action.py +203 -0
- js7/client/action/inventory/export_folders_action.py +160 -0
- js7/client/action/inventory/get_change_dependencies_action.py +161 -0
- js7/client/action/inventory/get_changes_action.py +59 -0
- js7/client/action/inventory/get_git_credentials_action.py +29 -0
- js7/client/action/inventory/git_add_action.py +72 -0
- js7/client/action/inventory/git_checkout_action.py +88 -0
- js7/client/action/inventory/git_clone_action.py +84 -0
- js7/client/action/inventory/git_commit_action.py +80 -0
- js7/client/action/inventory/git_pull_action.py +72 -0
- js7/client/action/inventory/git_push_action.py +76 -0
- js7/client/action/inventory/import_configurations_action.py +153 -0
- js7/client/action/inventory/import_deploy_configurations_action.py +188 -0
- js7/client/action/inventory/read_from_local_repository_action.py +67 -0
- js7/client/action/inventory/recall_folder_action.py +89 -0
- js7/client/action/inventory/recall_released_configuration_action.py +75 -0
- js7/client/action/inventory/release_configuartions_action.py +89 -0
- js7/client/action/inventory/remove_configurations_action.py +77 -0
- js7/client/action/inventory/remove_configurations_from_trash_action.py +80 -0
- js7/client/action/inventory/remove_folder_action.py +67 -0
- js7/client/action/inventory/remove_folder_from_trash_action.py +69 -0
- js7/client/action/inventory/remove_git_credentials_action.py +53 -0
- js7/client/action/inventory/remove_repository_configuration_action.py +84 -0
- js7/client/action/inventory/restore_configuration_from_trash_action.py +84 -0
- js7/client/action/inventory/revalidate_folder_action.py +46 -0
- js7/client/action/inventory/revoke_configurations_action.py +86 -0
- js7/client/action/inventory/store_configuration_action.py +79 -0
- js7/client/action/inventory/store_git_credentials_action.py +99 -0
- js7/client/action/inventory/store_repository_configuration_action.py +124 -0
- js7/client/action/inventory/update_repository_configuration_action.py +85 -0
- js7/client/action/inventory/validate_configuration_action.py +58 -0
- js7/client/action/joc/get_components_versions_action.py +57 -0
- js7/client/action/joc/get_license_info_action.py +22 -0
- js7/client/action/joc/get_settings_action.py +19 -0
- js7/client/action/joc/get_version_action.py +17 -0
- js7/client/action/joc/restart_proxies_action.py +50 -0
- js7/client/action/joc/restart_service_action.py +74 -0
- js7/client/action/joc/run_service_action.py +74 -0
- js7/client/action/joc/store_settings_action.py +62 -0
- js7/client/action/joc/switch_over_action.py +89 -0
- js7/client/action/order/add_orders_action.py +115 -0
- js7/client/action/order/cancel_orders_action.py +93 -0
- js7/client/action/order/confirm_orders_action.py +86 -0
- js7/client/action/order/continue_orders_action.py +86 -0
- js7/client/action/order/get_order_history_action.py +84 -0
- js7/client/action/order/get_orders_action.py +83 -0
- js7/client/action/order/remove_terminated_orders_action.py +86 -0
- js7/client/action/order/resume_orders_action.py +102 -0
- js7/client/action/order/suspend_orders_action.py +97 -0
- js7/client/action/task/get_task_history_info_action.py +88 -0
- js7/client/action/workflow/get_workflow_versions_action.py +131 -0
- js7/client/action/workflow/resume_workflows_action.py +76 -0
- js7/client/action/workflow/set_workflow_version_as_current_action.py +86 -0
- js7/client/action/workflow/skip_job_instructions_action.py +83 -0
- js7/client/action/workflow/stop_job_instructions_action.py +83 -0
- js7/client/action/workflow/suspend_workflows_action.py +76 -0
- js7/client/action/workflow/unskip_job_instructions_action.py +83 -0
- js7/client/action/workflow/unstop_job_instructions_action.py +79 -0
- js7/client/auth/auth_provider.py +109 -0
- js7/client/auth/login.py +34 -0
- js7/client/auth/logout.py +22 -0
- js7/client/client.py +250 -0
- js7/client/context.py +40 -0
- js7/client/feature/agent/agent.py +26 -0
- js7/client/feature/agent/deploy.py +134 -0
- js7/client/feature/agent/manage.py +363 -0
- js7/client/feature/agent/operate.py +577 -0
- js7/client/feature/controller/controller.py +19 -0
- js7/client/feature/controller/manage.py +214 -0
- js7/client/feature/controller/operate.py +274 -0
- js7/client/feature/daily_plan/daily_plan.py +14 -0
- js7/client/feature/daily_plan/manage.py +179 -0
- js7/client/feature/daily_plan/operate.py +354 -0
- js7/client/feature/iam/iam.py +14 -0
- js7/client/feature/iam/manage.py +1311 -0
- js7/client/feature/inventory/inventory.py +13 -0
- js7/client/feature/inventory/manage.py +943 -0
- js7/client/feature/inventory/manage_repository.py +533 -0
- js7/client/feature/joc/joc.py +18 -0
- js7/client/feature/joc/manage.py +102 -0
- js7/client/feature/joc/operate.py +185 -0
- js7/client/feature/order/manage.py +79 -0
- js7/client/feature/order/operate.py +346 -0
- js7/client/feature/order/order.py +18 -0
- js7/client/feature/task/task.py +54 -0
- js7/client/feature/workflow/manage.py +54 -0
- js7/client/feature/workflow/operate.py +336 -0
- js7/client/feature/workflow/workflow.py +19 -0
- js7/java/lib/3rd-party/bcpg-jdk15to18-1.78.1.jar +0 -0
- js7/java/lib/3rd-party/bcpkix-jdk15to18-1.78.1.jar +0 -0
- js7/java/lib/3rd-party/bcprov-jdk15to18-1.78.1.jar +0 -0
- js7/java/lib/3rd-party/bcutil-jdk15to18-1.78.1.jar +0 -0
- js7/java/lib/3rd-party/commons-io-2.15.1.jar +0 -0
- js7/java/lib/3rd-party/commons-lang3-3.14.0.jar +0 -0
- js7/java/lib/3rd-party/jackson-core-2.14.2.jar +0 -0
- js7/java/lib/3rd-party/jackson-databind-2.14.2.jar +0 -0
- js7/java/lib/3rd-party/jackson-dataformat-xml-2.14.2.jar +0 -0
- js7/java/lib/3rd-party/jakarta.annotation-api-2.1.1.jar +0 -0
- js7/java/lib/3rd-party/javax.activation-api-1.2.0.jar +0 -0
- js7/java/lib/3rd-party/jaxb-api-2.4.0-b180830.0359.jar +0 -0
- js7/java/lib/3rd-party/org.apache.logging.log4j.log4j-api-2.23.1.jar +0 -0
- js7/java/lib/3rd-party/org.apache.logging.log4j.log4j-core-2.23.1.jar +0 -0
- js7/java/lib/3rd-party/org.apache.logging.log4j.log4j-slf4j2-impl-2.23.1.jar +0 -0
- js7/java/lib/3rd-party/org.slf4j.slf4j-api-2.0.13.jar +0 -0
- js7/java/lib/3rd-party/stax2-api-4.2.1.jar +0 -0
- js7/java/lib/3rd-party/woodstox-core-6.5.0.jar +0 -0
- js7/java/lib/sos/sos-commons-encryption-2.7.3.jar +0 -0
- js7/java/lib/sos/sos-commons-exception-2.7.3.jar +0 -0
- js7/java/lib/sos/sos-commons-sign-2.7.3.jar +0 -0
- js7/java/lib/sos/sos-webservices-json-2.7.3.jar +0 -0
- js7/model/__init__.py +132 -0
- js7/model/configuration/auth_configuration.py +24 -0
- js7/model/configuration/client_configuration.py +6 -0
- js7/model/configuration/http_configuration.py +10 -0
- js7/model/error/http/joc_exceptions.py +151 -0
- js7/model/private/api/endpoint.py +30 -0
- js7/model/private/http/joc/joc_v_2_8_2.py +3666 -0
- js7/model/public/client/common/__init__.py +27 -0
- js7/model/public/client/common/accounts.py +21 -0
- js7/model/public/client/common/audit_log.py +8 -0
- js7/model/public/client/common/changes.py +18 -0
- js7/model/public/client/common/configurations.py +53 -0
- js7/model/public/client/common/cycle.py +12 -0
- js7/model/public/client/common/git_credentials.py +12 -0
- js7/model/public/client/common/identity_service.py +14 -0
- js7/model/public/client/common/schedule_time.py +50 -0
- js7/model/public/client/common/store_agents.py +96 -0
- js7/model/public/client/enum/__init__.py +19 -0
- js7/model/public/client/enum/object_types.py +48 -0
- js7/model/public/client/enum/operation_type.py +11 -0
- js7/model/public/client/enum/order_priority.py +9 -0
- js7/model/public/client/filter/__init__.py +35 -0
- js7/model/public/client/filter/daily_plan_order_filters.py +255 -0
- js7/model/public/client/filter/element/__init__.py +3 -0
- js7/model/public/client/filter/element/folder.py +6 -0
- js7/model/public/client/filter/element/workflow_id.py +10 -0
- js7/model/public/client/filter/export_filter.py +52 -0
- js7/model/public/client/filter/export_folders_filter.py +34 -0
- js7/model/public/client/filter/get_order_filter.py +59 -0
- js7/model/public/client/filter/order_history_filter.py +113 -0
- js7/model/public/client/filter/resume_order_filter.py +45 -0
- js7/model/public/client/filter/suspend_order_filter.py +44 -0
- js7/model/public/client/filter/tasks_filter.py +50 -0
- js7/model/public/client/input/__init__.py +2 -0
- js7/model/public/client/input/add_order.py +50 -0
- js7/service/http_service.py +206 -0
- js7/util/bytes_converter/bytes_to_archive_bytes.py +52 -0
- js7/util/bytes_converter/bytes_to_file.py +12 -0
- js7/util/bytes_converter/files_to_bytes.py +52 -0
- js7/util/bytes_converter/read_bytes_archive_files_to_bytes.py +69 -0
- js7/util/bytes_converter/sign_to_bytes.py +106 -0
- js7/util/check_matching_version.py +20 -0
- js7/util/detect_archive_type.py +37 -0
- js7/util/str_converter/order_id_to_order_name.py +5 -0
- js7/validator/http/joc_http_status_validator.py +155 -0
- js7_client_python-2.0.1.0.dist-info/LICENSE +674 -0
- js7_client_python-2.0.1.0.dist-info/METADATA +763 -0
- js7_client_python-2.0.1.0.dist-info/RECORD +389 -0
- js7_client_python-2.0.1.0.dist-info/WHEEL +5 -0
- js7_client_python-2.0.1.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
4
|
+
from ...context import Context
|
|
5
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
6
|
+
from ....model.public.client.common.configurations import Configuration
|
|
7
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
8
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
9
|
+
CommonConfigurationType as ConfigurationType_V_2_8_2,
|
|
10
|
+
RequestFilters as RequestFilters_V_2_8_2,
|
|
11
|
+
OK as OK_V_2_8_2,
|
|
12
|
+
CommonRequestFilter as CommonRequestFilter_V_2_8_2,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
from ....util.check_matching_version import check_matching_version
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def remove_configurations_action(
|
|
19
|
+
*,
|
|
20
|
+
context: Context,
|
|
21
|
+
configurations: List[Configuration],
|
|
22
|
+
audit_log: Optional[AuditLog]
|
|
23
|
+
) -> bool:
|
|
24
|
+
|
|
25
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
26
|
+
request_data = _build_v_2_8_2_request(configurations=configurations, audit_log=audit_log)
|
|
27
|
+
else:
|
|
28
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
29
|
+
|
|
30
|
+
# Calls the dispatcher for the matching JOC version
|
|
31
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/remove", call=EndpointCall(
|
|
32
|
+
http_service=context.http_service,
|
|
33
|
+
access_token=context.auth_provider.login(),
|
|
34
|
+
payload=request_data,
|
|
35
|
+
options=None,
|
|
36
|
+
))
|
|
37
|
+
|
|
38
|
+
if isinstance(result, OK_V_2_8_2):
|
|
39
|
+
return bool(result.ok)
|
|
40
|
+
|
|
41
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
42
|
+
|
|
43
|
+
#---------------------#
|
|
44
|
+
# Build 2.8.2 request #
|
|
45
|
+
#---------------------#
|
|
46
|
+
def _build_v_2_8_2_request(
|
|
47
|
+
*,
|
|
48
|
+
configurations: List[Configuration],
|
|
49
|
+
audit_log: Optional[AuditLog]
|
|
50
|
+
) -> RequestFilters_V_2_8_2:
|
|
51
|
+
|
|
52
|
+
# Validate: configurations
|
|
53
|
+
if not configurations:
|
|
54
|
+
raise ValueError("'configurations' are required.")
|
|
55
|
+
|
|
56
|
+
# Build: res_object
|
|
57
|
+
res_object = [
|
|
58
|
+
CommonRequestFilter_V_2_8_2(
|
|
59
|
+
path=c.path,
|
|
60
|
+
object_type=ConfigurationType_V_2_8_2(c.object_type.value) # Raises ValueError() if invalid.
|
|
61
|
+
)
|
|
62
|
+
for c in configurations
|
|
63
|
+
]
|
|
64
|
+
|
|
65
|
+
# Build: Audit log
|
|
66
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
67
|
+
ticket_link=audit_log.ticket_link,
|
|
68
|
+
comment=audit_log.comment,
|
|
69
|
+
time_spent=audit_log.time_spent
|
|
70
|
+
) if audit_log else None
|
|
71
|
+
|
|
72
|
+
return RequestFilters_V_2_8_2(
|
|
73
|
+
objects=res_object,
|
|
74
|
+
audit_log=res_audit_log,
|
|
75
|
+
|
|
76
|
+
cancel_orders_date_from=None, # Not the correct domain
|
|
77
|
+
)
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from ...context import Context
|
|
4
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
5
|
+
from ....model.public.client.common.configurations import Configuration
|
|
6
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
7
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
8
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
9
|
+
CommonRequestFilter as CommonRequestFilter_V_2_8_2,
|
|
10
|
+
OK as OK_V_2_8_2,
|
|
11
|
+
CommonConfigurationType as ConfigurationType_V_2_8_2,
|
|
12
|
+
RequestFilters as RequestFilters_V_2_8_2
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
from ....util.check_matching_version import check_matching_version
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def remove_configurations_from_trash_action(
|
|
19
|
+
*,
|
|
20
|
+
context: Context,
|
|
21
|
+
configurations: List[Configuration],
|
|
22
|
+
audit_log: Optional[AuditLog]
|
|
23
|
+
) -> bool:
|
|
24
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
25
|
+
request_data = _build_v_2_8_2_request(
|
|
26
|
+
configurations=configurations,
|
|
27
|
+
audit_log=audit_log
|
|
28
|
+
)
|
|
29
|
+
else:
|
|
30
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
31
|
+
|
|
32
|
+
# Calls the dispatcher for the matching JOC version
|
|
33
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/trash/delete", call=EndpointCall(
|
|
34
|
+
http_service=context.http_service,
|
|
35
|
+
access_token=context.auth_provider.login(),
|
|
36
|
+
payload=request_data,
|
|
37
|
+
options=None,
|
|
38
|
+
))
|
|
39
|
+
|
|
40
|
+
if isinstance(result, OK_V_2_8_2):
|
|
41
|
+
return bool(result.ok)
|
|
42
|
+
|
|
43
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
44
|
+
|
|
45
|
+
#---------------------#
|
|
46
|
+
# Build 2.8.2 request #
|
|
47
|
+
#---------------------#
|
|
48
|
+
def _build_v_2_8_2_request(
|
|
49
|
+
*,
|
|
50
|
+
configurations: List[Configuration],
|
|
51
|
+
audit_log: Optional[AuditLog]
|
|
52
|
+
) -> RequestFilters_V_2_8_2:
|
|
53
|
+
|
|
54
|
+
# Validate: configurations
|
|
55
|
+
if not configurations:
|
|
56
|
+
raise ValueError("'configurations' are required.")
|
|
57
|
+
|
|
58
|
+
# Build: res_objects
|
|
59
|
+
res_objects = [
|
|
60
|
+
CommonRequestFilter_V_2_8_2(
|
|
61
|
+
path=c.path,
|
|
62
|
+
object_type=ConfigurationType_V_2_8_2(c.object_type.value) # Raises ValueError() if invalid.
|
|
63
|
+
)
|
|
64
|
+
for c in configurations
|
|
65
|
+
]
|
|
66
|
+
|
|
67
|
+
# Build: Audit Log
|
|
68
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
69
|
+
ticket_link=audit_log.ticket_link,
|
|
70
|
+
comment=audit_log.comment,
|
|
71
|
+
time_spent=audit_log.time_spent
|
|
72
|
+
) if audit_log else None
|
|
73
|
+
|
|
74
|
+
# Result
|
|
75
|
+
return RequestFilters_V_2_8_2(
|
|
76
|
+
objects=res_objects,
|
|
77
|
+
audit_log=res_audit_log,
|
|
78
|
+
|
|
79
|
+
cancel_orders_date_from=None, # Wrong domain
|
|
80
|
+
)
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
from typing import Optional
|
|
2
|
+
|
|
3
|
+
from ...context import Context
|
|
4
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
5
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
6
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
7
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
8
|
+
RequestFolder as RequestFolder_V_2_8_2,
|
|
9
|
+
OK as OK_V_2_8_2,
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
from ....util.check_matching_version import check_matching_version
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def remove_folder_action(
|
|
16
|
+
*,
|
|
17
|
+
context: Context,
|
|
18
|
+
folder_path: str,
|
|
19
|
+
audit_log: Optional[AuditLog]
|
|
20
|
+
) -> bool:
|
|
21
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
22
|
+
request_data = _build_v_2_8_2_request(folder_path=folder_path, audit_log=audit_log)
|
|
23
|
+
else:
|
|
24
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
25
|
+
|
|
26
|
+
# Calls the dispatcher for the matching JOC version
|
|
27
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/remove/folder", call=EndpointCall(
|
|
28
|
+
http_service=context.http_service,
|
|
29
|
+
access_token=context.auth_provider.login(),
|
|
30
|
+
payload=request_data,
|
|
31
|
+
options=None,
|
|
32
|
+
))
|
|
33
|
+
|
|
34
|
+
if isinstance(result, OK_V_2_8_2):
|
|
35
|
+
return bool(result.ok)
|
|
36
|
+
|
|
37
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
38
|
+
|
|
39
|
+
#---------------------#
|
|
40
|
+
# Build 2.8.2 request #
|
|
41
|
+
#---------------------#
|
|
42
|
+
def _build_v_2_8_2_request(
|
|
43
|
+
folder_path: str,
|
|
44
|
+
audit_log: Optional[AuditLog]
|
|
45
|
+
) -> RequestFolder_V_2_8_2:
|
|
46
|
+
|
|
47
|
+
# Validate: folder_path
|
|
48
|
+
if not folder_path:
|
|
49
|
+
raise ValueError("'folder_path' is required.")
|
|
50
|
+
|
|
51
|
+
# Build: Audit log
|
|
52
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
53
|
+
ticket_link=audit_log.ticket_link,
|
|
54
|
+
comment=audit_log.comment,
|
|
55
|
+
time_spent=audit_log.time_spent
|
|
56
|
+
) if audit_log else None
|
|
57
|
+
|
|
58
|
+
return RequestFolder_V_2_8_2(
|
|
59
|
+
path=folder_path,
|
|
60
|
+
audit_log=res_audit_log,
|
|
61
|
+
|
|
62
|
+
cancel_orders_date_from=None, # Not the right domain here.
|
|
63
|
+
controller_id=None,
|
|
64
|
+
recursive=True,
|
|
65
|
+
object_types=None,
|
|
66
|
+
only_valid_objects=False,
|
|
67
|
+
)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
from typing import Optional
|
|
2
|
+
|
|
3
|
+
from ...context import Context
|
|
4
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
5
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
6
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
7
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
8
|
+
CommonRequestFolder as CommonRequestFolder_V_2_8_2,
|
|
9
|
+
OK as OK_V_2_8_2
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
from ....util.check_matching_version import check_matching_version
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def remove_folder_from_trash_action(
|
|
16
|
+
*,
|
|
17
|
+
context: Context,
|
|
18
|
+
folder_path: str,
|
|
19
|
+
audit_log: Optional[AuditLog]
|
|
20
|
+
) -> bool:
|
|
21
|
+
|
|
22
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
23
|
+
request_data = _build_v_2_8_2_request(folder_path=folder_path, audit_log=audit_log)
|
|
24
|
+
else:
|
|
25
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
26
|
+
|
|
27
|
+
# Calls the dispatcher for the matching JOC version
|
|
28
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/trash/delete/folder", call=EndpointCall(
|
|
29
|
+
http_service=context.http_service,
|
|
30
|
+
access_token=context.auth_provider.login(),
|
|
31
|
+
payload=request_data,
|
|
32
|
+
options=None,
|
|
33
|
+
))
|
|
34
|
+
|
|
35
|
+
if isinstance(result, OK_V_2_8_2):
|
|
36
|
+
return bool(result.ok)
|
|
37
|
+
|
|
38
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
39
|
+
|
|
40
|
+
#---------------------#
|
|
41
|
+
# Build 2.8.2 request #
|
|
42
|
+
#---------------------#
|
|
43
|
+
def _build_v_2_8_2_request(
|
|
44
|
+
*,
|
|
45
|
+
folder_path: str,
|
|
46
|
+
audit_log: Optional[AuditLog]
|
|
47
|
+
) -> CommonRequestFolder_V_2_8_2:
|
|
48
|
+
|
|
49
|
+
# Validate: folder_path
|
|
50
|
+
if not folder_path:
|
|
51
|
+
raise ValueError("'folder_path' is required.")
|
|
52
|
+
|
|
53
|
+
# Build: Audit log
|
|
54
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
55
|
+
ticket_link=audit_log.ticket_link,
|
|
56
|
+
comment=audit_log.comment,
|
|
57
|
+
time_spent=audit_log.time_spent
|
|
58
|
+
) if audit_log else None
|
|
59
|
+
|
|
60
|
+
# Result
|
|
61
|
+
return CommonRequestFolder_V_2_8_2(
|
|
62
|
+
path=folder_path,
|
|
63
|
+
audit_log=res_audit_log,
|
|
64
|
+
recursive=True,
|
|
65
|
+
|
|
66
|
+
controller_id=None,
|
|
67
|
+
object_types=None,
|
|
68
|
+
only_valid_objects=None,
|
|
69
|
+
)
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
from typing import Optional
|
|
2
|
+
|
|
3
|
+
from ...context import Context
|
|
4
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
5
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
6
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
7
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
8
|
+
RemoveCredentialsFilter as RemoveCredentialsFilter_V_2_8_2,
|
|
9
|
+
OK as OK_V_2_8_2
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
from ....util.check_matching_version import check_matching_version
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def remove_git_credentials_action(*, context: Context, git_server: str, audit_log: Optional[AuditLog]) -> bool:
|
|
16
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
17
|
+
request_data = _build_v_2_8_2_request(git_server=git_server, audit_log=audit_log)
|
|
18
|
+
else:
|
|
19
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
20
|
+
|
|
21
|
+
# Calls the dispatcher for the matching JOC version
|
|
22
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/repository/git/credentials/remove", call=EndpointCall(
|
|
23
|
+
http_service=context.http_service,
|
|
24
|
+
access_token=context.auth_provider.login(),
|
|
25
|
+
payload=request_data,
|
|
26
|
+
options=None,
|
|
27
|
+
))
|
|
28
|
+
|
|
29
|
+
if isinstance(result, OK_V_2_8_2):
|
|
30
|
+
return bool(result.ok)
|
|
31
|
+
|
|
32
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
33
|
+
|
|
34
|
+
#---------------------#
|
|
35
|
+
# Build 2.8.2 request #
|
|
36
|
+
#---------------------#
|
|
37
|
+
def _build_v_2_8_2_request(*, git_server: str, audit_log: Optional[AuditLog]) -> RemoveCredentialsFilter_V_2_8_2:
|
|
38
|
+
# Validates git_server
|
|
39
|
+
if not git_server:
|
|
40
|
+
raise ValueError("'git_server' is required.")
|
|
41
|
+
|
|
42
|
+
# Build: Audit Log
|
|
43
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
44
|
+
ticket_link=audit_log.ticket_link,
|
|
45
|
+
comment=audit_log.comment,
|
|
46
|
+
time_spent=audit_log.time_spent
|
|
47
|
+
) if audit_log else None
|
|
48
|
+
|
|
49
|
+
# Result
|
|
50
|
+
return RemoveCredentialsFilter_V_2_8_2(
|
|
51
|
+
git_servers=[git_server],
|
|
52
|
+
audit_log=res_audit_log
|
|
53
|
+
)
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from typing import List, Literal, Optional
|
|
2
|
+
|
|
3
|
+
from ...context import Context
|
|
4
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
5
|
+
from ....model.public.client.common.configurations import Configuration
|
|
6
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
7
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
8
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
9
|
+
OK as OK_V_2_8_2,
|
|
10
|
+
CommonConfigurationType as ConfigurationType_V_2_8_2,
|
|
11
|
+
DeleteFromFilter as DeleteFromFilter_V_2_8_2,
|
|
12
|
+
Category as Category_V_2_8_2,
|
|
13
|
+
PublishConfiguration as Configuration_V_2_8_2,
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
from ....util.check_matching_version import check_matching_version
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def remove_repository_configuration_action(
|
|
20
|
+
*,
|
|
21
|
+
context: Context,
|
|
22
|
+
configurations: List[Configuration],
|
|
23
|
+
category: Literal["LOCAL", "ROLLOUT"],
|
|
24
|
+
audit_log: Optional[AuditLog]
|
|
25
|
+
) -> bool:
|
|
26
|
+
|
|
27
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
28
|
+
request_data = _build_v_2_8_2_request(configurations=configurations, category=category, audit_log=audit_log)
|
|
29
|
+
else:
|
|
30
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
31
|
+
|
|
32
|
+
# Calls the dispatcher for the matching JOC version
|
|
33
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/repository/delete", call=EndpointCall(
|
|
34
|
+
http_service=context.http_service,
|
|
35
|
+
access_token=context.auth_provider.login(),
|
|
36
|
+
payload=request_data,
|
|
37
|
+
options=None,
|
|
38
|
+
))
|
|
39
|
+
|
|
40
|
+
if isinstance(result, OK_V_2_8_2):
|
|
41
|
+
return bool(result.ok)
|
|
42
|
+
|
|
43
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
44
|
+
|
|
45
|
+
#---------------------#
|
|
46
|
+
# Build 2.8.2 request #
|
|
47
|
+
#---------------------#
|
|
48
|
+
def _build_v_2_8_2_request(
|
|
49
|
+
*,
|
|
50
|
+
configurations: List[Configuration],
|
|
51
|
+
category: Literal["LOCAL", "ROLLOUT"],
|
|
52
|
+
audit_log: Optional[AuditLog]
|
|
53
|
+
) -> DeleteFromFilter_V_2_8_2:
|
|
54
|
+
|
|
55
|
+
# Validates configurations
|
|
56
|
+
if not configurations:
|
|
57
|
+
raise ValueError("At least one configuration in 'configurations' is required.")
|
|
58
|
+
|
|
59
|
+
# Validate: category
|
|
60
|
+
if category not in ("LOCAL", "ROLLOUT"):
|
|
61
|
+
raise ValueError("'category' must be one of 'LOCAL' or 'ROLLOUT'.")
|
|
62
|
+
|
|
63
|
+
# Build: Configurations
|
|
64
|
+
res_configurations: List[Configuration_V_2_8_2] = [
|
|
65
|
+
Configuration_V_2_8_2(
|
|
66
|
+
object_type=ConfigurationType_V_2_8_2(c.object_type.value), # Raises ValueError() if invalid.
|
|
67
|
+
path=c.path,
|
|
68
|
+
)
|
|
69
|
+
for c in configurations
|
|
70
|
+
]
|
|
71
|
+
|
|
72
|
+
# Build: Audit Log
|
|
73
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
74
|
+
ticket_link=audit_log.ticket_link,
|
|
75
|
+
comment=audit_log.comment,
|
|
76
|
+
time_spent=audit_log.time_spent
|
|
77
|
+
) if audit_log else None
|
|
78
|
+
|
|
79
|
+
# Result
|
|
80
|
+
return DeleteFromFilter_V_2_8_2(
|
|
81
|
+
configurations=res_configurations,
|
|
82
|
+
category=Category_V_2_8_2(category), # Raises ValueError() if invalid.
|
|
83
|
+
audit_log=res_audit_log,
|
|
84
|
+
)
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from typing import Optional
|
|
2
|
+
|
|
3
|
+
from ...context import Context
|
|
4
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
5
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
6
|
+
from ....model.public.client.common.configurations import Configuration
|
|
7
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
8
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
9
|
+
RequestFilter as RequestFilter_V_2_8_2,
|
|
10
|
+
CommonConfigurationType as ConfigurationType_V_2_8_2,
|
|
11
|
+
ResponseNewPath as ResponseNewPath_V_2_8_2
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
from ....util.check_matching_version import check_matching_version
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# Returns: new configuration path
|
|
18
|
+
def restore_configuration_from_trash_action(
|
|
19
|
+
*,
|
|
20
|
+
context: Context,
|
|
21
|
+
configuration: Configuration,
|
|
22
|
+
new_path: str,
|
|
23
|
+
add_prefix: Optional[str],
|
|
24
|
+
add_suffix: Optional[str],
|
|
25
|
+
audit_log: Optional[AuditLog]
|
|
26
|
+
) -> str:
|
|
27
|
+
|
|
28
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
29
|
+
request_data = _build_v_2_8_2_request(
|
|
30
|
+
configuration=configuration,
|
|
31
|
+
new_path=new_path,
|
|
32
|
+
add_prefix=add_prefix,
|
|
33
|
+
add_suffix=add_suffix,
|
|
34
|
+
audit_log=audit_log
|
|
35
|
+
)
|
|
36
|
+
else:
|
|
37
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
38
|
+
|
|
39
|
+
# Calls the dispatcher for the matching JOC version
|
|
40
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/trash/restore", call=EndpointCall(
|
|
41
|
+
http_service=context.http_service,
|
|
42
|
+
access_token=context.auth_provider.login(),
|
|
43
|
+
payload=request_data,
|
|
44
|
+
options=None,
|
|
45
|
+
))
|
|
46
|
+
|
|
47
|
+
if isinstance(result, ResponseNewPath_V_2_8_2):
|
|
48
|
+
if result.path:
|
|
49
|
+
return result.path
|
|
50
|
+
|
|
51
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
52
|
+
|
|
53
|
+
#---------------------#
|
|
54
|
+
# Build 2.8.2 request #
|
|
55
|
+
#---------------------#
|
|
56
|
+
def _build_v_2_8_2_request(
|
|
57
|
+
*,
|
|
58
|
+
configuration: Configuration,
|
|
59
|
+
new_path: str,
|
|
60
|
+
add_prefix: Optional[str],
|
|
61
|
+
add_suffix: Optional[str],
|
|
62
|
+
audit_log: Optional[AuditLog]
|
|
63
|
+
) -> RequestFilter_V_2_8_2:
|
|
64
|
+
|
|
65
|
+
# Validate: new_path
|
|
66
|
+
if not new_path:
|
|
67
|
+
raise ValueError("'new_path' is required.")
|
|
68
|
+
|
|
69
|
+
# Build: Audit log
|
|
70
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
71
|
+
ticket_link=audit_log.ticket_link,
|
|
72
|
+
comment=audit_log.comment,
|
|
73
|
+
time_spent=audit_log.time_spent
|
|
74
|
+
) if audit_log else None
|
|
75
|
+
|
|
76
|
+
# Result
|
|
77
|
+
return RequestFilter_V_2_8_2(
|
|
78
|
+
path=configuration.path,
|
|
79
|
+
object_type=ConfigurationType_V_2_8_2(configuration.object_type.value), # Raises ValueError() if invalid.
|
|
80
|
+
new_path=new_path,
|
|
81
|
+
prefix=add_prefix,
|
|
82
|
+
suffix=add_suffix,
|
|
83
|
+
audit_log=res_audit_log,
|
|
84
|
+
)
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
2
|
+
from ...context import Context
|
|
3
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
4
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
5
|
+
ValidateRequestFolder as ValidateRequestFolder_V_2_8_2,
|
|
6
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
7
|
+
Report as Report_V_2_8_2
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
from ....util.check_matching_version import check_matching_version
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def revalidate_folder_action(*, context: Context, path: str, audit_log: AuditLog) -> bool:
|
|
14
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
15
|
+
request_data = _build_v_2_8_2_request(path=path, audit_log=audit_log)
|
|
16
|
+
else:
|
|
17
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
18
|
+
|
|
19
|
+
# Calls the dispatcher for the matching JOC version
|
|
20
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/revalidate/folder", call=EndpointCall(
|
|
21
|
+
http_service=context.http_service,
|
|
22
|
+
access_token=context.auth_provider.login(),
|
|
23
|
+
payload=request_data,
|
|
24
|
+
options=None,
|
|
25
|
+
))
|
|
26
|
+
|
|
27
|
+
if isinstance(result, Report_V_2_8_2):
|
|
28
|
+
if not result.valid_objs:
|
|
29
|
+
return False
|
|
30
|
+
return True
|
|
31
|
+
|
|
32
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
33
|
+
|
|
34
|
+
#---------------------#
|
|
35
|
+
# Build 2.8.2 request #
|
|
36
|
+
#---------------------#
|
|
37
|
+
def _build_v_2_8_2_request(*, path: str, audit_log: AuditLog) -> ValidateRequestFolder_V_2_8_2:
|
|
38
|
+
return ValidateRequestFolder_V_2_8_2(
|
|
39
|
+
path=path,
|
|
40
|
+
recursive=True,
|
|
41
|
+
audit_log=AuditParams_V_2_8_2(
|
|
42
|
+
ticket_link=audit_log.ticket_link,
|
|
43
|
+
comment=audit_log.comment,
|
|
44
|
+
time_spent=audit_log.time_spent
|
|
45
|
+
)
|
|
46
|
+
)
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from ....model.public.client.common.audit_log import AuditLog
|
|
4
|
+
from ...context import Context
|
|
5
|
+
from ....model.private.api.endpoint import EndpointCall
|
|
6
|
+
from ....model.public.client.common.configurations import DeployConfiguration
|
|
7
|
+
from ....model.private.http.joc.joc_v_2_8_2 import (
|
|
8
|
+
Config as Config_V_2_8_2,
|
|
9
|
+
PublishConfiguration as Configuration_V_2_8_2,
|
|
10
|
+
CommonConfigurationType as ConfigurationType_V_2_8_2,
|
|
11
|
+
AuditParams as AuditParams_V_2_8_2,
|
|
12
|
+
RevokeFilter as RevokeFilter_V_2_8_2,
|
|
13
|
+
OK as OK_V_2_8_2
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
from ....util.check_matching_version import check_matching_version
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def revoke_configurations_action(
|
|
20
|
+
*,
|
|
21
|
+
context: Context,
|
|
22
|
+
controller_ids: List[str],
|
|
23
|
+
configurations: List[DeployConfiguration],
|
|
24
|
+
audit_log: Optional[AuditLog]
|
|
25
|
+
) -> bool:
|
|
26
|
+
|
|
27
|
+
if check_matching_version(min="2.6.5", max="2.8.3", check=context.version):
|
|
28
|
+
request_data = _build_v_2_8_2_request(
|
|
29
|
+
controller_ids=controller_ids,
|
|
30
|
+
configurations=configurations,
|
|
31
|
+
audit_log=audit_log
|
|
32
|
+
)
|
|
33
|
+
else:
|
|
34
|
+
raise RuntimeError(f"Version {context.version} is not compatible with building the request.")
|
|
35
|
+
|
|
36
|
+
# Calls the dispatcher for the matching JOC version
|
|
37
|
+
result = context.joc_api.dispatch(endpoint_id="inventory/deployment/revoke", call=EndpointCall(
|
|
38
|
+
http_service=context.http_service,
|
|
39
|
+
access_token=context.auth_provider.login(),
|
|
40
|
+
payload=request_data,
|
|
41
|
+
options=None,
|
|
42
|
+
))
|
|
43
|
+
|
|
44
|
+
if isinstance(result, OK_V_2_8_2):
|
|
45
|
+
return bool(result.ok)
|
|
46
|
+
|
|
47
|
+
raise RuntimeError(f"Unexpected response type: {type(result).__name__}")
|
|
48
|
+
|
|
49
|
+
#---------------------#
|
|
50
|
+
# Build 2.8.2 request #
|
|
51
|
+
#---------------------#
|
|
52
|
+
def _build_v_2_8_2_request(
|
|
53
|
+
*,
|
|
54
|
+
controller_ids: List[str],
|
|
55
|
+
configurations: List[DeployConfiguration],
|
|
56
|
+
audit_log: Optional[AuditLog]
|
|
57
|
+
) -> RevokeFilter_V_2_8_2:
|
|
58
|
+
|
|
59
|
+
# Build: Audit log
|
|
60
|
+
res_audit_log = AuditParams_V_2_8_2(
|
|
61
|
+
ticket_link=audit_log.ticket_link,
|
|
62
|
+
comment=audit_log.comment,
|
|
63
|
+
time_spent=audit_log.time_spent
|
|
64
|
+
) if audit_log else None
|
|
65
|
+
|
|
66
|
+
if not configurations:
|
|
67
|
+
raise ValueError("At least one entry is required in 'deploy_configurations'.")
|
|
68
|
+
|
|
69
|
+
# Build: res_configs
|
|
70
|
+
res_configs = [
|
|
71
|
+
Config_V_2_8_2(configuration=Configuration_V_2_8_2(
|
|
72
|
+
commit_id=c.commit_id,
|
|
73
|
+
path=c.path,
|
|
74
|
+
recursive=c.recursive,
|
|
75
|
+
object_type=ConfigurationType_V_2_8_2(c.object_type), # Raises ValueError() if invalid
|
|
76
|
+
))
|
|
77
|
+
for c in configurations
|
|
78
|
+
]
|
|
79
|
+
|
|
80
|
+
# Result
|
|
81
|
+
return RevokeFilter_V_2_8_2(
|
|
82
|
+
audit_log=res_audit_log,
|
|
83
|
+
controller_ids=controller_ids,
|
|
84
|
+
deploy_configurations=res_configs,
|
|
85
|
+
cancel_orders_date_from=None, # Wrong domain
|
|
86
|
+
)
|