From dc5e796b1b4ea55a5b7bf8d98a3e3710023a2a01 Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Fri, 28 Feb 2025 13:56:30 -0500 Subject: [PATCH 01/11] Update spec for 0.5 rc --- .openapi-generator/FILES | 121 +- .openapi-generator/VERSION | 2 +- Makefile | 2 +- README.md | 90 +- api/v1alpha1/openapi.yml | 2712 +++++++++++------ docs/ApplicationEnvVars.md | 2 +- docs/ApplicationProviderSpec.md | 31 + docs/ApplicationSpec.md | 31 - docs/ApplicationStatusType.md | 1 + docs/ApplicationsSummaryStatusType.md | 1 + docs/AuthConfig.md | 4 +- docs/AuthenticationApi.md | 141 + docs/BatchLimit.md | 1 + docs/BatchSequence.md | 3 +- docs/CertificateSigningRequest.md | 6 +- docs/CertificateSigningRequestList.md | 6 +- docs/CertificateSigningRequestSpec.md | 14 +- docs/CertificateSigningRequestStatus.md | 6 +- docs/CertificatesigningrequestApi.md | 140 +- docs/Condition.md | 2 +- docs/ConditionStatus.md | 1 + docs/ConditionType.md | 9 + docs/ConfigProviderSpec.md | 4 +- ...nitorSpec.md => CpuResourceMonitorSpec.md} | 16 +- docs/CustomResourceMonitorSpec.md | 2 +- docs/DefaultApi.md | 285 -- docs/Device.md | 4 +- docs/DeviceApi.md | 273 +- docs/DeviceApplicationsSummaryStatus.md | 3 +- docs/DeviceConfigStatus.md | 3 +- docs/DeviceConsole.md | 5 +- docs/DeviceDecommission.md | 30 + docs/DeviceDecommissionTargetType.md | 13 + docs/DeviceHooksSpec.md | 32 - docs/DeviceIntegrityStatus.md | 4 +- docs/DeviceIntegrityStatusSummary.md | 30 - docs/DeviceIntegrityStatusSummaryType.md | 1 + docs/DeviceLifecycleHookType.md | 16 + docs/DeviceLifecycleStatus.md | 31 + docs/DeviceLifecycleStatusType.md | 17 + docs/DeviceList.md | 4 +- docs/{DeviceOSSpec.md => DeviceOsSpec.md} | 17 +- docs/{DeviceOSStatus.md => DeviceOsStatus.md} | 17 +- docs/DeviceRebootHookSpec.md | 31 - docs/DeviceResourceStatus.md | 1 + docs/DeviceResourceStatusType.md | 1 + docs/DeviceSpec.md | 9 +- docs/DeviceSpecSystemd.md | 3 +- docs/DeviceStatus.md | 5 +- docs/DeviceSummaryStatus.md | 1 + docs/DeviceSummaryStatusType.md | 1 + docs/DeviceSystemInfo.md | 1 + docs/DeviceUpdateHookSpec.md | 33 - docs/DeviceUpdatePolicySpec.md | 31 + docs/DeviceUpdatedStatus.md | 1 + docs/DeviceUpdatedStatusType.md | 1 + docs/DevicesSummary.md | 6 +- docs/DiskResourceMonitorSpec.md | 2 +- ...uptionAllowance.md => DisruptionBudget.md} | 20 +- docs/EnrollmentConfig.md | 1 - docs/EnrollmentRequest.md | 4 +- docs/EnrollmentRequestApproval.md | 7 +- docs/EnrollmentRequestApprovalStatus.md | 33 + docs/EnrollmentRequestList.md | 4 +- docs/EnrollmentRequestSpec.md | 4 +- docs/EnrollmentRequestStatus.md | 4 +- docs/EnrollmentService.md | 3 +- docs/EnrollmentServiceAuth.md | 5 +- docs/EnrollmentServiceService.md | 5 +- docs/EnrollmentrequestApi.md | 310 +- docs/FileOperation.md | 9 +- docs/FileSpec.md | 2 +- docs/Fleet.md | 4 +- docs/FleetApi.md | 463 ++- docs/FleetList.md | 4 +- docs/FleetRolloutStatus.md | 3 +- docs/FleetSpecTemplate.md | 1 + docs/GenericRepoSpec.md | 2 +- docs/GitConfigProviderSpec.md | 2 +- docs/GitConfigProviderSpecGitRef.md | 9 +- docs/HookAction.md | 7 +- docs/HookActionExecutable.md | 31 - docs/HookActionExecutableSpec.md | 32 - docs/HookActionOneOf.md | 29 - docs/HookActionOneOf1.md | 29 - docs/HookActionRun.md | 31 + docs/HookActionSpec.md | 29 - docs/HookActionSystemdSpec.md | 30 - docs/HookActionSystemdUnit.md | 31 - docs/HookCondition.md | 30 + docs/HookConditionPathOp.md | 30 + docs/HttpConfig.md | 15 +- docs/HttpConfigProviderSpec.md | 2 +- docs/HttpConfigProviderSpecHttpRef.md | 7 +- docs/HttpRepoSpec.md | 2 +- docs/ImageApplicationProvider.md | 2 +- docs/InlineConfigProviderSpec.md | 4 +- docs/KubernetesSecretProviderSpec.md | 2 +- docs/KubernetesSecretProviderSpecSecretRef.md | 7 +- docs/LabelSelector.md | 6 +- docs/ListMeta.md | 4 +- docs/MatchExpression.md | 6 +- docs/MemoryResourceMonitorSpec.md | 2 +- docs/ObjectMeta.md | 6 +- docs/RenderedApplicationSpec.md | 31 - docs/RenderedDeviceSpec.md | 36 - docs/RenderedDeviceSpecSystemd.md | 29 - docs/RepoSpecType.md | 2 +- docs/Repository.md | 8 +- docs/RepositoryApi.md | 65 +- docs/RepositoryList.md | 4 +- docs/RepositorySpec.md | 3 +- docs/RepositoryStatus.md | 2 +- docs/ResourceAlertSeverityType.md | 1 + docs/ResourceMonitor.md | 2 +- docs/ResourceMonitorSpec.md | 3 +- docs/ResourceSync.md | 6 +- docs/ResourceSyncList.md | 4 +- docs/ResourceSyncSpec.md | 7 +- docs/ResourceSyncStatus.md | 6 +- docs/ResourcesyncApi.md | 67 +- docs/RolloutDeviceSelection.md | 5 +- docs/RolloutPolicy.md | 4 +- docs/{SortOrder.md => RolloutStrategy.md} | 8 +- docs/SshConfig.md | 7 +- docs/SshRepoSpec.md | 2 +- docs/Status.md | 9 +- docs/TemplateVersion.md | 4 +- docs/TemplateVersionList.md | 4 +- docs/TemplateVersionSpec.md | 1 + docs/TemplateVersionStatus.md | 13 +- docs/TemplateversionApi.md | 304 -- docs/UpdateSchedule.md | 32 + docs/{Error.md => Version.md} | 18 +- .../{EnrollmentconfigApi.md => VersionApi.md} | 33 +- flightctl/api/default_api.py | 1101 ------- flightctl/api/templateversion_api.py | 1235 -------- flightctl/{ => flightctl}/__init__.py | 51 +- flightctl/{ => flightctl}/api/__init__.py | 5 +- flightctl/flightctl/api/authentication_api.py | 557 ++++ .../api/certificatesigningrequest_api.py | 603 +++- flightctl/{ => flightctl}/api/device_api.py | 1071 ++++--- .../api/enrollmentrequest_api.py | 1277 ++++++-- flightctl/{ => flightctl}/api/fleet_api.py | 2227 +++++++++++--- .../{ => flightctl}/api/repository_api.py | 306 +- .../{ => flightctl}/api/resourcesync_api.py | 323 +- .../api/version_api.py} | 81 +- flightctl/{ => flightctl}/api_client.py | 9 +- flightctl/{ => flightctl}/api_response.py | 0 flightctl/{ => flightctl}/configuration.py | 9 +- flightctl/{ => flightctl}/exceptions.py | 24 +- flightctl/{ => flightctl}/models/__init__.py | 46 +- .../models/application_env_vars.py | 9 +- .../models/application_provider_spec.py} | 21 +- .../models/application_status_type.py | 9 +- .../applications_summary_status_type.py | 9 +- .../{ => flightctl}/models/auth_config.py | 11 +- flightctl/{ => flightctl}/models/batch.py | 7 +- .../{ => flightctl}/models/batch_limit.py | 9 +- .../{ => flightctl}/models/batch_sequence.py | 14 +- .../models/certificate_signing_request.py | 13 +- .../certificate_signing_request_list.py | 13 +- .../certificate_signing_request_spec.py | 21 +- .../certificate_signing_request_status.py | 13 +- flightctl/{ => flightctl}/models/condition.py | 9 +- .../models/condition_status.py | 9 +- .../{ => flightctl}/models/condition_type.py | 13 +- .../models/config_provider_spec.py | 7 +- .../models/cpu_resource_monitor_spec.py | 17 +- .../models/custom_resource_monitor_spec.py | 9 +- flightctl/{ => flightctl}/models/device.py | 11 +- .../models/device_application_status.py | 7 +- .../device_applications_summary_status.py | 11 +- .../models/device_config_status.py | 11 +- .../{ => flightctl}/models/device_console.py | 17 +- .../models/device_decommission.py} | 26 +- .../models/device_decommission_target_type.py | 38 + .../models/device_integrity_status.py} | 15 +- .../device_integrity_status_summary_type.py | 9 +- .../models/device_lifecycle_hook_type.py | 40 + .../models/device_lifecycle_status.py} | 28 +- .../models/device_lifecycle_status_type.py | 40 + .../{ => flightctl}/models/device_list.py | 11 +- .../{ => flightctl}/models/device_os_spec.py | 17 +- .../models/device_os_status.py | 17 +- .../models/device_resource_status.py | 9 +- .../models/device_resource_status_type.py | 9 +- .../{ => flightctl}/models/device_spec.py | 53 +- .../models/device_spec_systemd.py | 11 +- .../{ => flightctl}/models/device_status.py | 25 +- .../models/device_summary_status.py | 9 +- .../models/device_summary_status_type.py | 9 +- .../models/device_system_info.py | 13 +- .../models/device_update_policy_spec.py} | 44 +- .../models/device_updated_status.py | 9 +- .../models/device_updated_status_type.py | 9 +- .../{ => flightctl}/models/devices_summary.py | 15 +- .../models/disk_resource_monitor_spec.py | 9 +- .../models/disruption_budget.py} | 24 +- .../models/enrollment_config.py | 15 +- .../models/enrollment_request.py | 11 +- .../models/enrollment_request_approval.py | 90 + .../enrollment_request_approval_status.py} | 23 +- .../models/enrollment_request_list.py | 11 +- .../models/enrollment_request_spec.py | 11 +- .../models/enrollment_request_status.py | 15 +- .../models/enrollment_service.py | 11 +- .../models/enrollment_service_auth.py | 13 +- .../models/enrollment_service_service.py | 13 +- .../{ => flightctl}/models/file_operation.py | 16 +- flightctl/{ => flightctl}/models/file_spec.py | 9 +- flightctl/{ => flightctl}/models/fleet.py | 11 +- .../{ => flightctl}/models/fleet_list.py | 11 +- .../models/fleet_rollout_status.py | 11 +- .../{ => flightctl}/models/fleet_spec.py | 7 +- .../models/fleet_spec_template.py | 9 +- .../{ => flightctl}/models/fleet_status.py | 7 +- .../models/generic_repo_spec.py | 9 +- .../models/git_config_provider_spec.py | 9 +- .../git_config_provider_spec_git_ref.py | 17 +- .../models/hook_action.py} | 37 +- .../models/hook_action_run.py} | 19 +- .../models/hook_condition.py} | 66 +- .../models/hook_condition_path_op.py | 91 + .../{ => flightctl}/models/http_config.py | 23 +- .../models/http_config_provider_spec.py | 9 +- .../http_config_provider_spec_http_ref.py | 15 +- .../{ => flightctl}/models/http_repo_spec.py | 9 +- .../models/image_application_provider.py | 9 +- .../models/inline_config_provider_spec.py | 11 +- .../models/kubernetes_secret_provider_spec.py | 9 +- ...ernetes_secret_provider_spec_secret_ref.py | 15 +- .../{ => flightctl}/models/label_selector.py | 13 +- flightctl/{ => flightctl}/models/list_meta.py | 11 +- .../models/match_expression.py | 15 +- .../models/memory_resource_monitor_spec.py | 9 +- .../{ => flightctl}/models/object_meta.py | 13 +- .../models/patch_request_inner.py | 7 +- .../{ => flightctl}/models/repo_spec_type.py | 9 +- .../{ => flightctl}/models/repository.py | 15 +- .../{ => flightctl}/models/repository_list.py | 11 +- .../{ => flightctl}/models/repository_spec.py | 9 +- .../models/repository_status.py | 9 +- .../models/resource_alert_rule.py | 7 +- .../models/resource_alert_severity_type.py | 9 +- .../models/resource_monitor.py | 39 +- .../models/resource_monitor_spec.py | 11 +- .../{ => flightctl}/models/resource_sync.py | 13 +- .../models/resource_sync_list.py | 11 +- .../models/resource_sync_spec.py | 15 +- .../models/resource_sync_status.py | 13 +- .../models/rollout_device_selection.py | 9 +- .../{ => flightctl}/models/rollout_policy.py | 29 +- .../flightctl/models/rollout_strategy.py | 37 + .../{ => flightctl}/models/ssh_config.py | 15 +- .../{ => flightctl}/models/ssh_repo_spec.py | 9 +- flightctl/{ => flightctl}/models/status.py | 25 +- .../models/template_version.py | 11 +- .../models/template_version_list.py | 11 +- .../models/template_version_spec.py | 9 +- .../models/template_version_status.py | 55 +- flightctl/flightctl/models/update_schedule.py | 103 + .../error.py => flightctl/models/version.py} | 21 +- flightctl/{ => flightctl}/py.typed | 0 flightctl/{ => flightctl}/rest.py | 7 +- flightctl/models/device_hooks_spec.py | 123 - flightctl/models/device_integrity_status.py | 91 - flightctl/models/device_update_hook_spec.py | 104 - flightctl/models/hook_action_one_of.py | 91 - flightctl/models/hook_action_one_of1.py | 91 - flightctl/models/hook_action_spec.py | 98 - flightctl/models/hook_action_systemd_spec.py | 104 - flightctl/models/hook_action_systemd_unit.py | 99 - flightctl/models/rendered_device_spec.py | 133 - flightctl/models/sort_order.py | 37 - pyproject.toml | 10 +- setup.py | 19 +- test/test_application_env_vars.py | 7 +- ...c.py => test_application_provider_spec.py} | 29 +- test/test_application_status_type.py | 7 +- test/test_applications_summary_status_type.py | 7 +- test/test_auth_config.py | 7 +- test/test_authentication_api.py | 44 + test/test_batch.py | 7 +- test/test_batch_limit.py | 7 +- test/test_batch_sequence.py | 9 +- test/test_certificate_signing_request.py | 15 +- test/test_certificate_signing_request_list.py | 23 +- test/test_certificate_signing_request_spec.py | 8 +- ...test_certificate_signing_request_status.py | 23 +- test/test_certificatesigningrequest_api.py | 13 +- test/test_condition.py | 7 +- test/test_condition_status.py | 7 +- test/test_condition_type.py | 7 +- test/test_config_provider_spec.py | 7 +- test/test_cpu_resource_monitor_spec.py | 29 +- test/test_custom_resource_monitor_spec.py | 7 +- test/test_default_api.py | 55 - test/test_device.py | 80 +- test/test_device_api.py | 29 +- test/test_device_application_status.py | 7 +- ...test_device_applications_summary_status.py | 7 +- test/test_device_config_status.py | 7 +- test/test_device_console.py | 11 +- test/test_device_decommission.py | 53 + test/test_device_decommission_target_type.py | 34 + test/test_device_hooks_spec.py | 90 - test/test_device_integrity_status.py | 16 +- test/test_device_integrity_status_summary.py | 53 - ...st_device_integrity_status_summary_type.py | 7 +- test/test_device_lifecycle_hook_type.py | 34 + test/test_device_lifecycle_status.py | 54 + test/test_device_lifecycle_status_type.py | 34 + test/test_device_list.py | 157 +- test/test_device_os_spec.py | 29 +- test/test_device_os_status.py | 29 +- test/test_device_reboot_hook_spec.py | 58 - test/test_device_resource_status.py | 7 +- test/test_device_resource_status_type.py | 7 +- test/test_device_spec.py | 67 +- test/test_device_spec_systemd.py | 7 +- test/test_device_status.py | 35 +- test/test_device_summary_status.py | 7 +- test/test_device_summary_status_type.py | 7 +- test/test_device_system_info.py | 11 +- test/test_device_update_hook_spec.py | 62 - test/test_device_update_policy_spec.py | 59 + test/test_device_updated_status.py | 7 +- test/test_device_updated_status_type.py | 7 +- test/test_devices_summary.py | 16 +- test/test_disk_resource_monitor_spec.py | 7 +- test/test_disruption_allowance.py | 55 - test/test_disruption_budget.py | 56 + test/test_enrollment_config.py | 11 +- test/test_enrollment_request.py | 45 +- test/test_enrollment_request_approval.py | 11 +- ...test_enrollment_request_approval_status.py | 60 + test/test_enrollment_request_list.py | 47 +- test/test_enrollment_request_spec.py | 22 +- test/test_enrollment_request_status.py | 15 +- test/test_enrollment_service.py | 7 +- test/test_enrollment_service_auth.py | 7 +- test/test_enrollment_service_service.py | 7 +- test/test_enrollmentconfig_api.py | 37 - test/test_enrollmentrequest_api.py | 25 +- test/test_file_operation.py | 7 +- test/test_file_spec.py | 7 +- test/test_fleet.py | 153 +- test/test_fleet_api.py | 37 +- test/test_fleet_list.py | 153 +- test/test_fleet_rollout_status.py | 7 +- test/test_fleet_spec.py | 140 +- test/test_fleet_spec_template.py | 127 +- test/test_fleet_status.py | 7 +- test/test_generic_repo_spec.py | 7 +- test/test_git_config_provider_spec.py | 7 +- test/test_git_config_provider_spec_git_ref.py | 7 +- test/test_hook_action.py | 21 +- test/test_hook_action_executable.py | 56 - test/test_hook_action_executable_spec.py | 57 - test/test_hook_action_one_of.py | 52 - test/test_hook_action_one_of1.py | 52 - test/test_hook_action_run.py | 57 + test/test_hook_action_spec.py | 51 - test/test_hook_action_systemd_spec.py | 63 - test/test_hook_action_systemd_unit.py | 59 - test/test_hook_condition.py | 59 + test/test_hook_condition_path_op.py | 59 + test/test_http_config.py | 7 +- test/test_http_config_provider_spec.py | 7 +- ...test_http_config_provider_spec_http_ref.py | 7 +- test/test_http_repo_spec.py | 7 +- test/test_image_application_provider.py | 7 +- test/test_inline_config_provider_spec.py | 7 +- test/test_kubernetes_secret_provider_spec.py | 7 +- ...ernetes_secret_provider_spec_secret_ref.py | 7 +- test/test_label_selector.py | 7 +- test/test_list_meta.py | 7 +- test/test_match_expression.py | 7 +- test/test_memory_resource_monitor_spec.py | 7 +- test/test_object_meta.py | 7 +- test/test_patch_request_inner.py | 7 +- test/test_rendered_application_spec.py | 56 - test/test_rendered_device_spec.py | 106 - test/test_rendered_device_spec_systemd.py | 53 - test/test_repo_spec_type.py | 7 +- test/test_repository.py | 8 +- test/test_repository_api.py | 7 +- test/test_repository_list.py | 7 +- test/test_repository_spec.py | 7 +- test/test_repository_status.py | 7 +- test/test_resource_alert_rule.py | 7 +- test/test_resource_alert_severity_type.py | 7 +- test/test_resource_monitor.py | 7 +- test/test_resource_monitor_spec.py | 7 +- test/test_resource_sync.py | 7 +- test/test_resource_sync_list.py | 7 +- test/test_resource_sync_spec.py | 7 +- test/test_resource_sync_status.py | 7 +- test/test_resourcesync_api.py | 7 +- test/test_rollout_device_selection.py | 11 +- test/test_rollout_policy.py | 20 +- test/test_rollout_strategy.py | 34 + test/test_sort_order.py | 33 - test/test_ssh_config.py | 7 +- test/test_ssh_repo_spec.py | 7 +- test/test_status.py | 16 +- test/test_template_version.py | 7 +- test/test_template_version_list.py | 7 +- test/test_template_version_spec.py | 7 +- test/test_template_version_status.py | 74 +- test/test_templateversion_api.py | 55 - test/test_update_schedule.py | 55 + test/{test_error.py => test_version.py} | 33 +- test/test_version_api.py | 38 + 415 files changed, 11806 insertions(+), 10246 deletions(-) create mode 100644 docs/ApplicationProviderSpec.md delete mode 100644 docs/ApplicationSpec.md create mode 100644 docs/AuthenticationApi.md rename docs/{CPUResourceMonitorSpec.md => CpuResourceMonitorSpec.md} (66%) delete mode 100644 docs/DefaultApi.md create mode 100644 docs/DeviceDecommission.md create mode 100644 docs/DeviceDecommissionTargetType.md delete mode 100644 docs/DeviceHooksSpec.md delete mode 100644 docs/DeviceIntegrityStatusSummary.md create mode 100644 docs/DeviceLifecycleHookType.md create mode 100644 docs/DeviceLifecycleStatus.md create mode 100644 docs/DeviceLifecycleStatusType.md rename docs/{DeviceOSSpec.md => DeviceOsSpec.md} (53%) rename docs/{DeviceOSStatus.md => DeviceOsStatus.md} (61%) delete mode 100644 docs/DeviceRebootHookSpec.md delete mode 100644 docs/DeviceUpdateHookSpec.md create mode 100644 docs/DeviceUpdatePolicySpec.md rename docs/{DisruptionAllowance.md => DisruptionBudget.md} (54%) create mode 100644 docs/EnrollmentRequestApprovalStatus.md delete mode 100644 docs/HookActionExecutable.md delete mode 100644 docs/HookActionExecutableSpec.md delete mode 100644 docs/HookActionOneOf.md delete mode 100644 docs/HookActionOneOf1.md create mode 100644 docs/HookActionRun.md delete mode 100644 docs/HookActionSpec.md delete mode 100644 docs/HookActionSystemdSpec.md delete mode 100644 docs/HookActionSystemdUnit.md create mode 100644 docs/HookCondition.md create mode 100644 docs/HookConditionPathOp.md delete mode 100644 docs/RenderedApplicationSpec.md delete mode 100644 docs/RenderedDeviceSpec.md delete mode 100644 docs/RenderedDeviceSpecSystemd.md rename docs/{SortOrder.md => RolloutStrategy.md} (58%) delete mode 100644 docs/TemplateversionApi.md create mode 100644 docs/UpdateSchedule.md rename docs/{Error.md => Version.md} (54%) rename docs/{EnrollmentconfigApi.md => VersionApi.md} (55%) delete mode 100644 flightctl/api/default_api.py delete mode 100644 flightctl/api/templateversion_api.py rename flightctl/{ => flightctl}/__init__.py (80%) rename flightctl/{ => flightctl}/api/__init__.py (69%) create mode 100644 flightctl/flightctl/api/authentication_api.py rename flightctl/{ => flightctl}/api/certificatesigningrequest_api.py (80%) rename flightctl/{ => flightctl}/api/device_api.py (81%) rename flightctl/{ => flightctl}/api/enrollmentrequest_api.py (67%) rename flightctl/{ => flightctl}/api/fleet_api.py (57%) rename flightctl/{ => flightctl}/api/repository_api.py (91%) rename flightctl/{ => flightctl}/api/resourcesync_api.py (90%) rename flightctl/{api/enrollmentconfig_api.py => flightctl/api/version_api.py} (82%) rename flightctl/{ => flightctl}/api_client.py (98%) rename flightctl/{ => flightctl}/api_response.py (100%) rename flightctl/{ => flightctl}/configuration.py (98%) rename flightctl/{ => flightctl}/exceptions.py (88%) rename flightctl/{ => flightctl}/models/__init__.py (80%) rename flightctl/{ => flightctl}/models/application_env_vars.py (88%) rename flightctl/{models/application_spec.py => flightctl/models/application_provider_spec.py} (78%) rename flightctl/{ => flightctl}/models/application_status_type.py (70%) rename flightctl/{ => flightctl}/models/applications_summary_status_type.py (69%) rename flightctl/{ => flightctl}/models/auth_config.py (85%) rename flightctl/{ => flightctl}/models/batch.py (93%) rename flightctl/{ => flightctl}/models/batch_limit.py (94%) rename flightctl/{ => flightctl}/models/batch_sequence.py (84%) rename flightctl/{ => flightctl}/models/certificate_signing_request.py (93%) rename flightctl/{ => flightctl}/models/certificate_signing_request_list.py (93%) rename flightctl/{ => flightctl}/models/certificate_signing_request_spec.py (83%) rename flightctl/{ => flightctl}/models/certificate_signing_request_status.py (91%) rename flightctl/{ => flightctl}/models/condition.py (90%) rename flightctl/{ => flightctl}/models/condition_status.py (66%) rename flightctl/{ => flightctl}/models/condition_type.py (66%) rename flightctl/{ => flightctl}/models/config_provider_spec.py (96%) rename flightctl/{ => flightctl}/models/cpu_resource_monitor_spec.py (86%) rename flightctl/{ => flightctl}/models/custom_resource_monitor_spec.py (91%) rename flightctl/{ => flightctl}/models/device.py (93%) rename flightctl/{ => flightctl}/models/device_application_status.py (92%) rename flightctl/{ => flightctl}/models/device_applications_summary_status.py (87%) rename flightctl/{ => flightctl}/models/device_config_status.py (85%) rename flightctl/{ => flightctl}/models/device_console.py (74%) rename flightctl/{models/rendered_device_spec_systemd.py => flightctl/models/device_decommission.py} (71%) create mode 100644 flightctl/flightctl/models/device_decommission_target_type.py rename flightctl/{models/device_integrity_status_summary.py => flightctl/models/device_integrity_status.py} (83%) rename flightctl/{ => flightctl}/models/device_integrity_status_summary_type.py (70%) create mode 100644 flightctl/flightctl/models/device_lifecycle_hook_type.py rename flightctl/{models/rendered_application_spec.py => flightctl/models/device_lifecycle_status.py} (69%) create mode 100644 flightctl/flightctl/models/device_lifecycle_status_type.py rename flightctl/{ => flightctl}/models/device_list.py (93%) rename flightctl/{ => flightctl}/models/device_os_spec.py (80%) rename flightctl/{ => flightctl}/models/device_os_status.py (82%) rename flightctl/{ => flightctl}/models/device_resource_status.py (89%) rename flightctl/{ => flightctl}/models/device_resource_status_type.py (70%) rename flightctl/{ => flightctl}/models/device_spec.py (64%) rename flightctl/{ => flightctl}/models/device_spec_systemd.py (86%) rename flightctl/{ => flightctl}/models/device_status.py (87%) rename flightctl/{ => flightctl}/models/device_summary_status.py (89%) rename flightctl/{ => flightctl}/models/device_summary_status_type.py (72%) rename flightctl/{ => flightctl}/models/device_system_info.py (85%) rename flightctl/{models/device_reboot_hook_spec.py => flightctl/models/device_update_policy_spec.py} (57%) rename flightctl/{ => flightctl}/models/device_updated_status.py (90%) rename flightctl/{ => flightctl}/models/device_updated_status_type.py (70%) rename flightctl/{ => flightctl}/models/devices_summary.py (77%) rename flightctl/{ => flightctl}/models/disk_resource_monitor_spec.py (91%) rename flightctl/{models/disruption_allowance.py => flightctl/models/disruption_budget.py} (65%) rename flightctl/{ => flightctl}/models/enrollment_config.py (83%) rename flightctl/{ => flightctl}/models/enrollment_request.py (93%) create mode 100644 flightctl/flightctl/models/enrollment_request_approval.py rename flightctl/{models/enrollment_request_approval.py => flightctl/models/enrollment_request_approval_status.py} (72%) rename flightctl/{ => flightctl}/models/enrollment_request_list.py (93%) rename flightctl/{ => flightctl}/models/enrollment_request_spec.py (89%) rename flightctl/{ => flightctl}/models/enrollment_request_status.py (85%) rename flightctl/{ => flightctl}/models/enrollment_service.py (85%) rename flightctl/{ => flightctl}/models/enrollment_service_auth.py (78%) rename flightctl/{ => flightctl}/models/enrollment_service_service.py (78%) rename flightctl/{ => flightctl}/models/file_operation.py (60%) rename flightctl/{ => flightctl}/models/file_spec.py (88%) rename flightctl/{ => flightctl}/models/fleet.py (93%) rename flightctl/{ => flightctl}/models/fleet_list.py (93%) rename flightctl/{ => flightctl}/models/fleet_rollout_status.py (83%) rename flightctl/{ => flightctl}/models/fleet_spec.py (93%) rename flightctl/{ => flightctl}/models/fleet_spec_template.py (91%) rename flightctl/{ => flightctl}/models/fleet_status.py (94%) rename flightctl/{ => flightctl}/models/generic_repo_spec.py (90%) rename flightctl/{ => flightctl}/models/git_config_provider_spec.py (91%) rename flightctl/{ => flightctl}/models/git_config_provider_spec_git_ref.py (79%) rename flightctl/{models/hook_action_executable_spec.py => flightctl/models/hook_action.py} (65%) rename flightctl/{models/hook_action_executable.py => flightctl/models/hook_action_run.py} (77%) rename flightctl/{models/hook_action.py => flightctl/models/hook_condition.py} (60%) create mode 100644 flightctl/flightctl/models/hook_condition_path_op.py rename flightctl/{ => flightctl}/models/http_config.py (82%) rename flightctl/{ => flightctl}/models/http_config_provider_spec.py (92%) rename flightctl/{ => flightctl}/models/http_config_provider_spec_http_ref.py (82%) rename flightctl/{ => flightctl}/models/http_repo_spec.py (92%) rename flightctl/{ => flightctl}/models/image_application_provider.py (89%) rename flightctl/{ => flightctl}/models/inline_config_provider_spec.py (89%) rename flightctl/{ => flightctl}/models/kubernetes_secret_provider_spec.py (92%) rename flightctl/{ => flightctl}/models/kubernetes_secret_provider_spec_secret_ref.py (81%) rename flightctl/{ => flightctl}/models/label_selector.py (84%) rename flightctl/{ => flightctl}/models/list_meta.py (63%) rename flightctl/{ => flightctl}/models/match_expression.py (81%) rename flightctl/{ => flightctl}/models/memory_resource_monitor_spec.py (91%) rename flightctl/{ => flightctl}/models/object_meta.py (90%) rename flightctl/{ => flightctl}/models/patch_request_inner.py (92%) rename flightctl/{ => flightctl}/models/repo_spec_type.py (66%) rename flightctl/{ => flightctl}/models/repository.py (91%) rename flightctl/{ => flightctl}/models/repository_list.py (93%) rename flightctl/{ => flightctl}/models/repository_spec.py (95%) rename flightctl/{ => flightctl}/models/repository_status.py (91%) rename flightctl/{ => flightctl}/models/resource_alert_rule.py (93%) rename flightctl/{ => flightctl}/models/resource_alert_severity_type.py (70%) rename flightctl/{ => flightctl}/models/resource_monitor.py (82%) rename flightctl/{ => flightctl}/models/resource_monitor_spec.py (90%) rename flightctl/{ => flightctl}/models/resource_sync.py (92%) rename flightctl/{ => flightctl}/models/resource_sync_list.py (93%) rename flightctl/{ => flightctl}/models/resource_sync_spec.py (85%) rename flightctl/{ => flightctl}/models/resource_sync_status.py (89%) rename flightctl/{ => flightctl}/models/rollout_device_selection.py (94%) rename flightctl/{ => flightctl}/models/rollout_policy.py (76%) create mode 100644 flightctl/flightctl/models/rollout_strategy.py rename flightctl/{ => flightctl}/models/ssh_config.py (83%) rename flightctl/{ => flightctl}/models/ssh_repo_spec.py (91%) rename flightctl/{ => flightctl}/models/status.py (53%) rename flightctl/{ => flightctl}/models/template_version.py (93%) rename flightctl/{ => flightctl}/models/template_version_list.py (93%) rename flightctl/{ => flightctl}/models/template_version_spec.py (88%) rename flightctl/{ => flightctl}/models/template_version_status.py (64%) create mode 100644 flightctl/flightctl/models/update_schedule.py rename flightctl/{models/error.py => flightctl/models/version.py} (78%) rename flightctl/{ => flightctl}/py.typed (100%) rename flightctl/{ => flightctl}/rest.py (97%) delete mode 100644 flightctl/models/device_hooks_spec.py delete mode 100644 flightctl/models/device_integrity_status.py delete mode 100644 flightctl/models/device_update_hook_spec.py delete mode 100644 flightctl/models/hook_action_one_of.py delete mode 100644 flightctl/models/hook_action_one_of1.py delete mode 100644 flightctl/models/hook_action_spec.py delete mode 100644 flightctl/models/hook_action_systemd_spec.py delete mode 100644 flightctl/models/hook_action_systemd_unit.py delete mode 100644 flightctl/models/rendered_device_spec.py delete mode 100644 flightctl/models/sort_order.py rename test/{test_application_spec.py => test_application_provider_spec.py} (51%) create mode 100644 test/test_authentication_api.py delete mode 100644 test/test_default_api.py create mode 100644 test/test_device_decommission.py create mode 100644 test/test_device_decommission_target_type.py delete mode 100644 test/test_device_hooks_spec.py delete mode 100644 test/test_device_integrity_status_summary.py create mode 100644 test/test_device_lifecycle_hook_type.py create mode 100644 test/test_device_lifecycle_status.py create mode 100644 test/test_device_lifecycle_status_type.py delete mode 100644 test/test_device_reboot_hook_spec.py delete mode 100644 test/test_device_update_hook_spec.py create mode 100644 test/test_device_update_policy_spec.py delete mode 100644 test/test_disruption_allowance.py create mode 100644 test/test_disruption_budget.py create mode 100644 test/test_enrollment_request_approval_status.py delete mode 100644 test/test_enrollmentconfig_api.py delete mode 100644 test/test_hook_action_executable.py delete mode 100644 test/test_hook_action_executable_spec.py delete mode 100644 test/test_hook_action_one_of.py delete mode 100644 test/test_hook_action_one_of1.py create mode 100644 test/test_hook_action_run.py delete mode 100644 test/test_hook_action_spec.py delete mode 100644 test/test_hook_action_systemd_spec.py delete mode 100644 test/test_hook_action_systemd_unit.py create mode 100644 test/test_hook_condition.py create mode 100644 test/test_hook_condition_path_op.py delete mode 100644 test/test_rendered_application_spec.py delete mode 100644 test/test_rendered_device_spec.py delete mode 100644 test/test_rendered_device_spec_systemd.py create mode 100644 test/test_rollout_strategy.py delete mode 100644 test/test_sort_order.py delete mode 100644 test/test_templateversion_api.py create mode 100644 test/test_update_schedule.py rename test/{test_error.py => test_version.py} (50%) create mode 100644 test/test_version_api.py diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 90f6d98..73d7011 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1,17 +1,18 @@ .github/workflows/python.yml .gitignore .gitlab-ci.yml +.openapi-generator-ignore .travis.yml README.md docs/ApplicationEnvVars.md -docs/ApplicationSpec.md +docs/ApplicationProviderSpec.md docs/ApplicationStatusType.md docs/ApplicationsSummaryStatusType.md docs/AuthConfig.md +docs/AuthenticationApi.md docs/Batch.md docs/BatchLimit.md docs/BatchSequence.md -docs/CPUResourceMonitorSpec.md docs/CertificateSigningRequest.md docs/CertificateSigningRequestList.md docs/CertificateSigningRequestSpec.md @@ -21,22 +22,24 @@ docs/Condition.md docs/ConditionStatus.md docs/ConditionType.md docs/ConfigProviderSpec.md +docs/CpuResourceMonitorSpec.md docs/CustomResourceMonitorSpec.md -docs/DefaultApi.md docs/Device.md docs/DeviceApi.md docs/DeviceApplicationStatus.md docs/DeviceApplicationsSummaryStatus.md docs/DeviceConfigStatus.md docs/DeviceConsole.md -docs/DeviceHooksSpec.md +docs/DeviceDecommission.md +docs/DeviceDecommissionTargetType.md docs/DeviceIntegrityStatus.md -docs/DeviceIntegrityStatusSummary.md docs/DeviceIntegrityStatusSummaryType.md +docs/DeviceLifecycleHookType.md +docs/DeviceLifecycleStatus.md +docs/DeviceLifecycleStatusType.md docs/DeviceList.md -docs/DeviceOSSpec.md -docs/DeviceOSStatus.md -docs/DeviceRebootHookSpec.md +docs/DeviceOsSpec.md +docs/DeviceOsStatus.md docs/DeviceResourceStatus.md docs/DeviceResourceStatusType.md docs/DeviceSpec.md @@ -45,24 +48,23 @@ docs/DeviceStatus.md docs/DeviceSummaryStatus.md docs/DeviceSummaryStatusType.md docs/DeviceSystemInfo.md -docs/DeviceUpdateHookSpec.md +docs/DeviceUpdatePolicySpec.md docs/DeviceUpdatedStatus.md docs/DeviceUpdatedStatusType.md docs/DevicesSummary.md docs/DiskResourceMonitorSpec.md -docs/DisruptionAllowance.md +docs/DisruptionBudget.md docs/EnrollmentConfig.md docs/EnrollmentRequest.md docs/EnrollmentRequestApproval.md +docs/EnrollmentRequestApprovalStatus.md docs/EnrollmentRequestList.md docs/EnrollmentRequestSpec.md docs/EnrollmentRequestStatus.md docs/EnrollmentService.md docs/EnrollmentServiceAuth.md docs/EnrollmentServiceService.md -docs/EnrollmentconfigApi.md docs/EnrollmentrequestApi.md -docs/Error.md docs/FileOperation.md docs/FileSpec.md docs/Fleet.md @@ -76,13 +78,9 @@ docs/GenericRepoSpec.md docs/GitConfigProviderSpec.md docs/GitConfigProviderSpecGitRef.md docs/HookAction.md -docs/HookActionExecutable.md -docs/HookActionExecutableSpec.md -docs/HookActionOneOf.md -docs/HookActionOneOf1.md -docs/HookActionSpec.md -docs/HookActionSystemdSpec.md -docs/HookActionSystemdUnit.md +docs/HookActionRun.md +docs/HookCondition.md +docs/HookConditionPathOp.md docs/HttpConfig.md docs/HttpConfigProviderSpec.md docs/HttpConfigProviderSpecHttpRef.md @@ -97,9 +95,6 @@ docs/MatchExpression.md docs/MemoryResourceMonitorSpec.md docs/ObjectMeta.md docs/PatchRequestInner.md -docs/RenderedApplicationSpec.md -docs/RenderedDeviceSpec.md -docs/RenderedDeviceSpecSystemd.md docs/RepoSpecType.md docs/Repository.md docs/RepositoryApi.md @@ -117,7 +112,7 @@ docs/ResourceSyncStatus.md docs/ResourcesyncApi.md docs/RolloutDeviceSelection.md docs/RolloutPolicy.md -docs/SortOrder.md +docs/RolloutStrategy.md docs/SshConfig.md docs/SshRepoSpec.md docs/Status.md @@ -125,25 +120,26 @@ docs/TemplateVersion.md docs/TemplateVersionList.md docs/TemplateVersionSpec.md docs/TemplateVersionStatus.md -docs/TemplateversionApi.md +docs/UpdateSchedule.md +docs/Version.md +docs/VersionApi.md flightctl/__init__.py flightctl/api/__init__.py +flightctl/api/authentication_api.py flightctl/api/certificatesigningrequest_api.py -flightctl/api/default_api.py flightctl/api/device_api.py -flightctl/api/enrollmentconfig_api.py flightctl/api/enrollmentrequest_api.py flightctl/api/fleet_api.py flightctl/api/repository_api.py flightctl/api/resourcesync_api.py -flightctl/api/templateversion_api.py +flightctl/api/version_api.py flightctl/api_client.py flightctl/api_response.py flightctl/configuration.py flightctl/exceptions.py flightctl/models/__init__.py flightctl/models/application_env_vars.py -flightctl/models/application_spec.py +flightctl/models/application_provider_spec.py flightctl/models/application_status_type.py flightctl/models/applications_summary_status_type.py flightctl/models/auth_config.py @@ -165,14 +161,16 @@ flightctl/models/device_application_status.py flightctl/models/device_applications_summary_status.py flightctl/models/device_config_status.py flightctl/models/device_console.py -flightctl/models/device_hooks_spec.py +flightctl/models/device_decommission.py +flightctl/models/device_decommission_target_type.py flightctl/models/device_integrity_status.py -flightctl/models/device_integrity_status_summary.py flightctl/models/device_integrity_status_summary_type.py +flightctl/models/device_lifecycle_hook_type.py +flightctl/models/device_lifecycle_status.py +flightctl/models/device_lifecycle_status_type.py flightctl/models/device_list.py flightctl/models/device_os_spec.py flightctl/models/device_os_status.py -flightctl/models/device_reboot_hook_spec.py flightctl/models/device_resource_status.py flightctl/models/device_resource_status_type.py flightctl/models/device_spec.py @@ -181,22 +179,22 @@ flightctl/models/device_status.py flightctl/models/device_summary_status.py flightctl/models/device_summary_status_type.py flightctl/models/device_system_info.py -flightctl/models/device_update_hook_spec.py +flightctl/models/device_update_policy_spec.py flightctl/models/device_updated_status.py flightctl/models/device_updated_status_type.py flightctl/models/devices_summary.py flightctl/models/disk_resource_monitor_spec.py -flightctl/models/disruption_allowance.py +flightctl/models/disruption_budget.py flightctl/models/enrollment_config.py flightctl/models/enrollment_request.py flightctl/models/enrollment_request_approval.py +flightctl/models/enrollment_request_approval_status.py flightctl/models/enrollment_request_list.py flightctl/models/enrollment_request_spec.py flightctl/models/enrollment_request_status.py flightctl/models/enrollment_service.py flightctl/models/enrollment_service_auth.py flightctl/models/enrollment_service_service.py -flightctl/models/error.py flightctl/models/file_operation.py flightctl/models/file_spec.py flightctl/models/fleet.py @@ -209,13 +207,9 @@ flightctl/models/generic_repo_spec.py flightctl/models/git_config_provider_spec.py flightctl/models/git_config_provider_spec_git_ref.py flightctl/models/hook_action.py -flightctl/models/hook_action_executable.py -flightctl/models/hook_action_executable_spec.py -flightctl/models/hook_action_one_of.py -flightctl/models/hook_action_one_of1.py -flightctl/models/hook_action_spec.py -flightctl/models/hook_action_systemd_spec.py -flightctl/models/hook_action_systemd_unit.py +flightctl/models/hook_action_run.py +flightctl/models/hook_condition.py +flightctl/models/hook_condition_path_op.py flightctl/models/http_config.py flightctl/models/http_config_provider_spec.py flightctl/models/http_config_provider_spec_http_ref.py @@ -230,9 +224,6 @@ flightctl/models/match_expression.py flightctl/models/memory_resource_monitor_spec.py flightctl/models/object_meta.py flightctl/models/patch_request_inner.py -flightctl/models/rendered_application_spec.py -flightctl/models/rendered_device_spec.py -flightctl/models/rendered_device_spec_systemd.py flightctl/models/repo_spec_type.py flightctl/models/repository.py flightctl/models/repository_list.py @@ -248,7 +239,7 @@ flightctl/models/resource_sync_spec.py flightctl/models/resource_sync_status.py flightctl/models/rollout_device_selection.py flightctl/models/rollout_policy.py -flightctl/models/sort_order.py +flightctl/models/rollout_strategy.py flightctl/models/ssh_config.py flightctl/models/ssh_repo_spec.py flightctl/models/status.py @@ -256,6 +247,8 @@ flightctl/models/template_version.py flightctl/models/template_version_list.py flightctl/models/template_version_spec.py flightctl/models/template_version_status.py +flightctl/models/update_schedule.py +flightctl/models/version.py flightctl/py.typed flightctl/rest.py git_push.sh @@ -266,10 +259,11 @@ setup.py test-requirements.txt test/__init__.py test/test_application_env_vars.py -test/test_application_spec.py +test/test_application_provider_spec.py test/test_application_status_type.py test/test_applications_summary_status_type.py test/test_auth_config.py +test/test_authentication_api.py test/test_batch.py test/test_batch_limit.py test/test_batch_sequence.py @@ -284,21 +278,22 @@ test/test_condition_type.py test/test_config_provider_spec.py test/test_cpu_resource_monitor_spec.py test/test_custom_resource_monitor_spec.py -test/test_default_api.py test/test_device.py test/test_device_api.py test/test_device_application_status.py test/test_device_applications_summary_status.py test/test_device_config_status.py test/test_device_console.py -test/test_device_hooks_spec.py +test/test_device_decommission.py +test/test_device_decommission_target_type.py test/test_device_integrity_status.py -test/test_device_integrity_status_summary.py test/test_device_integrity_status_summary_type.py +test/test_device_lifecycle_hook_type.py +test/test_device_lifecycle_status.py +test/test_device_lifecycle_status_type.py test/test_device_list.py test/test_device_os_spec.py test/test_device_os_status.py -test/test_device_reboot_hook_spec.py test/test_device_resource_status.py test/test_device_resource_status_type.py test/test_device_spec.py @@ -307,24 +302,23 @@ test/test_device_status.py test/test_device_summary_status.py test/test_device_summary_status_type.py test/test_device_system_info.py -test/test_device_update_hook_spec.py +test/test_device_update_policy_spec.py test/test_device_updated_status.py test/test_device_updated_status_type.py test/test_devices_summary.py test/test_disk_resource_monitor_spec.py -test/test_disruption_allowance.py +test/test_disruption_budget.py test/test_enrollment_config.py test/test_enrollment_request.py test/test_enrollment_request_approval.py +test/test_enrollment_request_approval_status.py test/test_enrollment_request_list.py test/test_enrollment_request_spec.py test/test_enrollment_request_status.py test/test_enrollment_service.py test/test_enrollment_service_auth.py test/test_enrollment_service_service.py -test/test_enrollmentconfig_api.py test/test_enrollmentrequest_api.py -test/test_error.py test/test_file_operation.py test/test_file_spec.py test/test_fleet.py @@ -338,13 +332,9 @@ test/test_generic_repo_spec.py test/test_git_config_provider_spec.py test/test_git_config_provider_spec_git_ref.py test/test_hook_action.py -test/test_hook_action_executable.py -test/test_hook_action_executable_spec.py -test/test_hook_action_one_of.py -test/test_hook_action_one_of1.py -test/test_hook_action_spec.py -test/test_hook_action_systemd_spec.py -test/test_hook_action_systemd_unit.py +test/test_hook_action_run.py +test/test_hook_condition.py +test/test_hook_condition_path_op.py test/test_http_config.py test/test_http_config_provider_spec.py test/test_http_config_provider_spec_http_ref.py @@ -359,9 +349,6 @@ test/test_match_expression.py test/test_memory_resource_monitor_spec.py test/test_object_meta.py test/test_patch_request_inner.py -test/test_rendered_application_spec.py -test/test_rendered_device_spec.py -test/test_rendered_device_spec_systemd.py test/test_repo_spec_type.py test/test_repository.py test/test_repository_api.py @@ -379,7 +366,7 @@ test/test_resource_sync_status.py test/test_resourcesync_api.py test/test_rollout_device_selection.py test/test_rollout_policy.py -test/test_sort_order.py +test/test_rollout_strategy.py test/test_ssh_config.py test/test_ssh_repo_spec.py test/test_status.py @@ -387,5 +374,7 @@ test/test_template_version.py test/test_template_version_list.py test/test_template_version_spec.py test/test_template_version_status.py -test/test_templateversion_api.py +test/test_update_schedule.py +test/test_version.py +test/test_version_api.py tox.ini diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index 758bb9c..b23eb27 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -7.10.0 +7.11.0 diff --git a/Makefile b/Makefile index a3c6e71..a8d78c6 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ generate-client: - npx @openapitools/openapi-generator-cli version-manager set 7.10.0 + npx @openapitools/openapi-generator-cli version-manager set 7.11.0 npx @openapitools/openapi-generator-cli generate \ -g python \ -i ./api/v1alpha1/openapi.yml \ diff --git a/README.md b/README.md index c2c0937..2b56a9d 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,14 @@ # flightctl -No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) +[Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: undefined +- API version: v1alpha1 - Package version: 1.0.0 -- Generator version: 7.10.0 +- Generator version: 7.11.0 - Build package: org.openapitools.codegen.languages.PythonClientCodegen +For more information, please visit [https://flightctl.io](https://flightctl.io) ## Requirements. @@ -18,9 +20,9 @@ Python 3.8+ If the python package is hosted on a repository, you can install directly using: ```sh -pip install git+https://github.com/flightctl/python-client.git +pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git ``` -(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/flightctl/python-client.git`) +(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git`) Then import the package: ```python @@ -66,15 +68,14 @@ configuration = flightctl.Configuration( # Enter a context with an instance of the API client with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class - api_instance = flightctl.CertificatesigningrequestApi(api_client) - certificate_signing_request = flightctl.CertificateSigningRequest() # CertificateSigningRequest | + api_instance = flightctl.AuthenticationApi(api_client) try: - api_response = api_instance.create_certificate_signing_request(certificate_signing_request) - print("The response of CertificatesigningrequestApi->create_certificate_signing_request:\n") + api_response = api_instance.auth_config() + print("The response of AuthenticationApi->auth_config:\n") pprint(api_response) except ApiException as e: - print("Exception when calling CertificatesigningrequestApi->create_certificate_signing_request: %s\n" % e) + print("Exception when calling AuthenticationApi->auth_config: %s\n" % e) ``` @@ -84,6 +85,8 @@ All URIs are relative to *http://localhost* Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- +*AuthenticationApi* | [**auth_config**](docs/AuthenticationApi.md#auth_config) | **GET** /api/v1/auth/config | +*AuthenticationApi* | [**auth_validate**](docs/AuthenticationApi.md#auth_validate) | **GET** /api/v1/auth/validate | *CertificatesigningrequestApi* | [**create_certificate_signing_request**](docs/CertificatesigningrequestApi.md#create_certificate_signing_request) | **POST** /api/v1/certificatesigningrequests | *CertificatesigningrequestApi* | [**delete_certificate_signing_request**](docs/CertificatesigningrequestApi.md#delete_certificate_signing_request) | **DELETE** /api/v1/certificatesigningrequests/{name} | *CertificatesigningrequestApi* | [**delete_certificate_signing_requests**](docs/CertificatesigningrequestApi.md#delete_certificate_signing_requests) | **DELETE** /api/v1/certificatesigningrequests | @@ -91,27 +94,27 @@ Class | Method | HTTP request | Description *CertificatesigningrequestApi* | [**patch_certificate_signing_request**](docs/CertificatesigningrequestApi.md#patch_certificate_signing_request) | **PATCH** /api/v1/certificatesigningrequests/{name} | *CertificatesigningrequestApi* | [**read_certificate_signing_request**](docs/CertificatesigningrequestApi.md#read_certificate_signing_request) | **GET** /api/v1/certificatesigningrequests/{name} | *CertificatesigningrequestApi* | [**replace_certificate_signing_request**](docs/CertificatesigningrequestApi.md#replace_certificate_signing_request) | **PUT** /api/v1/certificatesigningrequests/{name} | -*DefaultApi* | [**approve_certificate_signing_request**](docs/DefaultApi.md#approve_certificate_signing_request) | **POST** /api/v1/certificatesigningrequests/{name}/approval | -*DefaultApi* | [**auth_config**](docs/DefaultApi.md#auth_config) | **GET** /api/v1/auth/config | -*DefaultApi* | [**auth_validate**](docs/DefaultApi.md#auth_validate) | **GET** /api/v1/auth/validate | -*DefaultApi* | [**deny_certificate_signing_request**](docs/DefaultApi.md#deny_certificate_signing_request) | **DELETE** /api/v1/certificatesigningrequests/{name}/approval | +*CertificatesigningrequestApi* | [**update_certificate_signing_request_approval**](docs/CertificatesigningrequestApi.md#update_certificate_signing_request_approval) | **PUT** /api/v1/certificatesigningrequests/{name}/approval | *DeviceApi* | [**create_device**](docs/DeviceApi.md#create_device) | **POST** /api/v1/devices | +*DeviceApi* | [**decommission_device**](docs/DeviceApi.md#decommission_device) | **PUT** /api/v1/devices/{name}/decommission | *DeviceApi* | [**delete_device**](docs/DeviceApi.md#delete_device) | **DELETE** /api/v1/devices/{name} | *DeviceApi* | [**delete_devices**](docs/DeviceApi.md#delete_devices) | **DELETE** /api/v1/devices | -*DeviceApi* | [**get_rendered_device_spec**](docs/DeviceApi.md#get_rendered_device_spec) | **GET** /api/v1/devices/{name}/rendered | +*DeviceApi* | [**get_rendered_device**](docs/DeviceApi.md#get_rendered_device) | **GET** /api/v1/devices/{name}/rendered | *DeviceApi* | [**list_devices**](docs/DeviceApi.md#list_devices) | **GET** /api/v1/devices | *DeviceApi* | [**patch_device**](docs/DeviceApi.md#patch_device) | **PATCH** /api/v1/devices/{name} | +*DeviceApi* | [**patch_device_status**](docs/DeviceApi.md#patch_device_status) | **PATCH** /api/v1/devices/{name}/status | *DeviceApi* | [**read_device**](docs/DeviceApi.md#read_device) | **GET** /api/v1/devices/{name} | *DeviceApi* | [**read_device_status**](docs/DeviceApi.md#read_device_status) | **GET** /api/v1/devices/{name}/status | *DeviceApi* | [**replace_device**](docs/DeviceApi.md#replace_device) | **PUT** /api/v1/devices/{name} | *DeviceApi* | [**replace_device_status**](docs/DeviceApi.md#replace_device_status) | **PUT** /api/v1/devices/{name}/status | -*DeviceApi* | [**request_console**](docs/DeviceApi.md#request_console) | **GET** /api/v1/devices/{name}/console | -*EnrollmentconfigApi* | [**enrollment_config**](docs/EnrollmentconfigApi.md#enrollment_config) | **GET** /api/v1/enrollmentconfig/{name} | -*EnrollmentrequestApi* | [**approve_enrollment_request**](docs/EnrollmentrequestApi.md#approve_enrollment_request) | **POST** /api/v1/enrollmentrequests/{name}/approval | +*EnrollmentrequestApi* | [**approve_enrollment_request**](docs/EnrollmentrequestApi.md#approve_enrollment_request) | **PUT** /api/v1/enrollmentrequests/{name}/approval | *EnrollmentrequestApi* | [**create_enrollment_request**](docs/EnrollmentrequestApi.md#create_enrollment_request) | **POST** /api/v1/enrollmentrequests | *EnrollmentrequestApi* | [**delete_enrollment_request**](docs/EnrollmentrequestApi.md#delete_enrollment_request) | **DELETE** /api/v1/enrollmentrequests/{name} | *EnrollmentrequestApi* | [**delete_enrollment_requests**](docs/EnrollmentrequestApi.md#delete_enrollment_requests) | **DELETE** /api/v1/enrollmentrequests | +*EnrollmentrequestApi* | [**get_enrollment_config**](docs/EnrollmentrequestApi.md#get_enrollment_config) | **GET** /api/v1/enrollmentconfig | *EnrollmentrequestApi* | [**list_enrollment_requests**](docs/EnrollmentrequestApi.md#list_enrollment_requests) | **GET** /api/v1/enrollmentrequests | +*EnrollmentrequestApi* | [**patch_enrollment_request**](docs/EnrollmentrequestApi.md#patch_enrollment_request) | **PATCH** /api/v1/enrollmentrequests/{name} | +*EnrollmentrequestApi* | [**patch_enrollment_request_status**](docs/EnrollmentrequestApi.md#patch_enrollment_request_status) | **PATCH** /api/v1/enrollmentrequests/{name}/status | *EnrollmentrequestApi* | [**read_enrollment_request**](docs/EnrollmentrequestApi.md#read_enrollment_request) | **GET** /api/v1/enrollmentrequests/{name} | *EnrollmentrequestApi* | [**read_enrollment_request_status**](docs/EnrollmentrequestApi.md#read_enrollment_request_status) | **GET** /api/v1/enrollmentrequests/{name}/status | *EnrollmentrequestApi* | [**replace_enrollment_request**](docs/EnrollmentrequestApi.md#replace_enrollment_request) | **PUT** /api/v1/enrollmentrequests/{name} | @@ -119,10 +122,15 @@ Class | Method | HTTP request | Description *FleetApi* | [**create_fleet**](docs/FleetApi.md#create_fleet) | **POST** /api/v1/fleets | *FleetApi* | [**delete_fleet**](docs/FleetApi.md#delete_fleet) | **DELETE** /api/v1/fleets/{name} | *FleetApi* | [**delete_fleets**](docs/FleetApi.md#delete_fleets) | **DELETE** /api/v1/fleets | +*FleetApi* | [**delete_template_version**](docs/FleetApi.md#delete_template_version) | **DELETE** /api/v1/fleets/{fleet}/templateversions/{name} | +*FleetApi* | [**delete_template_versions**](docs/FleetApi.md#delete_template_versions) | **DELETE** /api/v1/fleets/{fleet}/templateversions | *FleetApi* | [**list_fleets**](docs/FleetApi.md#list_fleets) | **GET** /api/v1/fleets | +*FleetApi* | [**list_template_versions**](docs/FleetApi.md#list_template_versions) | **GET** /api/v1/fleets/{fleet}/templateversions | *FleetApi* | [**patch_fleet**](docs/FleetApi.md#patch_fleet) | **PATCH** /api/v1/fleets/{name} | +*FleetApi* | [**patch_fleet_status**](docs/FleetApi.md#patch_fleet_status) | **PATCH** /api/v1/fleets/{name}/status | *FleetApi* | [**read_fleet**](docs/FleetApi.md#read_fleet) | **GET** /api/v1/fleets/{name} | *FleetApi* | [**read_fleet_status**](docs/FleetApi.md#read_fleet_status) | **GET** /api/v1/fleets/{name}/status | +*FleetApi* | [**read_template_version**](docs/FleetApi.md#read_template_version) | **GET** /api/v1/fleets/{fleet}/templateversions/{name} | *FleetApi* | [**replace_fleet**](docs/FleetApi.md#replace_fleet) | **PUT** /api/v1/fleets/{name} | *FleetApi* | [**replace_fleet_status**](docs/FleetApi.md#replace_fleet_status) | **PUT** /api/v1/fleets/{name}/status | *RepositoryApi* | [**create_repository**](docs/RepositoryApi.md#create_repository) | **POST** /api/v1/repositories | @@ -139,23 +147,19 @@ Class | Method | HTTP request | Description *ResourcesyncApi* | [**patch_resource_sync**](docs/ResourcesyncApi.md#patch_resource_sync) | **PATCH** /api/v1/resourcesyncs/{name} | *ResourcesyncApi* | [**read_resource_sync**](docs/ResourcesyncApi.md#read_resource_sync) | **GET** /api/v1/resourcesyncs/{name} | *ResourcesyncApi* | [**replace_resource_sync**](docs/ResourcesyncApi.md#replace_resource_sync) | **PUT** /api/v1/resourcesyncs/{name} | -*TemplateversionApi* | [**delete_template_version**](docs/TemplateversionApi.md#delete_template_version) | **DELETE** /api/v1/fleets/{fleet}/templateversions/{name} | -*TemplateversionApi* | [**delete_template_versions**](docs/TemplateversionApi.md#delete_template_versions) | **DELETE** /api/v1/fleets/{fleet}/templateversions | -*TemplateversionApi* | [**list_template_versions**](docs/TemplateversionApi.md#list_template_versions) | **GET** /api/v1/fleets/{fleet}/templateversions | -*TemplateversionApi* | [**read_template_version**](docs/TemplateversionApi.md#read_template_version) | **GET** /api/v1/fleets/{fleet}/templateversions/{name} | +*VersionApi* | [**get_version**](docs/VersionApi.md#get_version) | **GET** /api/version | ## Documentation For Models - [ApplicationEnvVars](docs/ApplicationEnvVars.md) - - [ApplicationSpec](docs/ApplicationSpec.md) + - [ApplicationProviderSpec](docs/ApplicationProviderSpec.md) - [ApplicationStatusType](docs/ApplicationStatusType.md) - [ApplicationsSummaryStatusType](docs/ApplicationsSummaryStatusType.md) - [AuthConfig](docs/AuthConfig.md) - [Batch](docs/Batch.md) - [BatchLimit](docs/BatchLimit.md) - [BatchSequence](docs/BatchSequence.md) - - [CPUResourceMonitorSpec](docs/CPUResourceMonitorSpec.md) - [CertificateSigningRequest](docs/CertificateSigningRequest.md) - [CertificateSigningRequestList](docs/CertificateSigningRequestList.md) - [CertificateSigningRequestSpec](docs/CertificateSigningRequestSpec.md) @@ -164,20 +168,23 @@ Class | Method | HTTP request | Description - [ConditionStatus](docs/ConditionStatus.md) - [ConditionType](docs/ConditionType.md) - [ConfigProviderSpec](docs/ConfigProviderSpec.md) + - [CpuResourceMonitorSpec](docs/CpuResourceMonitorSpec.md) - [CustomResourceMonitorSpec](docs/CustomResourceMonitorSpec.md) - [Device](docs/Device.md) - [DeviceApplicationStatus](docs/DeviceApplicationStatus.md) - [DeviceApplicationsSummaryStatus](docs/DeviceApplicationsSummaryStatus.md) - [DeviceConfigStatus](docs/DeviceConfigStatus.md) - [DeviceConsole](docs/DeviceConsole.md) - - [DeviceHooksSpec](docs/DeviceHooksSpec.md) + - [DeviceDecommission](docs/DeviceDecommission.md) + - [DeviceDecommissionTargetType](docs/DeviceDecommissionTargetType.md) - [DeviceIntegrityStatus](docs/DeviceIntegrityStatus.md) - - [DeviceIntegrityStatusSummary](docs/DeviceIntegrityStatusSummary.md) - [DeviceIntegrityStatusSummaryType](docs/DeviceIntegrityStatusSummaryType.md) + - [DeviceLifecycleHookType](docs/DeviceLifecycleHookType.md) + - [DeviceLifecycleStatus](docs/DeviceLifecycleStatus.md) + - [DeviceLifecycleStatusType](docs/DeviceLifecycleStatusType.md) - [DeviceList](docs/DeviceList.md) - - [DeviceOSSpec](docs/DeviceOSSpec.md) - - [DeviceOSStatus](docs/DeviceOSStatus.md) - - [DeviceRebootHookSpec](docs/DeviceRebootHookSpec.md) + - [DeviceOsSpec](docs/DeviceOsSpec.md) + - [DeviceOsStatus](docs/DeviceOsStatus.md) - [DeviceResourceStatus](docs/DeviceResourceStatus.md) - [DeviceResourceStatusType](docs/DeviceResourceStatusType.md) - [DeviceSpec](docs/DeviceSpec.md) @@ -186,22 +193,22 @@ Class | Method | HTTP request | Description - [DeviceSummaryStatus](docs/DeviceSummaryStatus.md) - [DeviceSummaryStatusType](docs/DeviceSummaryStatusType.md) - [DeviceSystemInfo](docs/DeviceSystemInfo.md) - - [DeviceUpdateHookSpec](docs/DeviceUpdateHookSpec.md) + - [DeviceUpdatePolicySpec](docs/DeviceUpdatePolicySpec.md) - [DeviceUpdatedStatus](docs/DeviceUpdatedStatus.md) - [DeviceUpdatedStatusType](docs/DeviceUpdatedStatusType.md) - [DevicesSummary](docs/DevicesSummary.md) - [DiskResourceMonitorSpec](docs/DiskResourceMonitorSpec.md) - - [DisruptionAllowance](docs/DisruptionAllowance.md) + - [DisruptionBudget](docs/DisruptionBudget.md) - [EnrollmentConfig](docs/EnrollmentConfig.md) - [EnrollmentRequest](docs/EnrollmentRequest.md) - [EnrollmentRequestApproval](docs/EnrollmentRequestApproval.md) + - [EnrollmentRequestApprovalStatus](docs/EnrollmentRequestApprovalStatus.md) - [EnrollmentRequestList](docs/EnrollmentRequestList.md) - [EnrollmentRequestSpec](docs/EnrollmentRequestSpec.md) - [EnrollmentRequestStatus](docs/EnrollmentRequestStatus.md) - [EnrollmentService](docs/EnrollmentService.md) - [EnrollmentServiceAuth](docs/EnrollmentServiceAuth.md) - [EnrollmentServiceService](docs/EnrollmentServiceService.md) - - [Error](docs/Error.md) - [FileOperation](docs/FileOperation.md) - [FileSpec](docs/FileSpec.md) - [Fleet](docs/Fleet.md) @@ -214,13 +221,9 @@ Class | Method | HTTP request | Description - [GitConfigProviderSpec](docs/GitConfigProviderSpec.md) - [GitConfigProviderSpecGitRef](docs/GitConfigProviderSpecGitRef.md) - [HookAction](docs/HookAction.md) - - [HookActionExecutable](docs/HookActionExecutable.md) - - [HookActionExecutableSpec](docs/HookActionExecutableSpec.md) - - [HookActionOneOf](docs/HookActionOneOf.md) - - [HookActionOneOf1](docs/HookActionOneOf1.md) - - [HookActionSpec](docs/HookActionSpec.md) - - [HookActionSystemdSpec](docs/HookActionSystemdSpec.md) - - [HookActionSystemdUnit](docs/HookActionSystemdUnit.md) + - [HookActionRun](docs/HookActionRun.md) + - [HookCondition](docs/HookCondition.md) + - [HookConditionPathOp](docs/HookConditionPathOp.md) - [HttpConfig](docs/HttpConfig.md) - [HttpConfigProviderSpec](docs/HttpConfigProviderSpec.md) - [HttpConfigProviderSpecHttpRef](docs/HttpConfigProviderSpecHttpRef.md) @@ -235,9 +238,6 @@ Class | Method | HTTP request | Description - [MemoryResourceMonitorSpec](docs/MemoryResourceMonitorSpec.md) - [ObjectMeta](docs/ObjectMeta.md) - [PatchRequestInner](docs/PatchRequestInner.md) - - [RenderedApplicationSpec](docs/RenderedApplicationSpec.md) - - [RenderedDeviceSpec](docs/RenderedDeviceSpec.md) - - [RenderedDeviceSpecSystemd](docs/RenderedDeviceSpecSystemd.md) - [RepoSpecType](docs/RepoSpecType.md) - [Repository](docs/Repository.md) - [RepositoryList](docs/RepositoryList.md) @@ -253,7 +253,7 @@ Class | Method | HTTP request | Description - [ResourceSyncStatus](docs/ResourceSyncStatus.md) - [RolloutDeviceSelection](docs/RolloutDeviceSelection.md) - [RolloutPolicy](docs/RolloutPolicy.md) - - [SortOrder](docs/SortOrder.md) + - [RolloutStrategy](docs/RolloutStrategy.md) - [SshConfig](docs/SshConfig.md) - [SshRepoSpec](docs/SshRepoSpec.md) - [Status](docs/Status.md) @@ -261,6 +261,8 @@ Class | Method | HTTP request | Description - [TemplateVersionList](docs/TemplateVersionList.md) - [TemplateVersionSpec](docs/TemplateVersionSpec.md) - [TemplateVersionStatus](docs/TemplateVersionStatus.md) + - [UpdateSchedule](docs/UpdateSchedule.md) + - [Version](docs/Version.md) @@ -271,6 +273,6 @@ Endpoints do not require authorization. ## Author - +team@flightctl.io diff --git a/api/v1alpha1/openapi.yml b/api/v1alpha1/openapi.yml index eab6e31..ca3fa38 100644 --- a/api/v1alpha1/openapi.yml +++ b/api/v1alpha1/openapi.yml @@ -1,16 +1,68 @@ openapi: 3.0.1 info: - title: Open Device Management API - version: undefined + title: Flight Control API + version: v1alpha1 + description: | + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + contact: + name: The Flight Control Team + url: https://flightctl.io + email: team@flightctl.io license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html servers: - url: / +tags: + - name: authentication + description: Operations for authentication. + - name: certificatesigningrequest + description: Operations on CertificateSigningRequest resources. + - name: device + description: Operations on Device resources. + - name: enrollmentrequest + description: Operations on EnrollmentRequest resources. + - name: fleet + description: Operations on Fleet resources. + - name: labels + description: Operations for retrieving labels across different resources. + - name: repository + description: Operations on Repository resources. + - name: resourcesync + description: Operations on ResourceSync resources. + - name: version + description: Operations for receiving service version. paths: + /api/version: + get: + tags: + - version + description: Get service version. + operationId: getVersion + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Version' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/auth/config: get: - description: Get auth configuration + tags: + - authentication + description: Get authentication configuration. operationId: authConfig responses: "200": @@ -23,11 +75,14 @@ paths: description: Auth not configured /api/v1/auth/validate: get: - description: Validate auth token + tags: + - authentication + description: Validate an authentication token. operationId: authValidate parameters: - - in: header - name: Authentication + - name: Authorization + in: header + description: The authentication token to validate. schema: type: string responses: @@ -42,12 +97,12 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' /api/v1/resourcesyncs: get: tags: - resourcesync - description: list resourcesync + description: List ResourceSync resources. operationId: listResourceSync parameters: - name: continue @@ -63,7 +118,7 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). For a full list of operators and examples, refer to the documentation. + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - name: limit @@ -73,26 +128,6 @@ paths: schema: type: integer format: int32 - - name: repository - in: query - description: The name of the repository to filter results by. - schema: - type: string - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -105,17 +140,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' post: tags: - resourcesync - description: create a resourcesync + description: Create a ResourceSync resource. operationId: createResourceSync requestBody: content: @@ -135,23 +182,35 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - resourcesync - description: delete a collection of ResourceSync + description: Delete ResourceSync resources. operationId: deleteResourceSyncs responses: "200": @@ -165,17 +224,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/resourcesyncs/{name}: get: tags: - resourcesync - description: read the specified resourcesync + description: Get a ResourceSync resource. operationId: readResourceSync parameters: - name: name in: path - description: name of the resourcesync + description: The name of the ResourceSync resource to get. required: true schema: type: string @@ -191,22 +262,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - resourcesync - description: replace the specified resourcesync + description: Update a ResourceSync resource. operationId: replaceResourceSync parameters: - name: name in: path - description: name of the resourcesync + description: The name of the ResourceSync resource to update. required: true schema: type: string @@ -234,34 +317,46 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' patch: tags: - resourcesync - description: Patches the specified resourcesync + description: Patch a ResourceSync resource. operationId: patchResourceSync parameters: - name: name in: path - description: name of the resourcesync + description: The name of the ResourceSync resource to patch. required: true schema: type: string @@ -270,6 +365,7 @@ paths: application/json-patch+json: schema: $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -282,34 +378,46 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - resourcesync - description: delete a resourcesync + description: Delete a ResourceSync resource. operationId: deleteResourceSync parameters: - name: name in: path - description: name of the resourcesync + description: The name of the ResourceSync resource to delete. required: true schema: type: string @@ -325,18 +433,30 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/repositories: get: tags: - repository - description: list repositories + description: List Repository resources. operationId: listRepositories parameters: - name: continue @@ -352,7 +472,7 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - name: limit @@ -362,21 +482,6 @@ paths: schema: type: integer format: int32 - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -389,17 +494,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' post: tags: - repository - description: create a repository + description: Create a Repository resource. operationId: createRepository requestBody: content: @@ -419,23 +536,35 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - repository - description: delete a collection of Repositories + description: Delete Repository resources. operationId: deleteRepositories responses: "200": @@ -449,17 +578,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/repositories/{name}: get: tags: - repository - description: read the specified repository + description: Get a Repository resource. operationId: readRepository parameters: - name: name in: path - description: name of the repository + description: The name of the Repository resource to get. required: true schema: type: string @@ -475,22 +616,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - repository - description: replace the specified repository + description: Update a Repository resource. operationId: replaceRepository parameters: - name: name in: path - description: name of the repository + description: The name of the Repository resource to update. required: true schema: type: string @@ -518,34 +671,46 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - repository - description: delete a repository + description: Delete a Repository resource. operationId: deleteRepository parameters: - name: name in: path - description: name of the repository + description: The name of the Repository resource to delete. required: true schema: type: string @@ -561,22 +726,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' patch: tags: - repository - description: Patches the specified repository + description: Patch a Repository resource. operationId: patchRepository parameters: - name: name in: path - description: name of the repository + description: The name of the Repository resource to patch. required: true schema: type: string @@ -585,6 +762,7 @@ paths: application/json-patch+json: schema: $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -597,30 +775,42 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/devices: get: tags: - device - description: list Devices + description: List Device resources. operationId: listDevices parameters: - name: continue @@ -636,16 +826,9 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - - name: statusFilter - in: query - description: A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything. - schema: - type: array - items: - type: string - name: limit in: query description: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. @@ -653,33 +836,12 @@ paths: schema: type: integer format: int32 - - name: owner - in: query - description: A selector to restrict the list of returned objects by their owner. Defaults to everything. - required: false - schema: - type: string - name: summaryOnly in: query description: A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true. required: false schema: type: boolean - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -692,23 +854,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "403": description: Not allowed content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' post: tags: - device - description: create a Device + description: Create a Device resource. operationId: createDevice requestBody: content: @@ -728,23 +896,35 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - device - description: delete a collection of Devices + description: Delete Device resources. operationId: deleteDevices responses: "200": @@ -758,17 +938,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/devices/{name}: get: tags: - device - description: read the specified Device + description: Get a Device resource. operationId: readDevice parameters: - name: name in: path - description: unique name of the Device + description: The name of the Device resource to get. required: true schema: type: string @@ -784,22 +976,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - put: - tags: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + put: + tags: - device - description: replace the specified Device + description: Update a Device resource. operationId: replaceDevice parameters: - name: name in: path - description: name of the Device + description: The name of the Device resource to update. required: true schema: type: string @@ -827,34 +1031,46 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - device - description: delete a Device + description: Delete a Device resource. operationId: deleteDevice parameters: - name: name in: path - description: name of the Device + description: The name of the Device resource to delete. required: true schema: type: string @@ -870,22 +1086,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' patch: tags: - device - description: Patches the specified device + description: Patch a Device resource. operationId: patchDevice parameters: - name: name in: path - description: name of the device + description: The name of the Device resource to patch. required: true schema: type: string @@ -894,6 +1122,7 @@ paths: application/json-patch+json: schema: $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -906,38 +1135,99 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/devices/{name}/status: get: tags: - device - description: read status of the specified Device + description: Get the status of a Device resource. operationId: readDeviceStatus parameters: - name: name in: path - description: name of the Device + description: The name of the Device resource to get. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Device' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "404": + description: NotFound + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - device + description: Patch the status of a Device resource. + operationId: patchDeviceStatus + parameters: + - name: name + in: path + description: The name of the Device resource to patch. required: true schema: type: string + requestBody: + content: + application/json-patch+json: + schema: + $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -945,27 +1235,45 @@ paths: application/json: schema: $ref: '#/components/schemas/Device' + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - device - description: replace status of the specified Device + description: Update the status of a Device resource. operationId: replaceDeviceStatus parameters: - name: name in: path - description: name of the Device + description: The name of the Device resource to update. required: true schema: type: string @@ -987,73 +1295,103 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - /api/v1/devices/{name}/console: - get: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/devices/{name}/decommission: + put: tags: - device - description: Request a console connection - operationId: requestConsole + description: schedule the device to decommission + operationId: decommissionDevice parameters: - name: name in: path - description: unique name of the Device + description: The name of the Device resource to decommission. required: true schema: type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DeviceDecommission' + required: true responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/DeviceConsole' + $ref: '#/components/schemas/Device' + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - "409": - description: StatusConflict + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' /api/v1/devices/{name}/rendered: get: tags: - device - description: get the full specification for the specified device - operationId: getRenderedDeviceSpec + description: Get the rendered device. + operationId: getRenderedDevice parameters: - name: name in: path - description: Name of the device + description: The name of the Device resource to get the rendered device specification for. required: true schema: type: string - name: knownRenderedVersion in: query - description: The last known renderedVersion + description: The last known renderedVersion. required: false schema: type: string @@ -1063,7 +1401,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/RenderedDeviceSpec' + $ref: '#/components/schemas/Device' "204": description: No content content: {} @@ -1072,30 +1410,42 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' - /api/v1/enrollmentconfig/{name}: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/enrollmentconfig: get: tags: - - enrollmentconfig - description: Get config for enrolling devices - operationId: enrollmentConfig + - enrollmentrequest + description: Get enrollment information. + operationId: getEnrollmentConfig parameters: - - name: name - in: path - description: the name of approved CSR - required: true + - name: csr + in: query + description: The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty. + required: false schema: type: string responses: @@ -1110,24 +1460,36 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: Not Found content: application/json: schema: - $ref: '#/components/schemas/Error' - "401": - description: Unauthorized + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' /api/v1/enrollmentrequests: get: tags: - enrollmentrequest - description: list Enrollment Requests + description: List EnrollmentRequest resources. operationId: listEnrollmentRequests parameters: - name: continue @@ -1143,7 +1505,7 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - name: limit @@ -1153,21 +1515,6 @@ paths: schema: type: integer format: int32 - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -1180,17 +1527,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' post: tags: - enrollmentrequest - description: request enrollment of a Device + description: Create an EnrollmentRequest resource. operationId: createEnrollmentRequest requestBody: content: @@ -1205,34 +1564,40 @@ paths: application/json: schema: $ref: '#/components/schemas/EnrollmentRequest' - "208": - description: Already Reported - content: - application/json: - schema: - $ref: '#/components/schemas/EnrollmentRequest' "400": description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - enrollmentrequest - description: delete a collection of Enrollments + description: Delete EnrollmentRequest resources. operationId: deleteEnrollmentRequests responses: "200": @@ -1246,17 +1611,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/enrollmentrequests/{name}: get: tags: - enrollmentrequest - description: read the specified Enrollment + description: Get an EnrollmentRequest resource. operationId: readEnrollmentRequest parameters: - name: name in: path - description: the fingerprint of the EnrollmentRequest + description: The name of the EnrollmentRequest resource to get. required: true schema: type: string @@ -1272,22 +1649,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - enrollmentrequest - description: replace the specified Enrollment Request + description: Update an EnrollmentRequest resource. operationId: replaceEnrollmentRequest parameters: - name: name in: path - description: name of the EnrollmentRequest + description: The name of the EnrollmentRequest resource to update. required: true schema: type: string @@ -1315,37 +1704,55 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' - delete: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: tags: - enrollmentrequest - description: delete a Enrollment Request - operationId: deleteEnrollmentRequest + description: Patch an EnrollmentRequest resource. + operationId: patchEnrollmentRequest parameters: - name: name in: path - description: name of the Enrollment Request + description: The name of the EnrollmentRequest resource to patch. required: true schema: type: string + requestBody: + content: + application/json-patch+json: + schema: + $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -1353,28 +1760,95 @@ paths: application/json: schema: $ref: '#/components/schemas/EnrollmentRequest' - "401": - description: Unauthorized - content: + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "409": + description: Conflict + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + delete: + tags: + - enrollmentrequest + description: Delete an EnrollmentRequest resource. + operationId: deleteEnrollmentRequest + parameters: + - name: name + in: path + description: The name of the EnrollmentRequest resource to delete. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/EnrollmentRequest' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "404": + description: NotFound + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/enrollmentrequests/{name}/status: get: tags: - enrollmentrequest - description: read status of the specified EnrollmentRequest + description: Get the status of an EnrollmentRequest resource. operationId: readEnrollmentRequestStatus parameters: - name: name in: path - description: name of the EnrollmentRequest + description: The name of the EnrollmentRequest resource to get. required: true schema: type: string @@ -1390,22 +1864,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - enrollmentrequest - description: replace status of the specified EnrollmentRequest + description: Update the status of an EnrollmentRequest resource. operationId: replaceEnrollmentRequestStatus parameters: - name: name in: path - description: name of the EnrollmentRequest + description: The name of the EnrollmentRequest resource to update. required: true schema: type: string @@ -1427,23 +1913,96 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "404": + description: NotFound + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - enrollmentrequest + description: Patch the status of an EnrollmentRequest resource. + operationId: patchEnrollmentRequestStatus + parameters: + - name: name + in: path + description: The name of the EnrollmentRequest resource to patch. + required: true + schema: + type: string + requestBody: + content: + application/json-patch+json: + schema: + $ref: '#/components/schemas/PatchRequest' + required: true + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/EnrollmentRequest' + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "409": + description: Conflict + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/enrollmentrequests/{name}/approval: - post: + put: tags: - enrollmentrequest - description: create approval of the specified EnrollmentRequest + description: Approve or deny an EnrollmentRequest. operationId: approveEnrollmentRequest parameters: - name: name in: path - description: name of the EnrollmentRequest + description: The name of the EnrollmentRequest to approve or deny. required: true schema: type: string @@ -1459,42 +2018,42 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/EnrollmentRequestApproval' - "422": - description: UnprocessableEntity - content: - application/json: - schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/EnrollmentRequestApprovalStatus' "400": description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - "500": - description: InternalServerError + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' /api/v1/certificatesigningrequests: get: tags: - certificatesigningrequest - description: list CertificateSigningRequests + description: List CertificateSigningRequest resources. operationId: listCertificateSigningRequests parameters: - name: continue @@ -1510,7 +2069,7 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - name: limit @@ -1520,21 +2079,6 @@ paths: schema: type: integer format: int32 - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -1547,17 +2091,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' post: tags: - certificatesigningrequest - description: request Certificate Signing + description: Create a CertificateSigningRequest resource. operationId: createCertificateSigningRequest requestBody: content: @@ -1566,46 +2122,46 @@ paths: $ref: '#/components/schemas/CertificateSigningRequest' required: true responses: - "200": - description: OK + "201": + description: Created content: application/json: schema: $ref: '#/components/schemas/CertificateSigningRequest' - "201": - description: Created + "400": + description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/CertificateSigningRequest' - "202": - description: Accepted + $ref: '#/components/schemas/Status' + "401": + description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/CertificateSigningRequest' - "208": - description: Already Reported + $ref: '#/components/schemas/Status' + "403": + description: Forbidden content: application/json: schema: - $ref: '#/components/schemas/EnrollmentRequest' - "400": - description: Bad Request + $ref: '#/components/schemas/Status' + "409": + description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' - "401": - description: Unauthorized + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' delete: tags: - certificatesigningrequest - description: delete a collection of CertificateSigningRequest + description: Delete CertificateSigningRequest resources. operationId: deleteCertificateSigningRequests responses: "200": @@ -1619,17 +2175,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/certificatesigningrequests/{name}: patch: - description: partially update the specified CertificateSigningRequest - operationId: patchCertificateSigningRequest tags: - certificatesigningrequest + description: Patch a CertificateSigningRequest resource. + operationId: patchCertificateSigningRequest parameters: - name: name in: path - description: name of the certificatesigningrequest + description: The name of the CertificateSigningRequest resource to patch. required: true schema: type: string @@ -1638,6 +2206,7 @@ paths: application/json-patch+json: schema: $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -1645,36 +2214,42 @@ paths: application/json: schema: $ref: '#/components/schemas/CertificateSigningRequest' - "201": - description: Created - content: - application/json: - schema: - $ref: '#/components/schemas/CertificateSigningRequest' "400": description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' get: tags: - certificatesigningrequest @@ -1683,7 +2258,7 @@ paths: parameters: - name: name in: path - description: the device identifier of the CertificateSigningRequest + description: The name of the CertificateSigningRequest resource to get. required: true schema: type: string @@ -1700,13 +2275,25 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - certificatesigningrequest @@ -1715,7 +2302,7 @@ paths: parameters: - name: name in: path - description: name of the CertificateSigningRequest + description: The name of the CertificateSigningRequest resource to update. required: true schema: type: string @@ -1743,25 +2330,37 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - certificatesigningrequest @@ -1770,7 +2369,7 @@ paths: parameters: - name: name in: path - description: name of the Certificate Signing Request + description: The name of the CertificateSigningRequest resource to delete. required: true schema: type: string @@ -1786,72 +2385,44 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' - "404": - description: NotFound - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - /api/v1/certificatesigningrequests/{name}/approval: - post: - description: approve the specified CertificateSigningRequest - operationId: approveCertificateSigningRequest - parameters: - - name: name - in: path - description: name of the CertificateSigningRequest - required: true - schema: - type: string - responses: - "200": - description: OK - content: - application/json: - schema: - $ref: '#/components/schemas/CertificateSigningRequest' - "400": - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - "401": - description: Unauthorized + $ref: '#/components/schemas/Status' + "403": + description: Forbidden content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - "409": - description: StatusConflict - content: - application/json: - schema: - $ref: '#/components/schemas/Error' - "500": - description: InternalServerError + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' - delete: - description: deny the specified CertificateSigningRequest - operationId: denyCertificateSigningRequest + $ref: '#/components/schemas/Status' + /api/v1/certificatesigningrequests/{name}/approval: + put: + tags: + - certificatesigningrequest + description: Approve or deny a CertificateSigningRequest. + operationId: updateCertificateSigningRequestApproval parameters: - name: name in: path - description: name of the CertificateSigningRequest + description: The name of the CertificateSigningRequest to approve or deny. required: true schema: type: string - uniqueItems: true + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CertificateSigningRequest' + required: true responses: "200": description: OK @@ -1859,29 +2430,47 @@ paths: application/json: schema: $ref: '#/components/schemas/CertificateSigningRequest' + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": - description: Conflict + description: StatusConflict + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' /api/v1/fleets: get: tags: - fleet - description: list Fleets + description: List Fleet resources. operationId: listFleets parameters: - name: continue @@ -1897,7 +2486,7 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - name: limit @@ -1907,33 +2496,12 @@ paths: schema: type: integer format: int32 - - name: owner - in: query - description: A selector to restrict the list of returned objects by their owner. Defaults to everything. - required: false - schema: - type: string - - name: addDevicesCount + - name: addDevicesSummary in: query - description: include the number of devices in each fleet + description: Include a summary of the devices in the fleet. required: false schema: type: boolean - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -1946,17 +2514,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' post: tags: - fleet - description: create a Fleet + description: Create a Fleet resource. operationId: createFleet requestBody: content: @@ -1976,23 +2556,35 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - fleet - description: delete a collection of Fleets + description: Delete Fleet resources. operationId: deleteFleets responses: "200": @@ -2006,23 +2598,35 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/fleets/{name}: get: tags: - fleet - description: read the specified Fleet + description: Get a Fleet resource. operationId: readFleet parameters: - name: name in: path - description: unique name of the Fleet + description: The name of the Fleet resource to get. required: true schema: type: string - name: addDevicesSummary in: query - description: include a summary of the devices in the fleet + description: Include a summary of the devices in the fleet. required: false schema: type: boolean @@ -2038,22 +2642,34 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - fleet - description: replace the specified Fleet + description: Update a Fleet resource. operationId: replaceFleet parameters: - name: name in: path - description: name of the Fleet + description: The name of the Fleet resource to update. required: true schema: type: string @@ -2081,34 +2697,46 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' patch: tags: - fleet - description: Patches the specified fleet + description: Patch a Fleet resource. operationId: patchFleet parameters: - name: name in: path - description: name of the fleet + description: The name of the Fleet resource to patch. required: true schema: type: string @@ -2117,6 +2745,7 @@ paths: application/json-patch+json: schema: $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -2129,34 +2758,46 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "409": description: StatusConflict content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - fleet - description: delete a Fleet + description: Delete a Fleet resource. operationId: deleteFleet parameters: - name: name in: path - description: name of the Fleet + description: The name of the Fleet resource to delete. required: true schema: type: string @@ -2172,19 +2813,25 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - "409": - description: Conflict + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' /api/v1/fleets/{name}/status: get: tags: @@ -2194,10 +2841,59 @@ paths: parameters: - name: name in: path - description: name of the Fleet + description: The name of the Fleet resource to get. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/Fleet' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "404": + description: NotFound + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + patch: + tags: + - fleet + description: Patch the status of a Fleet resource. + operationId: patchFleetStatus + parameters: + - name: name + in: path + description: The name of the Fleet resource to patch. required: true schema: type: string + requestBody: + content: + application/json-patch+json: + schema: + $ref: '#/components/schemas/PatchRequest' + required: true responses: "200": description: OK @@ -2205,18 +2901,36 @@ paths: application/json: schema: $ref: '#/components/schemas/Fleet' + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' put: tags: - fleet @@ -2225,7 +2939,7 @@ paths: parameters: - name: name in: path - description: name of the Fleet + description: The name of the Fleet resource to update. required: true schema: type: string @@ -2247,17 +2961,29 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' /api/v1/fleets/{fleet}/templateversions: get: tags: - - templateversion + - fleet description: list template versions operationId: listTemplateVersions parameters: @@ -2280,7 +3006,7 @@ paths: type: string - name: fieldSelector in: query - description: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + description: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., "key1=value1,key2!=value2"). schema: type: string - name: limit @@ -2290,21 +3016,6 @@ paths: schema: type: integer format: int32 - - name: sortBy - in: query - description: Specifies the field to sort by. - required: false - schema: - type: string - example: 'metadata.name' - - name: sortOrder - in: query - description: Specifies the sort order. - required: false - schema: - $ref: '#/components/schemas/SortOrder' - default: 'Asc' - example: 'Asc' responses: "200": description: OK @@ -2317,16 +3028,28 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' delete: tags: - - templateversion + - fleet description: delete a collection of template versions operationId: deleteTemplateVersions parameters: @@ -2343,18 +3066,79 @@ paths: application/json: schema: $ref: '#/components/schemas/Status' - "401": - description: Unauthorized + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/fleets/{fleet}/templateversions/{name}: + get: + tags: + - fleet + description: read the specified template version + operationId: readTemplateVersion + parameters: + - name: fleet + in: path + description: The owner of the template version. + required: true + schema: + type: string + - name: name + in: path + description: The name of the template version. + required: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/TemplateVersion' + "401": + description: Unauthorized + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "404": + description: NotFound + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable content: application/json: schema: - $ref: '#/components/schemas/Error' - /api/v1/fleets/{fleet}/templateversions/{name}: - get: + $ref: '#/components/schemas/Status' + delete: tags: - - templateversion - description: read the specified template version - operationId: readTemplateVersion + - fleet + description: delete a template version + operationId: deleteTemplateVersion parameters: - name: fleet in: path @@ -2364,7 +3148,7 @@ paths: type: string - name: name in: path - description: Name of the template version. + description: The name of the template version. required: true schema: type: string @@ -2380,59 +3164,115 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "403": + description: Forbidden + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "404": description: NotFound content: application/json: schema: - $ref: '#/components/schemas/Error' - delete: + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' + /api/v1/labels: + get: tags: - - templateversion - description: delete a template version - operationId: deleteTemplateVersion + - labels + description: | + Retrieves a distinct list of labels for the specified resource type. + operationId: listLabels parameters: - - name: fleet - in: path - description: The owner of the template version. + - name: kind + in: query + description: The type of resource to retrieve labels from. required: true schema: type: string - - name: name - in: path - description: name of the template version. - required: true + enum: + - Device + - name: labelSelector + in: query + description: A filter to retrieve labels only from resources that match the given label selector. + schema: + type: string + - name: fieldSelector + in: query + description: A filter to retrieve labels only from resources that match the given field selector. schema: type: string + - name: limit + in: query + description: The maximum number of distinct labels to return in the response. + required: false + schema: + type: integer + format: int32 responses: "200": description: OK content: application/json: schema: - $ref: '#/components/schemas/TemplateVersion' + $ref: '#/components/schemas/LabelList' + examples: + labelsExample: + summary: Example response for labels + value: + - "environment=production" + - "region=us-east-1" + - "tier=backend" + "400": + description: Bad Request + content: + application/json: + schema: + $ref: '#/components/schemas/Status' "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/Error' - "404": - description: NotFound + $ref: '#/components/schemas/Status' + "403": + description: Not allowed content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Status' + "503": + description: ServiceUnavailable + content: + application/json: + schema: + $ref: '#/components/schemas/Status' components: schemas: - SortOrder: + DeviceDecommissionTargetType: type: string enum: - - 'Asc' - - 'Desc' - description: Specifies the sort order. - default: 'Asc' + - "Unenroll" + - "FactoryReset" + x-enum-varnames: + - "DeviceDecommissionTargetTypeUnenroll" + - "DeviceDecommissionTargetTypeFactoryReset" + description: Specifies the desired decommissioning method of the device. + DeviceDecommission: + type: object + properties: + target: + $ref: '#/components/schemas/DeviceDecommissionTargetType' + required: + - target + description: Metadata about a device decommissioning request. PatchRequest: type: array items: @@ -2459,10 +3299,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -2473,35 +3313,37 @@ components: - apiVersion - kind - metadata - description: Repository represents a Git repository or an HTTP endpoint + - spec + description: Repository represents a Git repository or an HTTP endpoint. HttpConfig: type: object + description: Configuration for HTTP transport. additionalProperties: false properties: username: type: string - description: 'The username for auth with HTTP transport' + description: The username for auth with HTTP transport. password: type: string - description: 'The password for auth with HTTP transport' + description: The password for auth with HTTP transport. format: password tls.crt: type: string - description: 'Base64 encoded TLS cert data' + description: Base64 encoded TLS cert data. format: password tls.key: type: string - description: 'Base64 encoded TLS cert key' + description: Base64 encoded TLS cert key. format: password ca.crt: type: string - description: 'Base64 encoded root CA' + description: Base64 encoded root CA. skipServerVerification: type: boolean - description: 'Skip remote server verification' + description: Skip remote server verification. token: type: string - description: 'The token for auth with HTTP transport' + description: The token for auth with HTTP transport. format: password HttpRepoSpec: type: object @@ -2509,7 +3351,7 @@ components: properties: url: type: string - description: 'The HTTP URL to call or clone from' + description: 'The HTTP URL to call or clone from.' type: $ref: "#/components/schemas/RepoSpecType" httpConfig: @@ -2523,26 +3365,27 @@ components: - httpConfig SshConfig: type: object + description: Configuration for SSH transport. additionalProperties: false properties: sshPrivateKey: type: string - description: 'Base64 encoded private SSH key' + description: 'Base64 encoded private SSH key.' format: password privateKeyPassphrase: type: string - description: 'The passphrase for sshPrivateKey' + description: 'The passphrase for sshPrivateKey.' format: password skipServerVerification: type: boolean - description: 'Skip remote server verification' + description: 'Skip remote server verification.' SshRepoSpec: type: object additionalProperties: false properties: url: type: string - description: 'The SSH Git repository URL to clone from' + description: 'The SSH Git repository URL to clone from.' type: $ref: "#/components/schemas/RepoSpecType" sshConfig: @@ -2557,7 +3400,7 @@ components: properties: url: type: string - description: 'The (possibly remote) repository URL' + description: 'The (possibly remote) repository URL.' type: $ref: "#/components/schemas/RepoSpecType" required: @@ -2565,12 +3408,14 @@ components: - type RepositorySpec: type: object + description: RepositorySpec describes a configuration repository. oneOf: - $ref: "#/components/schemas/GenericRepoSpec" - $ref: "#/components/schemas/HttpRepoSpec" - $ref: "#/components/schemas/SshRepoSpec" RepositoryStatus: type: object + description: RepositoryStatus represents information about the status of a repository. properties: conditions: type: array @@ -2579,16 +3424,15 @@ components: $ref: '#/components/schemas/Condition' required: - conditions - description: RepositoryStatus represents information about the status of a repository. Status may trail the actual state of a repository. RepositoryList: type: object properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -2604,7 +3448,7 @@ components: - items RepoSpecType: type: string - description: 'RepoSpecType is the type of the repository' + description: 'RepoSpecType is the type of the repository.' enum: - git - http @@ -2613,10 +3457,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -2630,18 +3474,18 @@ components: description: Device represents a physical device. DeviceConsole: type: object + description: DeviceConsole represents the console connection information. properties: - # TODO: when migrating to ws, this should be a ws url instead of gRPCEndpoint - #wsURL: - # type: string - # description: 'The URL to connect to the console through a websocket' - gRPCEndpoint: + sessionMetadata: type: string + description: Additional session metadata in the form of key=value pairs, can be used to initialize the type of terminal, console to be used, etc. sessionID: type: string + description: The session ID for the console connection. required: - - gRPCEndpoint + - sessionMetadata - sessionID + readOnly: true ConfigProviderSpec: oneOf: - $ref: "#/components/schemas/GitConfigProviderSpec" @@ -2653,21 +3497,23 @@ components: properties: name: type: string - description: "The name of the config provider" + description: The name of the config provider. gitRef: type: object + description: The reference to a Git configuration server. properties: repository: type: string - description: | - The name of the repository resource to use as the sync source + description: The name of the Repository resource. targetRevision: type: string + description: The revision to use from the Repository. path: type: string + description: The path to the config in the Repository. mountPath: - description: Path to config in device type: string + description: Path in the device's file system at which the repository's path should be mounted. default: "/" required: - repository @@ -2681,16 +3527,20 @@ components: properties: name: type: string - description: "The name of the config provider" + description: The name of the config provider. secretRef: type: object + description: The reference to a Kubernetes secret. properties: name: type: string + description: The name of the secret. namespace: type: string + description: The namespace of the secret. mountPath: type: string + description: Path in the device's file system at which the secret should be mounted. required: - name - namespace @@ -2703,9 +3553,10 @@ components: properties: name: type: string - description: "The name of the config provider" + description: The name of the config provider. inline: type: array + description: A list of files to create on the device. items: $ref: '#/components/schemas/FileSpec' required: @@ -2728,10 +3579,7 @@ components: - base64 mode: type: integer - description: | - The file’s permission mode. You may specify the more familiar octal with a leading zero (e.g., 0644) or as - a decimal without a leading zero (e.g., 420). Setuid/setgid/sticky bits are supported. If not specified, - the permission mode for files defaults to 0644. + description: The file's permission mode. You may specify the more familiar octal with a leading zero (e.g., 0644) or as a decimal without a leading zero (e.g., 420). Setuid/setgid/sticky bits are supported. If not specified, the permission mode for files defaults to 0644. user: type: string description: The file's owner, specified either as a name or numeric ID. Defaults to "root". @@ -2746,30 +3594,27 @@ components: properties: name: type: string - description: "The name of the config provider" + description: The name of the config provider. httpRef: type: object + description: The reference to an HTTP configuration server. properties: repository: type: string - description: | - The name of the repository resource to use as the sync source + description: The name of the repository resource to use as the sync source. suffix: type: string - description: | - Part of the URL that comes after the base URL. It can include query parameters such as: - /path/to/endpoint?query=param + description: 'Part of the URL that comes after the base URL. It can include query parameters such as: "/path/to/endpoint?query=param".' filePath: type: string - description: | - The path of the file where the response is stored in the filesystem of the device. + description: Path in the device's file system to which the content returned by the HTTP sever should be written. required: - repository - filePath required: - name - httpRef - ApplicationSpec: + ApplicationProviderSpec: type: object allOf: - $ref: '#/components/schemas/ApplicationEnvVars' @@ -2777,7 +3622,7 @@ components: properties: name: type: string - description: "The name of the application" + description: The application name must be 1–253 characters long, start with a letter or number, and contain no whitespace. - oneOf: - $ref: '#/components/schemas/ImageApplicationProvider' # extend application providers @@ -2786,7 +3631,7 @@ components: properties: image: type: string - description: "Reference to the container image for the application package" + description: Reference to the container image for the application package. required: - image ApplicationEnvVars: @@ -2794,40 +3639,32 @@ components: properties: envVars: type: object - description: "Environment variable key-value pairs, injected during runtime" + description: Environment variable key-value pairs, injected during runtime. The key and value each must be between 1 and 253 characters. additionalProperties: type: string - RenderedApplicationSpec: - type: object - allOf: - - $ref: '#/components/schemas/ApplicationEnvVars' - - type: object - properties: - name: - type: string - - oneOf: - - $ref: '#/components/schemas/ImageApplicationProvider' ResourceMonitor: oneOf: - - $ref: '#/components/schemas/CPUResourceMonitorSpec' + - $ref: '#/components/schemas/CpuResourceMonitorSpec' - $ref: '#/components/schemas/MemoryResourceMonitorSpec' - $ref: '#/components/schemas/DiskResourceMonitorSpec' discriminator: propertyName: monitorType mapping: - CPU: '#/components/schemas/CPUResourceMonitorSpec' + CPU: '#/components/schemas/CpuResourceMonitorSpec' Memory: '#/components/schemas/MemoryResourceMonitorSpec' Disk: '#/components/schemas/DiskResourceMonitorSpec' ResourceMonitorSpec: type: object + description: Specification for monitoring a resource. properties: monitorType: type: string + description: The type of resource to monitor. alertRules: type: array items: $ref: '#/components/schemas/ResourceAlertRule' - description: "Array of alert rules. Only one alert per severity is allowed." + description: Array of alert rules. Only one alert per severity is allowed. samplingInterval: type: string pattern: '^[1-9]\d*[smh]$' @@ -2836,27 +3673,23 @@ components: - monitorType - alertRules - samplingInterval - CPUResourceMonitorSpec: + CpuResourceMonitorSpec: allOf: - $ref: '#/components/schemas/ResourceMonitorSpec' - type: object - description: "Specification for monitoring CPU resource load." MemoryResourceMonitorSpec: allOf: - $ref: '#/components/schemas/ResourceMonitorSpec' - type: object - description: "Specification for monitoring Memory resource usage." DiskResourceMonitorSpec: allOf: - $ref: '#/components/schemas/ResourceMonitorSpec' - type: object - description: "Specification for monitoring disk usage." + description: Specification for monitoring disk usage. required: - path properties: path: type: string - description: "The directory path to monitor for disk usage." + description: The directory path to monitor for disk usage. CustomResourceMonitorSpec: allOf: - $ref: '#/components/schemas/ResourceMonitorSpec' @@ -2867,17 +3700,16 @@ components: properties: severity: $ref: '#/components/schemas/ResourceAlertSeverityType' - description: "Severity of the alert." duration: type: string pattern: '^\d+[smh]$' description: "Duration is the time over which the average usage is observed before alerting. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours." percentage: type: number - description: 'The percentage of usage that triggers the alert.' + description: The percentage of usage that triggers the alert. description: type: string - description: 'A human-readable description of the alert.' + description: A human-readable description of the alert. required: - severity - duration @@ -2885,6 +3717,7 @@ components: - description ResourceAlertSeverityType: type: string + description: Severity of the alert. enum: - "Warning" - "Critical" @@ -2893,152 +3726,135 @@ components: - "ResourceAlertSeverityTypeWarning" - "ResourceAlertSeverityTypeCritical" - "ResourceAlertSeverityTypeInfo" - DeviceUpdateHookSpec: + DeviceLifecycleHookType: + type: string + enum: + - 'BeforeUpdating' + - 'AfterUpdating' + - 'BeforeRebooting' + - 'AfterRebooting' + x-enum-varnames: + - "DeviceLifecycleHookBeforeUpdating" + - "DeviceLifecycleHookAfterUpdating" + - "DeviceLifecycleHookBeforeRebooting" + - "DeviceLifecycleHookAfterRebooting" + HookAction: + allOf: + - type: object + properties: + if: + type: array + description: Conditions that must be met for the action to be executed. + items: + $ref: '#/components/schemas/HookCondition' + timeout: + type: string + pattern: '^(?:[1-9]\d*)?\d[smh]$' + description: The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are 's' for seconds, 'm' for minutes, and 'h' for hours. + - oneOf: + - $ref: '#/components/schemas/HookActionRun' + # extend hook actions + HookCondition: type: object - properties: - name: - type: string - description: - type: string - actions: - type: array - items: - $ref: '#/components/schemas/HookAction' - description: 'The actions to take when the specified file operations are observed. Each action is executed in the order they are defined.' - onFile: - type: array - items: - $ref: '#/components/schemas/FileOperation' - path: - type: string - description: 'The path to monitor for changes in configuration files. This path can point to either a specific file or an entire directory.' - required: - - actions - DeviceRebootHookSpec: + oneOf: + - $ref: '#/components/schemas/HookConditionPathOp' + - $ref: '#/components/schemas/HookConditionExpression' + # extend hook conditions + HookConditionPathOp: type: object properties: - name: - type: string - description: + path: type: string - actions: + description: The absolute path to a file or directory that must have changed as condition for the action to be performed. + op: type: array + description: The operation(s) on files at or below the path that satisfy the path condition. items: - $ref: '#/components/schemas/HookAction' - description: 'The actions taken before and after system reboots are observed. Each action is executed in the order they are defined.' + $ref: '#/components/schemas/FileOperation' required: - - actions + - path + - op FileOperation: type: string - description: 'The type of operation that was observed on the file.' enum: - - "Create" - - "Remove" - - "Update" - - "Reboot" + - "created" + - "removed" + - "updated" x-enum-varnames: - - "FileOperationCreate" - - "FileOperationRemove" # by convention remove is fired before the file is removed. - - "FileOperationUpdate" - - "FileOperationReboot" - HookAction: - type: object - oneOf: - - properties: - executable: - $ref: '#/components/schemas/HookActionExecutableSpec' - required: - - "executable" - - properties: - systemd: - $ref: '#/components/schemas/HookActionSystemdSpec' - required: - - "systemd" - HookActionSpec: - type: object - properties: - timeout: - type: string - pattern: '^[1-9]\d*[smhd]$' - description: | - The maximum duration allowed for the action to complete. - The duration should be specified as a positive integer - followed by a time unit. Supported time units are: - - 's' for seconds - - 'm' for minutes - - 'h' for hours - - 'd' for days - HookActionSystemdSpec: - allOf: - - $ref: '#/components/schemas/HookActionSpec' - - type: object - properties: - unit: - $ref: '#/components/schemas/HookActionSystemdUnit' - required: - - unit - HookActionSystemdUnit: + - "FileOperationCreated" + - "FileOperationRemoved" + - "FileOperationUpdated" + HookConditionExpression: + type: string + description: An expression that must evaluate to true as condition for the action to be performed. + HookActionRun: type: object properties: - name: + run: type: string - description: 'The name of the systemd unit on which the specified operations will be performed. This should be the exact name of the unit file, such as example.service. If the name is not populated the name will be auto discovered from the file path.' - operations: - type: array - items: + description: The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context. + envVars: + type: object + description: Environment variable key-value pairs, injected during runtime. + additionalProperties: type: string - enum: - - "Enable" - - "Disable" - - "Start" - - "Stop" - - "Restart" - - "Reload" - - "DaemonReload" - x-enum-varnames: - - "SystemdEnable" - - "SystemdDisable" - - "SystemdStart" - - "SystemdStop" - - "SystemdRestart" - - "SystemdReload" - - "SystemdDaemonReload" - description: 'The specific systemd operations to perform on the specified unit.' workDir: - type: string - description: 'The directory in which the executable will be run from if it is left empty it will run from the users home directory.' + type: string + description: The working directory to be used when running the command. required: - - name - - operations - HookActionExecutableSpec: - allOf: - - $ref: '#/components/schemas/HookActionSpec' - - $ref: '#/components/schemas/HookActionExecutable' - HookActionExecutable: - type: object - properties: - run: - type: string - description: 'The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context.' - envVars: - type: array - items: - type: string - description: 'An optional list of KEY=VALUE pairs to set as environment variables for the executable.' - workDir: - type: string - description: 'The directory in which the executable will be run from if it is left empty it will run from the users home directory.' - required: - - run + - run + DeviceUpdatePolicySpec: + type: object + description: Specifies the policy for managing device updates, including when updates should be downloaded and applied. + properties: + downloadSchedule: + $ref: '#/components/schemas/UpdateSchedule' + updateSchedule: + $ref: '#/components/schemas/UpdateSchedule' + UpdateSchedule: + type: object + description: Defines the schedule for automatic downloading and updates, including timing and optional timeout. + properties: + timeZone: + $ref: '#/components/schemas/TimeZone' + at: + $ref: '#/components/schemas/CronExpression' + startGraceDuration: + $ref: '#/components/schemas/Duration' + required: + - at + TimeZone: + type: string + description: Time zone identifiers follow the IANA format AREA/LOCATION, where AREA represents a continent or ocean, and LOCATION specifies a particular site within that area, for example America/New_York, Europe/Paris. Only unambiguous 3-character time zones are supported ("GMT", "UTC"). + default: "Local" + CronExpression: + type: string + description: 'Cron expression format for scheduling times. + + The format is `* * * * *`: + - Minutes: `*` matches 0-59. + - Hours: `*` matches 0-23. + - Day of Month: `*` matches 1-31. + - Month: `*` matches 1-12. + - Day of Week: `*` matches 0-6. + + Supported operators: + - `*`: Matches any value (e.g., `*` in hours matches every hour). + - `-`: Range (e.g., `0-8` for 12 AM to 8 AM). + - `,`: List (e.g., `1,12` for 1st and 12th minute). + - `/`: Step (e.g., `*/12` for every 12th minute). + - Single value (e.g., `8` matches the 8th minute). + + Example: `* 0-8,16-23 * * *`.' DeviceList: type: object properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -3054,16 +3870,18 @@ components: - kind - metadata - items - DeviceOSSpec: + DeviceOsSpec: type: object + description: DeviceOsSpec describes the target OS for the device. properties: image: type: string - description: 'ostree image name or URL.' + description: The target OS image name or URL. required: - image DeviceStatus: type: object + description: DeviceStatus represents information about the status of a device. Status may trail the actual state of a device. required: - conditions - systemInfo @@ -3076,49 +3894,46 @@ components: - updated - summary - lastSeen + - lifecycle properties: conditions: type: array - description: "Conditions represent the observations of a the current state of a device." + description: Conditions represent the observations of a the current state of a device. items: $ref: '#/components/schemas/Condition' systemInfo: $ref: "#/components/schemas/DeviceSystemInfo" applications: type: array - description: "List of device application status." + description: List of device application status. items: $ref: "#/components/schemas/DeviceApplicationStatus" applicationsSummary: $ref: "#/components/schemas/DeviceApplicationsSummaryStatus" - description: "Summary status of the device applications." resources: $ref: "#/components/schemas/DeviceResourceStatus" - description: "Current status of the resources of the device." integrity: $ref: "#/components/schemas/DeviceIntegrityStatus" - description: "Current status of the integrity of the device." config: $ref: "#/components/schemas/DeviceConfigStatus" - description: "Current status of the device config." os: - $ref: "#/components/schemas/DeviceOSStatus" - description: "Current status of the device OS." + $ref: "#/components/schemas/DeviceOsStatus" updated: $ref: "#/components/schemas/DeviceUpdatedStatus" - description: "Current status of the device update." summary: $ref: "#/components/schemas/DeviceSummaryStatus" - description: "Summary status of the device." lastSeen: type: string + description: The last time the device was seen by the service. format: date-time - description: "DeviceStatus represents information about the status of a device. Status may trail the actual state of a device." + lifecycle: + $ref: '#/components/schemas/DeviceLifecycleStatus' DeviceSystemInfo: required: - architecture - bootID - operatingSystem + - agentVersion type: object properties: architecture: @@ -3130,6 +3945,9 @@ components: operatingSystem: type: string description: The Operating System reported by the device. + agentVersion: + type: string + description: The Agent version. description: "DeviceSystemInfo is a set of ids/uuids to uniquely identify the device." DeviceApplicationStatus: type: object @@ -3141,29 +3959,29 @@ components: properties: name: type: string - description: "Human readable name of the application." + description: Human readable name of the application. ready: type: string - description: "The number of containers which are ready in the application." + description: The number of containers which are ready in the application. restarts: type: integer - description: "Number of restarts observed for the application." + description: Number of restarts observed for the application. status: $ref: "#/components/schemas/ApplicationStatusType" - description: "Status of the application." DeviceApplicationsSummaryStatus: type: object + description: A summary of the health of applications on the device. required: - status properties: status: $ref: "#/components/schemas/ApplicationsSummaryStatusType" - description: "Summary status of the system applications." info: type: string - description: "Human readable information detailing the last system application transition." + description: Human readable information detailing the last application transition. ApplicationsSummaryStatusType: type: string + description: Status of all applications on the device. enum: - "Healthy" - "Degraded" @@ -3176,6 +3994,7 @@ components: - "ApplicationsSummaryStatusUnknown" ApplicationStatusType: type: string + description: Status of a single application on the device. enum: - "Preparing" - "Starting" @@ -3190,39 +4009,42 @@ components: - "ApplicationStatusError" - "ApplicationStatusUnknown" - "ApplicationStatusCompleted" - DeviceOSStatus: + DeviceOsStatus: type: object + description: Current status of the device OS. required: - image - imageDigest properties: image: type: string - description: "Version of the OS image." + description: Version of the OS image. imageDigest: type: string - description: "The digest of the OS image (e.g. sha256:a0...)" + description: The digest of the OS image (e.g. sha256:a0...). DeviceConfigStatus: type: object + description: Current status of the device config. required: - renderedVersion properties: renderedVersion: type: string - description: "Version of the device rendered config." + description: Rendered version of the device config. DeviceSummaryStatus: type: object + description: A summary of the health of the device hardware and operating system resources. required: - status properties: status: $ref: "#/components/schemas/DeviceSummaryStatusType" - description: "Summary status of the device." info: type: string - description: "Human readable information detailing the last device status transition." + description: Human readable information detailing the last device status transition. DeviceSummaryStatusType: type: string + description: Status of the device. enum: - "Online" - "Degraded" @@ -3239,17 +4061,18 @@ components: - "DeviceSummaryStatusUnknown" DeviceUpdatedStatus: type: object + description: Current status of the device update. required: - status properties: status: $ref: "#/components/schemas/DeviceUpdatedStatusType" - description: "Status type of the device update." info: type: string - description: "Human readable information about the last device update transition." + description: Human readable information about the last device update transition. DeviceUpdatedStatusType: type: string + description: Status type of the device update. enum: - "UpToDate" - "OutOfDate" @@ -3260,27 +4083,44 @@ components: - "DeviceUpdatedStatusOutOfDate" - "DeviceUpdatedStatusUpdating" - "DeviceUpdatedStatusUnknown" - DeviceIntegrityStatus: + DeviceLifecycleStatus: type: object required: - - summary + - status properties: - summary: - $ref: "#/components/schemas/DeviceIntegrityStatusSummary" - description: "Summary status of the integrity of the device." - DeviceIntegrityStatusSummary: + status: + $ref: "#/components/schemas/DeviceLifecycleStatusType" + info: + type: string + description: Human readable information about the device lifecycle status. + description: Current status of the device lifecycle. + DeviceLifecycleStatusType: + type: string + enum: + - "Unknown" + - "Enrolled" + - "Decommissioning" + - "Decommissioned" + x-enum-varnames: + - "DeviceLifecycleStatusUnknown" + - "DeviceLifecycleStatusEnrolled" + - "DeviceLifecycleStatusDecommissioning" + - "DeviceLifecycleStatusDecommissioned" + description: Status type of the device lifecycle. + DeviceIntegrityStatus: type: object + description: Summary status of the integrity of the device. required: - status properties: status: $ref: "#/components/schemas/DeviceIntegrityStatusSummaryType" - description: "Summary status of the integrity of the device." info: type: string - description: "Human readable information about the last integrity transition." + description: Human readable information about the last integrity transition. DeviceIntegrityStatusSummaryType: type: string + description: Status of the integrity of the device. enum: - "Passed" - "Failed" @@ -3293,6 +4133,7 @@ components: - "DeviceIntegrityStatusUnsupported" DeviceResourceStatus: type: object + description: Current status of the resources of the device. required: - cpu - memory @@ -3300,15 +4141,13 @@ components: properties: cpu: $ref: "#/components/schemas/DeviceResourceStatusType" - description: "Status of the device CPU resources." memory: $ref: "#/components/schemas/DeviceResourceStatusType" - description: "Status of the device memory resources." disk: $ref: "#/components/schemas/DeviceResourceStatusType" - description: "Status of the device disk resources." DeviceResourceStatusType: type: string + description: The types of resource statuses. enum: - "Healthy" - "Warning" @@ -3324,46 +4163,64 @@ components: EnrollmentRequestApproval: type: object + description: EnrollmentRequestApproval contains information about the approval of a device enrollment request. properties: labels: type: object additionalProperties: type: string - description: 'labels is a set of labels to apply to the device.' + description: A set of labels to apply to the device. approved: type: boolean - description: 'approved indicates whether the request has been approved.' - approvedBy: - type: string - description: 'approvedBy is the name of the approver.' - approvedAt: - type: string - format: date-time - description: 'approvedAt is the time at which the request was approved.' + description: Indicates whether the request has been approved. required: - approved + EnrollmentRequestApprovalStatus: + description: EnrollmentRequestApprovalStatus represents information about the status of a device enrollment request approval. + allOf: + - $ref: "#/components/schemas/EnrollmentRequestApproval" + - type: object + description: EnrollmentRequestApprovalStatus contains information about the status of approval of a device enrollment request. + properties: + approvedBy: + type: string + description: The name of the approver. + approvedAt: + type: string + format: date-time + description: The time at which the request was approved. + required: + - approvedBy + - approvedAt EnrollmentServiceAuth: type: object + description: EnrollmentServiceAuth contains the client authentication information for a Flight Control enrollment service. properties: client-certificate-data: type: string + description: ClientCertificateData contains PEM-encoded data from a client cert file for TLS. client-key-data: type: string + description: ClientKeyData contains PEM-encoded data from a client key file for TLS. required: - client-certificate-data - client-key-data EnrollmentServiceService: type: object + description: EnrollmentServiceService contains information about connecting to a Flight Control enrollment service. properties: certificate-authority-data: type: string + description: CertificateAuthorityData contains PEM-encoded certificate authority certificates. server: type: string + description: Server is the address of the Flight Control enrollment service (https://hostname:port). required: - certificate-authority-data - server EnrollmentService: type: object + description: EnrollmentService contains information about how to communicate with a Flight Control enrollment service. properties: authentication: $ref: '#/components/schemas/EnrollmentServiceAuth' @@ -3371,6 +4228,7 @@ components: $ref: '#/components/schemas/EnrollmentServiceService' enrollment-ui-endpoint: type: string + description: The URL of the UI that the agent uses to print the QR code and link for enrolling the device. required: - authentication - service @@ -3380,20 +4238,17 @@ components: properties: enrollment-service: $ref: '#/components/schemas/EnrollmentService' - grpc-management-endpoint: - type: string required: - enrollment-service - - grpc-management-endpoint EnrollmentRequest: type: object properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -3411,10 +4266,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -3435,41 +4290,42 @@ components: properties: csr: type: string - description: 'csr is a PEM-encoded PKCS#10 certificate signing request.' + description: 'The PEM-encoded PKCS#10 certificate signing request.' deviceStatus: $ref: '#/components/schemas/DeviceStatus' labels: type: object additionalProperties: type: string - description: 'A set of labels that the service will apply to this device when its enrollment is approved' + description: 'A set of labels that the service will apply to this device when its enrollment is approved.' description: EnrollmentRequestSpec is a description of a EnrollmentRequest's target state. EnrollmentRequestStatus: type: object properties: certificate: type: string - description: 'certificate is a PEM-encoded signed certificate.' + description: 'The PEM-encoded signed certificate.' conditions: type: array description: 'Current state of the EnrollmentRequest.' items: $ref: '#/components/schemas/Condition' approval: - $ref: '#/components/schemas/EnrollmentRequestApproval' + $ref: '#/components/schemas/EnrollmentRequestApprovalStatus' required: - conditions description: EnrollmentRequestStatus represents information about the status of a EnrollmentRequest. ResourceSync: type: object + description: ResourceSync represents a reference to one or more files in a repository to sync to resource definitions. properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -3481,24 +4337,19 @@ components: - kind - metadata - spec - description: ResourceSync represents a reference to one or more files in a repository to sync to resource definitions ResourceSyncSpec: type: object + description: ResourceSyncSpec describes the file(s) to sync from a repository. properties: repository: type: string - description: | - The name of the repository resource to use as the sync source + description: The name of the repository resource to use as the sync source. targetRevision: type: string - description: The desired revision in the repository + description: The desired revision in the repository. path: type: string - description: | - The path of a file or directory in the repository. If a directory, - the directory should contain only resource definitions with no - subdirectories. Each file should contain the definition of one or - more resources. + description: The path of a file or directory in the repository. If a directory, the directory should contain only resource definitions with no subdirectories. Each file should contain the definition of one or more resources. required: - repository - targetRevision @@ -3508,30 +4359,28 @@ components: properties: observedCommit: type: string - description: | - The last commit hash that was synced + description: The last commit hash that was synced. observedGeneration: type: integer format: int64 - description: | - The last generation that was synced + description: The last generation that was synced. conditions: type: array - description: 'Current state of a resourcesync.' + description: Current state of a resourcesync. items: $ref: '#/components/schemas/Condition' required: - conditions - description: ResourceSyncStatus represents information about the status of a resourcesync + description: ResourceSyncStatus represents information about the status of a ResourceSync. ResourceSyncList: type: object properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -3549,10 +4398,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -3570,10 +4419,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -3588,25 +4437,27 @@ components: - items description: FleetList is a list of Fleets. - DisruptionAllowance: + DisruptionBudget: type: object properties: groupBy: type: array items: type: string - description: List of label keys to perform grouping for the disruption allowance. + pattern: '^([A-Za-z0-9][-A-Za-z0-9_/.]*)?[A-Za-z0-9]$' + description: List of label keys to perform grouping for the disruption budget. minAvailable: type: integer + minimum: 1 description: The maximum number of unavailable devices allowed during rollout. maxUnavailable: + minimum: 1 type: integer description: The minimum number of required available devices during rollout. - description: DisruptionAllowance defines the level of allowed disruption when rollout is in progress. + description: DisruptionBudget defines the level of allowed disruption when rollout is in progress. Percentage: type: string - format: '^(100|[1-9]?[0-9])%$' description: Percentage is the string format representing percentage string. Batch: @@ -3617,6 +4468,7 @@ components: successThreshold: $ref: '#/components/schemas/Percentage' limit: + description: The maximum number or percentage of devices to update in the batch. oneOf: - $ref: '#/components/schemas/Percentage' - type: integer @@ -3624,43 +4476,45 @@ components: description: Batch is an element in batch sequence. Duration: type: string - pattern: '^[1-9]\d*[smhd]$' - description: | - The maximum duration allowed for the action to complete. - The duration should be specified as a positive integer - followed by a time unit. Supported time units are: - - 's' for seconds - - 'm' for minutes - - 'h' for hours - - 'd' for days + pattern: '^(?:[1-9]\d*)?\d[smh]$' + description: 'The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: `s` for seconds, `m` for minutes, `h` for hours.' + default: "0s" + + RolloutStrategy: + type: string + description: The strategy of choice for device selection in rollout policy. + enum: ['BatchSequence'] BatchSequence: type: object + description: BatchSequence defines the list of batches to be executed in sequence. + required: + - strategy properties: + strategy: + $ref: '#/components/schemas/RolloutStrategy' sequence: type: array + description: A list of batch definitions. minItems: 1 items: $ref: '#/components/schemas/Batch' - description: BatchSequence defines the list of batches to be executed in sequence. RolloutDeviceSelection: type: object - required: - - strategy - properties: - strategy: - type: string + description: Describes how to select devices for rollout. oneOf: - $ref: '#/components/schemas/BatchSequence' discriminator: propertyName: strategy + mapping: + BatchSequence: '#/components/schemas/BatchSequence' RolloutPolicy: type: object properties: - disruptionAllowance: - $ref: '#/components/schemas/DisruptionAllowance' + disruptionBudget: + $ref: '#/components/schemas/DisruptionBudget' deviceSelection: $ref: '#/components/schemas/RolloutDeviceSelection' successThreshold: @@ -3671,6 +4525,7 @@ components: FleetSpec: type: object + description: FleetSpec is a description of a fleet's target state. properties: selector: $ref: '#/components/schemas/LabelSelector' @@ -3678,6 +4533,7 @@ components: $ref: '#/components/schemas/RolloutPolicy' template: type: object + description: The template for the devices in the fleet. properties: metadata: $ref: '#/components/schemas/ObjectMeta' @@ -3687,94 +4543,34 @@ components: - spec required: - template - description: FleetSpec is a description of a fleet's target state. - RenderedDeviceSpec: - type: object - properties: - renderedVersion: - type: string - os: - $ref: '#/components/schemas/DeviceOSSpec' - config: - type: string - applications: - type: array - items: - $ref: '#/components/schemas/RenderedApplicationSpec' - hooks: - $ref: '#/components/schemas/DeviceHooksSpec' - systemd: - type: object - properties: - matchPatterns: - type: array - items: - type: string - resources: - type: array - description: 'Array of resource monitor configurations.' - items: - $ref: '#/components/schemas/ResourceMonitor' - console: - $ref: '#/components/schemas/DeviceConsole' - - required: - - renderedVersion - DeviceHooksSpec: - type: object - properties: - beforeUpdating: - type: array - items: - $ref: '#/components/schemas/DeviceUpdateHookSpec' - description: | - Hooks executed before updating allow for custom actions and integration with other systems - or services. These actions occur before configuration changes are applied to the device. - afterUpdating: - type: array - items: - $ref: '#/components/schemas/DeviceUpdateHookSpec' - description: | - Hooks executed after updating enable custom actions and integration with other systems - or services. These actions occur after configuration changes have been applied to the device. - beforeRebooting: - type: array - items: - $ref: '#/components/schemas/DeviceRebootHookSpec' - description: | - Hooks executed before rebooting allow for custom actions and integration with other systems - or services. These actions occur before the device is rebooted. - afterRebooting: - type: array - items: - $ref: '#/components/schemas/DeviceRebootHookSpec' - description: | - Hooks executed after rebooting enable custom actions and integration with other systems - or services. These actions occur after the device has rebooted, allowing for post-reboot tasks. DeviceSpec: type: object + description: DeviceSpec describes a device. properties: + updatePolicy: + $ref: '#/components/schemas/DeviceUpdatePolicySpec' os: - $ref: '#/components/schemas/DeviceOSSpec' + $ref: '#/components/schemas/DeviceOsSpec' config: type: array description: List of config providers. items: $ref: '#/components/schemas/ConfigProviderSpec' - hooks: - $ref: '#/components/schemas/DeviceHooksSpec' applications: type: array - description: List of applications. + description: List of application providers. items: - $ref: '#/components/schemas/ApplicationSpec' + $ref: '#/components/schemas/ApplicationProviderSpec' systemd: type: object + description: The systemd services to monitor. properties: matchPatterns: type: array + description: A list of match patterns. items: type: string + description: A single systemd unit name, with or without suffix, or a shell-style glob pattern to match against currently loaded units. pattern: '^[a-zA-Z0-9:\-_.\\*]*$' # * plus https://github.com/systemd/systemd/blob/9cebda59e818cdb89dc1e53ab5bb51b91b3dc3ff/src/basic/unit-name.c#L42 maxLength: 256 resources: @@ -3782,31 +4578,43 @@ components: description: 'Array of resource monitor configurations.' items: $ref: '#/components/schemas/ResourceMonitor' + consoles: + type: array + description: The list of active console sessions. + items: + $ref: '#/components/schemas/DeviceConsole' + decommissioning: + $ref: '#/components/schemas/DeviceDecommission' FleetRolloutStatus: type: object + description: FleetRolloutStatus represents information about the status of a fleet rollout. properties: currentBatch: type: integer + description: The batch number currently being rolled out. FleetStatus: type: object + description: FleetStatus represents information about the status of a fleet. Status may trail the actual state of a fleet, especially if devices of a fleet have not contacted the management service in a while. properties: rollout: $ref: '#/components/schemas/FleetRolloutStatus' conditions: type: array - description: 'Current state of the fleet.' + description: Current state of the fleet. items: $ref: '#/components/schemas/Condition' devicesSummary: $ref: '#/components/schemas/DevicesSummary' required: - conditions - description: FleetStatus represents information about the status of a fleet. Status may trail the actual state of a fleet, especially if devices of a fleet have not contacted the management service in a while. DevicesSummary: type: object description: A summary of the devices in the fleet returned when fetching a single Fleet. required: - total + - applicationStatus + - summaryStatus + - updateStatus properties: total: type: integer @@ -3838,10 +4646,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -3856,6 +4664,7 @@ components: description: TemplateVersion represents a version of a template. TemplateVersionSpec: type: object + description: TemplateVersionSpec describes a version of a device template. properties: fleet: type: string @@ -3863,28 +4672,31 @@ components: required: - fleet TemplateVersionStatus: + description: TemplateVersionStatus represents information about the status of a template version. allOf: - $ref: '#/components/schemas/DeviceSpec' - type: object properties: updatedAt: type: string + description: The time at which the template was last updated. format: date-time conditions: type: array - description: 'Current state of the device.' + description: Current state of the device. items: $ref: '#/components/schemas/Condition' - description: TemplateVersionStatus represents information about the status of a template version. + required: + - conditions TemplateVersionList: type: object properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -3903,10 +4715,10 @@ components: properties: authType: type: string - description: 'Auth type' + description: Auth type. authURL: type: string - description: 'Auth URL' + description: Auth URL. required: - authType - authURL @@ -3916,10 +4728,10 @@ components: properties: continue: type: string - description: continue may be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message. + description: May be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message. remainingItemCount: type: integer - description: remainingItemCount is the number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact. + description: The number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact. format: int64 description: ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}. ObjectMeta: @@ -3927,22 +4739,24 @@ components: properties: creationTimestamp: type: string + description: The time the object was created. format: date-time deletionTimestamp: type: string + description: The time the object will be deleted. format: date-time name: type: string - description: name of the object + description: The name of the object. labels: type: object + description: Map of string keys and values that can be used to organize and categorize (scope and select) objects. additionalProperties: type: string - description: 'Map of string keys and values that can be used to organize and categorize (scope and select) objects.' generation: type: integer - format: int64 description: A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. + format: int64 owner: type: string description: A resource that owns this resource, in "kind/name" format. @@ -3950,7 +4764,7 @@ components: type: object additionalProperties: type: string - description: 'Properties set by the service.' + description: Properties set by the service. resourceVersion: type: string description: An opaque string that identifies the server's internal version of an object. @@ -3960,11 +4774,14 @@ components: properties: key: type: string + description: The label key that the selector applies to. operator: type: string + description: The operation to apply when matching. enum: [In, NotIn, Exists, DoesNotExist] values: type: array + description: The list of values to match. items: type: string required: @@ -3973,24 +4790,46 @@ components: MatchExpressions: type: array + description: A list of match expressions. minItems: 1 items: $ref: '#/components/schemas/MatchExpression' LabelSelector: type: object + description: A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. Empty/null label selectors match nothing. properties: matchLabels: type: object + description: A map of {key,value} pairs. additionalProperties: type: string matchExpressions: $ref: '#/components/schemas/MatchExpressions' + LabelList: + type: array + items: + type: string + description: | + A list of distinct labels, where each item is formatted as "key=value". + example: + - "environment=production" + - "region=us-east-1" + - "tier=backend" - description: A map of key,value pairs that are ANDed. Empty/null label selectors match nothing. Status: type: object properties: + apiVersion: + type: string + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' + kind: + type: string + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' + code: + type: integer + format: int32 + description: Suggested HTTP return code for this status, 0 if not set. message: type: string description: A human-readable description of the status of this operation. @@ -3999,15 +4838,15 @@ components: description: A machine-readable description of why this operation is in the "Failure" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it. status: type: string - description: 'Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + description: 'Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.' description: Status is a return value for calls that don't return other objects. - Error: required: + - apiVersion + - kind + - status + - code + - reason - message - properties: - message: - type: string - description: Error message Condition: required: - type @@ -4019,10 +4858,8 @@ components: properties: type: $ref: '#/components/schemas/ConditionType' - description: Type of condition in CamelCase status: $ref: '#/components/schemas/ConditionStatus' - description: Status of the condition, one of True, False, Unknown. observedGeneration: type: integer format: int64 @@ -4036,22 +4873,27 @@ components: description: Human readable message indicating details about last transition. reason: type: string - description: (brief) reason for the condition's last transition. + description: A (brief) reason for the condition's last transition. description: Condition contains details for one aspect of the current state of this API Resource. ConditionType: type: string + description: Type of condition in CamelCase. enum: - - 'Approved' # EnrollmentRequest and CertificateSigningRequest - - 'Denied' # CertificateSigningRequest - - 'Failed' # CertificateSigningRequest - - 'Accessible' # Repository and ResourceSync - - 'ResourceParsed' # ResourceSync - - 'Synced' # ResourceSync - - 'OverlappingSelectors' # Fleet - - 'Valid' # Fleet - - 'Updating' # Device - - 'SpecValid' # Device (service condition) - - 'MultipleOwners' # Device (service condition) + - 'Approved' # EnrollmentRequest + - 'Approved' # CertificateSigningRequest + - 'Denied' # CertificateSigningRequest + - 'Failed' # CertificateSigningRequest + - 'Accessible' # Repository + - 'Accessible' # ResourceSync + - 'ResourceParsed' # ResourceSync + - 'Synced' # ResourceSync + - 'OverlappingSelectors' # Fleet + - 'Valid' # Fleet + - 'RolloutInProgress' # Fleet + - 'Updating' # Device + - 'SpecValid' # Device (service condition) + - 'MultipleOwners' # Device (service condition) + - 'DeviceDecommissioning' # Device x-enum-varnames: - EnrollmentRequestApproved - CertificateSigningRequestApproved @@ -4063,11 +4905,14 @@ components: - ResourceSyncSynced - FleetOverlappingSelectors - FleetValid + - FleetRolloutInProgress - DeviceUpdating - DeviceSpecValid - DeviceMultipleOwners + - DeviceDecommissioning ConditionStatus: type: string + description: Status of the condition, one of True, False, Unknown. enum: - 'True' - 'False' @@ -4081,10 +4926,10 @@ components: properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ObjectMeta' spec: @@ -4096,16 +4941,16 @@ components: - kind - metadata - spec - description: 'CertificateSigningRequest represents a request for a signed certificate from the CA' + description: 'CertificateSigningRequest represents a request for a signed certificate from the CA.' CertificateSigningRequestList: type: object properties: apiVersion: type: string - description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.' kind: type: string - description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.' metadata: $ref: '#/components/schemas/ListMeta' items: @@ -4118,12 +4963,12 @@ components: - kind - metadata - items - description: 'CertificateSigningRequestList is a list of CertificateSigningRequest' + description: CertificateSigningRequestList is a list of CertificateSigningRequest. CertificateSigningRequestSpec: - description: 'Wrapper around a user-created CSR, modeled on kubernetes io.k8s.api.certificates.v1.CertificateSigningRequestSpec' + description: Wrapper around a user-created CSR, modeled on kubernetes io.k8s.api.certificates.v1.CertificateSigningRequestSpec. properties: expirationSeconds: - description: 'Requested duration of validity for the certificate' + description: Requested duration of validity for the certificate. format: int32 type: integer extra: @@ -4131,42 +4976,49 @@ components: items: type: string type: array - description: 'Extra attributes of the user that created the CSR, populated by the API server on creation and immutable' + description: Extra attributes of the user that created the CSR, populated by the API server on creation and immutable. type: object request: - description: 'The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource' + description: The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource. format: byte type: string signerName: - description: 'Indicates the requested signer, and is a qualified name' + description: Indicates the requested signer, and is a qualified name. type: string uid: - description: 'UID of the user that created the CSR, populated by the API server on creation and immutable' + description: UID of the user that created the CSR, populated by the API server on creation and immutable. type: string usages: - description: 'Usages specifies a set of key usages requested in the issued certificate.' + description: Usages specifies a set of key usages requested in the issued certificate. items: type: string type: array username: - description: 'Name of the user that created the CSR, populated by the API server on creation and immutable' + description: Name of the user that created the CSR, populated by the API server on creation and immutable. type: string required: + - request - signerName type: object CertificateSigningRequestStatus: - description: 'Indicates approval/denial/failure status of the CSR, and contains the issued certifiate if any exists' + description: Indicates approval/denial/failure status of the CSR, and contains the issued certificate if any exists. properties: certificate: - description: 'The issued signed certificate, immutable once populated' + description: The issued signed certificate, immutable once populated. format: byte type: string conditions: - description: 'Conditions applied to the request. Known conditions are Approved, Denied, and Failed' - items: - allOf: - - $ref: '#/components/schemas/Condition' type: array + description: Conditions applied to the request. Known conditions are Approved, Denied, and Failed. + items: + $ref: '#/components/schemas/Condition' required: - conditions type: object + Version: + properties: + version: + description: Git version of the service. + type: string + required: + - version diff --git a/docs/ApplicationEnvVars.md b/docs/ApplicationEnvVars.md index 9cc21e1..497c558 100644 --- a/docs/ApplicationEnvVars.md +++ b/docs/ApplicationEnvVars.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime | [optional] +**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime. The key and value each must be between 1 and 253 characters. | [optional] ## Example diff --git a/docs/ApplicationProviderSpec.md b/docs/ApplicationProviderSpec.md new file mode 100644 index 0000000..04e51b8 --- /dev/null +++ b/docs/ApplicationProviderSpec.md @@ -0,0 +1,31 @@ +# ApplicationProviderSpec + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime. The key and value each must be between 1 and 253 characters. | [optional] +**name** | **str** | The name of the application must be between 1 and 253 characters and start with a letter or number. | [optional] +**image** | **str** | Reference to the container image for the application package. | + +## Example + +```python +from flightctl.models.application_provider_spec import ApplicationProviderSpec + +# TODO update the JSON string below +json = "{}" +# create an instance of ApplicationProviderSpec from a JSON string +application_provider_spec_instance = ApplicationProviderSpec.from_json(json) +# print the JSON string representation of the object +print(ApplicationProviderSpec.to_json()) + +# convert the object into a dict +application_provider_spec_dict = application_provider_spec_instance.to_dict() +# create an instance of ApplicationProviderSpec from a dict +application_provider_spec_from_dict = ApplicationProviderSpec.from_dict(application_provider_spec_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/ApplicationSpec.md b/docs/ApplicationSpec.md deleted file mode 100644 index a0498d8..0000000 --- a/docs/ApplicationSpec.md +++ /dev/null @@ -1,31 +0,0 @@ -# ApplicationSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime | [optional] -**name** | **str** | The name of the application | [optional] -**image** | **str** | Reference to the container image for the application package | - -## Example - -```python -from flightctl.models.application_spec import ApplicationSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of ApplicationSpec from a JSON string -application_spec_instance = ApplicationSpec.from_json(json) -# print the JSON string representation of the object -print(ApplicationSpec.to_json()) - -# convert the object into a dict -application_spec_dict = application_spec_instance.to_dict() -# create an instance of ApplicationSpec from a dict -application_spec_from_dict = ApplicationSpec.from_dict(application_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/ApplicationStatusType.md b/docs/ApplicationStatusType.md index 3b4c340..6bf66d2 100644 --- a/docs/ApplicationStatusType.md +++ b/docs/ApplicationStatusType.md @@ -1,5 +1,6 @@ # ApplicationStatusType +Status of a single application on the device. ## Enum diff --git a/docs/ApplicationsSummaryStatusType.md b/docs/ApplicationsSummaryStatusType.md index 2687644..a419150 100644 --- a/docs/ApplicationsSummaryStatusType.md +++ b/docs/ApplicationsSummaryStatusType.md @@ -1,5 +1,6 @@ # ApplicationsSummaryStatusType +Status of all applications on the device. ## Enum diff --git a/docs/AuthConfig.md b/docs/AuthConfig.md index 496f4fe..60fd9a5 100644 --- a/docs/AuthConfig.md +++ b/docs/AuthConfig.md @@ -6,8 +6,8 @@ Auth config. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**auth_type** | **str** | Auth type | -**auth_url** | **str** | Auth URL | +**auth_type** | **str** | Auth type. | +**auth_url** | **str** | Auth URL. | ## Example diff --git a/docs/AuthenticationApi.md b/docs/AuthenticationApi.md new file mode 100644 index 0000000..2888669 --- /dev/null +++ b/docs/AuthenticationApi.md @@ -0,0 +1,141 @@ +# flightctl.AuthenticationApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**auth_config**](AuthenticationApi.md#auth_config) | **GET** /api/v1/auth/config | +[**auth_validate**](AuthenticationApi.md#auth_validate) | **GET** /api/v1/auth/validate | + + +# **auth_config** +> AuthConfig auth_config() + + + +Get authentication configuration. + +### Example + + +```python +import flightctl +from flightctl.models.auth_config import AuthConfig +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.AuthenticationApi(api_client) + + try: + api_response = api_instance.auth_config() + print("The response of AuthenticationApi->auth_config:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling AuthenticationApi->auth_config: %s\n" % e) +``` + + + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**AuthConfig**](AuthConfig.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**418** | Auth not configured | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **auth_validate** +> auth_validate(authorization=authorization) + + + +Validate an authentication token. + +### Example + + +```python +import flightctl +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.AuthenticationApi(api_client) + authorization = 'authorization_example' # str | The authentication token to validate. (optional) + + try: + api_instance.auth_validate(authorization=authorization) + except Exception as e: + print("Exception when calling AuthenticationApi->auth_validate: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **authorization** | **str**| The authentication token to validate. | [optional] + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Token valid | - | +**401** | Token invalid | - | +**418** | Auth not configured | - | +**500** | InternalServerError | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/docs/BatchLimit.md b/docs/BatchLimit.md index 8d31d68..d77fb02 100644 --- a/docs/BatchLimit.md +++ b/docs/BatchLimit.md @@ -1,5 +1,6 @@ # BatchLimit +The maximum number or percentage of devices to update in the batch. ## Properties diff --git a/docs/BatchSequence.md b/docs/BatchSequence.md index 8f7b45d..5536497 100644 --- a/docs/BatchSequence.md +++ b/docs/BatchSequence.md @@ -6,7 +6,8 @@ BatchSequence defines the list of batches to be executed in sequence. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**sequence** | [**List[Batch]**](Batch.md) | | [optional] +**strategy** | [**RolloutStrategy**](RolloutStrategy.md) | | +**sequence** | [**List[Batch]**](Batch.md) | A list of batch definitions. | [optional] ## Example diff --git a/docs/CertificateSigningRequest.md b/docs/CertificateSigningRequest.md index ab8630e..356761d 100644 --- a/docs/CertificateSigningRequest.md +++ b/docs/CertificateSigningRequest.md @@ -1,13 +1,13 @@ # CertificateSigningRequest -CertificateSigningRequest represents a request for a signed certificate from the CA +CertificateSigningRequest represents a request for a signed certificate from the CA. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | **spec** | [**CertificateSigningRequestSpec**](CertificateSigningRequestSpec.md) | | **status** | [**CertificateSigningRequestStatus**](CertificateSigningRequestStatus.md) | | [optional] diff --git a/docs/CertificateSigningRequestList.md b/docs/CertificateSigningRequestList.md index 6498ab5..b1379a9 100644 --- a/docs/CertificateSigningRequestList.md +++ b/docs/CertificateSigningRequestList.md @@ -1,13 +1,13 @@ # CertificateSigningRequestList -CertificateSigningRequestList is a list of CertificateSigningRequest +CertificateSigningRequestList is a list of CertificateSigningRequest. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[CertificateSigningRequest]**](CertificateSigningRequest.md) | List of CertificateSigningRequest. | diff --git a/docs/CertificateSigningRequestSpec.md b/docs/CertificateSigningRequestSpec.md index 0e0c128..b6c595b 100644 --- a/docs/CertificateSigningRequestSpec.md +++ b/docs/CertificateSigningRequestSpec.md @@ -1,18 +1,18 @@ # CertificateSigningRequestSpec -Wrapper around a user-created CSR, modeled on kubernetes io.k8s.api.certificates.v1.CertificateSigningRequestSpec +Wrapper around a user-created CSR, modeled on kubernetes io.k8s.api.certificates.v1.CertificateSigningRequestSpec. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**expiration_seconds** | **int** | Requested duration of validity for the certificate | [optional] -**extra** | **Dict[str, List[str]]** | Extra attributes of the user that created the CSR, populated by the API server on creation and immutable | [optional] -**request** | **bytearray** | The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource | [optional] -**signer_name** | **str** | Indicates the requested signer, and is a qualified name | -**uid** | **str** | UID of the user that created the CSR, populated by the API server on creation and immutable | [optional] +**expiration_seconds** | **int** | Requested duration of validity for the certificate. | [optional] +**extra** | **Dict[str, List[str]]** | Extra attributes of the user that created the CSR, populated by the API server on creation and immutable. | [optional] +**request** | **bytearray** | The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource. | +**signer_name** | **str** | Indicates the requested signer, and is a qualified name. | +**uid** | **str** | UID of the user that created the CSR, populated by the API server on creation and immutable. | [optional] **usages** | **List[str]** | Usages specifies a set of key usages requested in the issued certificate. | [optional] -**username** | **str** | Name of the user that created the CSR, populated by the API server on creation and immutable | [optional] +**username** | **str** | Name of the user that created the CSR, populated by the API server on creation and immutable. | [optional] ## Example diff --git a/docs/CertificateSigningRequestStatus.md b/docs/CertificateSigningRequestStatus.md index de61ac9..132ff56 100644 --- a/docs/CertificateSigningRequestStatus.md +++ b/docs/CertificateSigningRequestStatus.md @@ -1,13 +1,13 @@ # CertificateSigningRequestStatus -Indicates approval/denial/failure status of the CSR, and contains the issued certifiate if any exists +Indicates approval/denial/failure status of the CSR, and contains the issued certificate if any exists. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**certificate** | **bytearray** | The issued signed certificate, immutable once populated | [optional] -**conditions** | [**List[Condition]**](Condition.md) | Conditions applied to the request. Known conditions are Approved, Denied, and Failed | +**certificate** | **bytearray** | The issued signed certificate, immutable once populated. | [optional] +**conditions** | [**List[Condition]**](Condition.md) | Conditions applied to the request. Known conditions are Approved, Denied, and Failed. | ## Example diff --git a/docs/CertificatesigningrequestApi.md b/docs/CertificatesigningrequestApi.md index cc91890..e220e32 100644 --- a/docs/CertificatesigningrequestApi.md +++ b/docs/CertificatesigningrequestApi.md @@ -11,6 +11,7 @@ Method | HTTP request | Description [**patch_certificate_signing_request**](CertificatesigningrequestApi.md#patch_certificate_signing_request) | **PATCH** /api/v1/certificatesigningrequests/{name} | [**read_certificate_signing_request**](CertificatesigningrequestApi.md#read_certificate_signing_request) | **GET** /api/v1/certificatesigningrequests/{name} | [**replace_certificate_signing_request**](CertificatesigningrequestApi.md#replace_certificate_signing_request) | **PUT** /api/v1/certificatesigningrequests/{name} | +[**update_certificate_signing_request_approval**](CertificatesigningrequestApi.md#update_certificate_signing_request_approval) | **PUT** /api/v1/certificatesigningrequests/{name}/approval | # **create_certificate_signing_request** @@ -18,7 +19,7 @@ Method | HTTP request | Description -request Certificate Signing +Create a CertificateSigningRequest resource. ### Example @@ -76,12 +77,12 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| -**200** | OK | - | **201** | Created | - | -**202** | Accepted | - | -**208** | Already Reported | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -112,7 +113,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.CertificatesigningrequestApi(api_client) - name = 'name_example' # str | name of the Certificate Signing Request + name = 'name_example' # str | The name of the CertificateSigningRequest resource to delete. try: api_response = api_instance.delete_certificate_signing_request(name) @@ -129,7 +130,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Certificate Signing Request | + **name** | **str**| The name of the CertificateSigningRequest resource to delete. | ### Return type @@ -150,7 +151,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -159,7 +162,7 @@ No authorization required -delete a collection of CertificateSigningRequest +Delete CertificateSigningRequest resources. ### Example @@ -215,15 +218,17 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **list_certificate_signing_requests** -> CertificateSigningRequestList list_certificate_signing_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) +> CertificateSigningRequestList list_certificate_signing_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) -list CertificateSigningRequests +List CertificateSigningRequest resources. ### Example @@ -231,7 +236,6 @@ list CertificateSigningRequests ```python import flightctl from flightctl.models.certificate_signing_request_list import CertificateSigningRequestList -from flightctl.models.sort_order import SortOrder from flightctl.rest import ApiException from pprint import pprint @@ -248,13 +252,11 @@ with flightctl.ApiClient(configuration) as api_client: api_instance = flightctl.CertificatesigningrequestApi(api_client) var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) try: - api_response = api_instance.list_certificate_signing_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) + api_response = api_instance.list_certificate_signing_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) print("The response of CertificatesigningrequestApi->list_certificate_signing_requests:\n") pprint(api_response) except Exception as e: @@ -270,10 +272,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] ### Return type @@ -295,15 +295,17 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **patch_certificate_signing_request** -> CertificateSigningRequest patch_certificate_signing_request(name, patch_request_inner=patch_request_inner) +> CertificateSigningRequest patch_certificate_signing_request(name, patch_request_inner) -partially update the specified CertificateSigningRequest +Patch a CertificateSigningRequest resource. ### Example @@ -326,11 +328,11 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.CertificatesigningrequestApi(api_client) - name = 'name_example' # str | name of the certificatesigningrequest - patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | (optional) + name = 'name_example' # str | The name of the CertificateSigningRequest resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | try: - api_response = api_instance.patch_certificate_signing_request(name, patch_request_inner=patch_request_inner) + api_response = api_instance.patch_certificate_signing_request(name, patch_request_inner) print("The response of CertificatesigningrequestApi->patch_certificate_signing_request:\n") pprint(api_response) except Exception as e: @@ -344,8 +346,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the certificatesigningrequest | - **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | [optional] + **name** | **str**| The name of the CertificateSigningRequest resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | ### Return type @@ -365,11 +367,12 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | **404** | NotFound | - | +**403** | Forbidden | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -400,7 +403,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.CertificatesigningrequestApi(api_client) - name = 'name_example' # str | the device identifier of the CertificateSigningRequest + name = 'name_example' # str | The name of the CertificateSigningRequest resource to get. try: api_response = api_instance.read_certificate_signing_request(name) @@ -417,7 +420,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| the device identifier of the CertificateSigningRequest | + **name** | **str**| The name of the CertificateSigningRequest resource to get. | ### Return type @@ -438,7 +441,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -469,7 +474,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.CertificatesigningrequestApi(api_client) - name = 'name_example' # str | name of the CertificateSigningRequest + name = 'name_example' # str | The name of the CertificateSigningRequest resource to update. certificate_signing_request = flightctl.CertificateSigningRequest() # CertificateSigningRequest | try: @@ -487,7 +492,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the CertificateSigningRequest | + **name** | **str**| The name of the CertificateSigningRequest resource to update. | **certificate_signing_request** | [**CertificateSigningRequest**](CertificateSigningRequest.md)| | ### Return type @@ -511,8 +516,85 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **update_certificate_signing_request_approval** +> CertificateSigningRequest update_certificate_signing_request_approval(name, certificate_signing_request) + + + +Approve or deny a CertificateSigningRequest. + +### Example + + +```python +import flightctl +from flightctl.models.certificate_signing_request import CertificateSigningRequest +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.CertificatesigningrequestApi(api_client) + name = 'name_example' # str | The name of the CertificateSigningRequest to approve or deny. + certificate_signing_request = flightctl.CertificateSigningRequest() # CertificateSigningRequest | + + try: + api_response = api_instance.update_certificate_signing_request_approval(name, certificate_signing_request) + print("The response of CertificatesigningrequestApi->update_certificate_signing_request_approval:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling CertificatesigningrequestApi->update_certificate_signing_request_approval: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **name** | **str**| The name of the CertificateSigningRequest to approve or deny. | + **certificate_signing_request** | [**CertificateSigningRequest**](CertificateSigningRequest.md)| | + +### Return type + +[**CertificateSigningRequest**](CertificateSigningRequest.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/Condition.md b/docs/Condition.md index ff2337f..dacef2b 100644 --- a/docs/Condition.md +++ b/docs/Condition.md @@ -11,7 +11,7 @@ Name | Type | Description | Notes **observed_generation** | **int** | The .metadata.generation that the condition was set based upon. | [optional] **last_transition_time** | **datetime** | The last time the condition transitioned from one status to another. | **message** | **str** | Human readable message indicating details about last transition. | -**reason** | **str** | (brief) reason for the condition's last transition. | +**reason** | **str** | A (brief) reason for the condition's last transition. | ## Example diff --git a/docs/ConditionStatus.md b/docs/ConditionStatus.md index 1ee207a..118c906 100644 --- a/docs/ConditionStatus.md +++ b/docs/ConditionStatus.md @@ -1,5 +1,6 @@ # ConditionStatus +Status of the condition, one of True, False, Unknown. ## Enum diff --git a/docs/ConditionType.md b/docs/ConditionType.md index 1de6030..7233f1e 100644 --- a/docs/ConditionType.md +++ b/docs/ConditionType.md @@ -1,16 +1,21 @@ # ConditionType +Type of condition in CamelCase. ## Enum * `APPROVED` (value: `'Approved'`) +* `APPROVED` (value: `'Approved'`) + * `DENIED` (value: `'Denied'`) * `FAILED` (value: `'Failed'`) * `ACCESSIBLE` (value: `'Accessible'`) +* `ACCESSIBLE` (value: `'Accessible'`) + * `RESOURCEPARSED` (value: `'ResourceParsed'`) * `SYNCED` (value: `'Synced'`) @@ -19,12 +24,16 @@ * `VALID` (value: `'Valid'`) +* `ROLLOUTINPROGRESS` (value: `'RolloutInProgress'`) + * `UPDATING` (value: `'Updating'`) * `SPECVALID` (value: `'SpecValid'`) * `MULTIPLEOWNERS` (value: `'MultipleOwners'`) +* `DEVICEDECOMMISSIONING` (value: `'DeviceDecommissioning'`) + [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/ConfigProviderSpec.md b/docs/ConfigProviderSpec.md index 5710289..c121b60 100644 --- a/docs/ConfigProviderSpec.md +++ b/docs/ConfigProviderSpec.md @@ -5,10 +5,10 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **str** | The name of the config provider | +**name** | **str** | The name of the config provider. | **git_ref** | [**GitConfigProviderSpecGitRef**](GitConfigProviderSpecGitRef.md) | | **secret_ref** | [**KubernetesSecretProviderSpecSecretRef**](KubernetesSecretProviderSpecSecretRef.md) | | -**inline** | [**List[FileSpec]**](FileSpec.md) | | +**inline** | [**List[FileSpec]**](FileSpec.md) | A list of files to create on the device. | **http_ref** | [**HttpConfigProviderSpecHttpRef**](HttpConfigProviderSpecHttpRef.md) | | ## Example diff --git a/docs/CPUResourceMonitorSpec.md b/docs/CpuResourceMonitorSpec.md similarity index 66% rename from docs/CPUResourceMonitorSpec.md rename to docs/CpuResourceMonitorSpec.md index 424db4d..8548119 100644 --- a/docs/CPUResourceMonitorSpec.md +++ b/docs/CpuResourceMonitorSpec.md @@ -1,30 +1,30 @@ -# CPUResourceMonitorSpec +# CpuResourceMonitorSpec ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**monitor_type** | **str** | | +**monitor_type** | **str** | The type of resource to monitor. | **alert_rules** | [**List[ResourceAlertRule]**](ResourceAlertRule.md) | Array of alert rules. Only one alert per severity is allowed. | **sampling_interval** | **str** | Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours. | ## Example ```python -from flightctl.models.cpu_resource_monitor_spec import CPUResourceMonitorSpec +from flightctl.models.cpu_resource_monitor_spec import CpuResourceMonitorSpec # TODO update the JSON string below json = "{}" -# create an instance of CPUResourceMonitorSpec from a JSON string -cpu_resource_monitor_spec_instance = CPUResourceMonitorSpec.from_json(json) +# create an instance of CpuResourceMonitorSpec from a JSON string +cpu_resource_monitor_spec_instance = CpuResourceMonitorSpec.from_json(json) # print the JSON string representation of the object -print(CPUResourceMonitorSpec.to_json()) +print(CpuResourceMonitorSpec.to_json()) # convert the object into a dict cpu_resource_monitor_spec_dict = cpu_resource_monitor_spec_instance.to_dict() -# create an instance of CPUResourceMonitorSpec from a dict -cpu_resource_monitor_spec_from_dict = CPUResourceMonitorSpec.from_dict(cpu_resource_monitor_spec_dict) +# create an instance of CpuResourceMonitorSpec from a dict +cpu_resource_monitor_spec_from_dict = CpuResourceMonitorSpec.from_dict(cpu_resource_monitor_spec_dict) ``` [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/CustomResourceMonitorSpec.md b/docs/CustomResourceMonitorSpec.md index c640dde..07a512e 100644 --- a/docs/CustomResourceMonitorSpec.md +++ b/docs/CustomResourceMonitorSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**monitor_type** | **str** | | +**monitor_type** | **str** | The type of resource to monitor. | **alert_rules** | [**List[ResourceAlertRule]**](ResourceAlertRule.md) | Array of alert rules. Only one alert per severity is allowed. | **sampling_interval** | **str** | Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours. | diff --git a/docs/DefaultApi.md b/docs/DefaultApi.md deleted file mode 100644 index a1fcbd1..0000000 --- a/docs/DefaultApi.md +++ /dev/null @@ -1,285 +0,0 @@ -# flightctl.DefaultApi - -All URIs are relative to *http://localhost* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**approve_certificate_signing_request**](DefaultApi.md#approve_certificate_signing_request) | **POST** /api/v1/certificatesigningrequests/{name}/approval | -[**auth_config**](DefaultApi.md#auth_config) | **GET** /api/v1/auth/config | -[**auth_validate**](DefaultApi.md#auth_validate) | **GET** /api/v1/auth/validate | -[**deny_certificate_signing_request**](DefaultApi.md#deny_certificate_signing_request) | **DELETE** /api/v1/certificatesigningrequests/{name}/approval | - - -# **approve_certificate_signing_request** -> CertificateSigningRequest approve_certificate_signing_request(name) - - - -approve the specified CertificateSigningRequest - -### Example - - -```python -import flightctl -from flightctl.models.certificate_signing_request import CertificateSigningRequest -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.DefaultApi(api_client) - name = 'name_example' # str | name of the CertificateSigningRequest - - try: - api_response = api_instance.approve_certificate_signing_request(name) - print("The response of DefaultApi->approve_certificate_signing_request:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling DefaultApi->approve_certificate_signing_request: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the CertificateSigningRequest | - -### Return type - -[**CertificateSigningRequest**](CertificateSigningRequest.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**400** | Bad Request | - | -**401** | Unauthorized | - | -**404** | NotFound | - | -**409** | StatusConflict | - | -**500** | InternalServerError | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **auth_config** -> AuthConfig auth_config() - - - -Get auth configuration - -### Example - - -```python -import flightctl -from flightctl.models.auth_config import AuthConfig -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.DefaultApi(api_client) - - try: - api_response = api_instance.auth_config() - print("The response of DefaultApi->auth_config:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling DefaultApi->auth_config: %s\n" % e) -``` - - - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**AuthConfig**](AuthConfig.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**418** | Auth not configured | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **auth_validate** -> auth_validate(authentication=authentication) - - - -Validate auth token - -### Example - - -```python -import flightctl -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.DefaultApi(api_client) - authentication = 'authentication_example' # str | (optional) - - try: - api_instance.auth_validate(authentication=authentication) - except Exception as e: - print("Exception when calling DefaultApi->auth_validate: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **authentication** | **str**| | [optional] - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | Token valid | - | -**401** | Token invalid | - | -**418** | Auth not configured | - | -**500** | InternalServerError | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **deny_certificate_signing_request** -> CertificateSigningRequest deny_certificate_signing_request(name) - - - -deny the specified CertificateSigningRequest - -### Example - - -```python -import flightctl -from flightctl.models.certificate_signing_request import CertificateSigningRequest -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.DefaultApi(api_client) - name = 'name_example' # str | name of the CertificateSigningRequest - - try: - api_response = api_instance.deny_certificate_signing_request(name) - print("The response of DefaultApi->deny_certificate_signing_request:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling DefaultApi->deny_certificate_signing_request: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the CertificateSigningRequest | - -### Return type - -[**CertificateSigningRequest**](CertificateSigningRequest.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**401** | Unauthorized | - | -**404** | NotFound | - | -**409** | Conflict | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - diff --git a/docs/Device.md b/docs/Device.md index a91fdfe..c693bf6 100644 --- a/docs/Device.md +++ b/docs/Device.md @@ -6,8 +6,8 @@ Device represents a physical device. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | **spec** | [**DeviceSpec**](DeviceSpec.md) | | [optional] **status** | [**DeviceStatus**](DeviceStatus.md) | | [optional] diff --git a/docs/DeviceApi.md b/docs/DeviceApi.md index 2c9f34d..19946aa 100644 --- a/docs/DeviceApi.md +++ b/docs/DeviceApi.md @@ -5,16 +5,17 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- [**create_device**](DeviceApi.md#create_device) | **POST** /api/v1/devices | +[**decommission_device**](DeviceApi.md#decommission_device) | **PUT** /api/v1/devices/{name}/decommission | [**delete_device**](DeviceApi.md#delete_device) | **DELETE** /api/v1/devices/{name} | [**delete_devices**](DeviceApi.md#delete_devices) | **DELETE** /api/v1/devices | -[**get_rendered_device_spec**](DeviceApi.md#get_rendered_device_spec) | **GET** /api/v1/devices/{name}/rendered | +[**get_rendered_device**](DeviceApi.md#get_rendered_device) | **GET** /api/v1/devices/{name}/rendered | [**list_devices**](DeviceApi.md#list_devices) | **GET** /api/v1/devices | [**patch_device**](DeviceApi.md#patch_device) | **PATCH** /api/v1/devices/{name} | +[**patch_device_status**](DeviceApi.md#patch_device_status) | **PATCH** /api/v1/devices/{name}/status | [**read_device**](DeviceApi.md#read_device) | **GET** /api/v1/devices/{name} | [**read_device_status**](DeviceApi.md#read_device_status) | **GET** /api/v1/devices/{name}/status | [**replace_device**](DeviceApi.md#replace_device) | **PUT** /api/v1/devices/{name} | [**replace_device_status**](DeviceApi.md#replace_device_status) | **PUT** /api/v1/devices/{name}/status | -[**request_console**](DeviceApi.md#request_console) | **GET** /api/v1/devices/{name}/console | # **create_device** @@ -22,7 +23,7 @@ Method | HTTP request | Description -create a Device +Create a Device resource. ### Example @@ -83,7 +84,84 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **decommission_device** +> Device decommission_device(name, device_decommission) + + + +schedule the device to decommission + +### Example + + +```python +import flightctl +from flightctl.models.device import Device +from flightctl.models.device_decommission import DeviceDecommission +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.DeviceApi(api_client) + name = 'name_example' # str | The name of the Device resource to decommission. + device_decommission = flightctl.DeviceDecommission() # DeviceDecommission | + + try: + api_response = api_instance.decommission_device(name, device_decommission) + print("The response of DeviceApi->decommission_device:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling DeviceApi->decommission_device: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **name** | **str**| The name of the Device resource to decommission. | + **device_decommission** | [**DeviceDecommission**](DeviceDecommission.md)| | + +### Return type + +[**Device**](Device.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -92,7 +170,7 @@ No authorization required -delete a Device +Delete a Device resource. ### Example @@ -114,7 +192,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | name of the Device + name = 'name_example' # str | The name of the Device resource to delete. try: api_response = api_instance.delete_device(name) @@ -131,7 +209,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Device | + **name** | **str**| The name of the Device resource to delete. | ### Return type @@ -152,7 +230,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -161,7 +241,7 @@ No authorization required -delete a collection of Devices +Delete Device resources. ### Example @@ -217,22 +297,24 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **get_rendered_device_spec** -> RenderedDeviceSpec get_rendered_device_spec(name, known_rendered_version=known_rendered_version) +# **get_rendered_device** +> Device get_rendered_device(name, known_rendered_version=known_rendered_version) -get the full specification for the specified device +Get the rendered device. ### Example ```python import flightctl -from flightctl.models.rendered_device_spec import RenderedDeviceSpec +from flightctl.models.device import Device from flightctl.rest import ApiException from pprint import pprint @@ -247,15 +329,15 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | Name of the device - known_rendered_version = 'known_rendered_version_example' # str | The last known renderedVersion (optional) + name = 'name_example' # str | The name of the Device resource to get the rendered device specification for. + known_rendered_version = 'known_rendered_version_example' # str | The last known renderedVersion. (optional) try: - api_response = api_instance.get_rendered_device_spec(name, known_rendered_version=known_rendered_version) - print("The response of DeviceApi->get_rendered_device_spec:\n") + api_response = api_instance.get_rendered_device(name, known_rendered_version=known_rendered_version) + print("The response of DeviceApi->get_rendered_device:\n") pprint(api_response) except Exception as e: - print("Exception when calling DeviceApi->get_rendered_device_spec: %s\n" % e) + print("Exception when calling DeviceApi->get_rendered_device: %s\n" % e) ``` @@ -265,12 +347,12 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| Name of the device | - **known_rendered_version** | **str**| The last known renderedVersion | [optional] + **name** | **str**| The name of the Device resource to get the rendered device specification for. | + **known_rendered_version** | **str**| The last known renderedVersion. | [optional] ### Return type -[**RenderedDeviceSpec**](RenderedDeviceSpec.md) +[**Device**](Device.md) ### Authorization @@ -288,17 +370,19 @@ No authorization required **200** | OK | - | **204** | No content | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **list_devices** -> DeviceList list_devices(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, status_filter=status_filter, limit=limit, owner=owner, summary_only=summary_only, sort_by=sort_by, sort_order=sort_order) +> DeviceList list_devices(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, summary_only=summary_only) -list Devices +List Device resources. ### Example @@ -306,7 +390,6 @@ list Devices ```python import flightctl from flightctl.models.device_list import DeviceList -from flightctl.models.sort_order import SortOrder from flightctl.rest import ApiException from pprint import pprint @@ -323,16 +406,12 @@ with flightctl.ApiClient(configuration) as api_client: api_instance = flightctl.DeviceApi(api_client) var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). (optional) - status_filter = ['status_filter_example'] # List[str] | A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything. (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - owner = 'owner_example' # str | A selector to restrict the list of returned objects by their owner. Defaults to everything. (optional) summary_only = True # bool | A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true. (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) try: - api_response = api_instance.list_devices(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, status_filter=status_filter, limit=limit, owner=owner, summary_only=summary_only, sort_by=sort_by, sort_order=sort_order) + api_response = api_instance.list_devices(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, summary_only=summary_only) print("The response of DeviceApi->list_devices:\n") pprint(api_response) except Exception as e: @@ -348,13 +427,9 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). | [optional] - **status_filter** | [**List[str]**](str.md)| A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything. | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **owner** | **str**| A selector to restrict the list of returned objects by their owner. Defaults to everything. | [optional] **summary_only** | **bool**| A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true. | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] ### Return type @@ -377,15 +452,16 @@ No authorization required **400** | Bad Request | - | **401** | Unauthorized | - | **403** | Not allowed | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **patch_device** -> Device patch_device(name, patch_request_inner=patch_request_inner) +> Device patch_device(name, patch_request_inner) -Patches the specified device +Patch a Device resource. ### Example @@ -408,11 +484,11 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | name of the device - patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | (optional) + name = 'name_example' # str | The name of the Device resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | try: - api_response = api_instance.patch_device(name, patch_request_inner=patch_request_inner) + api_response = api_instance.patch_device(name, patch_request_inner) print("The response of DeviceApi->patch_device:\n") pprint(api_response) except Exception as e: @@ -426,8 +502,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the device | - **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | [optional] + **name** | **str**| The name of the Device resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | ### Return type @@ -449,17 +525,19 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **read_device** -> Device read_device(name) +# **patch_device_status** +> Device patch_device_status(name, patch_request_inner) -read the specified Device +Patch the status of a Device resource. ### Example @@ -467,6 +545,7 @@ read the specified Device ```python import flightctl from flightctl.models.device import Device +from flightctl.models.patch_request_inner import PatchRequestInner from flightctl.rest import ApiException from pprint import pprint @@ -481,14 +560,15 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | unique name of the Device + name = 'name_example' # str | The name of the Device resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | try: - api_response = api_instance.read_device(name) - print("The response of DeviceApi->read_device:\n") + api_response = api_instance.patch_device_status(name, patch_request_inner) + print("The response of DeviceApi->patch_device_status:\n") pprint(api_response) except Exception as e: - print("Exception when calling DeviceApi->read_device: %s\n" % e) + print("Exception when calling DeviceApi->patch_device_status: %s\n" % e) ``` @@ -498,7 +578,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| unique name of the Device | + **name** | **str**| The name of the Device resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | ### Return type @@ -510,7 +591,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: Not defined + - **Content-Type**: application/json-patch+json - **Accept**: application/json ### HTTP response details @@ -518,17 +599,20 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | +**400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **read_device_status** -> Device read_device_status(name) +# **read_device** +> Device read_device(name) -read status of the specified Device +Get a Device resource. ### Example @@ -550,14 +634,14 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | name of the Device + name = 'name_example' # str | The name of the Device resource to get. try: - api_response = api_instance.read_device_status(name) - print("The response of DeviceApi->read_device_status:\n") + api_response = api_instance.read_device(name) + print("The response of DeviceApi->read_device:\n") pprint(api_response) except Exception as e: - print("Exception when calling DeviceApi->read_device_status: %s\n" % e) + print("Exception when calling DeviceApi->read_device: %s\n" % e) ``` @@ -567,7 +651,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Device | + **name** | **str**| The name of the Device resource to get. | ### Return type @@ -588,16 +672,18 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **replace_device** -> Device replace_device(name, device) +# **read_device_status** +> Device read_device_status(name) -replace the specified Device +Get the status of a Device resource. ### Example @@ -619,15 +705,14 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | name of the Device - device = flightctl.Device() # Device | + name = 'name_example' # str | The name of the Device resource to get. try: - api_response = api_instance.replace_device(name, device) - print("The response of DeviceApi->replace_device:\n") + api_response = api_instance.read_device_status(name) + print("The response of DeviceApi->read_device_status:\n") pprint(api_response) except Exception as e: - print("Exception when calling DeviceApi->replace_device: %s\n" % e) + print("Exception when calling DeviceApi->read_device_status: %s\n" % e) ``` @@ -637,8 +722,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Device | - **device** | [**Device**](Device.md)| | + **name** | **str**| The name of the Device resource to get. | ### Return type @@ -650,7 +734,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: application/json + - **Content-Type**: Not defined - **Accept**: application/json ### HTTP response details @@ -658,20 +742,19 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**201** | Created | - | -**400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | -**409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **replace_device_status** -> Device replace_device_status(name, device) +# **replace_device** +> Device replace_device(name, device) -replace status of the specified Device +Update a Device resource. ### Example @@ -693,15 +776,15 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | name of the Device + name = 'name_example' # str | The name of the Device resource to update. device = flightctl.Device() # Device | try: - api_response = api_instance.replace_device_status(name, device) - print("The response of DeviceApi->replace_device_status:\n") + api_response = api_instance.replace_device(name, device) + print("The response of DeviceApi->replace_device:\n") pprint(api_response) except Exception as e: - print("Exception when calling DeviceApi->replace_device_status: %s\n" % e) + print("Exception when calling DeviceApi->replace_device: %s\n" % e) ``` @@ -711,7 +794,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Device | + **name** | **str**| The name of the Device resource to update. | **device** | [**Device**](Device.md)| | ### Return type @@ -732,25 +815,29 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | +**201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) -# **request_console** -> DeviceConsole request_console(name) +# **replace_device_status** +> Device replace_device_status(name, device) -Request a console connection +Update the status of a Device resource. ### Example ```python import flightctl -from flightctl.models.device_console import DeviceConsole +from flightctl.models.device import Device from flightctl.rest import ApiException from pprint import pprint @@ -765,14 +852,15 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.DeviceApi(api_client) - name = 'name_example' # str | unique name of the Device + name = 'name_example' # str | The name of the Device resource to update. + device = flightctl.Device() # Device | try: - api_response = api_instance.request_console(name) - print("The response of DeviceApi->request_console:\n") + api_response = api_instance.replace_device_status(name, device) + print("The response of DeviceApi->replace_device_status:\n") pprint(api_response) except Exception as e: - print("Exception when calling DeviceApi->request_console: %s\n" % e) + print("Exception when calling DeviceApi->replace_device_status: %s\n" % e) ``` @@ -782,11 +870,12 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| unique name of the Device | + **name** | **str**| The name of the Device resource to update. | + **device** | [**Device**](Device.md)| | ### Return type -[**DeviceConsole**](DeviceConsole.md) +[**Device**](Device.md) ### Authorization @@ -794,7 +883,7 @@ No authorization required ### HTTP request headers - - **Content-Type**: Not defined + - **Content-Type**: application/json - **Accept**: application/json ### HTTP response details @@ -802,9 +891,11 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | +**400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | -**409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/DeviceApplicationsSummaryStatus.md b/docs/DeviceApplicationsSummaryStatus.md index af0a5e5..3e35eea 100644 --- a/docs/DeviceApplicationsSummaryStatus.md +++ b/docs/DeviceApplicationsSummaryStatus.md @@ -1,12 +1,13 @@ # DeviceApplicationsSummaryStatus +A summary of the health of applications on the device. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **status** | [**ApplicationsSummaryStatusType**](ApplicationsSummaryStatusType.md) | | -**info** | **str** | Human readable information detailing the last system application transition. | [optional] +**info** | **str** | Human readable information detailing the last application transition. | [optional] ## Example diff --git a/docs/DeviceConfigStatus.md b/docs/DeviceConfigStatus.md index 86a7ccc..523cfad 100644 --- a/docs/DeviceConfigStatus.md +++ b/docs/DeviceConfigStatus.md @@ -1,11 +1,12 @@ # DeviceConfigStatus +Current status of the device config. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**rendered_version** | **str** | Version of the device rendered config. | +**rendered_version** | **str** | Rendered version of the device config. | ## Example diff --git a/docs/DeviceConsole.md b/docs/DeviceConsole.md index 1bdfb9a..a40b960 100644 --- a/docs/DeviceConsole.md +++ b/docs/DeviceConsole.md @@ -1,12 +1,13 @@ # DeviceConsole +DeviceConsole represents the console connection information. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**g_rpc_endpoint** | **str** | | -**session_id** | **str** | | +**session_metadata** | **str** | Additional session metadata in the form of key=value pairs, can be used to initialize the type of terminal, console to be used, etc. | +**session_id** | **str** | The session ID for the console connection. | ## Example diff --git a/docs/DeviceDecommission.md b/docs/DeviceDecommission.md new file mode 100644 index 0000000..2e799ed --- /dev/null +++ b/docs/DeviceDecommission.md @@ -0,0 +1,30 @@ +# DeviceDecommission + +Metadata about a device decommissioning request. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**target** | [**DeviceDecommissionTargetType**](DeviceDecommissionTargetType.md) | | + +## Example + +```python +from flightctl.models.device_decommission import DeviceDecommission + +# TODO update the JSON string below +json = "{}" +# create an instance of DeviceDecommission from a JSON string +device_decommission_instance = DeviceDecommission.from_json(json) +# print the JSON string representation of the object +print(DeviceDecommission.to_json()) + +# convert the object into a dict +device_decommission_dict = device_decommission_instance.to_dict() +# create an instance of DeviceDecommission from a dict +device_decommission_from_dict = DeviceDecommission.from_dict(device_decommission_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/DeviceDecommissionTargetType.md b/docs/DeviceDecommissionTargetType.md new file mode 100644 index 0000000..dba308d --- /dev/null +++ b/docs/DeviceDecommissionTargetType.md @@ -0,0 +1,13 @@ +# DeviceDecommissionTargetType + +Specifies the desired decommissioning method of the device. + +## Enum + +* `UNENROLL` (value: `'Unenroll'`) + +* `FACTORYRESET` (value: `'FactoryReset'`) + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/DeviceHooksSpec.md b/docs/DeviceHooksSpec.md deleted file mode 100644 index 16ec095..0000000 --- a/docs/DeviceHooksSpec.md +++ /dev/null @@ -1,32 +0,0 @@ -# DeviceHooksSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**before_updating** | [**List[DeviceUpdateHookSpec]**](DeviceUpdateHookSpec.md) | Hooks executed before updating allow for custom actions and integration with other systems or services. These actions occur before configuration changes are applied to the device. | [optional] -**after_updating** | [**List[DeviceUpdateHookSpec]**](DeviceUpdateHookSpec.md) | Hooks executed after updating enable custom actions and integration with other systems or services. These actions occur after configuration changes have been applied to the device. | [optional] -**before_rebooting** | [**List[DeviceRebootHookSpec]**](DeviceRebootHookSpec.md) | Hooks executed before rebooting allow for custom actions and integration with other systems or services. These actions occur before the device is rebooted. | [optional] -**after_rebooting** | [**List[DeviceRebootHookSpec]**](DeviceRebootHookSpec.md) | Hooks executed after rebooting enable custom actions and integration with other systems or services. These actions occur after the device has rebooted, allowing for post-reboot tasks. | [optional] - -## Example - -```python -from flightctl.models.device_hooks_spec import DeviceHooksSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of DeviceHooksSpec from a JSON string -device_hooks_spec_instance = DeviceHooksSpec.from_json(json) -# print the JSON string representation of the object -print(DeviceHooksSpec.to_json()) - -# convert the object into a dict -device_hooks_spec_dict = device_hooks_spec_instance.to_dict() -# create an instance of DeviceHooksSpec from a dict -device_hooks_spec_from_dict = DeviceHooksSpec.from_dict(device_hooks_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/DeviceIntegrityStatus.md b/docs/DeviceIntegrityStatus.md index a737825..914c885 100644 --- a/docs/DeviceIntegrityStatus.md +++ b/docs/DeviceIntegrityStatus.md @@ -1,11 +1,13 @@ # DeviceIntegrityStatus +Summary status of the integrity of the device. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**summary** | [**DeviceIntegrityStatusSummary**](DeviceIntegrityStatusSummary.md) | | +**status** | [**DeviceIntegrityStatusSummaryType**](DeviceIntegrityStatusSummaryType.md) | | +**info** | **str** | Human readable information about the last integrity transition. | [optional] ## Example diff --git a/docs/DeviceIntegrityStatusSummary.md b/docs/DeviceIntegrityStatusSummary.md deleted file mode 100644 index 8121a2e..0000000 --- a/docs/DeviceIntegrityStatusSummary.md +++ /dev/null @@ -1,30 +0,0 @@ -# DeviceIntegrityStatusSummary - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**status** | [**DeviceIntegrityStatusSummaryType**](DeviceIntegrityStatusSummaryType.md) | | -**info** | **str** | Human readable information about the last integrity transition. | [optional] - -## Example - -```python -from flightctl.models.device_integrity_status_summary import DeviceIntegrityStatusSummary - -# TODO update the JSON string below -json = "{}" -# create an instance of DeviceIntegrityStatusSummary from a JSON string -device_integrity_status_summary_instance = DeviceIntegrityStatusSummary.from_json(json) -# print the JSON string representation of the object -print(DeviceIntegrityStatusSummary.to_json()) - -# convert the object into a dict -device_integrity_status_summary_dict = device_integrity_status_summary_instance.to_dict() -# create an instance of DeviceIntegrityStatusSummary from a dict -device_integrity_status_summary_from_dict = DeviceIntegrityStatusSummary.from_dict(device_integrity_status_summary_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/DeviceIntegrityStatusSummaryType.md b/docs/DeviceIntegrityStatusSummaryType.md index 4d3159d..fdd8334 100644 --- a/docs/DeviceIntegrityStatusSummaryType.md +++ b/docs/DeviceIntegrityStatusSummaryType.md @@ -1,5 +1,6 @@ # DeviceIntegrityStatusSummaryType +Status of the integrity of the device. ## Enum diff --git a/docs/DeviceLifecycleHookType.md b/docs/DeviceLifecycleHookType.md new file mode 100644 index 0000000..f3e0c01 --- /dev/null +++ b/docs/DeviceLifecycleHookType.md @@ -0,0 +1,16 @@ +# DeviceLifecycleHookType + + +## Enum + +* `BEFOREUPDATING` (value: `'BeforeUpdating'`) + +* `AFTERUPDATING` (value: `'AfterUpdating'`) + +* `BEFOREREBOOTING` (value: `'BeforeRebooting'`) + +* `AFTERREBOOTING` (value: `'AfterRebooting'`) + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/DeviceLifecycleStatus.md b/docs/DeviceLifecycleStatus.md new file mode 100644 index 0000000..33dc2ce --- /dev/null +++ b/docs/DeviceLifecycleStatus.md @@ -0,0 +1,31 @@ +# DeviceLifecycleStatus + +Current status of the device lifecycle. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**status** | [**DeviceLifecycleStatusType**](DeviceLifecycleStatusType.md) | | +**info** | **str** | Human readable information about the device lifecycle status. | [optional] + +## Example + +```python +from flightctl.models.device_lifecycle_status import DeviceLifecycleStatus + +# TODO update the JSON string below +json = "{}" +# create an instance of DeviceLifecycleStatus from a JSON string +device_lifecycle_status_instance = DeviceLifecycleStatus.from_json(json) +# print the JSON string representation of the object +print(DeviceLifecycleStatus.to_json()) + +# convert the object into a dict +device_lifecycle_status_dict = device_lifecycle_status_instance.to_dict() +# create an instance of DeviceLifecycleStatus from a dict +device_lifecycle_status_from_dict = DeviceLifecycleStatus.from_dict(device_lifecycle_status_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/DeviceLifecycleStatusType.md b/docs/DeviceLifecycleStatusType.md new file mode 100644 index 0000000..707cef0 --- /dev/null +++ b/docs/DeviceLifecycleStatusType.md @@ -0,0 +1,17 @@ +# DeviceLifecycleStatusType + +Status type of the device lifecycle. + +## Enum + +* `UNKNOWN` (value: `'Unknown'`) + +* `ENROLLED` (value: `'Enrolled'`) + +* `DECOMMISSIONING` (value: `'Decommissioning'`) + +* `DECOMMISSIONED` (value: `'Decommissioned'`) + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/DeviceList.md b/docs/DeviceList.md index d52f6e6..2890764 100644 --- a/docs/DeviceList.md +++ b/docs/DeviceList.md @@ -6,8 +6,8 @@ DeviceList is a list of Devices. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[Device]**](Device.md) | List of Devices. | **summary** | [**DevicesSummary**](DevicesSummary.md) | | [optional] diff --git a/docs/DeviceOSSpec.md b/docs/DeviceOsSpec.md similarity index 53% rename from docs/DeviceOSSpec.md rename to docs/DeviceOsSpec.md index 517933b..049c685 100644 --- a/docs/DeviceOSSpec.md +++ b/docs/DeviceOsSpec.md @@ -1,28 +1,29 @@ -# DeviceOSSpec +# DeviceOsSpec +DeviceOsSpec describes the target OS for the device. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**image** | **str** | ostree image name or URL. | +**image** | **str** | The target OS image name or URL. | ## Example ```python -from flightctl.models.device_os_spec import DeviceOSSpec +from flightctl.models.device_os_spec import DeviceOsSpec # TODO update the JSON string below json = "{}" -# create an instance of DeviceOSSpec from a JSON string -device_os_spec_instance = DeviceOSSpec.from_json(json) +# create an instance of DeviceOsSpec from a JSON string +device_os_spec_instance = DeviceOsSpec.from_json(json) # print the JSON string representation of the object -print(DeviceOSSpec.to_json()) +print(DeviceOsSpec.to_json()) # convert the object into a dict device_os_spec_dict = device_os_spec_instance.to_dict() -# create an instance of DeviceOSSpec from a dict -device_os_spec_from_dict = DeviceOSSpec.from_dict(device_os_spec_dict) +# create an instance of DeviceOsSpec from a dict +device_os_spec_from_dict = DeviceOsSpec.from_dict(device_os_spec_dict) ``` [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/DeviceOSStatus.md b/docs/DeviceOsStatus.md similarity index 61% rename from docs/DeviceOSStatus.md rename to docs/DeviceOsStatus.md index 60f5707..4a57de3 100644 --- a/docs/DeviceOSStatus.md +++ b/docs/DeviceOsStatus.md @@ -1,29 +1,30 @@ -# DeviceOSStatus +# DeviceOsStatus +Current status of the device OS. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **image** | **str** | Version of the OS image. | -**image_digest** | **str** | The digest of the OS image (e.g. sha256:a0...) | +**image_digest** | **str** | The digest of the OS image (e.g. sha256:a0...). | ## Example ```python -from flightctl.models.device_os_status import DeviceOSStatus +from flightctl.models.device_os_status import DeviceOsStatus # TODO update the JSON string below json = "{}" -# create an instance of DeviceOSStatus from a JSON string -device_os_status_instance = DeviceOSStatus.from_json(json) +# create an instance of DeviceOsStatus from a JSON string +device_os_status_instance = DeviceOsStatus.from_json(json) # print the JSON string representation of the object -print(DeviceOSStatus.to_json()) +print(DeviceOsStatus.to_json()) # convert the object into a dict device_os_status_dict = device_os_status_instance.to_dict() -# create an instance of DeviceOSStatus from a dict -device_os_status_from_dict = DeviceOSStatus.from_dict(device_os_status_dict) +# create an instance of DeviceOsStatus from a dict +device_os_status_from_dict = DeviceOsStatus.from_dict(device_os_status_dict) ``` [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/DeviceRebootHookSpec.md b/docs/DeviceRebootHookSpec.md deleted file mode 100644 index 93d4be8..0000000 --- a/docs/DeviceRebootHookSpec.md +++ /dev/null @@ -1,31 +0,0 @@ -# DeviceRebootHookSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **str** | | [optional] -**description** | **str** | | [optional] -**actions** | [**List[HookAction]**](HookAction.md) | The actions taken before and after system reboots are observed. Each action is executed in the order they are defined. | - -## Example - -```python -from flightctl.models.device_reboot_hook_spec import DeviceRebootHookSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of DeviceRebootHookSpec from a JSON string -device_reboot_hook_spec_instance = DeviceRebootHookSpec.from_json(json) -# print the JSON string representation of the object -print(DeviceRebootHookSpec.to_json()) - -# convert the object into a dict -device_reboot_hook_spec_dict = device_reboot_hook_spec_instance.to_dict() -# create an instance of DeviceRebootHookSpec from a dict -device_reboot_hook_spec_from_dict = DeviceRebootHookSpec.from_dict(device_reboot_hook_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/DeviceResourceStatus.md b/docs/DeviceResourceStatus.md index c08b323..15d9d3e 100644 --- a/docs/DeviceResourceStatus.md +++ b/docs/DeviceResourceStatus.md @@ -1,5 +1,6 @@ # DeviceResourceStatus +Current status of the resources of the device. ## Properties diff --git a/docs/DeviceResourceStatusType.md b/docs/DeviceResourceStatusType.md index a169316..213859d 100644 --- a/docs/DeviceResourceStatusType.md +++ b/docs/DeviceResourceStatusType.md @@ -1,5 +1,6 @@ # DeviceResourceStatusType +The types of resource statuses. ## Enum diff --git a/docs/DeviceSpec.md b/docs/DeviceSpec.md index 7fcd563..033a5d1 100644 --- a/docs/DeviceSpec.md +++ b/docs/DeviceSpec.md @@ -1,16 +1,19 @@ # DeviceSpec +DeviceSpec describes a device. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**os** | [**DeviceOSSpec**](DeviceOSSpec.md) | | [optional] +**update_policy** | [**DeviceUpdatePolicySpec**](DeviceUpdatePolicySpec.md) | | [optional] +**os** | [**DeviceOsSpec**](DeviceOsSpec.md) | | [optional] **config** | [**List[ConfigProviderSpec]**](ConfigProviderSpec.md) | List of config providers. | [optional] -**hooks** | [**DeviceHooksSpec**](DeviceHooksSpec.md) | | [optional] -**applications** | [**List[ApplicationSpec]**](ApplicationSpec.md) | List of applications. | [optional] +**applications** | [**List[ApplicationProviderSpec]**](ApplicationProviderSpec.md) | List of application providers. | [optional] **systemd** | [**DeviceSpecSystemd**](DeviceSpecSystemd.md) | | [optional] **resources** | [**List[ResourceMonitor]**](ResourceMonitor.md) | Array of resource monitor configurations. | [optional] +**consoles** | [**List[DeviceConsole]**](DeviceConsole.md) | The list of active console sessions. | [optional] +**decommissioning** | [**DeviceDecommission**](DeviceDecommission.md) | | [optional] ## Example diff --git a/docs/DeviceSpecSystemd.md b/docs/DeviceSpecSystemd.md index 71df32c..f379481 100644 --- a/docs/DeviceSpecSystemd.md +++ b/docs/DeviceSpecSystemd.md @@ -1,11 +1,12 @@ # DeviceSpecSystemd +The systemd services to monitor. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**match_patterns** | **List[str]** | | [optional] +**match_patterns** | **List[str]** | A list of match patterns. | [optional] ## Example diff --git a/docs/DeviceStatus.md b/docs/DeviceStatus.md index 0a5b7df..9b1fdd3 100644 --- a/docs/DeviceStatus.md +++ b/docs/DeviceStatus.md @@ -13,10 +13,11 @@ Name | Type | Description | Notes **resources** | [**DeviceResourceStatus**](DeviceResourceStatus.md) | | **integrity** | [**DeviceIntegrityStatus**](DeviceIntegrityStatus.md) | | **config** | [**DeviceConfigStatus**](DeviceConfigStatus.md) | | -**os** | [**DeviceOSStatus**](DeviceOSStatus.md) | | +**os** | [**DeviceOsStatus**](DeviceOsStatus.md) | | **updated** | [**DeviceUpdatedStatus**](DeviceUpdatedStatus.md) | | **summary** | [**DeviceSummaryStatus**](DeviceSummaryStatus.md) | | -**last_seen** | **datetime** | | +**last_seen** | **datetime** | The last time the device was seen by the service. | +**lifecycle** | [**DeviceLifecycleStatus**](DeviceLifecycleStatus.md) | | ## Example diff --git a/docs/DeviceSummaryStatus.md b/docs/DeviceSummaryStatus.md index 2e904f6..c0e362e 100644 --- a/docs/DeviceSummaryStatus.md +++ b/docs/DeviceSummaryStatus.md @@ -1,5 +1,6 @@ # DeviceSummaryStatus +A summary of the health of the device hardware and operating system resources. ## Properties diff --git a/docs/DeviceSummaryStatusType.md b/docs/DeviceSummaryStatusType.md index 7f27f27..895f126 100644 --- a/docs/DeviceSummaryStatusType.md +++ b/docs/DeviceSummaryStatusType.md @@ -1,5 +1,6 @@ # DeviceSummaryStatusType +Status of the device. ## Enum diff --git a/docs/DeviceSystemInfo.md b/docs/DeviceSystemInfo.md index 1c65108..78aa4a2 100644 --- a/docs/DeviceSystemInfo.md +++ b/docs/DeviceSystemInfo.md @@ -9,6 +9,7 @@ Name | Type | Description | Notes **architecture** | **str** | The Architecture reported by the device. | **boot_id** | **str** | Boot ID reported by the device. | **operating_system** | **str** | The Operating System reported by the device. | +**agent_version** | **str** | The Agent version. | ## Example diff --git a/docs/DeviceUpdateHookSpec.md b/docs/DeviceUpdateHookSpec.md deleted file mode 100644 index aafbff4..0000000 --- a/docs/DeviceUpdateHookSpec.md +++ /dev/null @@ -1,33 +0,0 @@ -# DeviceUpdateHookSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **str** | | [optional] -**description** | **str** | | [optional] -**actions** | [**List[HookAction]**](HookAction.md) | The actions to take when the specified file operations are observed. Each action is executed in the order they are defined. | -**on_file** | [**List[FileOperation]**](FileOperation.md) | | [optional] -**path** | **str** | The path to monitor for changes in configuration files. This path can point to either a specific file or an entire directory. | [optional] - -## Example - -```python -from flightctl.models.device_update_hook_spec import DeviceUpdateHookSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of DeviceUpdateHookSpec from a JSON string -device_update_hook_spec_instance = DeviceUpdateHookSpec.from_json(json) -# print the JSON string representation of the object -print(DeviceUpdateHookSpec.to_json()) - -# convert the object into a dict -device_update_hook_spec_dict = device_update_hook_spec_instance.to_dict() -# create an instance of DeviceUpdateHookSpec from a dict -device_update_hook_spec_from_dict = DeviceUpdateHookSpec.from_dict(device_update_hook_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/DeviceUpdatePolicySpec.md b/docs/DeviceUpdatePolicySpec.md new file mode 100644 index 0000000..e89bd24 --- /dev/null +++ b/docs/DeviceUpdatePolicySpec.md @@ -0,0 +1,31 @@ +# DeviceUpdatePolicySpec + +Specifies the policy for managing device updates, including when updates should be downloaded and applied. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**download_schedule** | [**UpdateSchedule**](UpdateSchedule.md) | | [optional] +**update_schedule** | [**UpdateSchedule**](UpdateSchedule.md) | | [optional] + +## Example + +```python +from flightctl.models.device_update_policy_spec import DeviceUpdatePolicySpec + +# TODO update the JSON string below +json = "{}" +# create an instance of DeviceUpdatePolicySpec from a JSON string +device_update_policy_spec_instance = DeviceUpdatePolicySpec.from_json(json) +# print the JSON string representation of the object +print(DeviceUpdatePolicySpec.to_json()) + +# convert the object into a dict +device_update_policy_spec_dict = device_update_policy_spec_instance.to_dict() +# create an instance of DeviceUpdatePolicySpec from a dict +device_update_policy_spec_from_dict = DeviceUpdatePolicySpec.from_dict(device_update_policy_spec_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/DeviceUpdatedStatus.md b/docs/DeviceUpdatedStatus.md index de1ca9f..10b6412 100644 --- a/docs/DeviceUpdatedStatus.md +++ b/docs/DeviceUpdatedStatus.md @@ -1,5 +1,6 @@ # DeviceUpdatedStatus +Current status of the device update. ## Properties diff --git a/docs/DeviceUpdatedStatusType.md b/docs/DeviceUpdatedStatusType.md index 9a598f0..ea50570 100644 --- a/docs/DeviceUpdatedStatusType.md +++ b/docs/DeviceUpdatedStatusType.md @@ -1,5 +1,6 @@ # DeviceUpdatedStatusType +Status type of the device update. ## Enum diff --git a/docs/DevicesSummary.md b/docs/DevicesSummary.md index e763dc8..a58676c 100644 --- a/docs/DevicesSummary.md +++ b/docs/DevicesSummary.md @@ -7,9 +7,9 @@ A summary of the devices in the fleet returned when fetching a single Fleet. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **total** | **int** | The total number of devices in the fleet. | -**application_status** | **Dict[str, int]** | A breakdown of the devices in the fleet by \"application\" status. | [optional] -**summary_status** | **Dict[str, int]** | A breakdown of the devices in the fleet by \"summary\" status. | [optional] -**update_status** | **Dict[str, int]** | A breakdown of the devices in the fleet by \"updated\" status. | [optional] +**application_status** | **Dict[str, int]** | A breakdown of the devices in the fleet by \"application\" status. | +**summary_status** | **Dict[str, int]** | A breakdown of the devices in the fleet by \"summary\" status. | +**update_status** | **Dict[str, int]** | A breakdown of the devices in the fleet by \"updated\" status. | ## Example diff --git a/docs/DiskResourceMonitorSpec.md b/docs/DiskResourceMonitorSpec.md index 0e64f20..58da5fa 100644 --- a/docs/DiskResourceMonitorSpec.md +++ b/docs/DiskResourceMonitorSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**monitor_type** | **str** | | +**monitor_type** | **str** | The type of resource to monitor. | **alert_rules** | [**List[ResourceAlertRule]**](ResourceAlertRule.md) | Array of alert rules. Only one alert per severity is allowed. | **sampling_interval** | **str** | Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours. | **path** | **str** | The directory path to monitor for disk usage. | diff --git a/docs/DisruptionAllowance.md b/docs/DisruptionBudget.md similarity index 54% rename from docs/DisruptionAllowance.md rename to docs/DisruptionBudget.md index 2a6e58d..8b50b7f 100644 --- a/docs/DisruptionAllowance.md +++ b/docs/DisruptionBudget.md @@ -1,31 +1,31 @@ -# DisruptionAllowance +# DisruptionBudget -DisruptionAllowance defines the level of allowed disruption when rollout is in progress. +DisruptionBudget defines the level of allowed disruption when rollout is in progress. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**group_by** | **List[str]** | List of label keys to perform grouping for the disruption allowance. | [optional] +**group_by** | **List[str]** | List of label keys to perform grouping for the disruption budget. | [optional] **min_available** | **int** | The maximum number of unavailable devices allowed during rollout. | [optional] **max_unavailable** | **int** | The minimum number of required available devices during rollout. | [optional] ## Example ```python -from flightctl.models.disruption_allowance import DisruptionAllowance +from flightctl.models.disruption_budget import DisruptionBudget # TODO update the JSON string below json = "{}" -# create an instance of DisruptionAllowance from a JSON string -disruption_allowance_instance = DisruptionAllowance.from_json(json) +# create an instance of DisruptionBudget from a JSON string +disruption_budget_instance = DisruptionBudget.from_json(json) # print the JSON string representation of the object -print(DisruptionAllowance.to_json()) +print(DisruptionBudget.to_json()) # convert the object into a dict -disruption_allowance_dict = disruption_allowance_instance.to_dict() -# create an instance of DisruptionAllowance from a dict -disruption_allowance_from_dict = DisruptionAllowance.from_dict(disruption_allowance_dict) +disruption_budget_dict = disruption_budget_instance.to_dict() +# create an instance of DisruptionBudget from a dict +disruption_budget_from_dict = DisruptionBudget.from_dict(disruption_budget_dict) ``` [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/EnrollmentConfig.md b/docs/EnrollmentConfig.md index 7ae5d69..54dfaf0 100644 --- a/docs/EnrollmentConfig.md +++ b/docs/EnrollmentConfig.md @@ -6,7 +6,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **enrollment_service** | [**EnrollmentService**](EnrollmentService.md) | | -**grpc_management_endpoint** | **str** | | ## Example diff --git a/docs/EnrollmentRequest.md b/docs/EnrollmentRequest.md index 84541d9..f01faa5 100644 --- a/docs/EnrollmentRequest.md +++ b/docs/EnrollmentRequest.md @@ -6,8 +6,8 @@ EnrollmentRequest represents a request for approval to enroll a device. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | **spec** | [**EnrollmentRequestSpec**](EnrollmentRequestSpec.md) | | **status** | [**EnrollmentRequestStatus**](EnrollmentRequestStatus.md) | | [optional] diff --git a/docs/EnrollmentRequestApproval.md b/docs/EnrollmentRequestApproval.md index 07ccfe2..a5a0704 100644 --- a/docs/EnrollmentRequestApproval.md +++ b/docs/EnrollmentRequestApproval.md @@ -1,14 +1,13 @@ # EnrollmentRequestApproval +EnrollmentRequestApproval contains information about the approval of a device enrollment request. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**labels** | **Dict[str, str]** | labels is a set of labels to apply to the device. | [optional] -**approved** | **bool** | approved indicates whether the request has been approved. | -**approved_by** | **str** | approvedBy is the name of the approver. | [optional] -**approved_at** | **datetime** | approvedAt is the time at which the request was approved. | [optional] +**labels** | **Dict[str, str]** | A set of labels to apply to the device. | [optional] +**approved** | **bool** | Indicates whether the request has been approved. | ## Example diff --git a/docs/EnrollmentRequestApprovalStatus.md b/docs/EnrollmentRequestApprovalStatus.md new file mode 100644 index 0000000..d8c19ae --- /dev/null +++ b/docs/EnrollmentRequestApprovalStatus.md @@ -0,0 +1,33 @@ +# EnrollmentRequestApprovalStatus + +EnrollmentRequestApprovalStatus represents information about the status of a device enrollment request approval. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**labels** | **Dict[str, str]** | A set of labels to apply to the device. | [optional] +**approved** | **bool** | Indicates whether the request has been approved. | +**approved_by** | **str** | The name of the approver. | +**approved_at** | **datetime** | The time at which the request was approved. | + +## Example + +```python +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus + +# TODO update the JSON string below +json = "{}" +# create an instance of EnrollmentRequestApprovalStatus from a JSON string +enrollment_request_approval_status_instance = EnrollmentRequestApprovalStatus.from_json(json) +# print the JSON string representation of the object +print(EnrollmentRequestApprovalStatus.to_json()) + +# convert the object into a dict +enrollment_request_approval_status_dict = enrollment_request_approval_status_instance.to_dict() +# create an instance of EnrollmentRequestApprovalStatus from a dict +enrollment_request_approval_status_from_dict = EnrollmentRequestApprovalStatus.from_dict(enrollment_request_approval_status_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/EnrollmentRequestList.md b/docs/EnrollmentRequestList.md index c942079..4a9b172 100644 --- a/docs/EnrollmentRequestList.md +++ b/docs/EnrollmentRequestList.md @@ -6,8 +6,8 @@ EnrollmentRequestList is a list of EnrollmentRequest. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[EnrollmentRequest]**](EnrollmentRequest.md) | List of EnrollmentRequest. | diff --git a/docs/EnrollmentRequestSpec.md b/docs/EnrollmentRequestSpec.md index bc09c91..eb3611d 100644 --- a/docs/EnrollmentRequestSpec.md +++ b/docs/EnrollmentRequestSpec.md @@ -6,9 +6,9 @@ EnrollmentRequestSpec is a description of a EnrollmentRequest's target state. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**csr** | **str** | csr is a PEM-encoded PKCS#10 certificate signing request. | +**csr** | **str** | The PEM-encoded PKCS#10 certificate signing request. | **device_status** | [**DeviceStatus**](DeviceStatus.md) | | [optional] -**labels** | **Dict[str, str]** | A set of labels that the service will apply to this device when its enrollment is approved | [optional] +**labels** | **Dict[str, str]** | A set of labels that the service will apply to this device when its enrollment is approved. | [optional] ## Example diff --git a/docs/EnrollmentRequestStatus.md b/docs/EnrollmentRequestStatus.md index 6b907e4..c7d35f7 100644 --- a/docs/EnrollmentRequestStatus.md +++ b/docs/EnrollmentRequestStatus.md @@ -6,9 +6,9 @@ EnrollmentRequestStatus represents information about the status of a EnrollmentR Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**certificate** | **str** | certificate is a PEM-encoded signed certificate. | [optional] +**certificate** | **str** | The PEM-encoded signed certificate. | [optional] **conditions** | [**List[Condition]**](Condition.md) | Current state of the EnrollmentRequest. | -**approval** | [**EnrollmentRequestApproval**](EnrollmentRequestApproval.md) | | [optional] +**approval** | [**EnrollmentRequestApprovalStatus**](EnrollmentRequestApprovalStatus.md) | | [optional] ## Example diff --git a/docs/EnrollmentService.md b/docs/EnrollmentService.md index f544d8f..eeba9e7 100644 --- a/docs/EnrollmentService.md +++ b/docs/EnrollmentService.md @@ -1,5 +1,6 @@ # EnrollmentService +EnrollmentService contains information about how to communicate with a Flight Control enrollment service. ## Properties @@ -7,7 +8,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **authentication** | [**EnrollmentServiceAuth**](EnrollmentServiceAuth.md) | | **service** | [**EnrollmentServiceService**](EnrollmentServiceService.md) | | -**enrollment_ui_endpoint** | **str** | | +**enrollment_ui_endpoint** | **str** | The URL of the UI that the agent uses to print the QR code and link for enrolling the device. | ## Example diff --git a/docs/EnrollmentServiceAuth.md b/docs/EnrollmentServiceAuth.md index 3654127..ed579aa 100644 --- a/docs/EnrollmentServiceAuth.md +++ b/docs/EnrollmentServiceAuth.md @@ -1,12 +1,13 @@ # EnrollmentServiceAuth +EnrollmentServiceAuth contains the client authentication information for a Flight Control enrollment service. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**client_certificate_data** | **str** | | -**client_key_data** | **str** | | +**client_certificate_data** | **str** | ClientCertificateData contains PEM-encoded data from a client cert file for TLS. | +**client_key_data** | **str** | ClientKeyData contains PEM-encoded data from a client key file for TLS. | ## Example diff --git a/docs/EnrollmentServiceService.md b/docs/EnrollmentServiceService.md index 113b707..30f6da7 100644 --- a/docs/EnrollmentServiceService.md +++ b/docs/EnrollmentServiceService.md @@ -1,12 +1,13 @@ # EnrollmentServiceService +EnrollmentServiceService contains information about connecting to a Flight Control enrollment service. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**certificate_authority_data** | **str** | | -**server** | **str** | | +**certificate_authority_data** | **str** | CertificateAuthorityData contains PEM-encoded certificate authority certificates. | +**server** | **str** | Server is the address of the Flight Control enrollment service (https://hostname:port). | ## Example diff --git a/docs/EnrollmentrequestApi.md b/docs/EnrollmentrequestApi.md index f248a2a..8d39309 100644 --- a/docs/EnrollmentrequestApi.md +++ b/docs/EnrollmentrequestApi.md @@ -4,11 +4,14 @@ All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- -[**approve_enrollment_request**](EnrollmentrequestApi.md#approve_enrollment_request) | **POST** /api/v1/enrollmentrequests/{name}/approval | +[**approve_enrollment_request**](EnrollmentrequestApi.md#approve_enrollment_request) | **PUT** /api/v1/enrollmentrequests/{name}/approval | [**create_enrollment_request**](EnrollmentrequestApi.md#create_enrollment_request) | **POST** /api/v1/enrollmentrequests | [**delete_enrollment_request**](EnrollmentrequestApi.md#delete_enrollment_request) | **DELETE** /api/v1/enrollmentrequests/{name} | [**delete_enrollment_requests**](EnrollmentrequestApi.md#delete_enrollment_requests) | **DELETE** /api/v1/enrollmentrequests | +[**get_enrollment_config**](EnrollmentrequestApi.md#get_enrollment_config) | **GET** /api/v1/enrollmentconfig | [**list_enrollment_requests**](EnrollmentrequestApi.md#list_enrollment_requests) | **GET** /api/v1/enrollmentrequests | +[**patch_enrollment_request**](EnrollmentrequestApi.md#patch_enrollment_request) | **PATCH** /api/v1/enrollmentrequests/{name} | +[**patch_enrollment_request_status**](EnrollmentrequestApi.md#patch_enrollment_request_status) | **PATCH** /api/v1/enrollmentrequests/{name}/status | [**read_enrollment_request**](EnrollmentrequestApi.md#read_enrollment_request) | **GET** /api/v1/enrollmentrequests/{name} | [**read_enrollment_request_status**](EnrollmentrequestApi.md#read_enrollment_request_status) | **GET** /api/v1/enrollmentrequests/{name}/status | [**replace_enrollment_request**](EnrollmentrequestApi.md#replace_enrollment_request) | **PUT** /api/v1/enrollmentrequests/{name} | @@ -16,11 +19,11 @@ Method | HTTP request | Description # **approve_enrollment_request** -> EnrollmentRequestApproval approve_enrollment_request(name, enrollment_request_approval) +> EnrollmentRequestApprovalStatus approve_enrollment_request(name, enrollment_request_approval) -create approval of the specified EnrollmentRequest +Approve or deny an EnrollmentRequest. ### Example @@ -28,6 +31,7 @@ create approval of the specified EnrollmentRequest ```python import flightctl from flightctl.models.enrollment_request_approval import EnrollmentRequestApproval +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus from flightctl.rest import ApiException from pprint import pprint @@ -42,7 +46,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.EnrollmentrequestApi(api_client) - name = 'name_example' # str | name of the EnrollmentRequest + name = 'name_example' # str | The name of the EnrollmentRequest to approve or deny. enrollment_request_approval = flightctl.EnrollmentRequestApproval() # EnrollmentRequestApproval | try: @@ -60,12 +64,12 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the EnrollmentRequest | + **name** | **str**| The name of the EnrollmentRequest to approve or deny. | **enrollment_request_approval** | [**EnrollmentRequestApproval**](EnrollmentRequestApproval.md)| | ### Return type -[**EnrollmentRequestApproval**](EnrollmentRequestApproval.md) +[**EnrollmentRequestApprovalStatus**](EnrollmentRequestApprovalStatus.md) ### Authorization @@ -81,11 +85,11 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**422** | UnprocessableEntity | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | -**500** | InternalServerError | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -94,7 +98,7 @@ No authorization required -request enrollment of a Device +Create an EnrollmentRequest resource. ### Example @@ -153,10 +157,11 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **201** | Created | - | -**208** | Already Reported | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -165,7 +170,7 @@ No authorization required -delete a Enrollment Request +Delete an EnrollmentRequest resource. ### Example @@ -187,7 +192,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.EnrollmentrequestApi(api_client) - name = 'name_example' # str | name of the Enrollment Request + name = 'name_example' # str | The name of the EnrollmentRequest resource to delete. try: api_response = api_instance.delete_enrollment_request(name) @@ -204,7 +209,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Enrollment Request | + **name** | **str**| The name of the EnrollmentRequest resource to delete. | ### Return type @@ -225,7 +230,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -234,7 +241,7 @@ No authorization required -delete a collection of Enrollments +Delete EnrollmentRequest resources. ### Example @@ -290,15 +297,89 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **get_enrollment_config** +> EnrollmentConfig get_enrollment_config(csr=csr) + + + +Get enrollment information. + +### Example + + +```python +import flightctl +from flightctl.models.enrollment_config import EnrollmentConfig +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.EnrollmentrequestApi(api_client) + csr = 'csr_example' # str | The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty. (optional) + + try: + api_response = api_instance.get_enrollment_config(csr=csr) + print("The response of EnrollmentrequestApi->get_enrollment_config:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling EnrollmentrequestApi->get_enrollment_config: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **csr** | **str**| The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty. | [optional] + +### Return type + +[**EnrollmentConfig**](EnrollmentConfig.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | Not Found | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **list_enrollment_requests** -> EnrollmentRequestList list_enrollment_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) +> EnrollmentRequestList list_enrollment_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) -list Enrollment Requests +List EnrollmentRequest resources. ### Example @@ -306,7 +387,6 @@ list Enrollment Requests ```python import flightctl from flightctl.models.enrollment_request_list import EnrollmentRequestList -from flightctl.models.sort_order import SortOrder from flightctl.rest import ApiException from pprint import pprint @@ -323,13 +403,11 @@ with flightctl.ApiClient(configuration) as api_client: api_instance = flightctl.EnrollmentrequestApi(api_client) var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) try: - api_response = api_instance.list_enrollment_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) + api_response = api_instance.list_enrollment_requests(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) print("The response of EnrollmentrequestApi->list_enrollment_requests:\n") pprint(api_response) except Exception as e: @@ -345,10 +423,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] ### Return type @@ -370,6 +446,160 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_enrollment_request** +> EnrollmentRequest patch_enrollment_request(name, patch_request_inner) + + + +Patch an EnrollmentRequest resource. + +### Example + + +```python +import flightctl +from flightctl.models.enrollment_request import EnrollmentRequest +from flightctl.models.patch_request_inner import PatchRequestInner +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.EnrollmentrequestApi(api_client) + name = 'name_example' # str | The name of the EnrollmentRequest resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | + + try: + api_response = api_instance.patch_enrollment_request(name, patch_request_inner) + print("The response of EnrollmentrequestApi->patch_enrollment_request:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling EnrollmentrequestApi->patch_enrollment_request: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **name** | **str**| The name of the EnrollmentRequest resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | + +### Return type + +[**EnrollmentRequest**](EnrollmentRequest.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json-patch+json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**409** | Conflict | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_enrollment_request_status** +> EnrollmentRequest patch_enrollment_request_status(name, patch_request_inner) + + + +Patch the status of an EnrollmentRequest resource. + +### Example + + +```python +import flightctl +from flightctl.models.enrollment_request import EnrollmentRequest +from flightctl.models.patch_request_inner import PatchRequestInner +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.EnrollmentrequestApi(api_client) + name = 'name_example' # str | The name of the EnrollmentRequest resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | + + try: + api_response = api_instance.patch_enrollment_request_status(name, patch_request_inner) + print("The response of EnrollmentrequestApi->patch_enrollment_request_status:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling EnrollmentrequestApi->patch_enrollment_request_status: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **name** | **str**| The name of the EnrollmentRequest resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | + +### Return type + +[**EnrollmentRequest**](EnrollmentRequest.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json-patch+json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -378,7 +608,7 @@ No authorization required -read the specified Enrollment +Get an EnrollmentRequest resource. ### Example @@ -400,7 +630,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.EnrollmentrequestApi(api_client) - name = 'name_example' # str | the fingerprint of the EnrollmentRequest + name = 'name_example' # str | The name of the EnrollmentRequest resource to get. try: api_response = api_instance.read_enrollment_request(name) @@ -417,7 +647,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| the fingerprint of the EnrollmentRequest | + **name** | **str**| The name of the EnrollmentRequest resource to get. | ### Return type @@ -438,7 +668,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -447,7 +679,7 @@ No authorization required -read status of the specified EnrollmentRequest +Get the status of an EnrollmentRequest resource. ### Example @@ -469,7 +701,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.EnrollmentrequestApi(api_client) - name = 'name_example' # str | name of the EnrollmentRequest + name = 'name_example' # str | The name of the EnrollmentRequest resource to get. try: api_response = api_instance.read_enrollment_request_status(name) @@ -486,7 +718,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the EnrollmentRequest | + **name** | **str**| The name of the EnrollmentRequest resource to get. | ### Return type @@ -507,7 +739,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -516,7 +750,7 @@ No authorization required -replace the specified Enrollment Request +Update an EnrollmentRequest resource. ### Example @@ -538,7 +772,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.EnrollmentrequestApi(api_client) - name = 'name_example' # str | name of the EnrollmentRequest + name = 'name_example' # str | The name of the EnrollmentRequest resource to update. enrollment_request = flightctl.EnrollmentRequest() # EnrollmentRequest | try: @@ -556,7 +790,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the EnrollmentRequest | + **name** | **str**| The name of the EnrollmentRequest resource to update. | **enrollment_request** | [**EnrollmentRequest**](EnrollmentRequest.md)| | ### Return type @@ -580,8 +814,10 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -590,7 +826,7 @@ No authorization required -replace status of the specified EnrollmentRequest +Update the status of an EnrollmentRequest resource. ### Example @@ -612,7 +848,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.EnrollmentrequestApi(api_client) - name = 'name_example' # str | name of the EnrollmentRequest + name = 'name_example' # str | The name of the EnrollmentRequest resource to update. enrollment_request = flightctl.EnrollmentRequest() # EnrollmentRequest | try: @@ -630,7 +866,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the EnrollmentRequest | + **name** | **str**| The name of the EnrollmentRequest resource to update. | **enrollment_request** | [**EnrollmentRequest**](EnrollmentRequest.md)| | ### Return type @@ -652,7 +888,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/FileOperation.md b/docs/FileOperation.md index a7c6923..22b04ce 100644 --- a/docs/FileOperation.md +++ b/docs/FileOperation.md @@ -1,16 +1,13 @@ # FileOperation -The type of operation that was observed on the file. ## Enum -* `CREATE` (value: `'Create'`) +* `CREATED` (value: `'created'`) -* `REMOVE` (value: `'Remove'`) +* `REMOVED` (value: `'removed'`) -* `UPDATE` (value: `'Update'`) - -* `REBOOT` (value: `'Reboot'`) +* `UPDATED` (value: `'updated'`) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/FileSpec.md b/docs/FileSpec.md index 2ddc6b8..288b782 100644 --- a/docs/FileSpec.md +++ b/docs/FileSpec.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes **path** | **str** | The absolute path to the file on the device. Note that any existing file will be overwritten. | **content** | **str** | The plain text (UTF-8) or base64-encoded content of the file. | **content_encoding** | **str** | How the contents are encoded. Must be either \"plain\" or \"base64\". Defaults to \"plain\". | [optional] -**mode** | **int** | The file’s permission mode. You may specify the more familiar octal with a leading zero (e.g., 0644) or as a decimal without a leading zero (e.g., 420). Setuid/setgid/sticky bits are supported. If not specified, the permission mode for files defaults to 0644. | [optional] +**mode** | **int** | The file's permission mode. You may specify the more familiar octal with a leading zero (e.g., 0644) or as a decimal without a leading zero (e.g., 420). Setuid/setgid/sticky bits are supported. If not specified, the permission mode for files defaults to 0644. | [optional] **user** | **str** | The file's owner, specified either as a name or numeric ID. Defaults to \"root\". | [optional] **group** | **str** | The file's group, specified either as a name or numeric ID. Defaults to \"root\". | [optional] diff --git a/docs/Fleet.md b/docs/Fleet.md index b9d792c..278c577 100644 --- a/docs/Fleet.md +++ b/docs/Fleet.md @@ -6,8 +6,8 @@ Fleet represents a set of devices. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | **spec** | [**FleetSpec**](FleetSpec.md) | | **status** | [**FleetStatus**](FleetStatus.md) | | [optional] diff --git a/docs/FleetApi.md b/docs/FleetApi.md index 33a0e5e..25f4998 100644 --- a/docs/FleetApi.md +++ b/docs/FleetApi.md @@ -7,10 +7,15 @@ Method | HTTP request | Description [**create_fleet**](FleetApi.md#create_fleet) | **POST** /api/v1/fleets | [**delete_fleet**](FleetApi.md#delete_fleet) | **DELETE** /api/v1/fleets/{name} | [**delete_fleets**](FleetApi.md#delete_fleets) | **DELETE** /api/v1/fleets | +[**delete_template_version**](FleetApi.md#delete_template_version) | **DELETE** /api/v1/fleets/{fleet}/templateversions/{name} | +[**delete_template_versions**](FleetApi.md#delete_template_versions) | **DELETE** /api/v1/fleets/{fleet}/templateversions | [**list_fleets**](FleetApi.md#list_fleets) | **GET** /api/v1/fleets | +[**list_template_versions**](FleetApi.md#list_template_versions) | **GET** /api/v1/fleets/{fleet}/templateversions | [**patch_fleet**](FleetApi.md#patch_fleet) | **PATCH** /api/v1/fleets/{name} | +[**patch_fleet_status**](FleetApi.md#patch_fleet_status) | **PATCH** /api/v1/fleets/{name}/status | [**read_fleet**](FleetApi.md#read_fleet) | **GET** /api/v1/fleets/{name} | [**read_fleet_status**](FleetApi.md#read_fleet_status) | **GET** /api/v1/fleets/{name}/status | +[**read_template_version**](FleetApi.md#read_template_version) | **GET** /api/v1/fleets/{fleet}/templateversions/{name} | [**replace_fleet**](FleetApi.md#replace_fleet) | **PUT** /api/v1/fleets/{name} | [**replace_fleet_status**](FleetApi.md#replace_fleet_status) | **PUT** /api/v1/fleets/{name}/status | @@ -20,7 +25,7 @@ Method | HTTP request | Description -create a Fleet +Create a Fleet resource. ### Example @@ -81,7 +86,9 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -90,7 +97,7 @@ No authorization required -delete a Fleet +Delete a Fleet resource. ### Example @@ -112,7 +119,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.FleetApi(api_client) - name = 'name_example' # str | name of the Fleet + name = 'name_example' # str | The name of the Fleet resource to delete. try: api_response = api_instance.delete_fleet(name) @@ -129,7 +136,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Fleet | + **name** | **str**| The name of the Fleet resource to delete. | ### Return type @@ -150,8 +157,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | -**409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -160,7 +168,7 @@ No authorization required -delete a collection of Fleets +Delete Fleet resources. ### Example @@ -216,15 +224,160 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_template_version** +> TemplateVersion delete_template_version(fleet, name) + + + +delete a template version + +### Example + + +```python +import flightctl +from flightctl.models.template_version import TemplateVersion +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.FleetApi(api_client) + fleet = 'fleet_example' # str | The owner of the template version. + name = 'name_example' # str | The name of the template version. + + try: + api_response = api_instance.delete_template_version(fleet, name) + print("The response of FleetApi->delete_template_version:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FleetApi->delete_template_version: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fleet** | **str**| The owner of the template version. | + **name** | **str**| The name of the template version. | + +### Return type + +[**TemplateVersion**](TemplateVersion.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **delete_template_versions** +> Status delete_template_versions(fleet) + + + +delete a collection of template versions + +### Example + + +```python +import flightctl +from flightctl.models.status import Status +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.FleetApi(api_client) + fleet = 'fleet_example' # str | The owner of the template versions. + + try: + api_response = api_instance.delete_template_versions(fleet) + print("The response of FleetApi->delete_template_versions:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FleetApi->delete_template_versions: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fleet** | **str**| The owner of the template versions. | + +### Return type + +[**Status**](Status.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **list_fleets** -> FleetList list_fleets(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, owner=owner, add_devices_count=add_devices_count, sort_by=sort_by, sort_order=sort_order) +> FleetList list_fleets(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, add_devices_summary=add_devices_summary) -list Fleets +List Fleet resources. ### Example @@ -232,7 +385,6 @@ list Fleets ```python import flightctl from flightctl.models.fleet_list import FleetList -from flightctl.models.sort_order import SortOrder from flightctl.rest import ApiException from pprint import pprint @@ -249,15 +401,12 @@ with flightctl.ApiClient(configuration) as api_client: api_instance = flightctl.FleetApi(api_client) var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - owner = 'owner_example' # str | A selector to restrict the list of returned objects by their owner. Defaults to everything. (optional) - add_devices_count = True # bool | include the number of devices in each fleet (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) + add_devices_summary = True # bool | Include a summary of the devices in the fleet. (optional) try: - api_response = api_instance.list_fleets(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, owner=owner, add_devices_count=add_devices_count, sort_by=sort_by, sort_order=sort_order) + api_response = api_instance.list_fleets(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, add_devices_summary=add_devices_summary) print("The response of FleetApi->list_fleets:\n") pprint(api_response) except Exception as e: @@ -273,12 +422,9 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **owner** | **str**| A selector to restrict the list of returned objects by their owner. Defaults to everything. | [optional] - **add_devices_count** | **bool**| include the number of devices in each fleet | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] + **add_devices_summary** | **bool**| Include a summary of the devices in the fleet. | [optional] ### Return type @@ -300,15 +446,96 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **list_template_versions** +> TemplateVersionList list_template_versions(fleet, var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) + + + +list template versions + +### Example + + +```python +import flightctl +from flightctl.models.template_version_list import TemplateVersionList +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.FleetApi(api_client) + fleet = 'fleet_example' # str | The owner of the template versions. + var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) + label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) + limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) + + try: + api_response = api_instance.list_template_versions(fleet, var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) + print("The response of FleetApi->list_template_versions:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FleetApi->list_template_versions: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fleet** | **str**| The owner of the template versions. | + **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] + **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] + **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] + +### Return type + +[**TemplateVersionList**](TemplateVersionList.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **patch_fleet** -> Fleet patch_fleet(name, patch_request_inner=patch_request_inner) +> Fleet patch_fleet(name, patch_request_inner) -Patches the specified fleet +Patch a Fleet resource. ### Example @@ -331,11 +558,11 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.FleetApi(api_client) - name = 'name_example' # str | name of the fleet - patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | (optional) + name = 'name_example' # str | The name of the Fleet resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | try: - api_response = api_instance.patch_fleet(name, patch_request_inner=patch_request_inner) + api_response = api_instance.patch_fleet(name, patch_request_inner) print("The response of FleetApi->patch_fleet:\n") pprint(api_response) except Exception as e: @@ -349,8 +576,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the fleet | - **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | [optional] + **name** | **str**| The name of the Fleet resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | ### Return type @@ -372,8 +599,85 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **patch_fleet_status** +> Fleet patch_fleet_status(name, patch_request_inner) + + + +Patch the status of a Fleet resource. + +### Example + + +```python +import flightctl +from flightctl.models.fleet import Fleet +from flightctl.models.patch_request_inner import PatchRequestInner +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.FleetApi(api_client) + name = 'name_example' # str | The name of the Fleet resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | + + try: + api_response = api_instance.patch_fleet_status(name, patch_request_inner) + print("The response of FleetApi->patch_fleet_status:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FleetApi->patch_fleet_status: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **name** | **str**| The name of the Fleet resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | + +### Return type + +[**Fleet**](Fleet.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json-patch+json + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -382,7 +686,7 @@ No authorization required -read the specified Fleet +Get a Fleet resource. ### Example @@ -404,8 +708,8 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.FleetApi(api_client) - name = 'name_example' # str | unique name of the Fleet - add_devices_summary = True # bool | include a summary of the devices in the fleet (optional) + name = 'name_example' # str | The name of the Fleet resource to get. + add_devices_summary = True # bool | Include a summary of the devices in the fleet. (optional) try: api_response = api_instance.read_fleet(name, add_devices_summary=add_devices_summary) @@ -422,8 +726,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| unique name of the Fleet | - **add_devices_summary** | **bool**| include a summary of the devices in the fleet | [optional] + **name** | **str**| The name of the Fleet resource to get. | + **add_devices_summary** | **bool**| Include a summary of the devices in the fleet. | [optional] ### Return type @@ -444,7 +748,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -475,7 +781,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.FleetApi(api_client) - name = 'name_example' # str | name of the Fleet + name = 'name_example' # str | The name of the Fleet resource to get. try: api_response = api_instance.read_fleet_status(name) @@ -492,7 +798,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Fleet | + **name** | **str**| The name of the Fleet resource to get. | ### Return type @@ -513,7 +819,82 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**404** | NotFound | - | +**503** | ServiceUnavailable | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **read_template_version** +> TemplateVersion read_template_version(fleet, name) + + + +read the specified template version + +### Example + + +```python +import flightctl +from flightctl.models.template_version import TemplateVersion +from flightctl.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to http://localhost +# See configuration.py for a list of all supported configuration parameters. +configuration = flightctl.Configuration( + host = "http://localhost" +) + + +# Enter a context with an instance of the API client +with flightctl.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = flightctl.FleetApi(api_client) + fleet = 'fleet_example' # str | The owner of the template version. + name = 'name_example' # str | The name of the template version. + + try: + api_response = api_instance.read_template_version(fleet, name) + print("The response of FleetApi->read_template_version:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling FleetApi->read_template_version: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fleet** | **str**| The owner of the template version. | + **name** | **str**| The name of the template version. | + +### Return type + +[**TemplateVersion**](TemplateVersion.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | +**401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -522,7 +903,7 @@ No authorization required -replace the specified Fleet +Update a Fleet resource. ### Example @@ -544,7 +925,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.FleetApi(api_client) - name = 'name_example' # str | name of the Fleet + name = 'name_example' # str | The name of the Fleet resource to update. fleet = flightctl.Fleet() # Fleet | try: @@ -562,7 +943,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Fleet | + **name** | **str**| The name of the Fleet resource to update. | **fleet** | [**Fleet**](Fleet.md)| | ### Return type @@ -587,7 +968,9 @@ No authorization required **400** | Bad Request | - | **401** | Unauthorized | - | **404** | NotFound | - | +**403** | Forbidden | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -618,7 +1001,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.FleetApi(api_client) - name = 'name_example' # str | name of the Fleet + name = 'name_example' # str | The name of the Fleet resource to update. fleet = flightctl.Fleet() # Fleet | try: @@ -636,7 +1019,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the Fleet | + **name** | **str**| The name of the Fleet resource to update. | **fleet** | [**Fleet**](Fleet.md)| | ### Return type @@ -658,7 +1041,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/FleetList.md b/docs/FleetList.md index 2af961d..9411377 100644 --- a/docs/FleetList.md +++ b/docs/FleetList.md @@ -6,8 +6,8 @@ FleetList is a list of Fleets. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[Fleet]**](Fleet.md) | List of Fleets. | diff --git a/docs/FleetRolloutStatus.md b/docs/FleetRolloutStatus.md index ea6df2f..ae655b6 100644 --- a/docs/FleetRolloutStatus.md +++ b/docs/FleetRolloutStatus.md @@ -1,11 +1,12 @@ # FleetRolloutStatus +FleetRolloutStatus represents information about the status of a fleet rollout. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**current_batch** | **int** | | [optional] +**current_batch** | **int** | The batch number currently being rolled out. | [optional] ## Example diff --git a/docs/FleetSpecTemplate.md b/docs/FleetSpecTemplate.md index 5193ae2..05ede4a 100644 --- a/docs/FleetSpecTemplate.md +++ b/docs/FleetSpecTemplate.md @@ -1,5 +1,6 @@ # FleetSpecTemplate +The template for the devices in the fleet. ## Properties diff --git a/docs/GenericRepoSpec.md b/docs/GenericRepoSpec.md index 655eef5..95120ce 100644 --- a/docs/GenericRepoSpec.md +++ b/docs/GenericRepoSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**url** | **str** | The (possibly remote) repository URL | +**url** | **str** | The (possibly remote) repository URL. | **type** | [**RepoSpecType**](RepoSpecType.md) | | ## Example diff --git a/docs/GitConfigProviderSpec.md b/docs/GitConfigProviderSpec.md index d41d1bc..587a27a 100644 --- a/docs/GitConfigProviderSpec.md +++ b/docs/GitConfigProviderSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **str** | The name of the config provider | +**name** | **str** | The name of the config provider. | **git_ref** | [**GitConfigProviderSpecGitRef**](GitConfigProviderSpecGitRef.md) | | ## Example diff --git a/docs/GitConfigProviderSpecGitRef.md b/docs/GitConfigProviderSpecGitRef.md index 4e5d0f8..8227abf 100644 --- a/docs/GitConfigProviderSpecGitRef.md +++ b/docs/GitConfigProviderSpecGitRef.md @@ -1,14 +1,15 @@ # GitConfigProviderSpecGitRef +The reference to a Git configuration server. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**repository** | **str** | The name of the repository resource to use as the sync source | -**target_revision** | **str** | | -**path** | **str** | | -**mount_path** | **str** | Path to config in device | [optional] [default to '/'] +**repository** | **str** | The name of the Repository resource. | +**target_revision** | **str** | The revision to use from the Repository. | +**path** | **str** | The path to the config in the Repository. | +**mount_path** | **str** | Path in the device's file system at which the repository's path should be mounted. | [optional] [default to '/'] ## Example diff --git a/docs/HookAction.md b/docs/HookAction.md index 8de1555..da4ed88 100644 --- a/docs/HookAction.md +++ b/docs/HookAction.md @@ -5,8 +5,11 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**executable** | [**HookActionExecutableSpec**](HookActionExecutableSpec.md) | | -**systemd** | [**HookActionSystemdSpec**](HookActionSystemdSpec.md) | | +**var_if** | [**List[HookCondition]**](HookCondition.md) | Conditions that must be met for the action to be executed. | [optional] +**timeout** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are 's' for seconds, 'm' for minutes, and 'h' for hours. | [optional] +**run** | **str** | The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context. | +**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime. | [optional] +**work_dir** | **str** | The working directory to be used when running the command. | [optional] ## Example diff --git a/docs/HookActionExecutable.md b/docs/HookActionExecutable.md deleted file mode 100644 index 843825b..0000000 --- a/docs/HookActionExecutable.md +++ /dev/null @@ -1,31 +0,0 @@ -# HookActionExecutable - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**run** | **str** | The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context. | -**env_vars** | **List[str]** | An optional list of KEY=VALUE pairs to set as environment variables for the executable. | [optional] -**work_dir** | **str** | The directory in which the executable will be run from if it is left empty it will run from the users home directory. | [optional] - -## Example - -```python -from flightctl.models.hook_action_executable import HookActionExecutable - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionExecutable from a JSON string -hook_action_executable_instance = HookActionExecutable.from_json(json) -# print the JSON string representation of the object -print(HookActionExecutable.to_json()) - -# convert the object into a dict -hook_action_executable_dict = hook_action_executable_instance.to_dict() -# create an instance of HookActionExecutable from a dict -hook_action_executable_from_dict = HookActionExecutable.from_dict(hook_action_executable_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookActionExecutableSpec.md b/docs/HookActionExecutableSpec.md deleted file mode 100644 index d9db1a0..0000000 --- a/docs/HookActionExecutableSpec.md +++ /dev/null @@ -1,32 +0,0 @@ -# HookActionExecutableSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**timeout** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days | [optional] -**run** | **str** | The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context. | -**env_vars** | **List[str]** | An optional list of KEY=VALUE pairs to set as environment variables for the executable. | [optional] -**work_dir** | **str** | The directory in which the executable will be run from if it is left empty it will run from the users home directory. | [optional] - -## Example - -```python -from flightctl.models.hook_action_executable_spec import HookActionExecutableSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionExecutableSpec from a JSON string -hook_action_executable_spec_instance = HookActionExecutableSpec.from_json(json) -# print the JSON string representation of the object -print(HookActionExecutableSpec.to_json()) - -# convert the object into a dict -hook_action_executable_spec_dict = hook_action_executable_spec_instance.to_dict() -# create an instance of HookActionExecutableSpec from a dict -hook_action_executable_spec_from_dict = HookActionExecutableSpec.from_dict(hook_action_executable_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookActionOneOf.md b/docs/HookActionOneOf.md deleted file mode 100644 index 6a861d7..0000000 --- a/docs/HookActionOneOf.md +++ /dev/null @@ -1,29 +0,0 @@ -# HookActionOneOf - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**executable** | [**HookActionExecutableSpec**](HookActionExecutableSpec.md) | | - -## Example - -```python -from flightctl.models.hook_action_one_of import HookActionOneOf - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionOneOf from a JSON string -hook_action_one_of_instance = HookActionOneOf.from_json(json) -# print the JSON string representation of the object -print(HookActionOneOf.to_json()) - -# convert the object into a dict -hook_action_one_of_dict = hook_action_one_of_instance.to_dict() -# create an instance of HookActionOneOf from a dict -hook_action_one_of_from_dict = HookActionOneOf.from_dict(hook_action_one_of_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookActionOneOf1.md b/docs/HookActionOneOf1.md deleted file mode 100644 index e104805..0000000 --- a/docs/HookActionOneOf1.md +++ /dev/null @@ -1,29 +0,0 @@ -# HookActionOneOf1 - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**systemd** | [**HookActionSystemdSpec**](HookActionSystemdSpec.md) | | - -## Example - -```python -from flightctl.models.hook_action_one_of1 import HookActionOneOf1 - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionOneOf1 from a JSON string -hook_action_one_of1_instance = HookActionOneOf1.from_json(json) -# print the JSON string representation of the object -print(HookActionOneOf1.to_json()) - -# convert the object into a dict -hook_action_one_of1_dict = hook_action_one_of1_instance.to_dict() -# create an instance of HookActionOneOf1 from a dict -hook_action_one_of1_from_dict = HookActionOneOf1.from_dict(hook_action_one_of1_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookActionRun.md b/docs/HookActionRun.md new file mode 100644 index 0000000..a5ddda3 --- /dev/null +++ b/docs/HookActionRun.md @@ -0,0 +1,31 @@ +# HookActionRun + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**run** | **str** | The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context. | +**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime. | [optional] +**work_dir** | **str** | The working directory to be used when running the command. | [optional] + +## Example + +```python +from flightctl.models.hook_action_run import HookActionRun + +# TODO update the JSON string below +json = "{}" +# create an instance of HookActionRun from a JSON string +hook_action_run_instance = HookActionRun.from_json(json) +# print the JSON string representation of the object +print(HookActionRun.to_json()) + +# convert the object into a dict +hook_action_run_dict = hook_action_run_instance.to_dict() +# create an instance of HookActionRun from a dict +hook_action_run_from_dict = HookActionRun.from_dict(hook_action_run_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/HookActionSpec.md b/docs/HookActionSpec.md deleted file mode 100644 index 208ea91..0000000 --- a/docs/HookActionSpec.md +++ /dev/null @@ -1,29 +0,0 @@ -# HookActionSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**timeout** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days | [optional] - -## Example - -```python -from flightctl.models.hook_action_spec import HookActionSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionSpec from a JSON string -hook_action_spec_instance = HookActionSpec.from_json(json) -# print the JSON string representation of the object -print(HookActionSpec.to_json()) - -# convert the object into a dict -hook_action_spec_dict = hook_action_spec_instance.to_dict() -# create an instance of HookActionSpec from a dict -hook_action_spec_from_dict = HookActionSpec.from_dict(hook_action_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookActionSystemdSpec.md b/docs/HookActionSystemdSpec.md deleted file mode 100644 index b6ca3a1..0000000 --- a/docs/HookActionSystemdSpec.md +++ /dev/null @@ -1,30 +0,0 @@ -# HookActionSystemdSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**timeout** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days | [optional] -**unit** | [**HookActionSystemdUnit**](HookActionSystemdUnit.md) | | - -## Example - -```python -from flightctl.models.hook_action_systemd_spec import HookActionSystemdSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionSystemdSpec from a JSON string -hook_action_systemd_spec_instance = HookActionSystemdSpec.from_json(json) -# print the JSON string representation of the object -print(HookActionSystemdSpec.to_json()) - -# convert the object into a dict -hook_action_systemd_spec_dict = hook_action_systemd_spec_instance.to_dict() -# create an instance of HookActionSystemdSpec from a dict -hook_action_systemd_spec_from_dict = HookActionSystemdSpec.from_dict(hook_action_systemd_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookActionSystemdUnit.md b/docs/HookActionSystemdUnit.md deleted file mode 100644 index f3d498f..0000000 --- a/docs/HookActionSystemdUnit.md +++ /dev/null @@ -1,31 +0,0 @@ -# HookActionSystemdUnit - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **str** | The name of the systemd unit on which the specified operations will be performed. This should be the exact name of the unit file, such as example.service. If the name is not populated the name will be auto discovered from the file path. | -**operations** | **List[str]** | The specific systemd operations to perform on the specified unit. | -**work_dir** | **str** | The directory in which the executable will be run from if it is left empty it will run from the users home directory. | [optional] - -## Example - -```python -from flightctl.models.hook_action_systemd_unit import HookActionSystemdUnit - -# TODO update the JSON string below -json = "{}" -# create an instance of HookActionSystemdUnit from a JSON string -hook_action_systemd_unit_instance = HookActionSystemdUnit.from_json(json) -# print the JSON string representation of the object -print(HookActionSystemdUnit.to_json()) - -# convert the object into a dict -hook_action_systemd_unit_dict = hook_action_systemd_unit_instance.to_dict() -# create an instance of HookActionSystemdUnit from a dict -hook_action_systemd_unit_from_dict = HookActionSystemdUnit.from_dict(hook_action_systemd_unit_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/HookCondition.md b/docs/HookCondition.md new file mode 100644 index 0000000..7569e32 --- /dev/null +++ b/docs/HookCondition.md @@ -0,0 +1,30 @@ +# HookCondition + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**path** | **str** | The absolute path to a file or directory that must have changed as condition for the action to be performed. | +**op** | [**List[FileOperation]**](FileOperation.md) | The operation(s) on files at or below the path that satisfy the path condition. | + +## Example + +```python +from flightctl.models.hook_condition import HookCondition + +# TODO update the JSON string below +json = "{}" +# create an instance of HookCondition from a JSON string +hook_condition_instance = HookCondition.from_json(json) +# print the JSON string representation of the object +print(HookCondition.to_json()) + +# convert the object into a dict +hook_condition_dict = hook_condition_instance.to_dict() +# create an instance of HookCondition from a dict +hook_condition_from_dict = HookCondition.from_dict(hook_condition_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/HookConditionPathOp.md b/docs/HookConditionPathOp.md new file mode 100644 index 0000000..d3431ce --- /dev/null +++ b/docs/HookConditionPathOp.md @@ -0,0 +1,30 @@ +# HookConditionPathOp + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**path** | **str** | The absolute path to a file or directory that must have changed as condition for the action to be performed. | +**op** | [**List[FileOperation]**](FileOperation.md) | The operation(s) on files at or below the path that satisfy the path condition. | + +## Example + +```python +from flightctl.models.hook_condition_path_op import HookConditionPathOp + +# TODO update the JSON string below +json = "{}" +# create an instance of HookConditionPathOp from a JSON string +hook_condition_path_op_instance = HookConditionPathOp.from_json(json) +# print the JSON string representation of the object +print(HookConditionPathOp.to_json()) + +# convert the object into a dict +hook_condition_path_op_dict = hook_condition_path_op_instance.to_dict() +# create an instance of HookConditionPathOp from a dict +hook_condition_path_op_from_dict = HookConditionPathOp.from_dict(hook_condition_path_op_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/HttpConfig.md b/docs/HttpConfig.md index 9132797..f3bc055 100644 --- a/docs/HttpConfig.md +++ b/docs/HttpConfig.md @@ -1,17 +1,18 @@ # HttpConfig +Configuration for HTTP transport. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**username** | **str** | The username for auth with HTTP transport | [optional] -**password** | **str** | The password for auth with HTTP transport | [optional] -**tls_crt** | **str** | Base64 encoded TLS cert data | [optional] -**tls_key** | **str** | Base64 encoded TLS cert key | [optional] -**ca_crt** | **str** | Base64 encoded root CA | [optional] -**skip_server_verification** | **bool** | Skip remote server verification | [optional] -**token** | **str** | The token for auth with HTTP transport | [optional] +**username** | **str** | The username for auth with HTTP transport. | [optional] +**password** | **str** | The password for auth with HTTP transport. | [optional] +**tls_crt** | **str** | Base64 encoded TLS cert data. | [optional] +**tls_key** | **str** | Base64 encoded TLS cert key. | [optional] +**ca_crt** | **str** | Base64 encoded root CA. | [optional] +**skip_server_verification** | **bool** | Skip remote server verification. | [optional] +**token** | **str** | The token for auth with HTTP transport. | [optional] ## Example diff --git a/docs/HttpConfigProviderSpec.md b/docs/HttpConfigProviderSpec.md index ab04ea3..b9af5a4 100644 --- a/docs/HttpConfigProviderSpec.md +++ b/docs/HttpConfigProviderSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **str** | The name of the config provider | +**name** | **str** | The name of the config provider. | **http_ref** | [**HttpConfigProviderSpecHttpRef**](HttpConfigProviderSpecHttpRef.md) | | ## Example diff --git a/docs/HttpConfigProviderSpecHttpRef.md b/docs/HttpConfigProviderSpecHttpRef.md index 1862922..085710b 100644 --- a/docs/HttpConfigProviderSpecHttpRef.md +++ b/docs/HttpConfigProviderSpecHttpRef.md @@ -1,13 +1,14 @@ # HttpConfigProviderSpecHttpRef +The reference to an HTTP configuration server. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**repository** | **str** | The name of the repository resource to use as the sync source | -**suffix** | **str** | Part of the URL that comes after the base URL. It can include query parameters such as: /path/to/endpoint?query=param | [optional] -**file_path** | **str** | The path of the file where the response is stored in the filesystem of the device. | +**repository** | **str** | The name of the repository resource to use as the sync source. | +**suffix** | **str** | Part of the URL that comes after the base URL. It can include query parameters such as: \"/path/to/endpoint?query=param\". | [optional] +**file_path** | **str** | Path in the device's file system to which the content returned by the HTTP sever should be written. | ## Example diff --git a/docs/HttpRepoSpec.md b/docs/HttpRepoSpec.md index ccf1c5b..cc52014 100644 --- a/docs/HttpRepoSpec.md +++ b/docs/HttpRepoSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**url** | **str** | The HTTP URL to call or clone from | +**url** | **str** | The HTTP URL to call or clone from. | **type** | [**RepoSpecType**](RepoSpecType.md) | | **http_config** | [**HttpConfig**](HttpConfig.md) | | **validation_suffix** | **str** | URL suffix used only for validating access to the repository. Users might use the URL field as a root URL to be used by config sources adding suffixes. This will help with the validation of the http endpoint. | [optional] diff --git a/docs/ImageApplicationProvider.md b/docs/ImageApplicationProvider.md index be12667..756e886 100644 --- a/docs/ImageApplicationProvider.md +++ b/docs/ImageApplicationProvider.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**image** | **str** | Reference to the container image for the application package | +**image** | **str** | Reference to the container image for the application package. | ## Example diff --git a/docs/InlineConfigProviderSpec.md b/docs/InlineConfigProviderSpec.md index e64aea5..c96687a 100644 --- a/docs/InlineConfigProviderSpec.md +++ b/docs/InlineConfigProviderSpec.md @@ -5,8 +5,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **str** | The name of the config provider | -**inline** | [**List[FileSpec]**](FileSpec.md) | | +**name** | **str** | The name of the config provider. | +**inline** | [**List[FileSpec]**](FileSpec.md) | A list of files to create on the device. | ## Example diff --git a/docs/KubernetesSecretProviderSpec.md b/docs/KubernetesSecretProviderSpec.md index 3ed9025..77be2ee 100644 --- a/docs/KubernetesSecretProviderSpec.md +++ b/docs/KubernetesSecretProviderSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **str** | The name of the config provider | +**name** | **str** | The name of the config provider. | **secret_ref** | [**KubernetesSecretProviderSpecSecretRef**](KubernetesSecretProviderSpecSecretRef.md) | | ## Example diff --git a/docs/KubernetesSecretProviderSpecSecretRef.md b/docs/KubernetesSecretProviderSpecSecretRef.md index b67bd7d..f77d007 100644 --- a/docs/KubernetesSecretProviderSpecSecretRef.md +++ b/docs/KubernetesSecretProviderSpecSecretRef.md @@ -1,13 +1,14 @@ # KubernetesSecretProviderSpecSecretRef +The reference to a Kubernetes secret. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **str** | | -**namespace** | **str** | | -**mount_path** | **str** | | +**name** | **str** | The name of the secret. | +**namespace** | **str** | The namespace of the secret. | +**mount_path** | **str** | Path in the device's file system at which the secret should be mounted. | ## Example diff --git a/docs/LabelSelector.md b/docs/LabelSelector.md index 723d150..bc53f11 100644 --- a/docs/LabelSelector.md +++ b/docs/LabelSelector.md @@ -1,13 +1,13 @@ # LabelSelector -A map of key,value pairs that are ANDed. Empty/null label selectors match nothing. +A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. Empty/null label selectors match nothing. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**match_labels** | **Dict[str, str]** | | [optional] -**match_expressions** | [**List[MatchExpression]**](MatchExpression.md) | | [optional] +**match_labels** | **Dict[str, str]** | A map of {key,value} pairs. | [optional] +**match_expressions** | [**List[MatchExpression]**](MatchExpression.md) | A list of match expressions. | [optional] ## Example diff --git a/docs/ListMeta.md b/docs/ListMeta.md index 398f973..a7b9a2a 100644 --- a/docs/ListMeta.md +++ b/docs/ListMeta.md @@ -6,8 +6,8 @@ ListMeta describes metadata that synthetic resources must have, including lists Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**var_continue** | **str** | continue may be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message. | [optional] -**remaining_item_count** | **int** | remainingItemCount is the number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact. | [optional] +**var_continue** | **str** | May be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message. | [optional] +**remaining_item_count** | **int** | The number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact. | [optional] ## Example diff --git a/docs/MatchExpression.md b/docs/MatchExpression.md index a344a6c..dad8c6b 100644 --- a/docs/MatchExpression.md +++ b/docs/MatchExpression.md @@ -5,9 +5,9 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**key** | **str** | | -**operator** | **str** | | -**values** | **List[str]** | | [optional] +**key** | **str** | The label key that the selector applies to. | +**operator** | **str** | The operation to apply when matching. | +**values** | **List[str]** | The list of values to match. | [optional] ## Example diff --git a/docs/MemoryResourceMonitorSpec.md b/docs/MemoryResourceMonitorSpec.md index 4651b3e..9f0f619 100644 --- a/docs/MemoryResourceMonitorSpec.md +++ b/docs/MemoryResourceMonitorSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**monitor_type** | **str** | | +**monitor_type** | **str** | The type of resource to monitor. | **alert_rules** | [**List[ResourceAlertRule]**](ResourceAlertRule.md) | Array of alert rules. Only one alert per severity is allowed. | **sampling_interval** | **str** | Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours. | diff --git a/docs/ObjectMeta.md b/docs/ObjectMeta.md index 988d4aa..d7ef2a4 100644 --- a/docs/ObjectMeta.md +++ b/docs/ObjectMeta.md @@ -6,9 +6,9 @@ ObjectMeta is metadata that all persisted resources must have, which includes al Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**creation_timestamp** | **datetime** | | [optional] -**deletion_timestamp** | **datetime** | | [optional] -**name** | **str** | name of the object | [optional] +**creation_timestamp** | **datetime** | The time the object was created. | [optional] +**deletion_timestamp** | **datetime** | The time the object will be deleted. | [optional] +**name** | **str** | The name of the object. | [optional] **labels** | **Dict[str, str]** | Map of string keys and values that can be used to organize and categorize (scope and select) objects. | [optional] **generation** | **int** | A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. | [optional] **owner** | **str** | A resource that owns this resource, in \"kind/name\" format. | [optional] diff --git a/docs/RenderedApplicationSpec.md b/docs/RenderedApplicationSpec.md deleted file mode 100644 index 7e8ae75..0000000 --- a/docs/RenderedApplicationSpec.md +++ /dev/null @@ -1,31 +0,0 @@ -# RenderedApplicationSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**env_vars** | **Dict[str, str]** | Environment variable key-value pairs, injected during runtime | [optional] -**name** | **str** | | [optional] -**image** | **str** | Reference to the container image for the application package | - -## Example - -```python -from flightctl.models.rendered_application_spec import RenderedApplicationSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of RenderedApplicationSpec from a JSON string -rendered_application_spec_instance = RenderedApplicationSpec.from_json(json) -# print the JSON string representation of the object -print(RenderedApplicationSpec.to_json()) - -# convert the object into a dict -rendered_application_spec_dict = rendered_application_spec_instance.to_dict() -# create an instance of RenderedApplicationSpec from a dict -rendered_application_spec_from_dict = RenderedApplicationSpec.from_dict(rendered_application_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/RenderedDeviceSpec.md b/docs/RenderedDeviceSpec.md deleted file mode 100644 index 33c7095..0000000 --- a/docs/RenderedDeviceSpec.md +++ /dev/null @@ -1,36 +0,0 @@ -# RenderedDeviceSpec - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**rendered_version** | **str** | | -**os** | [**DeviceOSSpec**](DeviceOSSpec.md) | | [optional] -**config** | **str** | | [optional] -**applications** | [**List[RenderedApplicationSpec]**](RenderedApplicationSpec.md) | | [optional] -**hooks** | [**DeviceHooksSpec**](DeviceHooksSpec.md) | | [optional] -**systemd** | [**RenderedDeviceSpecSystemd**](RenderedDeviceSpecSystemd.md) | | [optional] -**resources** | [**List[ResourceMonitor]**](ResourceMonitor.md) | Array of resource monitor configurations. | [optional] -**console** | [**DeviceConsole**](DeviceConsole.md) | | [optional] - -## Example - -```python -from flightctl.models.rendered_device_spec import RenderedDeviceSpec - -# TODO update the JSON string below -json = "{}" -# create an instance of RenderedDeviceSpec from a JSON string -rendered_device_spec_instance = RenderedDeviceSpec.from_json(json) -# print the JSON string representation of the object -print(RenderedDeviceSpec.to_json()) - -# convert the object into a dict -rendered_device_spec_dict = rendered_device_spec_instance.to_dict() -# create an instance of RenderedDeviceSpec from a dict -rendered_device_spec_from_dict = RenderedDeviceSpec.from_dict(rendered_device_spec_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/RenderedDeviceSpecSystemd.md b/docs/RenderedDeviceSpecSystemd.md deleted file mode 100644 index 9f32969..0000000 --- a/docs/RenderedDeviceSpecSystemd.md +++ /dev/null @@ -1,29 +0,0 @@ -# RenderedDeviceSpecSystemd - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**match_patterns** | **List[str]** | | [optional] - -## Example - -```python -from flightctl.models.rendered_device_spec_systemd import RenderedDeviceSpecSystemd - -# TODO update the JSON string below -json = "{}" -# create an instance of RenderedDeviceSpecSystemd from a JSON string -rendered_device_spec_systemd_instance = RenderedDeviceSpecSystemd.from_json(json) -# print the JSON string representation of the object -print(RenderedDeviceSpecSystemd.to_json()) - -# convert the object into a dict -rendered_device_spec_systemd_dict = rendered_device_spec_systemd_instance.to_dict() -# create an instance of RenderedDeviceSpecSystemd from a dict -rendered_device_spec_systemd_from_dict = RenderedDeviceSpecSystemd.from_dict(rendered_device_spec_systemd_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/docs/RepoSpecType.md b/docs/RepoSpecType.md index 4a89267..a5a5770 100644 --- a/docs/RepoSpecType.md +++ b/docs/RepoSpecType.md @@ -1,6 +1,6 @@ # RepoSpecType -RepoSpecType is the type of the repository +RepoSpecType is the type of the repository. ## Enum diff --git a/docs/Repository.md b/docs/Repository.md index 657b89b..027a431 100644 --- a/docs/Repository.md +++ b/docs/Repository.md @@ -1,15 +1,15 @@ # Repository -Repository represents a Git repository or an HTTP endpoint +Repository represents a Git repository or an HTTP endpoint. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | -**spec** | [**RepositorySpec**](RepositorySpec.md) | | [optional] +**spec** | [**RepositorySpec**](RepositorySpec.md) | | **status** | [**RepositoryStatus**](RepositoryStatus.md) | | [optional] ## Example diff --git a/docs/RepositoryApi.md b/docs/RepositoryApi.md index 0f5c76f..2243510 100644 --- a/docs/RepositoryApi.md +++ b/docs/RepositoryApi.md @@ -18,7 +18,7 @@ Method | HTTP request | Description -create a repository +Create a Repository resource. ### Example @@ -79,7 +79,9 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -88,7 +90,7 @@ No authorization required -delete a collection of Repositories +Delete Repository resources. ### Example @@ -144,6 +146,8 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -152,7 +156,7 @@ No authorization required -delete a repository +Delete a Repository resource. ### Example @@ -174,7 +178,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.RepositoryApi(api_client) - name = 'name_example' # str | name of the repository + name = 'name_example' # str | The name of the Repository resource to delete. try: api_response = api_instance.delete_repository(name) @@ -191,7 +195,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the repository | + **name** | **str**| The name of the Repository resource to delete. | ### Return type @@ -212,16 +216,18 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **list_repositories** -> RepositoryList list_repositories(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) +> RepositoryList list_repositories(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) -list repositories +List Repository resources. ### Example @@ -229,7 +235,6 @@ list repositories ```python import flightctl from flightctl.models.repository_list import RepositoryList -from flightctl.models.sort_order import SortOrder from flightctl.rest import ApiException from pprint import pprint @@ -246,13 +251,11 @@ with flightctl.ApiClient(configuration) as api_client: api_instance = flightctl.RepositoryApi(api_client) var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) try: - api_response = api_instance.list_repositories(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) + api_response = api_instance.list_repositories(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) print("The response of RepositoryApi->list_repositories:\n") pprint(api_response) except Exception as e: @@ -268,10 +271,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] ### Return type @@ -293,15 +294,17 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **patch_repository** -> Repository patch_repository(name, patch_request_inner=patch_request_inner) +> Repository patch_repository(name, patch_request_inner) -Patches the specified repository +Patch a Repository resource. ### Example @@ -324,11 +327,11 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.RepositoryApi(api_client) - name = 'name_example' # str | name of the repository - patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | (optional) + name = 'name_example' # str | The name of the Repository resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | try: - api_response = api_instance.patch_repository(name, patch_request_inner=patch_request_inner) + api_response = api_instance.patch_repository(name, patch_request_inner) print("The response of RepositoryApi->patch_repository:\n") pprint(api_response) except Exception as e: @@ -342,8 +345,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the repository | - **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | [optional] + **name** | **str**| The name of the Repository resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | ### Return type @@ -365,8 +368,10 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -375,7 +380,7 @@ No authorization required -read the specified repository +Get a Repository resource. ### Example @@ -397,7 +402,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.RepositoryApi(api_client) - name = 'name_example' # str | name of the repository + name = 'name_example' # str | The name of the Repository resource to get. try: api_response = api_instance.read_repository(name) @@ -414,7 +419,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the repository | + **name** | **str**| The name of the Repository resource to get. | ### Return type @@ -435,7 +440,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -444,7 +451,7 @@ No authorization required -replace the specified repository +Update a Repository resource. ### Example @@ -466,7 +473,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.RepositoryApi(api_client) - name = 'name_example' # str | name of the repository + name = 'name_example' # str | The name of the Repository resource to update. repository = flightctl.Repository() # Repository | try: @@ -484,7 +491,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the repository | + **name** | **str**| The name of the Repository resource to update. | **repository** | [**Repository**](Repository.md)| | ### Return type @@ -508,8 +515,10 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/RepositoryList.md b/docs/RepositoryList.md index fea8067..36abd80 100644 --- a/docs/RepositoryList.md +++ b/docs/RepositoryList.md @@ -6,8 +6,8 @@ RepositoryList is a list of Repositories. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[Repository]**](Repository.md) | List of repositories. | diff --git a/docs/RepositorySpec.md b/docs/RepositorySpec.md index 8b28e96..71295d4 100644 --- a/docs/RepositorySpec.md +++ b/docs/RepositorySpec.md @@ -1,11 +1,12 @@ # RepositorySpec +RepositorySpec describes a configuration repository. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**url** | **str** | The SSH Git repository URL to clone from | +**url** | **str** | The SSH Git repository URL to clone from. | **type** | [**RepoSpecType**](RepoSpecType.md) | | **http_config** | [**HttpConfig**](HttpConfig.md) | | **validation_suffix** | **str** | URL suffix used only for validating access to the repository. Users might use the URL field as a root URL to be used by config sources adding suffixes. This will help with the validation of the http endpoint. | [optional] diff --git a/docs/RepositoryStatus.md b/docs/RepositoryStatus.md index 1fcae76..ab38388 100644 --- a/docs/RepositoryStatus.md +++ b/docs/RepositoryStatus.md @@ -1,6 +1,6 @@ # RepositoryStatus -RepositoryStatus represents information about the status of a repository. Status may trail the actual state of a repository. +RepositoryStatus represents information about the status of a repository. ## Properties diff --git a/docs/ResourceAlertSeverityType.md b/docs/ResourceAlertSeverityType.md index b8fde9a..5a1e229 100644 --- a/docs/ResourceAlertSeverityType.md +++ b/docs/ResourceAlertSeverityType.md @@ -1,5 +1,6 @@ # ResourceAlertSeverityType +Severity of the alert. ## Enum diff --git a/docs/ResourceMonitor.md b/docs/ResourceMonitor.md index d5ffed2..8c1336c 100644 --- a/docs/ResourceMonitor.md +++ b/docs/ResourceMonitor.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**monitor_type** | **str** | | +**monitor_type** | **str** | The type of resource to monitor. | **alert_rules** | [**List[ResourceAlertRule]**](ResourceAlertRule.md) | Array of alert rules. Only one alert per severity is allowed. | **sampling_interval** | **str** | Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours. | **path** | **str** | The directory path to monitor for disk usage. | diff --git a/docs/ResourceMonitorSpec.md b/docs/ResourceMonitorSpec.md index 79756d0..7e028fd 100644 --- a/docs/ResourceMonitorSpec.md +++ b/docs/ResourceMonitorSpec.md @@ -1,11 +1,12 @@ # ResourceMonitorSpec +Specification for monitoring a resource. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**monitor_type** | **str** | | +**monitor_type** | **str** | The type of resource to monitor. | **alert_rules** | [**List[ResourceAlertRule]**](ResourceAlertRule.md) | Array of alert rules. Only one alert per severity is allowed. | **sampling_interval** | **str** | Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours. | diff --git a/docs/ResourceSync.md b/docs/ResourceSync.md index 02fcae6..df3e21e 100644 --- a/docs/ResourceSync.md +++ b/docs/ResourceSync.md @@ -1,13 +1,13 @@ # ResourceSync -ResourceSync represents a reference to one or more files in a repository to sync to resource definitions +ResourceSync represents a reference to one or more files in a repository to sync to resource definitions. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | **spec** | [**ResourceSyncSpec**](ResourceSyncSpec.md) | | **status** | [**ResourceSyncStatus**](ResourceSyncStatus.md) | | [optional] diff --git a/docs/ResourceSyncList.md b/docs/ResourceSyncList.md index 75f1ba4..d16cd23 100644 --- a/docs/ResourceSyncList.md +++ b/docs/ResourceSyncList.md @@ -5,8 +5,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[ResourceSync]**](ResourceSync.md) | List of resourcesync. | diff --git a/docs/ResourceSyncSpec.md b/docs/ResourceSyncSpec.md index 47a21f0..b33ec2a 100644 --- a/docs/ResourceSyncSpec.md +++ b/docs/ResourceSyncSpec.md @@ -1,13 +1,14 @@ # ResourceSyncSpec +ResourceSyncSpec describes the file(s) to sync from a repository. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**repository** | **str** | The name of the repository resource to use as the sync source | -**target_revision** | **str** | The desired revision in the repository | -**path** | **str** | The path of a file or directory in the repository. If a directory, the directory should contain only resource definitions with no subdirectories. Each file should contain the definition of one or more resources. | +**repository** | **str** | The name of the repository resource to use as the sync source. | +**target_revision** | **str** | The desired revision in the repository. | +**path** | **str** | The path of a file or directory in the repository. If a directory, the directory should contain only resource definitions with no subdirectories. Each file should contain the definition of one or more resources. | ## Example diff --git a/docs/ResourceSyncStatus.md b/docs/ResourceSyncStatus.md index c968320..f9d0504 100644 --- a/docs/ResourceSyncStatus.md +++ b/docs/ResourceSyncStatus.md @@ -1,13 +1,13 @@ # ResourceSyncStatus -ResourceSyncStatus represents information about the status of a resourcesync +ResourceSyncStatus represents information about the status of a ResourceSync. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**observed_commit** | **str** | The last commit hash that was synced | [optional] -**observed_generation** | **int** | The last generation that was synced | [optional] +**observed_commit** | **str** | The last commit hash that was synced. | [optional] +**observed_generation** | **int** | The last generation that was synced. | [optional] **conditions** | [**List[Condition]**](Condition.md) | Current state of a resourcesync. | ## Example diff --git a/docs/ResourcesyncApi.md b/docs/ResourcesyncApi.md index 5cfa071..a3ad4b3 100644 --- a/docs/ResourcesyncApi.md +++ b/docs/ResourcesyncApi.md @@ -18,7 +18,7 @@ Method | HTTP request | Description -create a resourcesync +Create a ResourceSync resource. ### Example @@ -79,7 +79,9 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **409** | StatusConflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -88,7 +90,7 @@ No authorization required -delete a resourcesync +Delete a ResourceSync resource. ### Example @@ -110,7 +112,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.ResourcesyncApi(api_client) - name = 'name_example' # str | name of the resourcesync + name = 'name_example' # str | The name of the ResourceSync resource to delete. try: api_response = api_instance.delete_resource_sync(name) @@ -127,7 +129,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the resourcesync | + **name** | **str**| The name of the ResourceSync resource to delete. | ### Return type @@ -148,7 +150,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -157,7 +161,7 @@ No authorization required -delete a collection of ResourceSync +Delete ResourceSync resources. ### Example @@ -213,15 +217,17 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **list_resource_sync** -> ResourceSyncList list_resource_sync(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, repository=repository, sort_by=sort_by, sort_order=sort_order) +> ResourceSyncList list_resource_sync(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) -list resourcesync +List ResourceSync resources. ### Example @@ -229,7 +235,6 @@ list resourcesync ```python import flightctl from flightctl.models.resource_sync_list import ResourceSyncList -from flightctl.models.sort_order import SortOrder from flightctl.rest import ApiException from pprint import pprint @@ -246,14 +251,11 @@ with flightctl.ApiClient(configuration) as api_client: api_instance = flightctl.ResourcesyncApi(api_client) var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation. (optional) + field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). (optional) limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - repository = 'repository_example' # str | The name of the repository to filter results by. (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) try: - api_response = api_instance.list_resource_sync(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, repository=repository, sort_by=sort_by, sort_order=sort_order) + api_response = api_instance.list_resource_sync(var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit) print("The response of ResourcesyncApi->list_resource_sync:\n") pprint(api_response) except Exception as e: @@ -269,11 +271,8 @@ Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation. | [optional] + **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). | [optional] **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **repository** | **str**| The name of the repository to filter results by. | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] ### Return type @@ -295,15 +294,17 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **patch_resource_sync** -> ResourceSync patch_resource_sync(name, patch_request_inner=patch_request_inner) +> ResourceSync patch_resource_sync(name, patch_request_inner) -Patches the specified resourcesync +Patch a ResourceSync resource. ### Example @@ -326,11 +327,11 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.ResourcesyncApi(api_client) - name = 'name_example' # str | name of the resourcesync - patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | (optional) + name = 'name_example' # str | The name of the ResourceSync resource to patch. + patch_request_inner = [flightctl.PatchRequestInner()] # List[PatchRequestInner] | try: - api_response = api_instance.patch_resource_sync(name, patch_request_inner=patch_request_inner) + api_response = api_instance.patch_resource_sync(name, patch_request_inner) print("The response of ResourcesyncApi->patch_resource_sync:\n") pprint(api_response) except Exception as e: @@ -344,8 +345,8 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the resourcesync | - **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | [optional] + **name** | **str**| The name of the ResourceSync resource to patch. | + **patch_request_inner** | [**List[PatchRequestInner]**](PatchRequestInner.md)| | ### Return type @@ -367,8 +368,10 @@ No authorization required **200** | OK | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -377,7 +380,7 @@ No authorization required -read the specified resourcesync +Get a ResourceSync resource. ### Example @@ -399,7 +402,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.ResourcesyncApi(api_client) - name = 'name_example' # str | name of the resourcesync + name = 'name_example' # str | The name of the ResourceSync resource to get. try: api_response = api_instance.read_resource_sync(name) @@ -416,7 +419,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the resourcesync | + **name** | **str**| The name of the ResourceSync resource to get. | ### Return type @@ -437,7 +440,9 @@ No authorization required |-------------|-------------|------------------| **200** | OK | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) @@ -446,7 +451,7 @@ No authorization required -replace the specified resourcesync +Update a ResourceSync resource. ### Example @@ -468,7 +473,7 @@ configuration = flightctl.Configuration( with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = flightctl.ResourcesyncApi(api_client) - name = 'name_example' # str | name of the resourcesync + name = 'name_example' # str | The name of the ResourceSync resource to update. resource_sync = flightctl.ResourceSync() # ResourceSync | try: @@ -486,7 +491,7 @@ with flightctl.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **name** | **str**| name of the resourcesync | + **name** | **str**| The name of the ResourceSync resource to update. | **resource_sync** | [**ResourceSync**](ResourceSync.md)| | ### Return type @@ -510,8 +515,10 @@ No authorization required **201** | Created | - | **400** | Bad Request | - | **401** | Unauthorized | - | +**403** | Forbidden | - | **404** | NotFound | - | **409** | Conflict | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/docs/RolloutDeviceSelection.md b/docs/RolloutDeviceSelection.md index 02bb96d..421304d 100644 --- a/docs/RolloutDeviceSelection.md +++ b/docs/RolloutDeviceSelection.md @@ -1,12 +1,13 @@ # RolloutDeviceSelection +Describes how to select devices for rollout. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**strategy** | **str** | | -**sequence** | [**List[Batch]**](Batch.md) | | [optional] +**strategy** | [**RolloutStrategy**](RolloutStrategy.md) | | +**sequence** | [**List[Batch]**](Batch.md) | A list of batch definitions. | [optional] ## Example diff --git a/docs/RolloutPolicy.md b/docs/RolloutPolicy.md index 1786973..3c82f71 100644 --- a/docs/RolloutPolicy.md +++ b/docs/RolloutPolicy.md @@ -6,10 +6,10 @@ RolloutPolicy is the rollout policy of the fleet. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**disruption_allowance** | [**DisruptionAllowance**](DisruptionAllowance.md) | | [optional] +**disruption_budget** | [**DisruptionBudget**](DisruptionBudget.md) | | [optional] **device_selection** | [**RolloutDeviceSelection**](RolloutDeviceSelection.md) | | [optional] **success_threshold** | **str** | Percentage is the string format representing percentage string. | [optional] -**default_update_timeout** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days | [optional] +**default_update_timeout** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: `s` for seconds, `m` for minutes, `h` for hours. | [optional] [default to '0s'] ## Example diff --git a/docs/SortOrder.md b/docs/RolloutStrategy.md similarity index 58% rename from docs/SortOrder.md rename to docs/RolloutStrategy.md index 06a059b..364cc64 100644 --- a/docs/SortOrder.md +++ b/docs/RolloutStrategy.md @@ -1,12 +1,10 @@ -# SortOrder +# RolloutStrategy -Specifies the sort order. +The strategy of choice for device selection in rollout policy. ## Enum -* `ASC` (value: `'Asc'`) - -* `DESC` (value: `'Desc'`) +* `BATCHSEQUENCE` (value: `'BatchSequence'`) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/SshConfig.md b/docs/SshConfig.md index 12928ba..811b29a 100644 --- a/docs/SshConfig.md +++ b/docs/SshConfig.md @@ -1,13 +1,14 @@ # SshConfig +Configuration for SSH transport. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**ssh_private_key** | **str** | Base64 encoded private SSH key | [optional] -**private_key_passphrase** | **str** | The passphrase for sshPrivateKey | [optional] -**skip_server_verification** | **bool** | Skip remote server verification | [optional] +**ssh_private_key** | **str** | Base64 encoded private SSH key. | [optional] +**private_key_passphrase** | **str** | The passphrase for sshPrivateKey. | [optional] +**skip_server_verification** | **bool** | Skip remote server verification. | [optional] ## Example diff --git a/docs/SshRepoSpec.md b/docs/SshRepoSpec.md index 3a3dad4..72f6002 100644 --- a/docs/SshRepoSpec.md +++ b/docs/SshRepoSpec.md @@ -5,7 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**url** | **str** | The SSH Git repository URL to clone from | +**url** | **str** | The SSH Git repository URL to clone from. | **type** | [**RepoSpecType**](RepoSpecType.md) | | **ssh_config** | [**SshConfig**](SshConfig.md) | | diff --git a/docs/Status.md b/docs/Status.md index 4c1e08d..0150458 100644 --- a/docs/Status.md +++ b/docs/Status.md @@ -6,9 +6,12 @@ Status is a return value for calls that don't return other objects. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**message** | **str** | A human-readable description of the status of this operation. | [optional] -**reason** | **str** | A machine-readable description of why this operation is in the \"Failure\" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it. | [optional] -**status** | **str** | Status of the operation. One of: \"Success\" or \"Failure\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status | [optional] +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | +**code** | **int** | Suggested HTTP return code for this status, 0 if not set. | +**message** | **str** | A human-readable description of the status of this operation. | +**reason** | **str** | A machine-readable description of why this operation is in the \"Failure\" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it. | +**status** | **str** | Status of the operation. One of: \"Success\" or \"Failure\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. | ## Example diff --git a/docs/TemplateVersion.md b/docs/TemplateVersion.md index b7baa5f..8180e75 100644 --- a/docs/TemplateVersion.md +++ b/docs/TemplateVersion.md @@ -6,8 +6,8 @@ TemplateVersion represents a version of a template. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ObjectMeta**](ObjectMeta.md) | | **spec** | [**TemplateVersionSpec**](TemplateVersionSpec.md) | | **status** | [**TemplateVersionStatus**](TemplateVersionStatus.md) | | [optional] diff --git a/docs/TemplateVersionList.md b/docs/TemplateVersionList.md index c00f929..e9a96fd 100644 --- a/docs/TemplateVersionList.md +++ b/docs/TemplateVersionList.md @@ -6,8 +6,8 @@ TemplateVersionList is a list of TemplateVersions. Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | +**api_version** | **str** | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources. | +**kind** | **str** | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds. | **metadata** | [**ListMeta**](ListMeta.md) | | **items** | [**List[TemplateVersion]**](TemplateVersion.md) | List of TemplateVersions. | diff --git a/docs/TemplateVersionSpec.md b/docs/TemplateVersionSpec.md index 272dcd9..dfea45e 100644 --- a/docs/TemplateVersionSpec.md +++ b/docs/TemplateVersionSpec.md @@ -1,5 +1,6 @@ # TemplateVersionSpec +TemplateVersionSpec describes a version of a device template. ## Properties diff --git a/docs/TemplateVersionStatus.md b/docs/TemplateVersionStatus.md index 996efc9..e539a4d 100644 --- a/docs/TemplateVersionStatus.md +++ b/docs/TemplateVersionStatus.md @@ -1,18 +1,21 @@ # TemplateVersionStatus +TemplateVersionStatus represents information about the status of a template version. ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**os** | [**DeviceOSSpec**](DeviceOSSpec.md) | | [optional] +**update_policy** | [**DeviceUpdatePolicySpec**](DeviceUpdatePolicySpec.md) | | [optional] +**os** | [**DeviceOsSpec**](DeviceOsSpec.md) | | [optional] **config** | [**List[ConfigProviderSpec]**](ConfigProviderSpec.md) | List of config providers. | [optional] -**hooks** | [**DeviceHooksSpec**](DeviceHooksSpec.md) | | [optional] -**applications** | [**List[ApplicationSpec]**](ApplicationSpec.md) | List of applications. | [optional] +**applications** | [**List[ApplicationProviderSpec]**](ApplicationProviderSpec.md) | List of application providers. | [optional] **systemd** | [**DeviceSpecSystemd**](DeviceSpecSystemd.md) | | [optional] **resources** | [**List[ResourceMonitor]**](ResourceMonitor.md) | Array of resource monitor configurations. | [optional] -**updated_at** | **datetime** | | [optional] -**conditions** | [**List[Condition]**](Condition.md) | Current state of the device. | [optional] +**consoles** | [**List[DeviceConsole]**](DeviceConsole.md) | The list of active console sessions. | [optional] +**decommissioning** | [**DeviceDecommission**](DeviceDecommission.md) | | [optional] +**updated_at** | **datetime** | The time at which the template was last updated. | [optional] +**conditions** | [**List[Condition]**](Condition.md) | Current state of the device. | ## Example diff --git a/docs/TemplateversionApi.md b/docs/TemplateversionApi.md deleted file mode 100644 index 06b7f99..0000000 --- a/docs/TemplateversionApi.md +++ /dev/null @@ -1,304 +0,0 @@ -# flightctl.TemplateversionApi - -All URIs are relative to *http://localhost* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**delete_template_version**](TemplateversionApi.md#delete_template_version) | **DELETE** /api/v1/fleets/{fleet}/templateversions/{name} | -[**delete_template_versions**](TemplateversionApi.md#delete_template_versions) | **DELETE** /api/v1/fleets/{fleet}/templateversions | -[**list_template_versions**](TemplateversionApi.md#list_template_versions) | **GET** /api/v1/fleets/{fleet}/templateversions | -[**read_template_version**](TemplateversionApi.md#read_template_version) | **GET** /api/v1/fleets/{fleet}/templateversions/{name} | - - -# **delete_template_version** -> TemplateVersion delete_template_version(fleet, name) - - - -delete a template version - -### Example - - -```python -import flightctl -from flightctl.models.template_version import TemplateVersion -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.TemplateversionApi(api_client) - fleet = 'fleet_example' # str | The owner of the template version. - name = 'name_example' # str | name of the template version. - - try: - api_response = api_instance.delete_template_version(fleet, name) - print("The response of TemplateversionApi->delete_template_version:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling TemplateversionApi->delete_template_version: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fleet** | **str**| The owner of the template version. | - **name** | **str**| name of the template version. | - -### Return type - -[**TemplateVersion**](TemplateVersion.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**401** | Unauthorized | - | -**404** | NotFound | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **delete_template_versions** -> Status delete_template_versions(fleet) - - - -delete a collection of template versions - -### Example - - -```python -import flightctl -from flightctl.models.status import Status -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.TemplateversionApi(api_client) - fleet = 'fleet_example' # str | The owner of the template versions. - - try: - api_response = api_instance.delete_template_versions(fleet) - print("The response of TemplateversionApi->delete_template_versions:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling TemplateversionApi->delete_template_versions: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fleet** | **str**| The owner of the template versions. | - -### Return type - -[**Status**](Status.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**401** | Unauthorized | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **list_template_versions** -> TemplateVersionList list_template_versions(fleet, var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) - - - -list template versions - -### Example - - -```python -import flightctl -from flightctl.models.sort_order import SortOrder -from flightctl.models.template_version_list import TemplateVersionList -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.TemplateversionApi(api_client) - fleet = 'fleet_example' # str | The owner of the template versions. - var_continue = 'var_continue_example' # str | An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. (optional) - label_selector = 'label_selector_example' # str | A selector to restrict the list of returned objects by their labels. Defaults to everything. (optional) - field_selector = 'field_selector_example' # str | A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). (optional) - limit = 56 # int | The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. (optional) - sort_by = 'metadata.name' # str | Specifies the field to sort by. (optional) - sort_order = Asc # SortOrder | Specifies the sort order. (optional) (default to Asc) - - try: - api_response = api_instance.list_template_versions(fleet, var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, limit=limit, sort_by=sort_by, sort_order=sort_order) - print("The response of TemplateversionApi->list_template_versions:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling TemplateversionApi->list_template_versions: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fleet** | **str**| The owner of the template versions. | - **var_continue** | **str**| An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. | [optional] - **label_selector** | **str**| A selector to restrict the list of returned objects by their labels. Defaults to everything. | [optional] - **field_selector** | **str**| A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). | [optional] - **limit** | **int**| The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. | [optional] - **sort_by** | **str**| Specifies the field to sort by. | [optional] - **sort_order** | [**SortOrder**](.md)| Specifies the sort order. | [optional] [default to Asc] - -### Return type - -[**TemplateVersionList**](TemplateVersionList.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**400** | Bad Request | - | -**401** | Unauthorized | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **read_template_version** -> TemplateVersion read_template_version(fleet, name) - - - -read the specified template version - -### Example - - -```python -import flightctl -from flightctl.models.template_version import TemplateVersion -from flightctl.rest import ApiException -from pprint import pprint - -# Defining the host is optional and defaults to http://localhost -# See configuration.py for a list of all supported configuration parameters. -configuration = flightctl.Configuration( - host = "http://localhost" -) - - -# Enter a context with an instance of the API client -with flightctl.ApiClient(configuration) as api_client: - # Create an instance of the API class - api_instance = flightctl.TemplateversionApi(api_client) - fleet = 'fleet_example' # str | The owner of the template version. - name = 'name_example' # str | Name of the template version. - - try: - api_response = api_instance.read_template_version(fleet, name) - print("The response of TemplateversionApi->read_template_version:\n") - pprint(api_response) - except Exception as e: - print("Exception when calling TemplateversionApi->read_template_version: %s\n" % e) -``` - - - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fleet** | **str**| The owner of the template version. | - **name** | **str**| Name of the template version. | - -### Return type - -[**TemplateVersion**](TemplateVersion.md) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: Not defined - - **Accept**: application/json - -### HTTP response details - -| Status code | Description | Response headers | -|-------------|-------------|------------------| -**200** | OK | - | -**401** | Unauthorized | - | -**404** | NotFound | - | - -[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - diff --git a/docs/UpdateSchedule.md b/docs/UpdateSchedule.md new file mode 100644 index 0000000..93d19e9 --- /dev/null +++ b/docs/UpdateSchedule.md @@ -0,0 +1,32 @@ +# UpdateSchedule + +Defines the schedule for automatic downloading and updates, including timing and optional timeout. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**time_zone** | **str** | Time zone identifiers follow the IANA format AREA/LOCATION, where AREA represents a continent or ocean, and LOCATION specifies a particular site within that area, for example America/New_York, Europe/Paris. Only unambiguous 3-character time zones are supported (\"GMT\", \"UTC\"). | [optional] [default to 'Local'] +**at** | **str** | Cron expression format for scheduling times. The format is `* * * * *`: - Minutes: `*` matches 0-59. - Hours: `*` matches 0-23. - Day of Month: `*` matches 1-31. - Month: `*` matches 1-12. - Day of Week: `*` matches 0-6. Supported operators: - `*`: Matches any value (e.g., `*` in hours matches every hour). - `-`: Range (e.g., `0-8` for 12 AM to 8 AM). - `,`: List (e.g., `1,12` for 1st and 12th minute). - `/`: Step (e.g., `*/12` for every 12th minute). - Single value (e.g., `8` matches the 8th minute). Example: `* 0-8,16-23 * * *`. | +**start_grace_duration** | **str** | The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: `s` for seconds, `m` for minutes, `h` for hours. | [optional] [default to '0s'] + +## Example + +```python +from flightctl.models.update_schedule import UpdateSchedule + +# TODO update the JSON string below +json = "{}" +# create an instance of UpdateSchedule from a JSON string +update_schedule_instance = UpdateSchedule.from_json(json) +# print the JSON string representation of the object +print(UpdateSchedule.to_json()) + +# convert the object into a dict +update_schedule_dict = update_schedule_instance.to_dict() +# create an instance of UpdateSchedule from a dict +update_schedule_from_dict = UpdateSchedule.from_dict(update_schedule_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/docs/Error.md b/docs/Version.md similarity index 54% rename from docs/Error.md rename to docs/Version.md index 5c31465..c41eca6 100644 --- a/docs/Error.md +++ b/docs/Version.md @@ -1,28 +1,28 @@ -# Error +# Version ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**message** | **str** | Error message | +**version** | **str** | Git version of the service. | ## Example ```python -from flightctl.models.error import Error +from flightctl.models.version import Version # TODO update the JSON string below json = "{}" -# create an instance of Error from a JSON string -error_instance = Error.from_json(json) +# create an instance of Version from a JSON string +version_instance = Version.from_json(json) # print the JSON string representation of the object -print(Error.to_json()) +print(Version.to_json()) # convert the object into a dict -error_dict = error_instance.to_dict() -# create an instance of Error from a dict -error_from_dict = Error.from_dict(error_dict) +version_dict = version_instance.to_dict() +# create an instance of Version from a dict +version_from_dict = Version.from_dict(version_dict) ``` [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/docs/EnrollmentconfigApi.md b/docs/VersionApi.md similarity index 55% rename from docs/EnrollmentconfigApi.md rename to docs/VersionApi.md index 56ad93b..47fe4bc 100644 --- a/docs/EnrollmentconfigApi.md +++ b/docs/VersionApi.md @@ -1,25 +1,25 @@ -# flightctl.EnrollmentconfigApi +# flightctl.VersionApi All URIs are relative to *http://localhost* Method | HTTP request | Description ------------- | ------------- | ------------- -[**enrollment_config**](EnrollmentconfigApi.md#enrollment_config) | **GET** /api/v1/enrollmentconfig/{name} | +[**get_version**](VersionApi.md#get_version) | **GET** /api/version | -# **enrollment_config** -> EnrollmentConfig enrollment_config(name) +# **get_version** +> Version get_version() -Get config for enrolling devices +Get service version. ### Example ```python import flightctl -from flightctl.models.enrollment_config import EnrollmentConfig +from flightctl.models.version import Version from flightctl.rest import ApiException from pprint import pprint @@ -33,29 +33,25 @@ configuration = flightctl.Configuration( # Enter a context with an instance of the API client with flightctl.ApiClient(configuration) as api_client: # Create an instance of the API class - api_instance = flightctl.EnrollmentconfigApi(api_client) - name = 'name_example' # str | the name of approved CSR + api_instance = flightctl.VersionApi(api_client) try: - api_response = api_instance.enrollment_config(name) - print("The response of EnrollmentconfigApi->enrollment_config:\n") + api_response = api_instance.get_version() + print("The response of VersionApi->get_version:\n") pprint(api_response) except Exception as e: - print("Exception when calling EnrollmentconfigApi->enrollment_config: %s\n" % e) + print("Exception when calling VersionApi->get_version: %s\n" % e) ``` ### Parameters - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **name** | **str**| the name of approved CSR | +This endpoint does not need any parameter. ### Return type -[**EnrollmentConfig**](EnrollmentConfig.md) +[**Version**](Version.md) ### Authorization @@ -71,9 +67,8 @@ No authorization required | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | OK | - | -**400** | Bad Request | - | -**404** | Not Found | - | -**401** | Unauthorized | - | +**403** | Forbidden | - | +**503** | ServiceUnavailable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/flightctl/api/default_api.py b/flightctl/api/default_api.py deleted file mode 100644 index ef3559f..0000000 --- a/flightctl/api/default_api.py +++ /dev/null @@ -1,1101 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - -import warnings -from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt -from typing import Any, Dict, List, Optional, Tuple, Union -from typing_extensions import Annotated - -from pydantic import Field, StrictStr -from typing import Optional -from typing_extensions import Annotated -from flightctl.models.auth_config import AuthConfig -from flightctl.models.certificate_signing_request import CertificateSigningRequest - -from flightctl.api_client import ApiClient, RequestSerialized -from flightctl.api_response import ApiResponse -from flightctl.rest import RESTResponseType - - -class DefaultApi: - """NOTE: This class is auto generated by OpenAPI Generator - Ref: https://openapi-generator.tech - - Do not edit the class manually. - """ - - def __init__(self, api_client=None) -> None: - if api_client is None: - api_client = ApiClient.get_default() - self.api_client = api_client - - - @validate_call - def approve_certificate_signing_request( - self, - name: Annotated[StrictStr, Field(description="name of the CertificateSigningRequest")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> CertificateSigningRequest: - """approve_certificate_signing_request - - approve the specified CertificateSigningRequest - - :param name: name of the CertificateSigningRequest (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._approve_certificate_signing_request_serialize( - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", - '500': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def approve_certificate_signing_request_with_http_info( - self, - name: Annotated[StrictStr, Field(description="name of the CertificateSigningRequest")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[CertificateSigningRequest]: - """approve_certificate_signing_request - - approve the specified CertificateSigningRequest - - :param name: name of the CertificateSigningRequest (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._approve_certificate_signing_request_serialize( - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", - '500': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def approve_certificate_signing_request_without_preload_content( - self, - name: Annotated[StrictStr, Field(description="name of the CertificateSigningRequest")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """approve_certificate_signing_request - - approve the specified CertificateSigningRequest - - :param name: name of the CertificateSigningRequest (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._approve_certificate_signing_request_serialize( - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", - '500': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _approve_certificate_signing_request_serialize( - self, - name, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - if name is not None: - _path_params['name'] = name - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='POST', - resource_path='/api/v1/certificatesigningrequests/{name}/approval', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def auth_config( - self, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> AuthConfig: - """auth_config - - Get auth configuration - - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._auth_config_serialize( - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "AuthConfig", - '418': None, - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def auth_config_with_http_info( - self, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[AuthConfig]: - """auth_config - - Get auth configuration - - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._auth_config_serialize( - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "AuthConfig", - '418': None, - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def auth_config_without_preload_content( - self, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """auth_config - - Get auth configuration - - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._auth_config_serialize( - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "AuthConfig", - '418': None, - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _auth_config_serialize( - self, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/auth/config', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def auth_validate( - self, - authentication: Optional[StrictStr] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> None: - """auth_validate - - Validate auth token - - :param authentication: - :type authentication: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._auth_validate_serialize( - authentication=authentication, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': None, - '401': None, - '418': None, - '500': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def auth_validate_with_http_info( - self, - authentication: Optional[StrictStr] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[None]: - """auth_validate - - Validate auth token - - :param authentication: - :type authentication: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._auth_validate_serialize( - authentication=authentication, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': None, - '401': None, - '418': None, - '500': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def auth_validate_without_preload_content( - self, - authentication: Optional[StrictStr] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """auth_validate - - Validate auth token - - :param authentication: - :type authentication: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._auth_validate_serialize( - authentication=authentication, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': None, - '401': None, - '418': None, - '500': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _auth_validate_serialize( - self, - authentication, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - # process the query parameters - # process the header parameters - if authentication is not None: - _header_params['Authentication'] = authentication - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/auth/validate', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def deny_certificate_signing_request( - self, - name: Annotated[str, Field(strict=True, description="name of the CertificateSigningRequest")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> CertificateSigningRequest: - """deny_certificate_signing_request - - deny the specified CertificateSigningRequest - - :param name: name of the CertificateSigningRequest (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._deny_certificate_signing_request_serialize( - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", - '409': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def deny_certificate_signing_request_with_http_info( - self, - name: Annotated[str, Field(strict=True, description="name of the CertificateSigningRequest")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[CertificateSigningRequest]: - """deny_certificate_signing_request - - deny the specified CertificateSigningRequest - - :param name: name of the CertificateSigningRequest (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._deny_certificate_signing_request_serialize( - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", - '409': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def deny_certificate_signing_request_without_preload_content( - self, - name: Annotated[str, Field(strict=True, description="name of the CertificateSigningRequest")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """deny_certificate_signing_request - - deny the specified CertificateSigningRequest - - :param name: name of the CertificateSigningRequest (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._deny_certificate_signing_request_serialize( - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", - '409': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _deny_certificate_signing_request_serialize( - self, - name, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - if name is not None: - _path_params['name'] = name - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='DELETE', - resource_path='/api/v1/certificatesigningrequests/{name}/approval', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - diff --git a/flightctl/api/templateversion_api.py b/flightctl/api/templateversion_api.py deleted file mode 100644 index 3ebb74d..0000000 --- a/flightctl/api/templateversion_api.py +++ /dev/null @@ -1,1235 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - -import warnings -from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt -from typing import Any, Dict, List, Optional, Tuple, Union -from typing_extensions import Annotated - -from pydantic import Field, StrictInt, StrictStr -from typing import Optional -from typing_extensions import Annotated -from flightctl.models.sort_order import SortOrder -from flightctl.models.status import Status -from flightctl.models.template_version import TemplateVersion -from flightctl.models.template_version_list import TemplateVersionList - -from flightctl.api_client import ApiClient, RequestSerialized -from flightctl.api_response import ApiResponse -from flightctl.rest import RESTResponseType - - -class TemplateversionApi: - """NOTE: This class is auto generated by OpenAPI Generator - Ref: https://openapi-generator.tech - - Do not edit the class manually. - """ - - def __init__(self, api_client=None) -> None: - if api_client is None: - api_client = ApiClient.get_default() - self.api_client = api_client - - - @validate_call - def delete_template_version( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], - name: Annotated[StrictStr, Field(description="name of the template version.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> TemplateVersion: - """delete_template_version - - delete a template version - - :param fleet: The owner of the template version. (required) - :type fleet: str - :param name: name of the template version. (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._delete_template_version_serialize( - fleet=fleet, - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersion", - '401': "Error", - '404': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def delete_template_version_with_http_info( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], - name: Annotated[StrictStr, Field(description="name of the template version.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[TemplateVersion]: - """delete_template_version - - delete a template version - - :param fleet: The owner of the template version. (required) - :type fleet: str - :param name: name of the template version. (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._delete_template_version_serialize( - fleet=fleet, - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersion", - '401': "Error", - '404': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def delete_template_version_without_preload_content( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], - name: Annotated[StrictStr, Field(description="name of the template version.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """delete_template_version - - delete a template version - - :param fleet: The owner of the template version. (required) - :type fleet: str - :param name: name of the template version. (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._delete_template_version_serialize( - fleet=fleet, - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersion", - '401': "Error", - '404': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _delete_template_version_serialize( - self, - fleet, - name, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - if fleet is not None: - _path_params['fleet'] = fleet - if name is not None: - _path_params['name'] = name - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='DELETE', - resource_path='/api/v1/fleets/{fleet}/templateversions/{name}', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def delete_template_versions( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> Status: - """delete_template_versions - - delete a collection of template versions - - :param fleet: The owner of the template versions. (required) - :type fleet: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._delete_template_versions_serialize( - fleet=fleet, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "Status", - '401': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def delete_template_versions_with_http_info( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[Status]: - """delete_template_versions - - delete a collection of template versions - - :param fleet: The owner of the template versions. (required) - :type fleet: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._delete_template_versions_serialize( - fleet=fleet, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "Status", - '401': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def delete_template_versions_without_preload_content( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """delete_template_versions - - delete a collection of template versions - - :param fleet: The owner of the template versions. (required) - :type fleet: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._delete_template_versions_serialize( - fleet=fleet, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "Status", - '401': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _delete_template_versions_serialize( - self, - fleet, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - if fleet is not None: - _path_params['fleet'] = fleet - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='DELETE', - resource_path='/api/v1/fleets/{fleet}/templateversions', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def list_template_versions( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], - var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, - label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> TemplateVersionList: - """list_template_versions - - list template versions - - :param fleet: The owner of the template versions. (required) - :type fleet: str - :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. - :type var_continue: str - :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. - :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). - :type field_selector: str - :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. - :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._list_template_versions_serialize( - fleet=fleet, - var_continue=var_continue, - label_selector=label_selector, - field_selector=field_selector, - limit=limit, - sort_by=sort_by, - sort_order=sort_order, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersionList", - '400': "Error", - '401': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def list_template_versions_with_http_info( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], - var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, - label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[TemplateVersionList]: - """list_template_versions - - list template versions - - :param fleet: The owner of the template versions. (required) - :type fleet: str - :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. - :type var_continue: str - :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. - :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). - :type field_selector: str - :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. - :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._list_template_versions_serialize( - fleet=fleet, - var_continue=var_continue, - label_selector=label_selector, - field_selector=field_selector, - limit=limit, - sort_by=sort_by, - sort_order=sort_order, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersionList", - '400': "Error", - '401': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def list_template_versions_without_preload_content( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], - var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, - label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """list_template_versions - - list template versions - - :param fleet: The owner of the template versions. (required) - :type fleet: str - :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. - :type var_continue: str - :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. - :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). - :type field_selector: str - :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. - :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._list_template_versions_serialize( - fleet=fleet, - var_continue=var_continue, - label_selector=label_selector, - field_selector=field_selector, - limit=limit, - sort_by=sort_by, - sort_order=sort_order, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersionList", - '400': "Error", - '401': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _list_template_versions_serialize( - self, - fleet, - var_continue, - label_selector, - field_selector, - limit, - sort_by, - sort_order, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - if fleet is not None: - _path_params['fleet'] = fleet - # process the query parameters - if var_continue is not None: - - _query_params.append(('continue', var_continue)) - - if label_selector is not None: - - _query_params.append(('labelSelector', label_selector)) - - if field_selector is not None: - - _query_params.append(('fieldSelector', field_selector)) - - if limit is not None: - - _query_params.append(('limit', limit)) - - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/fleets/{fleet}/templateversions', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - - - - @validate_call - def read_template_version( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], - name: Annotated[StrictStr, Field(description="Name of the template version.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> TemplateVersion: - """read_template_version - - read the specified template version - - :param fleet: The owner of the template version. (required) - :type fleet: str - :param name: Name of the template version. (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._read_template_version_serialize( - fleet=fleet, - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersion", - '401': "Error", - '404': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ).data - - - @validate_call - def read_template_version_with_http_info( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], - name: Annotated[StrictStr, Field(description="Name of the template version.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[TemplateVersion]: - """read_template_version - - read the specified template version - - :param fleet: The owner of the template version. (required) - :type fleet: str - :param name: Name of the template version. (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._read_template_version_serialize( - fleet=fleet, - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersion", - '401': "Error", - '404': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - response_data.read() - return self.api_client.response_deserialize( - response_data=response_data, - response_types_map=_response_types_map, - ) - - - @validate_call - def read_template_version_without_preload_content( - self, - fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], - name: Annotated[StrictStr, Field(description="Name of the template version.")], - _request_timeout: Union[ - None, - Annotated[StrictFloat, Field(gt=0)], - Tuple[ - Annotated[StrictFloat, Field(gt=0)], - Annotated[StrictFloat, Field(gt=0)] - ] - ] = None, - _request_auth: Optional[Dict[StrictStr, Any]] = None, - _content_type: Optional[StrictStr] = None, - _headers: Optional[Dict[StrictStr, Any]] = None, - _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RESTResponseType: - """read_template_version - - read the specified template version - - :param fleet: The owner of the template version. (required) - :type fleet: str - :param name: Name of the template version. (required) - :type name: str - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :type _request_timeout: int, tuple(int, int), optional - :param _request_auth: set to override the auth_settings for an a single - request; this effectively ignores the - authentication in the spec for a single request. - :type _request_auth: dict, optional - :param _content_type: force content-type for the request. - :type _content_type: str, Optional - :param _headers: set to override the headers for a single - request; this effectively ignores the headers - in the spec for a single request. - :type _headers: dict, optional - :param _host_index: set to override the host_index for a single - request; this effectively ignores the host_index - in the spec for a single request. - :type _host_index: int, optional - :return: Returns the result object. - """ # noqa: E501 - - _param = self._read_template_version_serialize( - fleet=fleet, - name=name, - _request_auth=_request_auth, - _content_type=_content_type, - _headers=_headers, - _host_index=_host_index - ) - - _response_types_map: Dict[str, Optional[str]] = { - '200': "TemplateVersion", - '401': "Error", - '404': "Error", - } - response_data = self.api_client.call_api( - *_param, - _request_timeout=_request_timeout - ) - return response_data.response - - - def _read_template_version_serialize( - self, - fleet, - name, - _request_auth, - _content_type, - _headers, - _host_index, - ) -> RequestSerialized: - - _host = None - - _collection_formats: Dict[str, str] = { - } - - _path_params: Dict[str, str] = {} - _query_params: List[Tuple[str, str]] = [] - _header_params: Dict[str, Optional[str]] = _headers or {} - _form_params: List[Tuple[str, str]] = [] - _files: Dict[ - str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] - ] = {} - _body_params: Optional[bytes] = None - - # process the path parameters - if fleet is not None: - _path_params['fleet'] = fleet - if name is not None: - _path_params['name'] = name - # process the query parameters - # process the header parameters - # process the form parameters - # process the body parameter - - - # set the HTTP header `Accept` - if 'Accept' not in _header_params: - _header_params['Accept'] = self.api_client.select_header_accept( - [ - 'application/json' - ] - ) - - - # authentication setting - _auth_settings: List[str] = [ - ] - - return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/fleets/{fleet}/templateversions/{name}', - path_params=_path_params, - query_params=_query_params, - header_params=_header_params, - body=_body_params, - post_params=_form_params, - files=_files, - auth_settings=_auth_settings, - collection_formats=_collection_formats, - _host=_host, - _request_auth=_request_auth - ) - - diff --git a/flightctl/__init__.py b/flightctl/flightctl/__init__.py similarity index 80% rename from flightctl/__init__.py rename to flightctl/flightctl/__init__.py index e9ceaee..db5ed40 100644 --- a/flightctl/__init__.py +++ b/flightctl/flightctl/__init__.py @@ -3,11 +3,12 @@ # flake8: noqa """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,15 +18,14 @@ __version__ = "1.0.0" # import apis into sdk package +from flightctl.api.authentication_api import AuthenticationApi from flightctl.api.certificatesigningrequest_api import CertificatesigningrequestApi -from flightctl.api.default_api import DefaultApi from flightctl.api.device_api import DeviceApi -from flightctl.api.enrollmentconfig_api import EnrollmentconfigApi from flightctl.api.enrollmentrequest_api import EnrollmentrequestApi from flightctl.api.fleet_api import FleetApi from flightctl.api.repository_api import RepositoryApi from flightctl.api.resourcesync_api import ResourcesyncApi -from flightctl.api.templateversion_api import TemplateversionApi +from flightctl.api.version_api import VersionApi # import ApiClient from flightctl.api_response import ApiResponse @@ -40,14 +40,13 @@ # import models into sdk package from flightctl.models.application_env_vars import ApplicationEnvVars -from flightctl.models.application_spec import ApplicationSpec +from flightctl.models.application_provider_spec import ApplicationProviderSpec from flightctl.models.application_status_type import ApplicationStatusType from flightctl.models.applications_summary_status_type import ApplicationsSummaryStatusType from flightctl.models.auth_config import AuthConfig from flightctl.models.batch import Batch from flightctl.models.batch_limit import BatchLimit from flightctl.models.batch_sequence import BatchSequence -from flightctl.models.cpu_resource_monitor_spec import CPUResourceMonitorSpec from flightctl.models.certificate_signing_request import CertificateSigningRequest from flightctl.models.certificate_signing_request_list import CertificateSigningRequestList from flightctl.models.certificate_signing_request_spec import CertificateSigningRequestSpec @@ -56,20 +55,23 @@ from flightctl.models.condition_status import ConditionStatus from flightctl.models.condition_type import ConditionType from flightctl.models.config_provider_spec import ConfigProviderSpec +from flightctl.models.cpu_resource_monitor_spec import CpuResourceMonitorSpec from flightctl.models.custom_resource_monitor_spec import CustomResourceMonitorSpec from flightctl.models.device import Device from flightctl.models.device_application_status import DeviceApplicationStatus from flightctl.models.device_applications_summary_status import DeviceApplicationsSummaryStatus from flightctl.models.device_config_status import DeviceConfigStatus from flightctl.models.device_console import DeviceConsole -from flightctl.models.device_hooks_spec import DeviceHooksSpec +from flightctl.models.device_decommission import DeviceDecommission +from flightctl.models.device_decommission_target_type import DeviceDecommissionTargetType from flightctl.models.device_integrity_status import DeviceIntegrityStatus -from flightctl.models.device_integrity_status_summary import DeviceIntegrityStatusSummary from flightctl.models.device_integrity_status_summary_type import DeviceIntegrityStatusSummaryType +from flightctl.models.device_lifecycle_hook_type import DeviceLifecycleHookType +from flightctl.models.device_lifecycle_status import DeviceLifecycleStatus +from flightctl.models.device_lifecycle_status_type import DeviceLifecycleStatusType from flightctl.models.device_list import DeviceList -from flightctl.models.device_os_spec import DeviceOSSpec -from flightctl.models.device_os_status import DeviceOSStatus -from flightctl.models.device_reboot_hook_spec import DeviceRebootHookSpec +from flightctl.models.device_os_spec import DeviceOsSpec +from flightctl.models.device_os_status import DeviceOsStatus from flightctl.models.device_resource_status import DeviceResourceStatus from flightctl.models.device_resource_status_type import DeviceResourceStatusType from flightctl.models.device_spec import DeviceSpec @@ -78,22 +80,22 @@ from flightctl.models.device_summary_status import DeviceSummaryStatus from flightctl.models.device_summary_status_type import DeviceSummaryStatusType from flightctl.models.device_system_info import DeviceSystemInfo -from flightctl.models.device_update_hook_spec import DeviceUpdateHookSpec +from flightctl.models.device_update_policy_spec import DeviceUpdatePolicySpec from flightctl.models.device_updated_status import DeviceUpdatedStatus from flightctl.models.device_updated_status_type import DeviceUpdatedStatusType from flightctl.models.devices_summary import DevicesSummary from flightctl.models.disk_resource_monitor_spec import DiskResourceMonitorSpec -from flightctl.models.disruption_allowance import DisruptionAllowance +from flightctl.models.disruption_budget import DisruptionBudget from flightctl.models.enrollment_config import EnrollmentConfig from flightctl.models.enrollment_request import EnrollmentRequest from flightctl.models.enrollment_request_approval import EnrollmentRequestApproval +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus from flightctl.models.enrollment_request_list import EnrollmentRequestList from flightctl.models.enrollment_request_spec import EnrollmentRequestSpec from flightctl.models.enrollment_request_status import EnrollmentRequestStatus from flightctl.models.enrollment_service import EnrollmentService from flightctl.models.enrollment_service_auth import EnrollmentServiceAuth from flightctl.models.enrollment_service_service import EnrollmentServiceService -from flightctl.models.error import Error from flightctl.models.file_operation import FileOperation from flightctl.models.file_spec import FileSpec from flightctl.models.fleet import Fleet @@ -106,13 +108,9 @@ from flightctl.models.git_config_provider_spec import GitConfigProviderSpec from flightctl.models.git_config_provider_spec_git_ref import GitConfigProviderSpecGitRef from flightctl.models.hook_action import HookAction -from flightctl.models.hook_action_executable import HookActionExecutable -from flightctl.models.hook_action_executable_spec import HookActionExecutableSpec -from flightctl.models.hook_action_one_of import HookActionOneOf -from flightctl.models.hook_action_one_of1 import HookActionOneOf1 -from flightctl.models.hook_action_spec import HookActionSpec -from flightctl.models.hook_action_systemd_spec import HookActionSystemdSpec -from flightctl.models.hook_action_systemd_unit import HookActionSystemdUnit +from flightctl.models.hook_action_run import HookActionRun +from flightctl.models.hook_condition import HookCondition +from flightctl.models.hook_condition_path_op import HookConditionPathOp from flightctl.models.http_config import HttpConfig from flightctl.models.http_config_provider_spec import HttpConfigProviderSpec from flightctl.models.http_config_provider_spec_http_ref import HttpConfigProviderSpecHttpRef @@ -127,9 +125,6 @@ from flightctl.models.memory_resource_monitor_spec import MemoryResourceMonitorSpec from flightctl.models.object_meta import ObjectMeta from flightctl.models.patch_request_inner import PatchRequestInner -from flightctl.models.rendered_application_spec import RenderedApplicationSpec -from flightctl.models.rendered_device_spec import RenderedDeviceSpec -from flightctl.models.rendered_device_spec_systemd import RenderedDeviceSpecSystemd from flightctl.models.repo_spec_type import RepoSpecType from flightctl.models.repository import Repository from flightctl.models.repository_list import RepositoryList @@ -145,7 +140,7 @@ from flightctl.models.resource_sync_status import ResourceSyncStatus from flightctl.models.rollout_device_selection import RolloutDeviceSelection from flightctl.models.rollout_policy import RolloutPolicy -from flightctl.models.sort_order import SortOrder +from flightctl.models.rollout_strategy import RolloutStrategy from flightctl.models.ssh_config import SshConfig from flightctl.models.ssh_repo_spec import SshRepoSpec from flightctl.models.status import Status @@ -153,3 +148,5 @@ from flightctl.models.template_version_list import TemplateVersionList from flightctl.models.template_version_spec import TemplateVersionSpec from flightctl.models.template_version_status import TemplateVersionStatus +from flightctl.models.update_schedule import UpdateSchedule +from flightctl.models.version import Version diff --git a/flightctl/api/__init__.py b/flightctl/flightctl/api/__init__.py similarity index 69% rename from flightctl/api/__init__.py rename to flightctl/flightctl/api/__init__.py index a3d92c2..483be9c 100644 --- a/flightctl/api/__init__.py +++ b/flightctl/flightctl/api/__init__.py @@ -1,13 +1,12 @@ # flake8: noqa # import apis into api package +from flightctl.api.authentication_api import AuthenticationApi from flightctl.api.certificatesigningrequest_api import CertificatesigningrequestApi -from flightctl.api.default_api import DefaultApi from flightctl.api.device_api import DeviceApi -from flightctl.api.enrollmentconfig_api import EnrollmentconfigApi from flightctl.api.enrollmentrequest_api import EnrollmentrequestApi from flightctl.api.fleet_api import FleetApi from flightctl.api.repository_api import RepositoryApi from flightctl.api.resourcesync_api import ResourcesyncApi -from flightctl.api.templateversion_api import TemplateversionApi +from flightctl.api.version_api import VersionApi diff --git a/flightctl/flightctl/api/authentication_api.py b/flightctl/flightctl/api/authentication_api.py new file mode 100644 index 0000000..5cb5625 --- /dev/null +++ b/flightctl/flightctl/api/authentication_api.py @@ -0,0 +1,557 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + +import warnings +from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt +from typing import Any, Dict, List, Optional, Tuple, Union +from typing_extensions import Annotated + +from pydantic import Field, StrictStr +from typing import Optional +from typing_extensions import Annotated +from flightctl.models.auth_config import AuthConfig + +from flightctl.api_client import ApiClient, RequestSerialized +from flightctl.api_response import ApiResponse +from flightctl.rest import RESTResponseType + + +class AuthenticationApi: + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None) -> None: + if api_client is None: + api_client = ApiClient.get_default() + self.api_client = api_client + + + @validate_call + def auth_config( + self, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> AuthConfig: + """auth_config + + Get authentication configuration. + + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._auth_config_serialize( + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "AuthConfig", + '418': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def auth_config_with_http_info( + self, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[AuthConfig]: + """auth_config + + Get authentication configuration. + + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._auth_config_serialize( + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "AuthConfig", + '418': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def auth_config_without_preload_content( + self, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """auth_config + + Get authentication configuration. + + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._auth_config_serialize( + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "AuthConfig", + '418': None, + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _auth_config_serialize( + self, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/auth/config', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def auth_validate( + self, + authorization: Annotated[Optional[StrictStr], Field(description="The authentication token to validate.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> None: + """auth_validate + + Validate an authentication token. + + :param authorization: The authentication token to validate. + :type authorization: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._auth_validate_serialize( + authorization=authorization, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + '401': None, + '418': None, + '500': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def auth_validate_with_http_info( + self, + authorization: Annotated[Optional[StrictStr], Field(description="The authentication token to validate.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[None]: + """auth_validate + + Validate an authentication token. + + :param authorization: The authentication token to validate. + :type authorization: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._auth_validate_serialize( + authorization=authorization, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + '401': None, + '418': None, + '500': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def auth_validate_without_preload_content( + self, + authorization: Annotated[Optional[StrictStr], Field(description="The authentication token to validate.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """auth_validate + + Validate an authentication token. + + :param authorization: The authentication token to validate. + :type authorization: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._auth_validate_serialize( + authorization=authorization, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': None, + '401': None, + '418': None, + '500': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _auth_validate_serialize( + self, + authorization, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + # process the header parameters + if authorization is not None: + _header_params['Authorization'] = authorization + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/auth/validate', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/flightctl/api/certificatesigningrequest_api.py b/flightctl/flightctl/api/certificatesigningrequest_api.py similarity index 80% rename from flightctl/api/certificatesigningrequest_api.py rename to flightctl/flightctl/api/certificatesigningrequest_api.py index a8912fa..4f1cf51 100644 --- a/flightctl/api/certificatesigningrequest_api.py +++ b/flightctl/flightctl/api/certificatesigningrequest_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,7 +23,6 @@ from flightctl.models.certificate_signing_request import CertificateSigningRequest from flightctl.models.certificate_signing_request_list import CertificateSigningRequestList from flightctl.models.patch_request_inner import PatchRequestInner -from flightctl.models.sort_order import SortOrder from flightctl.models.status import Status from flightctl.api_client import ApiClient, RequestSerialized @@ -62,7 +62,7 @@ def create_certificate_signing_request( ) -> CertificateSigningRequest: """create_certificate_signing_request - request Certificate Signing + Create a CertificateSigningRequest resource. :param certificate_signing_request: (required) :type certificate_signing_request: CertificateSigningRequest @@ -97,12 +97,12 @@ def create_certificate_signing_request( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", '201': "CertificateSigningRequest", - '202': "CertificateSigningRequest", - '208': "EnrollmentRequest", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -134,7 +134,7 @@ def create_certificate_signing_request_with_http_info( ) -> ApiResponse[CertificateSigningRequest]: """create_certificate_signing_request - request Certificate Signing + Create a CertificateSigningRequest resource. :param certificate_signing_request: (required) :type certificate_signing_request: CertificateSigningRequest @@ -169,12 +169,12 @@ def create_certificate_signing_request_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", '201': "CertificateSigningRequest", - '202': "CertificateSigningRequest", - '208': "EnrollmentRequest", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -206,7 +206,7 @@ def create_certificate_signing_request_without_preload_content( ) -> RESTResponseType: """create_certificate_signing_request - request Certificate Signing + Create a CertificateSigningRequest resource. :param certificate_signing_request: (required) :type certificate_signing_request: CertificateSigningRequest @@ -241,12 +241,12 @@ def create_certificate_signing_request_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "CertificateSigningRequest", '201': "CertificateSigningRequest", - '202': "CertificateSigningRequest", - '208': "EnrollmentRequest", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -334,7 +334,7 @@ def _create_certificate_signing_request_serialize( @validate_call def delete_certificate_signing_request( self, - name: Annotated[StrictStr, Field(description="name of the Certificate Signing Request")], + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -352,7 +352,7 @@ def delete_certificate_signing_request( delete a Certificate Signing Request - :param name: name of the Certificate Signing Request (required) + :param name: The name of the CertificateSigningRequest resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -386,8 +386,10 @@ def delete_certificate_signing_request( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -403,7 +405,7 @@ def delete_certificate_signing_request( @validate_call def delete_certificate_signing_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Certificate Signing Request")], + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -421,7 +423,7 @@ def delete_certificate_signing_request_with_http_info( delete a Certificate Signing Request - :param name: name of the Certificate Signing Request (required) + :param name: The name of the CertificateSigningRequest resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -455,8 +457,10 @@ def delete_certificate_signing_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -472,7 +476,7 @@ def delete_certificate_signing_request_with_http_info( @validate_call def delete_certificate_signing_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Certificate Signing Request")], + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -490,7 +494,7 @@ def delete_certificate_signing_request_without_preload_content( delete a Certificate Signing Request - :param name: name of the Certificate Signing Request (required) + :param name: The name of the CertificateSigningRequest resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -524,8 +528,10 @@ def delete_certificate_signing_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -615,7 +621,7 @@ def delete_certificate_signing_requests( ) -> Status: """delete_certificate_signing_requests - delete a collection of CertificateSigningRequest + Delete CertificateSigningRequest resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -648,7 +654,9 @@ def delete_certificate_signing_requests( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -679,7 +687,7 @@ def delete_certificate_signing_requests_with_http_info( ) -> ApiResponse[Status]: """delete_certificate_signing_requests - delete a collection of CertificateSigningRequest + Delete CertificateSigningRequest resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -712,7 +720,9 @@ def delete_certificate_signing_requests_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -743,7 +753,7 @@ def delete_certificate_signing_requests_without_preload_content( ) -> RESTResponseType: """delete_certificate_signing_requests - delete a collection of CertificateSigningRequest + Delete CertificateSigningRequest resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -776,7 +786,9 @@ def delete_certificate_signing_requests_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -850,10 +862,8 @@ def list_certificate_signing_requests( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -869,20 +879,16 @@ def list_certificate_signing_requests( ) -> CertificateSigningRequestList: """list_certificate_signing_requests - list CertificateSigningRequests + List CertificateSigningRequest resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -910,8 +916,6 @@ def list_certificate_signing_requests( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -920,8 +924,10 @@ def list_certificate_signing_requests( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequestList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -939,10 +945,8 @@ def list_certificate_signing_requests_with_http_info( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -958,20 +962,16 @@ def list_certificate_signing_requests_with_http_info( ) -> ApiResponse[CertificateSigningRequestList]: """list_certificate_signing_requests - list CertificateSigningRequests + List CertificateSigningRequest resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -999,8 +999,6 @@ def list_certificate_signing_requests_with_http_info( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1009,8 +1007,10 @@ def list_certificate_signing_requests_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequestList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1028,10 +1028,8 @@ def list_certificate_signing_requests_without_preload_content( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1047,20 +1045,16 @@ def list_certificate_signing_requests_without_preload_content( ) -> RESTResponseType: """list_certificate_signing_requests - list CertificateSigningRequests + List CertificateSigningRequest resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1088,8 +1082,6 @@ def list_certificate_signing_requests_without_preload_content( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1098,8 +1090,10 @@ def list_certificate_signing_requests_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequestList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1114,8 +1108,6 @@ def _list_certificate_signing_requests_serialize( label_selector, field_selector, limit, - sort_by, - sort_order, _request_auth, _content_type, _headers, @@ -1154,14 +1146,6 @@ def _list_certificate_signing_requests_serialize( _query_params.append(('limit', limit)) - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - # process the header parameters # process the form parameters # process the body parameter @@ -1201,8 +1185,8 @@ def _list_certificate_signing_requests_serialize( @validate_call def patch_certificate_signing_request( self, - name: Annotated[StrictStr, Field(description="name of the certificatesigningrequest")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1218,11 +1202,11 @@ def patch_certificate_signing_request( ) -> CertificateSigningRequest: """patch_certificate_signing_request - partially update the specified CertificateSigningRequest + Patch a CertificateSigningRequest resource. - :param name: name of the certificatesigningrequest (required) + :param name: The name of the CertificateSigningRequest resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1257,11 +1241,12 @@ def patch_certificate_signing_request( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '201': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '404': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1277,8 +1262,8 @@ def patch_certificate_signing_request( @validate_call def patch_certificate_signing_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the certificatesigningrequest")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1294,11 +1279,11 @@ def patch_certificate_signing_request_with_http_info( ) -> ApiResponse[CertificateSigningRequest]: """patch_certificate_signing_request - partially update the specified CertificateSigningRequest + Patch a CertificateSigningRequest resource. - :param name: name of the certificatesigningrequest (required) + :param name: The name of the CertificateSigningRequest resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1333,11 +1318,12 @@ def patch_certificate_signing_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '201': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '404': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1353,8 +1339,8 @@ def patch_certificate_signing_request_with_http_info( @validate_call def patch_certificate_signing_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the certificatesigningrequest")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1370,11 +1356,11 @@ def patch_certificate_signing_request_without_preload_content( ) -> RESTResponseType: """patch_certificate_signing_request - partially update the specified CertificateSigningRequest + Patch a CertificateSigningRequest resource. - :param name: name of the certificatesigningrequest (required) + :param name: The name of the CertificateSigningRequest resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1409,11 +1395,12 @@ def patch_certificate_signing_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '201': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '404': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1505,7 +1492,7 @@ def _patch_certificate_signing_request_serialize( @validate_call def read_certificate_signing_request( self, - name: Annotated[str, Field(strict=True, description="the device identifier of the CertificateSigningRequest")], + name: Annotated[str, Field(strict=True, description="The name of the CertificateSigningRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1523,7 +1510,7 @@ def read_certificate_signing_request( read the specified certificateSigningRequest - :param name: the device identifier of the CertificateSigningRequest (required) + :param name: The name of the CertificateSigningRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1557,8 +1544,10 @@ def read_certificate_signing_request( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1574,7 +1563,7 @@ def read_certificate_signing_request( @validate_call def read_certificate_signing_request_with_http_info( self, - name: Annotated[str, Field(strict=True, description="the device identifier of the CertificateSigningRequest")], + name: Annotated[str, Field(strict=True, description="The name of the CertificateSigningRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1592,7 +1581,7 @@ def read_certificate_signing_request_with_http_info( read the specified certificateSigningRequest - :param name: the device identifier of the CertificateSigningRequest (required) + :param name: The name of the CertificateSigningRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1626,8 +1615,10 @@ def read_certificate_signing_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1643,7 +1634,7 @@ def read_certificate_signing_request_with_http_info( @validate_call def read_certificate_signing_request_without_preload_content( self, - name: Annotated[str, Field(strict=True, description="the device identifier of the CertificateSigningRequest")], + name: Annotated[str, Field(strict=True, description="The name of the CertificateSigningRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1661,7 +1652,7 @@ def read_certificate_signing_request_without_preload_content( read the specified certificateSigningRequest - :param name: the device identifier of the CertificateSigningRequest (required) + :param name: The name of the CertificateSigningRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1695,8 +1686,10 @@ def read_certificate_signing_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1771,7 +1764,7 @@ def _read_certificate_signing_request_serialize( @validate_call def replace_certificate_signing_request( self, - name: Annotated[StrictStr, Field(description="name of the CertificateSigningRequest")], + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to update.")], certificate_signing_request: CertificateSigningRequest, _request_timeout: Union[ None, @@ -1790,7 +1783,7 @@ def replace_certificate_signing_request( replace the specified CertificateSigningRequest - :param name: name of the CertificateSigningRequest (required) + :param name: The name of the CertificateSigningRequest resource to update. (required) :type name: str :param certificate_signing_request: (required) :type certificate_signing_request: CertificateSigningRequest @@ -1828,10 +1821,12 @@ def replace_certificate_signing_request( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", '201': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1847,7 +1842,7 @@ def replace_certificate_signing_request( @validate_call def replace_certificate_signing_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the CertificateSigningRequest")], + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to update.")], certificate_signing_request: CertificateSigningRequest, _request_timeout: Union[ None, @@ -1866,7 +1861,7 @@ def replace_certificate_signing_request_with_http_info( replace the specified CertificateSigningRequest - :param name: name of the CertificateSigningRequest (required) + :param name: The name of the CertificateSigningRequest resource to update. (required) :type name: str :param certificate_signing_request: (required) :type certificate_signing_request: CertificateSigningRequest @@ -1904,10 +1899,12 @@ def replace_certificate_signing_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", '201': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1923,7 +1920,7 @@ def replace_certificate_signing_request_with_http_info( @validate_call def replace_certificate_signing_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the CertificateSigningRequest")], + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest resource to update.")], certificate_signing_request: CertificateSigningRequest, _request_timeout: Union[ None, @@ -1942,7 +1939,7 @@ def replace_certificate_signing_request_without_preload_content( replace the specified CertificateSigningRequest - :param name: name of the CertificateSigningRequest (required) + :param name: The name of the CertificateSigningRequest resource to update. (required) :type name: str :param certificate_signing_request: (required) :type certificate_signing_request: CertificateSigningRequest @@ -1980,10 +1977,12 @@ def replace_certificate_signing_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "CertificateSigningRequest", '201': "CertificateSigningRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2069,3 +2068,309 @@ def _replace_certificate_signing_request_serialize( ) + + + @validate_call + def update_certificate_signing_request_approval( + self, + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest to approve or deny.")], + certificate_signing_request: CertificateSigningRequest, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> CertificateSigningRequest: + """update_certificate_signing_request_approval + + Approve or deny a CertificateSigningRequest. + + :param name: The name of the CertificateSigningRequest to approve or deny. (required) + :type name: str + :param certificate_signing_request: (required) + :type certificate_signing_request: CertificateSigningRequest + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._update_certificate_signing_request_approval_serialize( + name=name, + certificate_signing_request=certificate_signing_request, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "CertificateSigningRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def update_certificate_signing_request_approval_with_http_info( + self, + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest to approve or deny.")], + certificate_signing_request: CertificateSigningRequest, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[CertificateSigningRequest]: + """update_certificate_signing_request_approval + + Approve or deny a CertificateSigningRequest. + + :param name: The name of the CertificateSigningRequest to approve or deny. (required) + :type name: str + :param certificate_signing_request: (required) + :type certificate_signing_request: CertificateSigningRequest + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._update_certificate_signing_request_approval_serialize( + name=name, + certificate_signing_request=certificate_signing_request, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "CertificateSigningRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def update_certificate_signing_request_approval_without_preload_content( + self, + name: Annotated[StrictStr, Field(description="The name of the CertificateSigningRequest to approve or deny.")], + certificate_signing_request: CertificateSigningRequest, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """update_certificate_signing_request_approval + + Approve or deny a CertificateSigningRequest. + + :param name: The name of the CertificateSigningRequest to approve or deny. (required) + :type name: str + :param certificate_signing_request: (required) + :type certificate_signing_request: CertificateSigningRequest + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._update_certificate_signing_request_approval_serialize( + name=name, + certificate_signing_request=certificate_signing_request, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "CertificateSigningRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _update_certificate_signing_request_approval_serialize( + self, + name, + certificate_signing_request, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if name is not None: + _path_params['name'] = name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if certificate_signing_request is not None: + _body_params = certificate_signing_request + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/v1/certificatesigningrequests/{name}/approval', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/flightctl/api/device_api.py b/flightctl/flightctl/api/device_api.py similarity index 81% rename from flightctl/api/device_api.py rename to flightctl/flightctl/api/device_api.py index bb7954e..6037aae 100644 --- a/flightctl/api/device_api.py +++ b/flightctl/flightctl/api/device_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,11 +21,9 @@ from typing import List, Optional from typing_extensions import Annotated from flightctl.models.device import Device -from flightctl.models.device_console import DeviceConsole +from flightctl.models.device_decommission import DeviceDecommission from flightctl.models.device_list import DeviceList from flightctl.models.patch_request_inner import PatchRequestInner -from flightctl.models.rendered_device_spec import RenderedDeviceSpec -from flightctl.models.sort_order import SortOrder from flightctl.models.status import Status from flightctl.api_client import ApiClient, RequestSerialized @@ -64,7 +63,7 @@ def create_device( ) -> Device: """create_device - create a Device + Create a Device resource. :param device: (required) :type device: Device @@ -100,9 +99,11 @@ def create_device( _response_types_map: Dict[str, Optional[str]] = { '201': "Device", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -134,7 +135,7 @@ def create_device_with_http_info( ) -> ApiResponse[Device]: """create_device - create a Device + Create a Device resource. :param device: (required) :type device: Device @@ -170,9 +171,11 @@ def create_device_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '201': "Device", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -204,7 +207,7 @@ def create_device_without_preload_content( ) -> RESTResponseType: """create_device - create a Device + Create a Device resource. :param device: (required) :type device: Device @@ -240,9 +243,11 @@ def create_device_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '201': "Device", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -327,10 +332,313 @@ def _create_device_serialize( + @validate_call + def decommission_device( + self, + name: Annotated[StrictStr, Field(description="The name of the Device resource to decommission.")], + device_decommission: DeviceDecommission, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> Device: + """decommission_device + + schedule the device to decommission + + :param name: The name of the Device resource to decommission. (required) + :type name: str + :param device_decommission: (required) + :type device_decommission: DeviceDecommission + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._decommission_device_serialize( + name=name, + device_decommission=device_decommission, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def decommission_device_with_http_info( + self, + name: Annotated[StrictStr, Field(description="The name of the Device resource to decommission.")], + device_decommission: DeviceDecommission, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[Device]: + """decommission_device + + schedule the device to decommission + + :param name: The name of the Device resource to decommission. (required) + :type name: str + :param device_decommission: (required) + :type device_decommission: DeviceDecommission + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._decommission_device_serialize( + name=name, + device_decommission=device_decommission, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def decommission_device_without_preload_content( + self, + name: Annotated[StrictStr, Field(description="The name of the Device resource to decommission.")], + device_decommission: DeviceDecommission, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """decommission_device + + schedule the device to decommission + + :param name: The name of the Device resource to decommission. (required) + :type name: str + :param device_decommission: (required) + :type device_decommission: DeviceDecommission + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._decommission_device_serialize( + name=name, + device_decommission=device_decommission, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _decommission_device_serialize( + self, + name, + device_decommission, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if name is not None: + _path_params['name'] = name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if device_decommission is not None: + _body_params = device_decommission + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PUT', + resource_path='/api/v1/devices/{name}/decommission', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + @validate_call def delete_device( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -346,9 +654,9 @@ def delete_device( ) -> Device: """delete_device - delete a Device + Delete a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -382,8 +690,10 @@ def delete_device( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -399,7 +709,7 @@ def delete_device( @validate_call def delete_device_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -415,9 +725,9 @@ def delete_device_with_http_info( ) -> ApiResponse[Device]: """delete_device - delete a Device + Delete a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -451,8 +761,10 @@ def delete_device_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -468,7 +780,7 @@ def delete_device_with_http_info( @validate_call def delete_device_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -484,9 +796,9 @@ def delete_device_without_preload_content( ) -> RESTResponseType: """delete_device - delete a Device + Delete a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -520,8 +832,10 @@ def delete_device_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -611,7 +925,7 @@ def delete_devices( ) -> Status: """delete_devices - delete a collection of Devices + Delete Device resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -644,7 +958,9 @@ def delete_devices( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -675,7 +991,7 @@ def delete_devices_with_http_info( ) -> ApiResponse[Status]: """delete_devices - delete a collection of Devices + Delete Device resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -708,7 +1024,9 @@ def delete_devices_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -739,7 +1057,7 @@ def delete_devices_without_preload_content( ) -> RESTResponseType: """delete_devices - delete a collection of Devices + Delete Device resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -772,7 +1090,9 @@ def delete_devices_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -842,10 +1162,10 @@ def _delete_devices_serialize( @validate_call - def get_rendered_device_spec( + def get_rendered_device( self, - name: Annotated[StrictStr, Field(description="Name of the device")], - known_rendered_version: Annotated[Optional[StrictStr], Field(description="The last known renderedVersion")] = None, + name: Annotated[StrictStr, Field(description="The name of the Device resource to get the rendered device specification for.")], + known_rendered_version: Annotated[Optional[StrictStr], Field(description="The last known renderedVersion.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -858,14 +1178,14 @@ def get_rendered_device_spec( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> RenderedDeviceSpec: - """get_rendered_device_spec + ) -> Device: + """get_rendered_device - get the full specification for the specified device + Get the rendered device. - :param name: Name of the device (required) + :param name: The name of the Device resource to get the rendered device specification for. (required) :type name: str - :param known_rendered_version: The last known renderedVersion + :param known_rendered_version: The last known renderedVersion. :type known_rendered_version: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -889,7 +1209,7 @@ def get_rendered_device_spec( :return: Returns the result object. """ # noqa: E501 - _param = self._get_rendered_device_spec_serialize( + _param = self._get_rendered_device_serialize( name=name, known_rendered_version=known_rendered_version, _request_auth=_request_auth, @@ -899,11 +1219,13 @@ def get_rendered_device_spec( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "RenderedDeviceSpec", + '200': "Device", '204': None, - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -917,10 +1239,10 @@ def get_rendered_device_spec( @validate_call - def get_rendered_device_spec_with_http_info( + def get_rendered_device_with_http_info( self, - name: Annotated[StrictStr, Field(description="Name of the device")], - known_rendered_version: Annotated[Optional[StrictStr], Field(description="The last known renderedVersion")] = None, + name: Annotated[StrictStr, Field(description="The name of the Device resource to get the rendered device specification for.")], + known_rendered_version: Annotated[Optional[StrictStr], Field(description="The last known renderedVersion.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -933,14 +1255,14 @@ def get_rendered_device_spec_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[RenderedDeviceSpec]: - """get_rendered_device_spec + ) -> ApiResponse[Device]: + """get_rendered_device - get the full specification for the specified device + Get the rendered device. - :param name: Name of the device (required) + :param name: The name of the Device resource to get the rendered device specification for. (required) :type name: str - :param known_rendered_version: The last known renderedVersion + :param known_rendered_version: The last known renderedVersion. :type known_rendered_version: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -964,7 +1286,7 @@ def get_rendered_device_spec_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._get_rendered_device_spec_serialize( + _param = self._get_rendered_device_serialize( name=name, known_rendered_version=known_rendered_version, _request_auth=_request_auth, @@ -974,11 +1296,13 @@ def get_rendered_device_spec_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "RenderedDeviceSpec", + '200': "Device", '204': None, - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -992,10 +1316,10 @@ def get_rendered_device_spec_with_http_info( @validate_call - def get_rendered_device_spec_without_preload_content( + def get_rendered_device_without_preload_content( self, - name: Annotated[StrictStr, Field(description="Name of the device")], - known_rendered_version: Annotated[Optional[StrictStr], Field(description="The last known renderedVersion")] = None, + name: Annotated[StrictStr, Field(description="The name of the Device resource to get the rendered device specification for.")], + known_rendered_version: Annotated[Optional[StrictStr], Field(description="The last known renderedVersion.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1009,13 +1333,13 @@ def get_rendered_device_spec_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """get_rendered_device_spec + """get_rendered_device - get the full specification for the specified device + Get the rendered device. - :param name: Name of the device (required) + :param name: The name of the Device resource to get the rendered device specification for. (required) :type name: str - :param known_rendered_version: The last known renderedVersion + :param known_rendered_version: The last known renderedVersion. :type known_rendered_version: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1039,7 +1363,7 @@ def get_rendered_device_spec_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._get_rendered_device_spec_serialize( + _param = self._get_rendered_device_serialize( name=name, known_rendered_version=known_rendered_version, _request_auth=_request_auth, @@ -1049,11 +1373,13 @@ def get_rendered_device_spec_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "RenderedDeviceSpec", + '200': "Device", '204': None, - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1062,7 +1388,7 @@ def get_rendered_device_spec_without_preload_content( return response_data.response - def _get_rendered_device_spec_serialize( + def _get_rendered_device_serialize( self, name, known_rendered_version, @@ -1135,13 +1461,9 @@ def list_devices( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - status_filter: Annotated[Optional[List[StrictStr]], Field(description="A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - owner: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their owner. Defaults to everything.")] = None, summary_only: Annotated[Optional[StrictBool], Field(description="A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1157,26 +1479,18 @@ def list_devices( ) -> DeviceList: """list_devices - list Devices + List Device resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str - :param status_filter: A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything. - :type status_filter: List[str] :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param owner: A selector to restrict the list of returned objects by their owner. Defaults to everything. - :type owner: str :param summary_only: A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true. :type summary_only: bool - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1203,12 +1517,8 @@ def list_devices( var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, - status_filter=status_filter, limit=limit, - owner=owner, summary_only=summary_only, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1217,9 +1527,10 @@ def list_devices( _response_types_map: Dict[str, Optional[str]] = { '200': "DeviceList", - '400': "Error", - '401': "Error", - '403': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1237,13 +1548,9 @@ def list_devices_with_http_info( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - status_filter: Annotated[Optional[List[StrictStr]], Field(description="A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - owner: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their owner. Defaults to everything.")] = None, summary_only: Annotated[Optional[StrictBool], Field(description="A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1259,26 +1566,18 @@ def list_devices_with_http_info( ) -> ApiResponse[DeviceList]: """list_devices - list Devices + List Device resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str - :param status_filter: A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything. - :type status_filter: List[str] :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param owner: A selector to restrict the list of returned objects by their owner. Defaults to everything. - :type owner: str :param summary_only: A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true. :type summary_only: bool - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1305,12 +1604,8 @@ def list_devices_with_http_info( var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, - status_filter=status_filter, limit=limit, - owner=owner, summary_only=summary_only, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1319,9 +1614,10 @@ def list_devices_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "DeviceList", - '400': "Error", - '401': "Error", - '403': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1339,13 +1635,9 @@ def list_devices_without_preload_content( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - status_filter: Annotated[Optional[List[StrictStr]], Field(description="A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - owner: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their owner. Defaults to everything.")] = None, summary_only: Annotated[Optional[StrictBool], Field(description="A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1361,26 +1653,18 @@ def list_devices_without_preload_content( ) -> RESTResponseType: """list_devices - list Devices + List Device resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str - :param status_filter: A filter to restrict the list of devices by the value of the filtered status key. Defaults to everything. - :type status_filter: List[str] :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param owner: A selector to restrict the list of returned objects by their owner. Defaults to everything. - :type owner: str :param summary_only: A boolean flag to include only a summary of the devices. When set to true, the response will contain only the summary information. Only the 'owner' and 'labelSelector' parameters are supported when 'summaryOnly' is true. :type summary_only: bool - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1407,12 +1691,8 @@ def list_devices_without_preload_content( var_continue=var_continue, label_selector=label_selector, field_selector=field_selector, - status_filter=status_filter, limit=limit, - owner=owner, summary_only=summary_only, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1421,9 +1701,10 @@ def list_devices_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "DeviceList", - '400': "Error", - '401': "Error", - '403': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1437,12 +1718,8 @@ def _list_devices_serialize( var_continue, label_selector, field_selector, - status_filter, limit, - owner, summary_only, - sort_by, - sort_order, _request_auth, _content_type, _headers, @@ -1452,7 +1729,6 @@ def _list_devices_serialize( _host = None _collection_formats: Dict[str, str] = { - 'statusFilter': 'multi', } _path_params: Dict[str, str] = {} @@ -1478,30 +1754,14 @@ def _list_devices_serialize( _query_params.append(('fieldSelector', field_selector)) - if status_filter is not None: - - _query_params.append(('statusFilter', status_filter)) - if limit is not None: _query_params.append(('limit', limit)) - if owner is not None: - - _query_params.append(('owner', owner)) - if summary_only is not None: _query_params.append(('summaryOnly', summary_only)) - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - # process the header parameters # process the form parameters # process the body parameter @@ -1541,8 +1801,8 @@ def _list_devices_serialize( @validate_call def patch_device( self, - name: Annotated[StrictStr, Field(description="name of the device")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Device resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1558,11 +1818,11 @@ def patch_device( ) -> Device: """patch_device - Patches the specified device + Patch a Device resource. - :param name: name of the device (required) + :param name: The name of the Device resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1597,10 +1857,12 @@ def patch_device( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1616,8 +1878,8 @@ def patch_device( @validate_call def patch_device_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the device")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Device resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1633,11 +1895,11 @@ def patch_device_with_http_info( ) -> ApiResponse[Device]: """patch_device - Patches the specified device + Patch a Device resource. - :param name: name of the device (required) + :param name: The name of the Device resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1672,10 +1934,12 @@ def patch_device_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1691,8 +1955,8 @@ def patch_device_with_http_info( @validate_call def patch_device_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the device")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Device resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1708,11 +1972,11 @@ def patch_device_without_preload_content( ) -> RESTResponseType: """patch_device - Patches the specified device + Patch a Device resource. - :param name: name of the device (required) + :param name: The name of the Device resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1747,10 +2011,12 @@ def patch_device_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1840,9 +2106,10 @@ def _patch_device_serialize( @validate_call - def read_device( + def patch_device_status( self, - name: Annotated[StrictStr, Field(description="unique name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1856,12 +2123,14 @@ def read_device( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> Device: - """read_device + """patch_device_status - read the specified Device + Patch the status of a Device resource. - :param name: unique name of the Device (required) + :param name: The name of the Device resource to patch. (required) :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1884,8 +2153,9 @@ def read_device( :return: Returns the result object. """ # noqa: E501 - _param = self._read_device_serialize( + _param = self._patch_device_status_serialize( name=name, + patch_request_inner=patch_request_inner, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1894,8 +2164,11 @@ def read_device( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1909,9 +2182,10 @@ def read_device( @validate_call - def read_device_with_http_info( + def patch_device_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="unique name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1925,12 +2199,14 @@ def read_device_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[Device]: - """read_device + """patch_device_status - read the specified Device + Patch the status of a Device resource. - :param name: unique name of the Device (required) + :param name: The name of the Device resource to patch. (required) :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1953,8 +2229,9 @@ def read_device_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._read_device_serialize( + _param = self._patch_device_status_serialize( name=name, + patch_request_inner=patch_request_inner, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1963,8 +2240,11 @@ def read_device_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1978,9 +2258,10 @@ def read_device_with_http_info( @validate_call - def read_device_without_preload_content( + def patch_device_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="unique name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1994,12 +2275,14 @@ def read_device_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """read_device + """patch_device_status - read the specified Device + Patch the status of a Device resource. - :param name: unique name of the Device (required) + :param name: The name of the Device resource to patch. (required) :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -2022,8 +2305,9 @@ def read_device_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._read_device_serialize( + _param = self._patch_device_status_serialize( name=name, + patch_request_inner=patch_request_inner, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2032,8 +2316,11 @@ def read_device_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2042,9 +2329,10 @@ def read_device_without_preload_content( return response_data.response - def _read_device_serialize( + def _patch_device_status_serialize( self, name, + patch_request_inner, _request_auth, _content_type, _headers, @@ -2054,6 +2342,7 @@ def _read_device_serialize( _host = None _collection_formats: Dict[str, str] = { + 'PatchRequestInner': '', } _path_params: Dict[str, str] = {} @@ -2072,6 +2361,8 @@ def _read_device_serialize( # process the header parameters # process the form parameters # process the body parameter + if patch_request_inner is not None: + _body_params = patch_request_inner # set the HTTP header `Accept` @@ -2082,14 +2373,27 @@ def _read_device_serialize( ] ) + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json-patch+json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/devices/{name}', + method='PATCH', + resource_path='/api/v1/devices/{name}/status', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2106,9 +2410,9 @@ def _read_device_serialize( @validate_call - def read_device_status( + def read_device( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2122,11 +2426,11 @@ def read_device_status( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> Device: - """read_device_status + """read_device - read status of the specified Device + Get a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -2150,7 +2454,7 @@ def read_device_status( :return: Returns the result object. """ # noqa: E501 - _param = self._read_device_status_serialize( + _param = self._read_device_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -2160,8 +2464,10 @@ def read_device_status( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2175,9 +2481,9 @@ def read_device_status( @validate_call - def read_device_status_with_http_info( + def read_device_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2191,11 +2497,11 @@ def read_device_status_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[Device]: - """read_device_status + """read_device - read status of the specified Device + Get a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -2219,7 +2525,7 @@ def read_device_status_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._read_device_status_serialize( + _param = self._read_device_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -2229,8 +2535,10 @@ def read_device_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2244,9 +2552,9 @@ def read_device_status_with_http_info( @validate_call - def read_device_status_without_preload_content( + def read_device_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2260,11 +2568,11 @@ def read_device_status_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """read_device_status + """read_device - read status of the specified Device + Get a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -2288,7 +2596,7 @@ def read_device_status_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._read_device_status_serialize( + _param = self._read_device_serialize( name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -2298,8 +2606,10 @@ def read_device_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2308,7 +2618,7 @@ def read_device_status_without_preload_content( return response_data.response - def _read_device_status_serialize( + def _read_device_serialize( self, name, _request_auth, @@ -2355,7 +2665,7 @@ def _read_device_status_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/v1/devices/{name}/status', + resource_path='/api/v1/devices/{name}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2372,10 +2682,9 @@ def _read_device_status_serialize( @validate_call - def replace_device( + def read_device_status( self, - name: Annotated[StrictStr, Field(description="name of the Device")], - device: Device, + name: Annotated[StrictStr, Field(description="The name of the Device resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2389,14 +2698,12 @@ def replace_device( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> Device: - """replace_device + """read_device_status - replace the specified Device + Get the status of a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to get. (required) :type name: str - :param device: (required) - :type device: Device :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -2419,9 +2726,8 @@ def replace_device( :return: Returns the result object. """ # noqa: E501 - _param = self._replace_device_serialize( + _param = self._read_device_status_serialize( name=name, - device=device, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2430,11 +2736,10 @@ def replace_device( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '201': "Device", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2448,10 +2753,9 @@ def replace_device( @validate_call - def replace_device_with_http_info( + def read_device_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Device")], - device: Device, + name: Annotated[StrictStr, Field(description="The name of the Device resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2465,14 +2769,12 @@ def replace_device_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[Device]: - """replace_device + """read_device_status - replace the specified Device + Get the status of a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to get. (required) :type name: str - :param device: (required) - :type device: Device :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -2495,9 +2797,8 @@ def replace_device_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._replace_device_serialize( + _param = self._read_device_status_serialize( name=name, - device=device, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2506,11 +2807,10 @@ def replace_device_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '201': "Device", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2524,10 +2824,9 @@ def replace_device_with_http_info( @validate_call - def replace_device_without_preload_content( + def read_device_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Device")], - device: Device, + name: Annotated[StrictStr, Field(description="The name of the Device resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2541,14 +2840,12 @@ def replace_device_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """replace_device + """read_device_status - replace the specified Device + Get the status of a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to get. (required) :type name: str - :param device: (required) - :type device: Device :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -2571,9 +2868,8 @@ def replace_device_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._replace_device_serialize( + _param = self._read_device_status_serialize( name=name, - device=device, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -2582,11 +2878,10 @@ def replace_device_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '201': "Device", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2595,10 +2890,9 @@ def replace_device_without_preload_content( return response_data.response - def _replace_device_serialize( + def _read_device_status_serialize( self, name, - device, _request_auth, _content_type, _headers, @@ -2626,8 +2920,6 @@ def _replace_device_serialize( # process the header parameters # process the form parameters # process the body parameter - if device is not None: - _body_params = device # set the HTTP header `Accept` @@ -2638,27 +2930,14 @@ def _replace_device_serialize( ] ) - # set the HTTP header `Content-Type` - if _content_type: - _header_params['Content-Type'] = _content_type - else: - _default_content_type = ( - self.api_client.select_header_content_type( - [ - 'application/json' - ] - ) - ) - if _default_content_type is not None: - _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='PUT', - resource_path='/api/v1/devices/{name}', + method='GET', + resource_path='/api/v1/devices/{name}/status', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2675,9 +2954,9 @@ def _replace_device_serialize( @validate_call - def replace_device_status( + def replace_device( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to update.")], device: Device, _request_timeout: Union[ None, @@ -2692,11 +2971,11 @@ def replace_device_status( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> Device: - """replace_device_status + """replace_device - replace status of the specified Device + Update a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to update. (required) :type name: str :param device: (required) :type device: Device @@ -2722,7 +3001,7 @@ def replace_device_status( :return: Returns the result object. """ # noqa: E501 - _param = self._replace_device_status_serialize( + _param = self._replace_device_serialize( name=name, device=device, _request_auth=_request_auth, @@ -2733,9 +3012,13 @@ def replace_device_status( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '400': "Error", - '401': "Error", - '404': "Error", + '201': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2749,9 +3032,9 @@ def replace_device_status( @validate_call - def replace_device_status_with_http_info( + def replace_device_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to update.")], device: Device, _request_timeout: Union[ None, @@ -2766,11 +3049,11 @@ def replace_device_status_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[Device]: - """replace_device_status + """replace_device - replace status of the specified Device + Update a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to update. (required) :type name: str :param device: (required) :type device: Device @@ -2796,7 +3079,7 @@ def replace_device_status_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._replace_device_status_serialize( + _param = self._replace_device_serialize( name=name, device=device, _request_auth=_request_auth, @@ -2807,9 +3090,13 @@ def replace_device_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '400': "Error", - '401': "Error", - '404': "Error", + '201': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2823,9 +3110,9 @@ def replace_device_status_with_http_info( @validate_call - def replace_device_status_without_preload_content( + def replace_device_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to update.")], device: Device, _request_timeout: Union[ None, @@ -2840,11 +3127,11 @@ def replace_device_status_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """replace_device_status + """replace_device - replace status of the specified Device + Update a Device resource. - :param name: name of the Device (required) + :param name: The name of the Device resource to update. (required) :type name: str :param device: (required) :type device: Device @@ -2870,7 +3157,7 @@ def replace_device_status_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._replace_device_status_serialize( + _param = self._replace_device_serialize( name=name, device=device, _request_auth=_request_auth, @@ -2881,9 +3168,13 @@ def replace_device_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Device", - '400': "Error", - '401': "Error", - '404': "Error", + '201': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2892,7 +3183,7 @@ def replace_device_status_without_preload_content( return response_data.response - def _replace_device_status_serialize( + def _replace_device_serialize( self, name, device, @@ -2955,7 +3246,7 @@ def _replace_device_status_serialize( return self.api_client.param_serialize( method='PUT', - resource_path='/api/v1/devices/{name}/status', + resource_path='/api/v1/devices/{name}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2972,9 +3263,10 @@ def _replace_device_status_serialize( @validate_call - def request_console( + def replace_device_status( self, - name: Annotated[StrictStr, Field(description="unique name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to update.")], + device: Device, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -2987,13 +3279,15 @@ def request_console( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> DeviceConsole: - """request_console + ) -> Device: + """replace_device_status - Request a console connection + Update the status of a Device resource. - :param name: unique name of the Device (required) + :param name: The name of the Device resource to update. (required) :type name: str + :param device: (required) + :type device: Device :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -3016,8 +3310,9 @@ def request_console( :return: Returns the result object. """ # noqa: E501 - _param = self._request_console_serialize( + _param = self._replace_device_status_serialize( name=name, + device=device, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3025,10 +3320,12 @@ def request_console( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "DeviceConsole", - '401': "Error", - '404': "Error", - '409': "Error", + '200': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -3042,9 +3339,10 @@ def request_console( @validate_call - def request_console_with_http_info( + def replace_device_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="unique name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to update.")], + device: Device, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3057,13 +3355,15 @@ def request_console_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[DeviceConsole]: - """request_console + ) -> ApiResponse[Device]: + """replace_device_status - Request a console connection + Update the status of a Device resource. - :param name: unique name of the Device (required) + :param name: The name of the Device resource to update. (required) :type name: str + :param device: (required) + :type device: Device :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -3086,8 +3386,9 @@ def request_console_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._request_console_serialize( + _param = self._replace_device_status_serialize( name=name, + device=device, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3095,10 +3396,12 @@ def request_console_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "DeviceConsole", - '401': "Error", - '404': "Error", - '409': "Error", + '200': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -3112,9 +3415,10 @@ def request_console_with_http_info( @validate_call - def request_console_without_preload_content( + def replace_device_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="unique name of the Device")], + name: Annotated[StrictStr, Field(description="The name of the Device resource to update.")], + device: Device, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -3128,12 +3432,14 @@ def request_console_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """request_console + """replace_device_status - Request a console connection + Update the status of a Device resource. - :param name: unique name of the Device (required) + :param name: The name of the Device resource to update. (required) :type name: str + :param device: (required) + :type device: Device :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -3156,8 +3462,9 @@ def request_console_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._request_console_serialize( + _param = self._replace_device_status_serialize( name=name, + device=device, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -3165,10 +3472,12 @@ def request_console_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "DeviceConsole", - '401': "Error", - '404': "Error", - '409': "Error", + '200': "Device", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -3177,9 +3486,10 @@ def request_console_without_preload_content( return response_data.response - def _request_console_serialize( + def _replace_device_status_serialize( self, name, + device, _request_auth, _content_type, _headers, @@ -3207,6 +3517,8 @@ def _request_console_serialize( # process the header parameters # process the form parameters # process the body parameter + if device is not None: + _body_params = device # set the HTTP header `Accept` @@ -3217,14 +3529,27 @@ def _request_console_serialize( ] ) + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/devices/{name}/console', + method='PUT', + resource_path='/api/v1/devices/{name}/status', path_params=_path_params, query_params=_query_params, header_params=_header_params, diff --git a/flightctl/api/enrollmentrequest_api.py b/flightctl/flightctl/api/enrollmentrequest_api.py similarity index 67% rename from flightctl/api/enrollmentrequest_api.py rename to flightctl/flightctl/api/enrollmentrequest_api.py index f641d2b..a0d437e 100644 --- a/flightctl/api/enrollmentrequest_api.py +++ b/flightctl/flightctl/api/enrollmentrequest_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,12 +18,14 @@ from typing_extensions import Annotated from pydantic import Field, StrictInt, StrictStr -from typing import Optional +from typing import List, Optional from typing_extensions import Annotated +from flightctl.models.enrollment_config import EnrollmentConfig from flightctl.models.enrollment_request import EnrollmentRequest from flightctl.models.enrollment_request_approval import EnrollmentRequestApproval +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus from flightctl.models.enrollment_request_list import EnrollmentRequestList -from flightctl.models.sort_order import SortOrder +from flightctl.models.patch_request_inner import PatchRequestInner from flightctl.models.status import Status from flightctl.api_client import ApiClient, RequestSerialized @@ -46,7 +49,7 @@ def __init__(self, api_client=None) -> None: @validate_call def approve_enrollment_request( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest to approve or deny.")], enrollment_request_approval: EnrollmentRequestApproval, _request_timeout: Union[ None, @@ -60,12 +63,12 @@ def approve_enrollment_request( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> EnrollmentRequestApproval: + ) -> EnrollmentRequestApprovalStatus: """approve_enrollment_request - create approval of the specified EnrollmentRequest + Approve or deny an EnrollmentRequest. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest to approve or deny. (required) :type name: str :param enrollment_request_approval: (required) :type enrollment_request_approval: EnrollmentRequestApproval @@ -101,12 +104,12 @@ def approve_enrollment_request( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "EnrollmentRequestApproval", - '422': "Error", - '400': "Error", - '401': "Error", - '404': "Error", - '500': "Error", + '200': "EnrollmentRequestApprovalStatus", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -122,7 +125,7 @@ def approve_enrollment_request( @validate_call def approve_enrollment_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest to approve or deny.")], enrollment_request_approval: EnrollmentRequestApproval, _request_timeout: Union[ None, @@ -136,12 +139,12 @@ def approve_enrollment_request_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[EnrollmentRequestApproval]: + ) -> ApiResponse[EnrollmentRequestApprovalStatus]: """approve_enrollment_request - create approval of the specified EnrollmentRequest + Approve or deny an EnrollmentRequest. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest to approve or deny. (required) :type name: str :param enrollment_request_approval: (required) :type enrollment_request_approval: EnrollmentRequestApproval @@ -177,12 +180,12 @@ def approve_enrollment_request_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "EnrollmentRequestApproval", - '422': "Error", - '400': "Error", - '401': "Error", - '404': "Error", - '500': "Error", + '200': "EnrollmentRequestApprovalStatus", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -198,7 +201,7 @@ def approve_enrollment_request_with_http_info( @validate_call def approve_enrollment_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest to approve or deny.")], enrollment_request_approval: EnrollmentRequestApproval, _request_timeout: Union[ None, @@ -215,9 +218,9 @@ def approve_enrollment_request_without_preload_content( ) -> RESTResponseType: """approve_enrollment_request - create approval of the specified EnrollmentRequest + Approve or deny an EnrollmentRequest. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest to approve or deny. (required) :type name: str :param enrollment_request_approval: (required) :type enrollment_request_approval: EnrollmentRequestApproval @@ -253,12 +256,12 @@ def approve_enrollment_request_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "EnrollmentRequestApproval", - '422': "Error", - '400': "Error", - '401': "Error", - '404': "Error", - '500': "Error", + '200': "EnrollmentRequestApprovalStatus", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -329,7 +332,7 @@ def _approve_enrollment_request_serialize( ] return self.api_client.param_serialize( - method='POST', + method='PUT', resource_path='/api/v1/enrollmentrequests/{name}/approval', path_params=_path_params, query_params=_query_params, @@ -365,7 +368,7 @@ def create_enrollment_request( ) -> EnrollmentRequest: """create_enrollment_request - request enrollment of a Device + Create an EnrollmentRequest resource. :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -401,10 +404,11 @@ def create_enrollment_request( _response_types_map: Dict[str, Optional[str]] = { '201': "EnrollmentRequest", - '208': "EnrollmentRequest", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -436,7 +440,7 @@ def create_enrollment_request_with_http_info( ) -> ApiResponse[EnrollmentRequest]: """create_enrollment_request - request enrollment of a Device + Create an EnrollmentRequest resource. :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -472,10 +476,11 @@ def create_enrollment_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '201': "EnrollmentRequest", - '208': "EnrollmentRequest", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -507,7 +512,7 @@ def create_enrollment_request_without_preload_content( ) -> RESTResponseType: """create_enrollment_request - request enrollment of a Device + Create an EnrollmentRequest resource. :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -543,10 +548,11 @@ def create_enrollment_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '201': "EnrollmentRequest", - '208': "EnrollmentRequest", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -634,7 +640,7 @@ def _create_enrollment_request_serialize( @validate_call def delete_enrollment_request( self, - name: Annotated[StrictStr, Field(description="name of the Enrollment Request")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -650,9 +656,9 @@ def delete_enrollment_request( ) -> EnrollmentRequest: """delete_enrollment_request - delete a Enrollment Request + Delete an EnrollmentRequest resource. - :param name: name of the Enrollment Request (required) + :param name: The name of the EnrollmentRequest resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -686,8 +692,10 @@ def delete_enrollment_request( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -703,7 +711,7 @@ def delete_enrollment_request( @validate_call def delete_enrollment_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Enrollment Request")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -719,9 +727,9 @@ def delete_enrollment_request_with_http_info( ) -> ApiResponse[EnrollmentRequest]: """delete_enrollment_request - delete a Enrollment Request + Delete an EnrollmentRequest resource. - :param name: name of the Enrollment Request (required) + :param name: The name of the EnrollmentRequest resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -755,8 +763,10 @@ def delete_enrollment_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -772,7 +782,7 @@ def delete_enrollment_request_with_http_info( @validate_call def delete_enrollment_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Enrollment Request")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -788,9 +798,9 @@ def delete_enrollment_request_without_preload_content( ) -> RESTResponseType: """delete_enrollment_request - delete a Enrollment Request + Delete an EnrollmentRequest resource. - :param name: name of the Enrollment Request (required) + :param name: The name of the EnrollmentRequest resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -824,8 +834,10 @@ def delete_enrollment_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -915,7 +927,7 @@ def delete_enrollment_requests( ) -> Status: """delete_enrollment_requests - delete a collection of Enrollments + Delete EnrollmentRequest resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -948,7 +960,9 @@ def delete_enrollment_requests( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -979,7 +993,7 @@ def delete_enrollment_requests_with_http_info( ) -> ApiResponse[Status]: """delete_enrollment_requests - delete a collection of Enrollments + Delete EnrollmentRequest resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1012,7 +1026,9 @@ def delete_enrollment_requests_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1043,7 +1059,7 @@ def delete_enrollment_requests_without_preload_content( ) -> RESTResponseType: """delete_enrollment_requests - delete a collection of Enrollments + Delete EnrollmentRequest resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1076,7 +1092,9 @@ def delete_enrollment_requests_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1145,15 +1163,290 @@ def _delete_enrollment_requests_serialize( + @validate_call + def get_enrollment_config( + self, + csr: Annotated[Optional[StrictStr], Field(description="The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> EnrollmentConfig: + """get_enrollment_config + + Get enrollment information. + + :param csr: The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty. + :type csr: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_enrollment_config_serialize( + csr=csr, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentConfig", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def get_enrollment_config_with_http_info( + self, + csr: Annotated[Optional[StrictStr], Field(description="The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[EnrollmentConfig]: + """get_enrollment_config + + Get enrollment information. + + :param csr: The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty. + :type csr: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_enrollment_config_serialize( + csr=csr, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentConfig", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def get_enrollment_config_without_preload_content( + self, + csr: Annotated[Optional[StrictStr], Field(description="The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """get_enrollment_config + + Get enrollment information. + + :param csr: The name of a CertificateSigningRequest resource to query for an issued certificate. If provided, the service will check if the CertificateSigningRequest contains an issued certificate and in this case include it the returned EnrollmentConfig. In all other case, the enrollment certificate field will be empty. + :type csr: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_enrollment_config_serialize( + csr=csr, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentConfig", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_enrollment_config_serialize( + self, + csr, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + if csr is not None: + + _query_params.append(('csr', csr)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/enrollmentconfig', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + @validate_call def list_enrollment_requests( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1169,20 +1462,16 @@ def list_enrollment_requests( ) -> EnrollmentRequestList: """list_enrollment_requests - list Enrollment Requests + List EnrollmentRequest resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1210,8 +1499,6 @@ def list_enrollment_requests( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1220,8 +1507,10 @@ def list_enrollment_requests( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequestList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1239,10 +1528,8 @@ def list_enrollment_requests_with_http_info( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1258,20 +1545,16 @@ def list_enrollment_requests_with_http_info( ) -> ApiResponse[EnrollmentRequestList]: """list_enrollment_requests - list Enrollment Requests + List EnrollmentRequest resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1299,8 +1582,6 @@ def list_enrollment_requests_with_http_info( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1309,8 +1590,10 @@ def list_enrollment_requests_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequestList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1328,10 +1611,8 @@ def list_enrollment_requests_without_preload_content( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1347,20 +1628,16 @@ def list_enrollment_requests_without_preload_content( ) -> RESTResponseType: """list_enrollment_requests - list Enrollment Requests + List EnrollmentRequest resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1388,8 +1665,6 @@ def list_enrollment_requests_without_preload_content( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1398,8 +1673,10 @@ def list_enrollment_requests_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequestList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1414,8 +1691,6 @@ def _list_enrollment_requests_serialize( label_selector, field_selector, limit, - sort_by, - sort_order, _request_auth, _content_type, _headers, @@ -1454,14 +1729,6 @@ def _list_enrollment_requests_serialize( _query_params.append(('limit', limit)) - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - # process the header parameters # process the form parameters # process the body parameter @@ -1498,10 +1765,624 @@ def _list_enrollment_requests_serialize( + @validate_call + def patch_enrollment_request( + self, + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> EnrollmentRequest: + """patch_enrollment_request + + Patch an EnrollmentRequest resource. + + :param name: The name of the EnrollmentRequest resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_enrollment_request_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def patch_enrollment_request_with_http_info( + self, + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[EnrollmentRequest]: + """patch_enrollment_request + + Patch an EnrollmentRequest resource. + + :param name: The name of the EnrollmentRequest resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_enrollment_request_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def patch_enrollment_request_without_preload_content( + self, + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """patch_enrollment_request + + Patch an EnrollmentRequest resource. + + :param name: The name of the EnrollmentRequest resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_enrollment_request_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _patch_enrollment_request_serialize( + self, + name, + patch_request_inner, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'PatchRequestInner': '', + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if name is not None: + _path_params['name'] = name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if patch_request_inner is not None: + _body_params = patch_request_inner + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json-patch+json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PATCH', + resource_path='/api/v1/enrollmentrequests/{name}', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def patch_enrollment_request_status( + self, + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> EnrollmentRequest: + """patch_enrollment_request_status + + Patch the status of an EnrollmentRequest resource. + + :param name: The name of the EnrollmentRequest resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_enrollment_request_status_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def patch_enrollment_request_status_with_http_info( + self, + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[EnrollmentRequest]: + """patch_enrollment_request_status + + Patch the status of an EnrollmentRequest resource. + + :param name: The name of the EnrollmentRequest resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_enrollment_request_status_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def patch_enrollment_request_status_without_preload_content( + self, + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """patch_enrollment_request_status + + Patch the status of an EnrollmentRequest resource. + + :param name: The name of the EnrollmentRequest resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_enrollment_request_status_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EnrollmentRequest", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _patch_enrollment_request_status_serialize( + self, + name, + patch_request_inner, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'PatchRequestInner': '', + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if name is not None: + _path_params['name'] = name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if patch_request_inner is not None: + _body_params = patch_request_inner + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json-patch+json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PATCH', + resource_path='/api/v1/enrollmentrequests/{name}/status', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + @validate_call def read_enrollment_request( self, - name: Annotated[StrictStr, Field(description="the fingerprint of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1517,9 +2398,9 @@ def read_enrollment_request( ) -> EnrollmentRequest: """read_enrollment_request - read the specified Enrollment + Get an EnrollmentRequest resource. - :param name: the fingerprint of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1553,8 +2434,10 @@ def read_enrollment_request( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1570,7 +2453,7 @@ def read_enrollment_request( @validate_call def read_enrollment_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="the fingerprint of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1586,9 +2469,9 @@ def read_enrollment_request_with_http_info( ) -> ApiResponse[EnrollmentRequest]: """read_enrollment_request - read the specified Enrollment + Get an EnrollmentRequest resource. - :param name: the fingerprint of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1622,8 +2505,10 @@ def read_enrollment_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1639,7 +2524,7 @@ def read_enrollment_request_with_http_info( @validate_call def read_enrollment_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="the fingerprint of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1655,9 +2540,9 @@ def read_enrollment_request_without_preload_content( ) -> RESTResponseType: """read_enrollment_request - read the specified Enrollment + Get an EnrollmentRequest resource. - :param name: the fingerprint of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1691,8 +2576,10 @@ def read_enrollment_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1767,7 +2654,7 @@ def _read_enrollment_request_serialize( @validate_call def read_enrollment_request_status( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1783,9 +2670,9 @@ def read_enrollment_request_status( ) -> EnrollmentRequest: """read_enrollment_request_status - read status of the specified EnrollmentRequest + Get the status of an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1819,8 +2706,10 @@ def read_enrollment_request_status( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1836,7 +2725,7 @@ def read_enrollment_request_status( @validate_call def read_enrollment_request_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1852,9 +2741,9 @@ def read_enrollment_request_status_with_http_info( ) -> ApiResponse[EnrollmentRequest]: """read_enrollment_request_status - read status of the specified EnrollmentRequest + Get the status of an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1888,8 +2777,10 @@ def read_enrollment_request_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1905,7 +2796,7 @@ def read_enrollment_request_status_with_http_info( @validate_call def read_enrollment_request_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1921,9 +2812,9 @@ def read_enrollment_request_status_without_preload_content( ) -> RESTResponseType: """read_enrollment_request_status - read status of the specified EnrollmentRequest + Get the status of an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1957,8 +2848,10 @@ def read_enrollment_request_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2033,7 +2926,7 @@ def _read_enrollment_request_status_serialize( @validate_call def replace_enrollment_request( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to update.")], enrollment_request: EnrollmentRequest, _request_timeout: Union[ None, @@ -2050,9 +2943,9 @@ def replace_enrollment_request( ) -> EnrollmentRequest: """replace_enrollment_request - replace the specified Enrollment Request + Update an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to update. (required) :type name: str :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -2090,10 +2983,12 @@ def replace_enrollment_request( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", '201': "EnrollmentRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2109,7 +3004,7 @@ def replace_enrollment_request( @validate_call def replace_enrollment_request_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to update.")], enrollment_request: EnrollmentRequest, _request_timeout: Union[ None, @@ -2126,9 +3021,9 @@ def replace_enrollment_request_with_http_info( ) -> ApiResponse[EnrollmentRequest]: """replace_enrollment_request - replace the specified Enrollment Request + Update an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to update. (required) :type name: str :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -2166,10 +3061,12 @@ def replace_enrollment_request_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", '201': "EnrollmentRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2185,7 +3082,7 @@ def replace_enrollment_request_with_http_info( @validate_call def replace_enrollment_request_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to update.")], enrollment_request: EnrollmentRequest, _request_timeout: Union[ None, @@ -2202,9 +3099,9 @@ def replace_enrollment_request_without_preload_content( ) -> RESTResponseType: """replace_enrollment_request - replace the specified Enrollment Request + Update an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to update. (required) :type name: str :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -2242,10 +3139,12 @@ def replace_enrollment_request_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", '201': "EnrollmentRequest", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2336,7 +3235,7 @@ def _replace_enrollment_request_serialize( @validate_call def replace_enrollment_request_status( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to update.")], enrollment_request: EnrollmentRequest, _request_timeout: Union[ None, @@ -2353,9 +3252,9 @@ def replace_enrollment_request_status( ) -> EnrollmentRequest: """replace_enrollment_request_status - replace status of the specified EnrollmentRequest + Update the status of an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to update. (required) :type name: str :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -2392,8 +3291,10 @@ def replace_enrollment_request_status( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2409,7 +3310,7 @@ def replace_enrollment_request_status( @validate_call def replace_enrollment_request_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to update.")], enrollment_request: EnrollmentRequest, _request_timeout: Union[ None, @@ -2426,9 +3327,9 @@ def replace_enrollment_request_status_with_http_info( ) -> ApiResponse[EnrollmentRequest]: """replace_enrollment_request_status - replace status of the specified EnrollmentRequest + Update the status of an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to update. (required) :type name: str :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -2465,8 +3366,10 @@ def replace_enrollment_request_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2482,7 +3385,7 @@ def replace_enrollment_request_status_with_http_info( @validate_call def replace_enrollment_request_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the EnrollmentRequest")], + name: Annotated[StrictStr, Field(description="The name of the EnrollmentRequest resource to update.")], enrollment_request: EnrollmentRequest, _request_timeout: Union[ None, @@ -2499,9 +3402,9 @@ def replace_enrollment_request_status_without_preload_content( ) -> RESTResponseType: """replace_enrollment_request_status - replace status of the specified EnrollmentRequest + Update the status of an EnrollmentRequest resource. - :param name: name of the EnrollmentRequest (required) + :param name: The name of the EnrollmentRequest resource to update. (required) :type name: str :param enrollment_request: (required) :type enrollment_request: EnrollmentRequest @@ -2538,8 +3441,10 @@ def replace_enrollment_request_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "EnrollmentRequest", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, diff --git a/flightctl/api/fleet_api.py b/flightctl/flightctl/api/fleet_api.py similarity index 57% rename from flightctl/api/fleet_api.py rename to flightctl/flightctl/api/fleet_api.py index 3d77ff5..e392c90 100644 --- a/flightctl/api/fleet_api.py +++ b/flightctl/flightctl/api/fleet_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,8 +23,9 @@ from flightctl.models.fleet import Fleet from flightctl.models.fleet_list import FleetList from flightctl.models.patch_request_inner import PatchRequestInner -from flightctl.models.sort_order import SortOrder from flightctl.models.status import Status +from flightctl.models.template_version import TemplateVersion +from flightctl.models.template_version_list import TemplateVersionList from flightctl.api_client import ApiClient, RequestSerialized from flightctl.api_response import ApiResponse @@ -62,7 +64,7 @@ def create_fleet( ) -> Fleet: """create_fleet - create a Fleet + Create a Fleet resource. :param fleet: (required) :type fleet: Fleet @@ -98,9 +100,11 @@ def create_fleet( _response_types_map: Dict[str, Optional[str]] = { '201': "Fleet", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -132,7 +136,7 @@ def create_fleet_with_http_info( ) -> ApiResponse[Fleet]: """create_fleet - create a Fleet + Create a Fleet resource. :param fleet: (required) :type fleet: Fleet @@ -168,9 +172,11 @@ def create_fleet_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '201': "Fleet", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -202,7 +208,7 @@ def create_fleet_without_preload_content( ) -> RESTResponseType: """create_fleet - create a Fleet + Create a Fleet resource. :param fleet: (required) :type fleet: Fleet @@ -238,9 +244,11 @@ def create_fleet_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '201': "Fleet", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -328,7 +336,7 @@ def _create_fleet_serialize( @validate_call def delete_fleet( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -344,9 +352,9 @@ def delete_fleet( ) -> Fleet: """delete_fleet - delete a Fleet + Delete a Fleet resource. - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -380,9 +388,10 @@ def delete_fleet( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -398,7 +407,7 @@ def delete_fleet( @validate_call def delete_fleet_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -414,9 +423,9 @@ def delete_fleet_with_http_info( ) -> ApiResponse[Fleet]: """delete_fleet - delete a Fleet + Delete a Fleet resource. - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -450,9 +459,10 @@ def delete_fleet_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -468,7 +478,7 @@ def delete_fleet_with_http_info( @validate_call def delete_fleet_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -484,9 +494,9 @@ def delete_fleet_without_preload_content( ) -> RESTResponseType: """delete_fleet - delete a Fleet + Delete a Fleet resource. - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -520,9 +530,10 @@ def delete_fleet_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -612,7 +623,7 @@ def delete_fleets( ) -> Status: """delete_fleets - delete a collection of Fleets + Delete Fleet resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -645,7 +656,9 @@ def delete_fleets( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -676,7 +689,7 @@ def delete_fleets_with_http_info( ) -> ApiResponse[Status]: """delete_fleets - delete a collection of Fleets + Delete Fleet resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -709,7 +722,9 @@ def delete_fleets_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -740,7 +755,7 @@ def delete_fleets_without_preload_content( ) -> RESTResponseType: """delete_fleets - delete a collection of Fleets + Delete Fleet resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -773,7 +788,9 @@ def delete_fleets_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -842,17 +859,1556 @@ def _delete_fleets_serialize( + @validate_call + def delete_template_version( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], + name: Annotated[StrictStr, Field(description="The name of the template version.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> TemplateVersion: + """delete_template_version + + delete a template version + + :param fleet: The owner of the template version. (required) + :type fleet: str + :param name: The name of the template version. (required) + :type name: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_template_version_serialize( + fleet=fleet, + name=name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TemplateVersion", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def delete_template_version_with_http_info( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], + name: Annotated[StrictStr, Field(description="The name of the template version.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[TemplateVersion]: + """delete_template_version + + delete a template version + + :param fleet: The owner of the template version. (required) + :type fleet: str + :param name: The name of the template version. (required) + :type name: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_template_version_serialize( + fleet=fleet, + name=name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TemplateVersion", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def delete_template_version_without_preload_content( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], + name: Annotated[StrictStr, Field(description="The name of the template version.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """delete_template_version + + delete a template version + + :param fleet: The owner of the template version. (required) + :type fleet: str + :param name: The name of the template version. (required) + :type name: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_template_version_serialize( + fleet=fleet, + name=name, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TemplateVersion", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_template_version_serialize( + self, + fleet, + name, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if fleet is not None: + _path_params['fleet'] = fleet + if name is not None: + _path_params['name'] = name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='DELETE', + resource_path='/api/v1/fleets/{fleet}/templateversions/{name}', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def delete_template_versions( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> Status: + """delete_template_versions + + delete a collection of template versions + + :param fleet: The owner of the template versions. (required) + :type fleet: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_template_versions_serialize( + fleet=fleet, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def delete_template_versions_with_http_info( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[Status]: + """delete_template_versions + + delete a collection of template versions + + :param fleet: The owner of the template versions. (required) + :type fleet: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_template_versions_serialize( + fleet=fleet, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def delete_template_versions_without_preload_content( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """delete_template_versions + + delete a collection of template versions + + :param fleet: The owner of the template versions. (required) + :type fleet: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._delete_template_versions_serialize( + fleet=fleet, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _delete_template_versions_serialize( + self, + fleet, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if fleet is not None: + _path_params['fleet'] = fleet + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='DELETE', + resource_path='/api/v1/fleets/{fleet}/templateversions', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + @validate_call def list_fleets( self, - var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, - label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - owner: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their owner. Defaults to everything.")] = None, - add_devices_count: Annotated[Optional[StrictBool], Field(description="include the number of devices in each fleet")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, + var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, + label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, + limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, + add_devices_summary: Annotated[Optional[StrictBool], Field(description="Include a summary of the devices in the fleet.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> FleetList: + """list_fleets + + List Fleet resources. + + :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. + :type var_continue: str + :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. + :type label_selector: str + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). + :type field_selector: str + :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. + :type limit: int + :param add_devices_summary: Include a summary of the devices in the fleet. + :type add_devices_summary: bool + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._list_fleets_serialize( + var_continue=var_continue, + label_selector=label_selector, + field_selector=field_selector, + limit=limit, + add_devices_summary=add_devices_summary, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FleetList", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def list_fleets_with_http_info( + self, + var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, + label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, + limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, + add_devices_summary: Annotated[Optional[StrictBool], Field(description="Include a summary of the devices in the fleet.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[FleetList]: + """list_fleets + + List Fleet resources. + + :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. + :type var_continue: str + :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. + :type label_selector: str + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). + :type field_selector: str + :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. + :type limit: int + :param add_devices_summary: Include a summary of the devices in the fleet. + :type add_devices_summary: bool + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._list_fleets_serialize( + var_continue=var_continue, + label_selector=label_selector, + field_selector=field_selector, + limit=limit, + add_devices_summary=add_devices_summary, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FleetList", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def list_fleets_without_preload_content( + self, + var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, + label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, + limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, + add_devices_summary: Annotated[Optional[StrictBool], Field(description="Include a summary of the devices in the fleet.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """list_fleets + + List Fleet resources. + + :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. + :type var_continue: str + :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. + :type label_selector: str + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). + :type field_selector: str + :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. + :type limit: int + :param add_devices_summary: Include a summary of the devices in the fleet. + :type add_devices_summary: bool + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._list_fleets_serialize( + var_continue=var_continue, + label_selector=label_selector, + field_selector=field_selector, + limit=limit, + add_devices_summary=add_devices_summary, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "FleetList", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _list_fleets_serialize( + self, + var_continue, + label_selector, + field_selector, + limit, + add_devices_summary, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + if var_continue is not None: + + _query_params.append(('continue', var_continue)) + + if label_selector is not None: + + _query_params.append(('labelSelector', label_selector)) + + if field_selector is not None: + + _query_params.append(('fieldSelector', field_selector)) + + if limit is not None: + + _query_params.append(('limit', limit)) + + if add_devices_summary is not None: + + _query_params.append(('addDevicesSummary', add_devices_summary)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/fleets', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def list_template_versions( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], + var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, + label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, + limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> TemplateVersionList: + """list_template_versions + + list template versions + + :param fleet: The owner of the template versions. (required) + :type fleet: str + :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. + :type var_continue: str + :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. + :type label_selector: str + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). + :type field_selector: str + :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. + :type limit: int + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._list_template_versions_serialize( + fleet=fleet, + var_continue=var_continue, + label_selector=label_selector, + field_selector=field_selector, + limit=limit, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TemplateVersionList", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def list_template_versions_with_http_info( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], + var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, + label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, + limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[TemplateVersionList]: + """list_template_versions + + list template versions + + :param fleet: The owner of the template versions. (required) + :type fleet: str + :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. + :type var_continue: str + :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. + :type label_selector: str + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). + :type field_selector: str + :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. + :type limit: int + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._list_template_versions_serialize( + fleet=fleet, + var_continue=var_continue, + label_selector=label_selector, + field_selector=field_selector, + limit=limit, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TemplateVersionList", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def list_template_versions_without_preload_content( + self, + fleet: Annotated[StrictStr, Field(description="The owner of the template versions.")], + var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, + label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, + limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """list_template_versions + + list template versions + + :param fleet: The owner of the template versions. (required) + :type fleet: str + :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. + :type var_continue: str + :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. + :type label_selector: str + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). + :type field_selector: str + :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. + :type limit: int + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._list_template_versions_serialize( + fleet=fleet, + var_continue=var_continue, + label_selector=label_selector, + field_selector=field_selector, + limit=limit, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "TemplateVersionList", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _list_template_versions_serialize( + self, + fleet, + var_continue, + label_selector, + field_selector, + limit, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if fleet is not None: + _path_params['fleet'] = fleet + # process the query parameters + if var_continue is not None: + + _query_params.append(('continue', var_continue)) + + if label_selector is not None: + + _query_params.append(('labelSelector', label_selector)) + + if field_selector is not None: + + _query_params.append(('fieldSelector', field_selector)) + + if limit is not None: + + _query_params.append(('limit', limit)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/api/v1/fleets/{fleet}/templateversions', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def patch_fleet( + self, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> Fleet: + """patch_fleet + + Patch a Fleet resource. + + :param name: The name of the Fleet resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_fleet_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Fleet", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ).data + + + @validate_call + def patch_fleet_with_http_info( + self, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[Fleet]: + """patch_fleet + + Patch a Fleet resource. + + :param name: The name of the Fleet resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_fleet_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Fleet", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + ) + + + @validate_call + def patch_fleet_without_preload_content( + self, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to patch.")], + patch_request_inner: List[PatchRequestInner], + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """patch_fleet + + Patch a Fleet resource. + + :param name: The name of the Fleet resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._patch_fleet_serialize( + name=name, + patch_request_inner=patch_request_inner, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "Fleet", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _patch_fleet_serialize( + self, + name, + patch_request_inner, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + 'PatchRequestInner': '', + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[ + str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]] + ] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if name is not None: + _path_params['name'] = name + # process the query parameters + # process the header parameters + # process the form parameters + # process the body parameter + if patch_request_inner is not None: + _body_params = patch_request_inner + + + # set the HTTP header `Accept` + if 'Accept' not in _header_params: + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json' + ] + ) + + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json-patch+json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type + + # authentication setting + _auth_settings: List[str] = [ + ] + + return self.api_client.param_serialize( + method='PATCH', + resource_path='/api/v1/fleets/{name}', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + + + + @validate_call + def patch_fleet_status( + self, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -865,27 +2421,15 @@ def list_fleets( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> FleetList: - """list_fleets + ) -> Fleet: + """patch_fleet_status - list Fleets + Patch the status of a Fleet resource. - :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. - :type var_continue: str - :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. - :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). - :type field_selector: str - :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. - :type limit: int - :param owner: A selector to restrict the list of returned objects by their owner. Defaults to everything. - :type owner: str - :param add_devices_count: include the number of devices in each fleet - :type add_devices_count: bool - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder + :param name: The name of the Fleet resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -908,15 +2452,9 @@ def list_fleets( :return: Returns the result object. """ # noqa: E501 - _param = self._list_fleets_serialize( - var_continue=var_continue, - label_selector=label_selector, - field_selector=field_selector, - limit=limit, - owner=owner, - add_devices_count=add_devices_count, - sort_by=sort_by, - sort_order=sort_order, + _param = self._patch_fleet_status_serialize( + name=name, + patch_request_inner=patch_request_inner, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -924,9 +2462,12 @@ def list_fleets( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FleetList", - '400': "Error", - '401': "Error", + '200': "Fleet", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -940,16 +2481,10 @@ def list_fleets( @validate_call - def list_fleets_with_http_info( + def patch_fleet_status_with_http_info( self, - var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, - label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - owner: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their owner. Defaults to everything.")] = None, - add_devices_count: Annotated[Optional[StrictBool], Field(description="include the number of devices in each fleet")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -962,27 +2497,15 @@ def list_fleets_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[FleetList]: - """list_fleets + ) -> ApiResponse[Fleet]: + """patch_fleet_status - list Fleets + Patch the status of a Fleet resource. - :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. - :type var_continue: str - :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. - :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). - :type field_selector: str - :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. - :type limit: int - :param owner: A selector to restrict the list of returned objects by their owner. Defaults to everything. - :type owner: str - :param add_devices_count: include the number of devices in each fleet - :type add_devices_count: bool - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder + :param name: The name of the Fleet resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1005,15 +2528,9 @@ def list_fleets_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._list_fleets_serialize( - var_continue=var_continue, - label_selector=label_selector, - field_selector=field_selector, - limit=limit, - owner=owner, - add_devices_count=add_devices_count, - sort_by=sort_by, - sort_order=sort_order, + _param = self._patch_fleet_status_serialize( + name=name, + patch_request_inner=patch_request_inner, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1021,9 +2538,12 @@ def list_fleets_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FleetList", - '400': "Error", - '401': "Error", + '200': "Fleet", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1037,16 +2557,10 @@ def list_fleets_with_http_info( @validate_call - def list_fleets_without_preload_content( + def patch_fleet_status_without_preload_content( self, - var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, - label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, - limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - owner: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their owner. Defaults to everything.")] = None, - add_devices_count: Annotated[Optional[StrictBool], Field(description="include the number of devices in each fleet")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1060,26 +2574,14 @@ def list_fleets_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """list_fleets + """patch_fleet_status - list Fleets + Patch the status of a Fleet resource. - :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. - :type var_continue: str - :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. - :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). - :type field_selector: str - :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. - :type limit: int - :param owner: A selector to restrict the list of returned objects by their owner. Defaults to everything. - :type owner: str - :param add_devices_count: include the number of devices in each fleet - :type add_devices_count: bool - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder + :param name: The name of the Fleet resource to patch. (required) + :type name: str + :param patch_request_inner: (required) + :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1102,15 +2604,9 @@ def list_fleets_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._list_fleets_serialize( - var_continue=var_continue, - label_selector=label_selector, - field_selector=field_selector, - limit=limit, - owner=owner, - add_devices_count=add_devices_count, - sort_by=sort_by, - sort_order=sort_order, + _param = self._patch_fleet_status_serialize( + name=name, + patch_request_inner=patch_request_inner, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1118,9 +2614,12 @@ def list_fleets_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "FleetList", - '400': "Error", - '401': "Error", + '200': "Fleet", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1129,16 +2628,10 @@ def list_fleets_without_preload_content( return response_data.response - def _list_fleets_serialize( + def _patch_fleet_status_serialize( self, - var_continue, - label_selector, - field_selector, - limit, - owner, - add_devices_count, - sort_by, - sort_order, + name, + patch_request_inner, _request_auth, _content_type, _headers, @@ -1148,6 +2641,7 @@ def _list_fleets_serialize( _host = None _collection_formats: Dict[str, str] = { + 'PatchRequestInner': '', } _path_params: Dict[str, str] = {} @@ -1160,42 +2654,14 @@ def _list_fleets_serialize( _body_params: Optional[bytes] = None # process the path parameters + if name is not None: + _path_params['name'] = name # process the query parameters - if var_continue is not None: - - _query_params.append(('continue', var_continue)) - - if label_selector is not None: - - _query_params.append(('labelSelector', label_selector)) - - if field_selector is not None: - - _query_params.append(('fieldSelector', field_selector)) - - if limit is not None: - - _query_params.append(('limit', limit)) - - if owner is not None: - - _query_params.append(('owner', owner)) - - if add_devices_count is not None: - - _query_params.append(('addDevicesCount', add_devices_count)) - - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - # process the header parameters # process the form parameters # process the body parameter + if patch_request_inner is not None: + _body_params = patch_request_inner # set the HTTP header `Accept` @@ -1206,14 +2672,27 @@ def _list_fleets_serialize( ] ) + # set the HTTP header `Content-Type` + if _content_type: + _header_params['Content-Type'] = _content_type + else: + _default_content_type = ( + self.api_client.select_header_content_type( + [ + 'application/json-patch+json' + ] + ) + ) + if _default_content_type is not None: + _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='GET', - resource_path='/api/v1/fleets', + method='PATCH', + resource_path='/api/v1/fleets/{name}/status', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1230,10 +2709,10 @@ def _list_fleets_serialize( @validate_call - def patch_fleet( + def read_fleet( self, - name: Annotated[StrictStr, Field(description="name of the fleet")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to get.")], + add_devices_summary: Annotated[Optional[StrictBool], Field(description="Include a summary of the devices in the fleet.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1247,14 +2726,14 @@ def patch_fleet( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> Fleet: - """patch_fleet + """read_fleet - Patches the specified fleet + Get a Fleet resource. - :param name: name of the fleet (required) + :param name: The name of the Fleet resource to get. (required) :type name: str - :param patch_request_inner: - :type patch_request_inner: List[PatchRequestInner] + :param add_devices_summary: Include a summary of the devices in the fleet. + :type add_devices_summary: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1277,9 +2756,9 @@ def patch_fleet( :return: Returns the result object. """ # noqa: E501 - _param = self._patch_fleet_serialize( + _param = self._read_fleet_serialize( name=name, - patch_request_inner=patch_request_inner, + add_devices_summary=add_devices_summary, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1288,10 +2767,10 @@ def patch_fleet( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1305,10 +2784,10 @@ def patch_fleet( @validate_call - def patch_fleet_with_http_info( + def read_fleet_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the fleet")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to get.")], + add_devices_summary: Annotated[Optional[StrictBool], Field(description="Include a summary of the devices in the fleet.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1322,14 +2801,14 @@ def patch_fleet_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[Fleet]: - """patch_fleet + """read_fleet - Patches the specified fleet + Get a Fleet resource. - :param name: name of the fleet (required) + :param name: The name of the Fleet resource to get. (required) :type name: str - :param patch_request_inner: - :type patch_request_inner: List[PatchRequestInner] + :param add_devices_summary: Include a summary of the devices in the fleet. + :type add_devices_summary: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1352,9 +2831,9 @@ def patch_fleet_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._patch_fleet_serialize( + _param = self._read_fleet_serialize( name=name, - patch_request_inner=patch_request_inner, + add_devices_summary=add_devices_summary, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1363,10 +2842,10 @@ def patch_fleet_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1380,10 +2859,10 @@ def patch_fleet_with_http_info( @validate_call - def patch_fleet_without_preload_content( + def read_fleet_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the fleet")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to get.")], + add_devices_summary: Annotated[Optional[StrictBool], Field(description="Include a summary of the devices in the fleet.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1397,14 +2876,14 @@ def patch_fleet_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """patch_fleet + """read_fleet - Patches the specified fleet + Get a Fleet resource. - :param name: name of the fleet (required) + :param name: The name of the Fleet resource to get. (required) :type name: str - :param patch_request_inner: - :type patch_request_inner: List[PatchRequestInner] + :param add_devices_summary: Include a summary of the devices in the fleet. + :type add_devices_summary: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1427,9 +2906,9 @@ def patch_fleet_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._patch_fleet_serialize( + _param = self._read_fleet_serialize( name=name, - patch_request_inner=patch_request_inner, + add_devices_summary=add_devices_summary, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1438,10 +2917,10 @@ def patch_fleet_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1450,10 +2929,10 @@ def patch_fleet_without_preload_content( return response_data.response - def _patch_fleet_serialize( + def _read_fleet_serialize( self, name, - patch_request_inner, + add_devices_summary, _request_auth, _content_type, _headers, @@ -1463,7 +2942,6 @@ def _patch_fleet_serialize( _host = None _collection_formats: Dict[str, str] = { - 'PatchRequestInner': '', } _path_params: Dict[str, str] = {} @@ -1479,11 +2957,13 @@ def _patch_fleet_serialize( if name is not None: _path_params['name'] = name # process the query parameters + if add_devices_summary is not None: + + _query_params.append(('addDevicesSummary', add_devices_summary)) + # process the header parameters # process the form parameters # process the body parameter - if patch_request_inner is not None: - _body_params = patch_request_inner # set the HTTP header `Accept` @@ -1494,26 +2974,13 @@ def _patch_fleet_serialize( ] ) - # set the HTTP header `Content-Type` - if _content_type: - _header_params['Content-Type'] = _content_type - else: - _default_content_type = ( - self.api_client.select_header_content_type( - [ - 'application/json-patch+json' - ] - ) - ) - if _default_content_type is not None: - _header_params['Content-Type'] = _default_content_type # authentication setting _auth_settings: List[str] = [ ] return self.api_client.param_serialize( - method='PATCH', + method='GET', resource_path='/api/v1/fleets/{name}', path_params=_path_params, query_params=_query_params, @@ -1531,10 +2998,9 @@ def _patch_fleet_serialize( @validate_call - def read_fleet( + def read_fleet_status( self, - name: Annotated[StrictStr, Field(description="unique name of the Fleet")], - add_devices_summary: Annotated[Optional[StrictBool], Field(description="include a summary of the devices in the fleet")] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1548,14 +3014,12 @@ def read_fleet( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> Fleet: - """read_fleet + """read_fleet_status - read the specified Fleet + read status of the specified Fleet - :param name: unique name of the Fleet (required) + :param name: The name of the Fleet resource to get. (required) :type name: str - :param add_devices_summary: include a summary of the devices in the fleet - :type add_devices_summary: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1578,9 +3042,8 @@ def read_fleet( :return: Returns the result object. """ # noqa: E501 - _param = self._read_fleet_serialize( + _param = self._read_fleet_status_serialize( name=name, - add_devices_summary=add_devices_summary, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1589,8 +3052,10 @@ def read_fleet( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1604,10 +3069,9 @@ def read_fleet( @validate_call - def read_fleet_with_http_info( + def read_fleet_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="unique name of the Fleet")], - add_devices_summary: Annotated[Optional[StrictBool], Field(description="include a summary of the devices in the fleet")] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1621,14 +3085,12 @@ def read_fleet_with_http_info( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> ApiResponse[Fleet]: - """read_fleet + """read_fleet_status - read the specified Fleet + read status of the specified Fleet - :param name: unique name of the Fleet (required) + :param name: The name of the Fleet resource to get. (required) :type name: str - :param add_devices_summary: include a summary of the devices in the fleet - :type add_devices_summary: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1651,9 +3113,8 @@ def read_fleet_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._read_fleet_serialize( + _param = self._read_fleet_status_serialize( name=name, - add_devices_summary=add_devices_summary, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1662,8 +3123,10 @@ def read_fleet_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1677,10 +3140,9 @@ def read_fleet_with_http_info( @validate_call - def read_fleet_without_preload_content( + def read_fleet_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="unique name of the Fleet")], - add_devices_summary: Annotated[Optional[StrictBool], Field(description="include a summary of the devices in the fleet")] = None, + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1694,14 +3156,12 @@ def read_fleet_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """read_fleet + """read_fleet_status - read the specified Fleet + read status of the specified Fleet - :param name: unique name of the Fleet (required) + :param name: The name of the Fleet resource to get. (required) :type name: str - :param add_devices_summary: include a summary of the devices in the fleet - :type add_devices_summary: bool :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1724,9 +3184,8 @@ def read_fleet_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._read_fleet_serialize( + _param = self._read_fleet_status_serialize( name=name, - add_devices_summary=add_devices_summary, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1735,8 +3194,10 @@ def read_fleet_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1745,10 +3206,9 @@ def read_fleet_without_preload_content( return response_data.response - def _read_fleet_serialize( + def _read_fleet_status_serialize( self, name, - add_devices_summary, _request_auth, _content_type, _headers, @@ -1773,10 +3233,6 @@ def _read_fleet_serialize( if name is not None: _path_params['name'] = name # process the query parameters - if add_devices_summary is not None: - - _query_params.append(('addDevicesSummary', add_devices_summary)) - # process the header parameters # process the form parameters # process the body parameter @@ -1797,7 +3253,7 @@ def _read_fleet_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/v1/fleets/{name}', + resource_path='/api/v1/fleets/{name}/status', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -1814,9 +3270,10 @@ def _read_fleet_serialize( @validate_call - def read_fleet_status( + def read_template_version( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], + name: Annotated[StrictStr, Field(description="The name of the template version.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1829,12 +3286,14 @@ def read_fleet_status( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> Fleet: - """read_fleet_status + ) -> TemplateVersion: + """read_template_version - read status of the specified Fleet + read the specified template version - :param name: name of the Fleet (required) + :param fleet: The owner of the template version. (required) + :type fleet: str + :param name: The name of the template version. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1858,7 +3317,8 @@ def read_fleet_status( :return: Returns the result object. """ # noqa: E501 - _param = self._read_fleet_status_serialize( + _param = self._read_template_version_serialize( + fleet=fleet, name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -1867,9 +3327,11 @@ def read_fleet_status( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "Fleet", - '401': "Error", - '404': "Error", + '200': "TemplateVersion", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1883,9 +3345,10 @@ def read_fleet_status( @validate_call - def read_fleet_status_with_http_info( + def read_template_version_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], + name: Annotated[StrictStr, Field(description="The name of the template version.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1898,12 +3361,14 @@ def read_fleet_status_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[Fleet]: - """read_fleet_status + ) -> ApiResponse[TemplateVersion]: + """read_template_version - read status of the specified Fleet + read the specified template version - :param name: name of the Fleet (required) + :param fleet: The owner of the template version. (required) + :type fleet: str + :param name: The name of the template version. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1927,7 +3392,8 @@ def read_fleet_status_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._read_fleet_status_serialize( + _param = self._read_template_version_serialize( + fleet=fleet, name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -1936,9 +3402,11 @@ def read_fleet_status_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "Fleet", - '401': "Error", - '404': "Error", + '200': "TemplateVersion", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1952,9 +3420,10 @@ def read_fleet_status_with_http_info( @validate_call - def read_fleet_status_without_preload_content( + def read_template_version_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + fleet: Annotated[StrictStr, Field(description="The owner of the template version.")], + name: Annotated[StrictStr, Field(description="The name of the template version.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1968,11 +3437,13 @@ def read_fleet_status_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """read_fleet_status + """read_template_version - read status of the specified Fleet + read the specified template version - :param name: name of the Fleet (required) + :param fleet: The owner of the template version. (required) + :type fleet: str + :param name: The name of the template version. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1996,7 +3467,8 @@ def read_fleet_status_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._read_fleet_status_serialize( + _param = self._read_template_version_serialize( + fleet=fleet, name=name, _request_auth=_request_auth, _content_type=_content_type, @@ -2005,9 +3477,11 @@ def read_fleet_status_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "Fleet", - '401': "Error", - '404': "Error", + '200': "TemplateVersion", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2016,8 +3490,9 @@ def read_fleet_status_without_preload_content( return response_data.response - def _read_fleet_status_serialize( + def _read_template_version_serialize( self, + fleet, name, _request_auth, _content_type, @@ -2040,6 +3515,8 @@ def _read_fleet_status_serialize( _body_params: Optional[bytes] = None # process the path parameters + if fleet is not None: + _path_params['fleet'] = fleet if name is not None: _path_params['name'] = name # process the query parameters @@ -2063,7 +3540,7 @@ def _read_fleet_status_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/v1/fleets/{name}/status', + resource_path='/api/v1/fleets/{fleet}/templateversions/{name}', path_params=_path_params, query_params=_query_params, header_params=_header_params, @@ -2082,7 +3559,7 @@ def _read_fleet_status_serialize( @validate_call def replace_fleet( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to update.")], fleet: Fleet, _request_timeout: Union[ None, @@ -2099,9 +3576,9 @@ def replace_fleet( ) -> Fleet: """replace_fleet - replace the specified Fleet + Update a Fleet resource. - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to update. (required) :type name: str :param fleet: (required) :type fleet: Fleet @@ -2139,10 +3616,12 @@ def replace_fleet( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", '201': "Fleet", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '404': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2158,7 +3637,7 @@ def replace_fleet( @validate_call def replace_fleet_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to update.")], fleet: Fleet, _request_timeout: Union[ None, @@ -2175,9 +3654,9 @@ def replace_fleet_with_http_info( ) -> ApiResponse[Fleet]: """replace_fleet - replace the specified Fleet + Update a Fleet resource. - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to update. (required) :type name: str :param fleet: (required) :type fleet: Fleet @@ -2215,10 +3694,12 @@ def replace_fleet_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", '201': "Fleet", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '404': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2234,7 +3715,7 @@ def replace_fleet_with_http_info( @validate_call def replace_fleet_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to update.")], fleet: Fleet, _request_timeout: Union[ None, @@ -2251,9 +3732,9 @@ def replace_fleet_without_preload_content( ) -> RESTResponseType: """replace_fleet - replace the specified Fleet + Update a Fleet resource. - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to update. (required) :type name: str :param fleet: (required) :type fleet: Fleet @@ -2291,10 +3772,12 @@ def replace_fleet_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", '201': "Fleet", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '404': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2385,7 +3868,7 @@ def _replace_fleet_serialize( @validate_call def replace_fleet_status( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to update.")], fleet: Fleet, _request_timeout: Union[ None, @@ -2404,7 +3887,7 @@ def replace_fleet_status( replace status of the specified Fleet - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to update. (required) :type name: str :param fleet: (required) :type fleet: Fleet @@ -2441,8 +3924,10 @@ def replace_fleet_status( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2458,7 +3943,7 @@ def replace_fleet_status( @validate_call def replace_fleet_status_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to update.")], fleet: Fleet, _request_timeout: Union[ None, @@ -2477,7 +3962,7 @@ def replace_fleet_status_with_http_info( replace status of the specified Fleet - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to update. (required) :type name: str :param fleet: (required) :type fleet: Fleet @@ -2514,8 +3999,10 @@ def replace_fleet_status_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -2531,7 +4018,7 @@ def replace_fleet_status_with_http_info( @validate_call def replace_fleet_status_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the Fleet")], + name: Annotated[StrictStr, Field(description="The name of the Fleet resource to update.")], fleet: Fleet, _request_timeout: Union[ None, @@ -2550,7 +4037,7 @@ def replace_fleet_status_without_preload_content( replace status of the specified Fleet - :param name: name of the Fleet (required) + :param name: The name of the Fleet resource to update. (required) :type name: str :param fleet: (required) :type fleet: Fleet @@ -2587,8 +4074,10 @@ def replace_fleet_status_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Fleet", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, diff --git a/flightctl/api/repository_api.py b/flightctl/flightctl/api/repository_api.py similarity index 91% rename from flightctl/api/repository_api.py rename to flightctl/flightctl/api/repository_api.py index d0d3a0e..701906f 100644 --- a/flightctl/api/repository_api.py +++ b/flightctl/flightctl/api/repository_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,7 +23,6 @@ from flightctl.models.patch_request_inner import PatchRequestInner from flightctl.models.repository import Repository from flightctl.models.repository_list import RepositoryList -from flightctl.models.sort_order import SortOrder from flightctl.models.status import Status from flightctl.api_client import ApiClient, RequestSerialized @@ -62,7 +62,7 @@ def create_repository( ) -> Repository: """create_repository - create a repository + Create a Repository resource. :param repository: (required) :type repository: Repository @@ -98,9 +98,11 @@ def create_repository( _response_types_map: Dict[str, Optional[str]] = { '201': "Repository", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -132,7 +134,7 @@ def create_repository_with_http_info( ) -> ApiResponse[Repository]: """create_repository - create a repository + Create a Repository resource. :param repository: (required) :type repository: Repository @@ -168,9 +170,11 @@ def create_repository_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '201': "Repository", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -202,7 +206,7 @@ def create_repository_without_preload_content( ) -> RESTResponseType: """create_repository - create a repository + Create a Repository resource. :param repository: (required) :type repository: Repository @@ -238,9 +242,11 @@ def create_repository_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '201': "Repository", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -343,7 +349,7 @@ def delete_repositories( ) -> Status: """delete_repositories - delete a collection of Repositories + Delete Repository resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -376,7 +382,9 @@ def delete_repositories( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -407,7 +415,7 @@ def delete_repositories_with_http_info( ) -> ApiResponse[Status]: """delete_repositories - delete a collection of Repositories + Delete Repository resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -440,7 +448,9 @@ def delete_repositories_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -471,7 +481,7 @@ def delete_repositories_without_preload_content( ) -> RESTResponseType: """delete_repositories - delete a collection of Repositories + Delete Repository resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -504,7 +514,9 @@ def delete_repositories_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -576,7 +588,7 @@ def _delete_repositories_serialize( @validate_call def delete_repository( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -592,9 +604,9 @@ def delete_repository( ) -> Repository: """delete_repository - delete a repository + Delete a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -628,8 +640,10 @@ def delete_repository( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -645,7 +659,7 @@ def delete_repository( @validate_call def delete_repository_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -661,9 +675,9 @@ def delete_repository_with_http_info( ) -> ApiResponse[Repository]: """delete_repository - delete a repository + Delete a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -697,8 +711,10 @@ def delete_repository_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -714,7 +730,7 @@ def delete_repository_with_http_info( @validate_call def delete_repository_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -730,9 +746,9 @@ def delete_repository_without_preload_content( ) -> RESTResponseType: """delete_repository - delete a repository + Delete a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -766,8 +782,10 @@ def delete_repository_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -844,10 +862,8 @@ def list_repositories( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -863,20 +879,16 @@ def list_repositories( ) -> RepositoryList: """list_repositories - list repositories + List Repository resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -904,8 +916,6 @@ def list_repositories( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -914,8 +924,10 @@ def list_repositories( _response_types_map: Dict[str, Optional[str]] = { '200': "RepositoryList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -933,10 +945,8 @@ def list_repositories_with_http_info( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -952,20 +962,16 @@ def list_repositories_with_http_info( ) -> ApiResponse[RepositoryList]: """list_repositories - list repositories + List Repository resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -993,8 +999,6 @@ def list_repositories_with_http_info( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1003,8 +1007,10 @@ def list_repositories_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "RepositoryList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1022,10 +1028,8 @@ def list_repositories_without_preload_content( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2).")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1041,20 +1045,16 @@ def list_repositories_without_preload_content( ) -> RESTResponseType: """list_repositories - list repositories + List Repository resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supports '=', '==', and '!='.(e.g. key1=value1,key2!=value2). + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1082,8 +1082,6 @@ def list_repositories_without_preload_content( label_selector=label_selector, field_selector=field_selector, limit=limit, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1092,8 +1090,10 @@ def list_repositories_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "RepositoryList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1108,8 +1108,6 @@ def _list_repositories_serialize( label_selector, field_selector, limit, - sort_by, - sort_order, _request_auth, _content_type, _headers, @@ -1148,14 +1146,6 @@ def _list_repositories_serialize( _query_params.append(('limit', limit)) - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - # process the header parameters # process the form parameters # process the body parameter @@ -1195,8 +1185,8 @@ def _list_repositories_serialize( @validate_call def patch_repository( self, - name: Annotated[StrictStr, Field(description="name of the repository")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Repository resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1212,11 +1202,11 @@ def patch_repository( ) -> Repository: """patch_repository - Patches the specified repository + Patch a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1251,10 +1241,12 @@ def patch_repository( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1270,8 +1262,8 @@ def patch_repository( @validate_call def patch_repository_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the repository")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Repository resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1287,11 +1279,11 @@ def patch_repository_with_http_info( ) -> ApiResponse[Repository]: """patch_repository - Patches the specified repository + Patch a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1326,10 +1318,12 @@ def patch_repository_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1345,8 +1339,8 @@ def patch_repository_with_http_info( @validate_call def patch_repository_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the repository")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the Repository resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1362,11 +1356,11 @@ def patch_repository_without_preload_content( ) -> RESTResponseType: """patch_repository - Patches the specified repository + Patch a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1401,10 +1395,12 @@ def patch_repository_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1496,7 +1492,7 @@ def _patch_repository_serialize( @validate_call def read_repository( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1512,9 +1508,9 @@ def read_repository( ) -> Repository: """read_repository - read the specified repository + Get a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1548,8 +1544,10 @@ def read_repository( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1565,7 +1563,7 @@ def read_repository( @validate_call def read_repository_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1581,9 +1579,9 @@ def read_repository_with_http_info( ) -> ApiResponse[Repository]: """read_repository - read the specified repository + Get a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1617,8 +1615,10 @@ def read_repository_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1634,7 +1634,7 @@ def read_repository_with_http_info( @validate_call def read_repository_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1650,9 +1650,9 @@ def read_repository_without_preload_content( ) -> RESTResponseType: """read_repository - read the specified repository + Get a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1686,8 +1686,10 @@ def read_repository_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1762,7 +1764,7 @@ def _read_repository_serialize( @validate_call def replace_repository( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to update.")], repository: Repository, _request_timeout: Union[ None, @@ -1779,9 +1781,9 @@ def replace_repository( ) -> Repository: """replace_repository - replace the specified repository + Update a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to update. (required) :type name: str :param repository: (required) :type repository: Repository @@ -1819,10 +1821,12 @@ def replace_repository( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", '201': "Repository", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1838,7 +1842,7 @@ def replace_repository( @validate_call def replace_repository_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to update.")], repository: Repository, _request_timeout: Union[ None, @@ -1855,9 +1859,9 @@ def replace_repository_with_http_info( ) -> ApiResponse[Repository]: """replace_repository - replace the specified repository + Update a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to update. (required) :type name: str :param repository: (required) :type repository: Repository @@ -1895,10 +1899,12 @@ def replace_repository_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", '201': "Repository", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1914,7 +1920,7 @@ def replace_repository_with_http_info( @validate_call def replace_repository_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the repository")], + name: Annotated[StrictStr, Field(description="The name of the Repository resource to update.")], repository: Repository, _request_timeout: Union[ None, @@ -1931,9 +1937,9 @@ def replace_repository_without_preload_content( ) -> RESTResponseType: """replace_repository - replace the specified repository + Update a Repository resource. - :param name: name of the repository (required) + :param name: The name of the Repository resource to update. (required) :type name: str :param repository: (required) :type repository: Repository @@ -1971,10 +1977,12 @@ def replace_repository_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Repository", '201': "Repository", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, diff --git a/flightctl/api/resourcesync_api.py b/flightctl/flightctl/api/resourcesync_api.py similarity index 90% rename from flightctl/api/resourcesync_api.py rename to flightctl/flightctl/api/resourcesync_api.py index 01ee9b2..3dedf7d 100644 --- a/flightctl/api/resourcesync_api.py +++ b/flightctl/flightctl/api/resourcesync_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,7 +23,6 @@ from flightctl.models.patch_request_inner import PatchRequestInner from flightctl.models.resource_sync import ResourceSync from flightctl.models.resource_sync_list import ResourceSyncList -from flightctl.models.sort_order import SortOrder from flightctl.models.status import Status from flightctl.api_client import ApiClient, RequestSerialized @@ -62,7 +62,7 @@ def create_resource_sync( ) -> ResourceSync: """create_resource_sync - create a resourcesync + Create a ResourceSync resource. :param resource_sync: (required) :type resource_sync: ResourceSync @@ -98,9 +98,11 @@ def create_resource_sync( _response_types_map: Dict[str, Optional[str]] = { '201': "ResourceSync", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -132,7 +134,7 @@ def create_resource_sync_with_http_info( ) -> ApiResponse[ResourceSync]: """create_resource_sync - create a resourcesync + Create a ResourceSync resource. :param resource_sync: (required) :type resource_sync: ResourceSync @@ -168,9 +170,11 @@ def create_resource_sync_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '201': "ResourceSync", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -202,7 +206,7 @@ def create_resource_sync_without_preload_content( ) -> RESTResponseType: """create_resource_sync - create a resourcesync + Create a ResourceSync resource. :param resource_sync: (required) :type resource_sync: ResourceSync @@ -238,9 +242,11 @@ def create_resource_sync_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '201': "ResourceSync", - '400': "Error", - '401': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -328,7 +334,7 @@ def _create_resource_sync_serialize( @validate_call def delete_resource_sync( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -344,9 +350,9 @@ def delete_resource_sync( ) -> ResourceSync: """delete_resource_sync - delete a resourcesync + Delete a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -380,8 +386,10 @@ def delete_resource_sync( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -397,7 +405,7 @@ def delete_resource_sync( @validate_call def delete_resource_sync_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -413,9 +421,9 @@ def delete_resource_sync_with_http_info( ) -> ApiResponse[ResourceSync]: """delete_resource_sync - delete a resourcesync + Delete a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -449,8 +457,10 @@ def delete_resource_sync_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -466,7 +476,7 @@ def delete_resource_sync_with_http_info( @validate_call def delete_resource_sync_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to delete.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -482,9 +492,9 @@ def delete_resource_sync_without_preload_content( ) -> RESTResponseType: """delete_resource_sync - delete a resourcesync + Delete a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to delete. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -518,8 +528,10 @@ def delete_resource_sync_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -609,7 +621,7 @@ def delete_resource_syncs( ) -> Status: """delete_resource_syncs - delete a collection of ResourceSync + Delete ResourceSync resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -642,7 +654,9 @@ def delete_resource_syncs( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -673,7 +687,7 @@ def delete_resource_syncs_with_http_info( ) -> ApiResponse[Status]: """delete_resource_syncs - delete a collection of ResourceSync + Delete ResourceSync resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -706,7 +720,9 @@ def delete_resource_syncs_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -737,7 +753,7 @@ def delete_resource_syncs_without_preload_content( ) -> RESTResponseType: """delete_resource_syncs - delete a collection of ResourceSync + Delete ResourceSync resources. :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -770,7 +786,9 @@ def delete_resource_syncs_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "Status", - '401': "Error", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -844,11 +862,8 @@ def list_resource_sync( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - repository: Annotated[Optional[StrictStr], Field(description="The name of the repository to filter results by.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -864,22 +879,16 @@ def list_resource_sync( ) -> ResourceSyncList: """list_resource_sync - list resourcesync + List ResourceSync resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation. + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param repository: The name of the repository to filter results by. - :type repository: str - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -907,9 +916,6 @@ def list_resource_sync( label_selector=label_selector, field_selector=field_selector, limit=limit, - repository=repository, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -918,8 +924,10 @@ def list_resource_sync( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSyncList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -937,11 +945,8 @@ def list_resource_sync_with_http_info( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - repository: Annotated[Optional[StrictStr], Field(description="The name of the repository to filter results by.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -957,22 +962,16 @@ def list_resource_sync_with_http_info( ) -> ApiResponse[ResourceSyncList]: """list_resource_sync - list resourcesync + List ResourceSync resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation. + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param repository: The name of the repository to filter results by. - :type repository: str - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1000,9 +999,6 @@ def list_resource_sync_with_http_info( label_selector=label_selector, field_selector=field_selector, limit=limit, - repository=repository, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1011,8 +1007,10 @@ def list_resource_sync_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSyncList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1030,11 +1028,8 @@ def list_resource_sync_without_preload_content( self, var_continue: Annotated[Optional[StrictStr], Field(description="An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response.")] = None, label_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their labels. Defaults to everything.")] = None, - field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation.")] = None, + field_selector: Annotated[Optional[StrictStr], Field(description="A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\").")] = None, limit: Annotated[Optional[StrictInt], Field(description="The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query.")] = None, - repository: Annotated[Optional[StrictStr], Field(description="The name of the repository to filter results by.")] = None, - sort_by: Annotated[Optional[StrictStr], Field(description="Specifies the field to sort by.")] = None, - sort_order: Annotated[Optional[SortOrder], Field(description="Specifies the sort order.")] = None, _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1050,22 +1045,16 @@ def list_resource_sync_without_preload_content( ) -> RESTResponseType: """list_resource_sync - list resourcesync + List ResourceSync resources. :param var_continue: An optional parameter to query more results from the server. The value of the paramter must match the value of the 'continue' field in the previous list response. :type var_continue: str :param label_selector: A selector to restrict the list of returned objects by their labels. Defaults to everything. :type label_selector: str - :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). For a full list of operators and examples, refer to the documentation. + :param field_selector: A selector to restrict the list of returned objects by their fields, supporting operators like '=', '==', and '!=' (e.g., \"key1=value1,key2!=value2\"). :type field_selector: str :param limit: The maximum number of results returned in the list response. The server will set the 'continue' field in the list response if more results exist. The continue value may then be specified as parameter in a subsequent query. :type limit: int - :param repository: The name of the repository to filter results by. - :type repository: str - :param sort_by: Specifies the field to sort by. - :type sort_by: str - :param sort_order: Specifies the sort order. - :type sort_order: SortOrder :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -1093,9 +1082,6 @@ def list_resource_sync_without_preload_content( label_selector=label_selector, field_selector=field_selector, limit=limit, - repository=repository, - sort_by=sort_by, - sort_order=sort_order, _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -1104,8 +1090,10 @@ def list_resource_sync_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSyncList", - '400': "Error", - '401': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1120,9 +1108,6 @@ def _list_resource_sync_serialize( label_selector, field_selector, limit, - repository, - sort_by, - sort_order, _request_auth, _content_type, _headers, @@ -1161,18 +1146,6 @@ def _list_resource_sync_serialize( _query_params.append(('limit', limit)) - if repository is not None: - - _query_params.append(('repository', repository)) - - if sort_by is not None: - - _query_params.append(('sortBy', sort_by)) - - if sort_order is not None: - - _query_params.append(('sortOrder', sort_order.value)) - # process the header parameters # process the form parameters # process the body parameter @@ -1212,8 +1185,8 @@ def _list_resource_sync_serialize( @validate_call def patch_resource_sync( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1229,11 +1202,11 @@ def patch_resource_sync( ) -> ResourceSync: """patch_resource_sync - Patches the specified resourcesync + Patch a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1268,10 +1241,12 @@ def patch_resource_sync( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1287,8 +1262,8 @@ def patch_resource_sync( @validate_call def patch_resource_sync_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1304,11 +1279,11 @@ def patch_resource_sync_with_http_info( ) -> ApiResponse[ResourceSync]: """patch_resource_sync - Patches the specified resourcesync + Patch a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1343,10 +1318,12 @@ def patch_resource_sync_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1362,8 +1339,8 @@ def patch_resource_sync_with_http_info( @validate_call def patch_resource_sync_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], - patch_request_inner: Optional[List[PatchRequestInner]] = None, + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to patch.")], + patch_request_inner: List[PatchRequestInner], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1379,11 +1356,11 @@ def patch_resource_sync_without_preload_content( ) -> RESTResponseType: """patch_resource_sync - Patches the specified resourcesync + Patch a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to patch. (required) :type name: str - :param patch_request_inner: + :param patch_request_inner: (required) :type patch_request_inner: List[PatchRequestInner] :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1418,10 +1395,12 @@ def patch_resource_sync_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1513,7 +1492,7 @@ def _patch_resource_sync_serialize( @validate_call def read_resource_sync( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1529,9 +1508,9 @@ def read_resource_sync( ) -> ResourceSync: """read_resource_sync - read the specified resourcesync + Get a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1565,8 +1544,10 @@ def read_resource_sync( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1582,7 +1563,7 @@ def read_resource_sync( @validate_call def read_resource_sync_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1598,9 +1579,9 @@ def read_resource_sync_with_http_info( ) -> ApiResponse[ResourceSync]: """read_resource_sync - read the specified resourcesync + Get a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1634,8 +1615,10 @@ def read_resource_sync_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1651,7 +1634,7 @@ def read_resource_sync_with_http_info( @validate_call def read_resource_sync_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to get.")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -1667,9 +1650,9 @@ def read_resource_sync_without_preload_content( ) -> RESTResponseType: """read_resource_sync - read the specified resourcesync + Get a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to get. (required) :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request @@ -1703,8 +1686,10 @@ def read_resource_sync_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", - '401': "Error", - '404': "Error", + '401': "Status", + '403': "Status", + '404': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1779,7 +1764,7 @@ def _read_resource_sync_serialize( @validate_call def replace_resource_sync( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to update.")], resource_sync: ResourceSync, _request_timeout: Union[ None, @@ -1796,9 +1781,9 @@ def replace_resource_sync( ) -> ResourceSync: """replace_resource_sync - replace the specified resourcesync + Update a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to update. (required) :type name: str :param resource_sync: (required) :type resource_sync: ResourceSync @@ -1836,10 +1821,12 @@ def replace_resource_sync( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", '201': "ResourceSync", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1855,7 +1842,7 @@ def replace_resource_sync( @validate_call def replace_resource_sync_with_http_info( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to update.")], resource_sync: ResourceSync, _request_timeout: Union[ None, @@ -1872,9 +1859,9 @@ def replace_resource_sync_with_http_info( ) -> ApiResponse[ResourceSync]: """replace_resource_sync - replace the specified resourcesync + Update a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to update. (required) :type name: str :param resource_sync: (required) :type resource_sync: ResourceSync @@ -1912,10 +1899,12 @@ def replace_resource_sync_with_http_info( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", '201': "ResourceSync", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -1931,7 +1920,7 @@ def replace_resource_sync_with_http_info( @validate_call def replace_resource_sync_without_preload_content( self, - name: Annotated[StrictStr, Field(description="name of the resourcesync")], + name: Annotated[StrictStr, Field(description="The name of the ResourceSync resource to update.")], resource_sync: ResourceSync, _request_timeout: Union[ None, @@ -1948,9 +1937,9 @@ def replace_resource_sync_without_preload_content( ) -> RESTResponseType: """replace_resource_sync - replace the specified resourcesync + Update a ResourceSync resource. - :param name: name of the resourcesync (required) + :param name: The name of the ResourceSync resource to update. (required) :type name: str :param resource_sync: (required) :type resource_sync: ResourceSync @@ -1988,10 +1977,12 @@ def replace_resource_sync_without_preload_content( _response_types_map: Dict[str, Optional[str]] = { '200': "ResourceSync", '201': "ResourceSync", - '400': "Error", - '401': "Error", - '404': "Error", - '409': "Error", + '400': "Status", + '401': "Status", + '403': "Status", + '404': "Status", + '409': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, diff --git a/flightctl/api/enrollmentconfig_api.py b/flightctl/flightctl/api/version_api.py similarity index 82% rename from flightctl/api/enrollmentconfig_api.py rename to flightctl/flightctl/api/version_api.py index f4c72f6..e231727 100644 --- a/flightctl/api/enrollmentconfig_api.py +++ b/flightctl/flightctl/api/version_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -16,16 +17,14 @@ from typing import Any, Dict, List, Optional, Tuple, Union from typing_extensions import Annotated -from pydantic import Field, StrictStr -from typing_extensions import Annotated -from flightctl.models.enrollment_config import EnrollmentConfig +from flightctl.models.version import Version from flightctl.api_client import ApiClient, RequestSerialized from flightctl.api_response import ApiResponse from flightctl.rest import RESTResponseType -class EnrollmentconfigApi: +class VersionApi: """NOTE: This class is auto generated by OpenAPI Generator Ref: https://openapi-generator.tech @@ -39,9 +38,8 @@ def __init__(self, api_client=None) -> None: @validate_call - def enrollment_config( + def get_version( self, - name: Annotated[StrictStr, Field(description="the name of approved CSR")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -54,13 +52,11 @@ def enrollment_config( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> EnrollmentConfig: - """enrollment_config + ) -> Version: + """get_version - Get config for enrolling devices + Get service version. - :param name: the name of approved CSR (required) - :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -83,8 +79,7 @@ def enrollment_config( :return: Returns the result object. """ # noqa: E501 - _param = self._enrollment_config_serialize( - name=name, + _param = self._get_version_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -92,10 +87,9 @@ def enrollment_config( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "EnrollmentConfig", - '400': "Error", - '404': "Error", - '401': "Error", + '200': "Version", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -109,9 +103,8 @@ def enrollment_config( @validate_call - def enrollment_config_with_http_info( + def get_version_with_http_info( self, - name: Annotated[StrictStr, Field(description="the name of approved CSR")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -124,13 +117,11 @@ def enrollment_config_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[EnrollmentConfig]: - """enrollment_config + ) -> ApiResponse[Version]: + """get_version - Get config for enrolling devices + Get service version. - :param name: the name of approved CSR (required) - :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -153,8 +144,7 @@ def enrollment_config_with_http_info( :return: Returns the result object. """ # noqa: E501 - _param = self._enrollment_config_serialize( - name=name, + _param = self._get_version_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -162,10 +152,9 @@ def enrollment_config_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "EnrollmentConfig", - '400': "Error", - '404': "Error", - '401': "Error", + '200': "Version", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -179,9 +168,8 @@ def enrollment_config_with_http_info( @validate_call - def enrollment_config_without_preload_content( + def get_version_without_preload_content( self, - name: Annotated[StrictStr, Field(description="the name of approved CSR")], _request_timeout: Union[ None, Annotated[StrictFloat, Field(gt=0)], @@ -195,12 +183,10 @@ def enrollment_config_without_preload_content( _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, ) -> RESTResponseType: - """enrollment_config + """get_version - Get config for enrolling devices + Get service version. - :param name: the name of approved CSR (required) - :type name: str :param _request_timeout: timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of @@ -223,8 +209,7 @@ def enrollment_config_without_preload_content( :return: Returns the result object. """ # noqa: E501 - _param = self._enrollment_config_serialize( - name=name, + _param = self._get_version_serialize( _request_auth=_request_auth, _content_type=_content_type, _headers=_headers, @@ -232,10 +217,9 @@ def enrollment_config_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - '200': "EnrollmentConfig", - '400': "Error", - '404': "Error", - '401': "Error", + '200': "Version", + '403': "Status", + '503': "Status", } response_data = self.api_client.call_api( *_param, @@ -244,9 +228,8 @@ def enrollment_config_without_preload_content( return response_data.response - def _enrollment_config_serialize( + def _get_version_serialize( self, - name, _request_auth, _content_type, _headers, @@ -268,8 +251,6 @@ def _enrollment_config_serialize( _body_params: Optional[bytes] = None # process the path parameters - if name is not None: - _path_params['name'] = name # process the query parameters # process the header parameters # process the form parameters @@ -291,7 +272,7 @@ def _enrollment_config_serialize( return self.api_client.param_serialize( method='GET', - resource_path='/api/v1/enrollmentconfig/{name}', + resource_path='/api/version', path_params=_path_params, query_params=_query_params, header_params=_header_params, diff --git a/flightctl/api_client.py b/flightctl/flightctl/api_client.py similarity index 98% rename from flightctl/api_client.py rename to flightctl/flightctl/api_client.py index 48b0aee..e3adac8 100644 --- a/flightctl/api_client.py +++ b/flightctl/flightctl/api_client.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -517,7 +518,7 @@ def parameters_to_url_query(self, params, collection_formats): if k in collection_formats: collection_format = collection_formats[k] if collection_format == 'multi': - new_params.extend((k, str(value)) for value in v) + new_params.extend((k, quote(str(value))) for value in v) else: if collection_format == 'ssv': delimiter = ' ' diff --git a/flightctl/api_response.py b/flightctl/flightctl/api_response.py similarity index 100% rename from flightctl/api_response.py rename to flightctl/flightctl/api_response.py diff --git a/flightctl/configuration.py b/flightctl/flightctl/configuration.py similarity index 98% rename from flightctl/configuration.py rename to flightctl/flightctl/configuration.py index fc92e98..05fe955 100644 --- a/flightctl/configuration.py +++ b/flightctl/flightctl/configuration.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -493,7 +494,7 @@ def to_debug_report(self) -> str: return "Python SDK Debug Report:\n"\ "OS: {env}\n"\ "Python Version: {pyversion}\n"\ - "Version of the API: undefined\n"\ + "Version of the API: v1alpha1\n"\ "SDK Package Version: 1.0.0".\ format(env=sys.platform, pyversion=sys.version) diff --git a/flightctl/exceptions.py b/flightctl/flightctl/exceptions.py similarity index 88% rename from flightctl/exceptions.py rename to flightctl/flightctl/exceptions.py index 41ec8b9..44904a1 100644 --- a/flightctl/exceptions.py +++ b/flightctl/flightctl/exceptions.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -150,6 +151,13 @@ def from_response( if http_resp.status == 404: raise NotFoundException(http_resp=http_resp, body=body, data=data) + # Added new conditions for 409 and 422 + if http_resp.status == 409: + raise ConflictException(http_resp=http_resp, body=body, data=data) + + if http_resp.status == 422: + raise UnprocessableEntityException(http_resp=http_resp, body=body, data=data) + if 500 <= http_resp.status <= 599: raise ServiceException(http_resp=http_resp, body=body, data=data) raise ApiException(http_resp=http_resp, body=body, data=data) @@ -188,6 +196,16 @@ class ServiceException(ApiException): pass +class ConflictException(ApiException): + """Exception for HTTP 409 Conflict.""" + pass + + +class UnprocessableEntityException(ApiException): + """Exception for HTTP 422 Unprocessable Entity.""" + pass + + def render_path(path_to_item): """Returns a string representation of a path""" result = "" diff --git a/flightctl/models/__init__.py b/flightctl/flightctl/models/__init__.py similarity index 80% rename from flightctl/models/__init__.py rename to flightctl/flightctl/models/__init__.py index 741f42d..3f08d0f 100644 --- a/flightctl/models/__init__.py +++ b/flightctl/flightctl/models/__init__.py @@ -2,11 +2,12 @@ # flake8: noqa """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -15,14 +16,13 @@ # import models into model package from flightctl.models.application_env_vars import ApplicationEnvVars -from flightctl.models.application_spec import ApplicationSpec +from flightctl.models.application_provider_spec import ApplicationProviderSpec from flightctl.models.application_status_type import ApplicationStatusType from flightctl.models.applications_summary_status_type import ApplicationsSummaryStatusType from flightctl.models.auth_config import AuthConfig from flightctl.models.batch import Batch from flightctl.models.batch_limit import BatchLimit from flightctl.models.batch_sequence import BatchSequence -from flightctl.models.cpu_resource_monitor_spec import CPUResourceMonitorSpec from flightctl.models.certificate_signing_request import CertificateSigningRequest from flightctl.models.certificate_signing_request_list import CertificateSigningRequestList from flightctl.models.certificate_signing_request_spec import CertificateSigningRequestSpec @@ -31,20 +31,23 @@ from flightctl.models.condition_status import ConditionStatus from flightctl.models.condition_type import ConditionType from flightctl.models.config_provider_spec import ConfigProviderSpec +from flightctl.models.cpu_resource_monitor_spec import CpuResourceMonitorSpec from flightctl.models.custom_resource_monitor_spec import CustomResourceMonitorSpec from flightctl.models.device import Device from flightctl.models.device_application_status import DeviceApplicationStatus from flightctl.models.device_applications_summary_status import DeviceApplicationsSummaryStatus from flightctl.models.device_config_status import DeviceConfigStatus from flightctl.models.device_console import DeviceConsole -from flightctl.models.device_hooks_spec import DeviceHooksSpec +from flightctl.models.device_decommission import DeviceDecommission +from flightctl.models.device_decommission_target_type import DeviceDecommissionTargetType from flightctl.models.device_integrity_status import DeviceIntegrityStatus -from flightctl.models.device_integrity_status_summary import DeviceIntegrityStatusSummary from flightctl.models.device_integrity_status_summary_type import DeviceIntegrityStatusSummaryType +from flightctl.models.device_lifecycle_hook_type import DeviceLifecycleHookType +from flightctl.models.device_lifecycle_status import DeviceLifecycleStatus +from flightctl.models.device_lifecycle_status_type import DeviceLifecycleStatusType from flightctl.models.device_list import DeviceList -from flightctl.models.device_os_spec import DeviceOSSpec -from flightctl.models.device_os_status import DeviceOSStatus -from flightctl.models.device_reboot_hook_spec import DeviceRebootHookSpec +from flightctl.models.device_os_spec import DeviceOsSpec +from flightctl.models.device_os_status import DeviceOsStatus from flightctl.models.device_resource_status import DeviceResourceStatus from flightctl.models.device_resource_status_type import DeviceResourceStatusType from flightctl.models.device_spec import DeviceSpec @@ -53,22 +56,22 @@ from flightctl.models.device_summary_status import DeviceSummaryStatus from flightctl.models.device_summary_status_type import DeviceSummaryStatusType from flightctl.models.device_system_info import DeviceSystemInfo -from flightctl.models.device_update_hook_spec import DeviceUpdateHookSpec +from flightctl.models.device_update_policy_spec import DeviceUpdatePolicySpec from flightctl.models.device_updated_status import DeviceUpdatedStatus from flightctl.models.device_updated_status_type import DeviceUpdatedStatusType from flightctl.models.devices_summary import DevicesSummary from flightctl.models.disk_resource_monitor_spec import DiskResourceMonitorSpec -from flightctl.models.disruption_allowance import DisruptionAllowance +from flightctl.models.disruption_budget import DisruptionBudget from flightctl.models.enrollment_config import EnrollmentConfig from flightctl.models.enrollment_request import EnrollmentRequest from flightctl.models.enrollment_request_approval import EnrollmentRequestApproval +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus from flightctl.models.enrollment_request_list import EnrollmentRequestList from flightctl.models.enrollment_request_spec import EnrollmentRequestSpec from flightctl.models.enrollment_request_status import EnrollmentRequestStatus from flightctl.models.enrollment_service import EnrollmentService from flightctl.models.enrollment_service_auth import EnrollmentServiceAuth from flightctl.models.enrollment_service_service import EnrollmentServiceService -from flightctl.models.error import Error from flightctl.models.file_operation import FileOperation from flightctl.models.file_spec import FileSpec from flightctl.models.fleet import Fleet @@ -81,13 +84,9 @@ from flightctl.models.git_config_provider_spec import GitConfigProviderSpec from flightctl.models.git_config_provider_spec_git_ref import GitConfigProviderSpecGitRef from flightctl.models.hook_action import HookAction -from flightctl.models.hook_action_executable import HookActionExecutable -from flightctl.models.hook_action_executable_spec import HookActionExecutableSpec -from flightctl.models.hook_action_one_of import HookActionOneOf -from flightctl.models.hook_action_one_of1 import HookActionOneOf1 -from flightctl.models.hook_action_spec import HookActionSpec -from flightctl.models.hook_action_systemd_spec import HookActionSystemdSpec -from flightctl.models.hook_action_systemd_unit import HookActionSystemdUnit +from flightctl.models.hook_action_run import HookActionRun +from flightctl.models.hook_condition import HookCondition +from flightctl.models.hook_condition_path_op import HookConditionPathOp from flightctl.models.http_config import HttpConfig from flightctl.models.http_config_provider_spec import HttpConfigProviderSpec from flightctl.models.http_config_provider_spec_http_ref import HttpConfigProviderSpecHttpRef @@ -102,9 +101,6 @@ from flightctl.models.memory_resource_monitor_spec import MemoryResourceMonitorSpec from flightctl.models.object_meta import ObjectMeta from flightctl.models.patch_request_inner import PatchRequestInner -from flightctl.models.rendered_application_spec import RenderedApplicationSpec -from flightctl.models.rendered_device_spec import RenderedDeviceSpec -from flightctl.models.rendered_device_spec_systemd import RenderedDeviceSpecSystemd from flightctl.models.repo_spec_type import RepoSpecType from flightctl.models.repository import Repository from flightctl.models.repository_list import RepositoryList @@ -120,7 +116,7 @@ from flightctl.models.resource_sync_status import ResourceSyncStatus from flightctl.models.rollout_device_selection import RolloutDeviceSelection from flightctl.models.rollout_policy import RolloutPolicy -from flightctl.models.sort_order import SortOrder +from flightctl.models.rollout_strategy import RolloutStrategy from flightctl.models.ssh_config import SshConfig from flightctl.models.ssh_repo_spec import SshRepoSpec from flightctl.models.status import Status @@ -128,3 +124,5 @@ from flightctl.models.template_version_list import TemplateVersionList from flightctl.models.template_version_spec import TemplateVersionSpec from flightctl.models.template_version_status import TemplateVersionStatus +from flightctl.models.update_schedule import UpdateSchedule +from flightctl.models.version import Version diff --git a/flightctl/models/application_env_vars.py b/flightctl/flightctl/models/application_env_vars.py similarity index 88% rename from flightctl/models/application_env_vars.py rename to flightctl/flightctl/models/application_env_vars.py index bc75782..2f90ad9 100644 --- a/flightctl/models/application_env_vars.py +++ b/flightctl/flightctl/models/application_env_vars.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,7 +27,7 @@ class ApplicationEnvVars(BaseModel): """ ApplicationEnvVars """ # noqa: E501 - env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime", alias="envVars") + env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime. The key and value each must be between 1 and 253 characters.", alias="envVars") __properties: ClassVar[List[str]] = ["envVars"] model_config = ConfigDict( diff --git a/flightctl/models/application_spec.py b/flightctl/flightctl/models/application_provider_spec.py similarity index 78% rename from flightctl/models/application_spec.py rename to flightctl/flightctl/models/application_provider_spec.py index 29d5dc8..1b956a4 100644 --- a/flightctl/models/application_spec.py +++ b/flightctl/flightctl/models/application_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,13 +23,13 @@ from typing import Optional, Set from typing_extensions import Self -class ApplicationSpec(BaseModel): +class ApplicationProviderSpec(BaseModel): """ - ApplicationSpec + ApplicationProviderSpec """ # noqa: E501 - env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime", alias="envVars") - name: Optional[StrictStr] = Field(default=None, description="The name of the application") - image: StrictStr = Field(description="Reference to the container image for the application package") + env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime. The key and value each must be between 1 and 253 characters.", alias="envVars") + name: Optional[StrictStr] = Field(default=None, description="The name of the application must be between 1 and 253 characters and start with a letter or number.") + image: StrictStr = Field(description="Reference to the container image for the application package.") __properties: ClassVar[List[str]] = ["envVars", "name", "image"] model_config = ConfigDict( @@ -49,7 +50,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of ApplicationSpec from a JSON string""" + """Create an instance of ApplicationProviderSpec from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -74,7 +75,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of ApplicationSpec from a dict""" + """Create an instance of ApplicationProviderSpec from a dict""" if obj is None: return None diff --git a/flightctl/models/application_status_type.py b/flightctl/flightctl/models/application_status_type.py similarity index 70% rename from flightctl/models/application_status_type.py rename to flightctl/flightctl/models/application_status_type.py index 047712e..a93903b 100644 --- a/flightctl/models/application_status_type.py +++ b/flightctl/flightctl/models/application_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class ApplicationStatusType(str, Enum): """ - ApplicationStatusType + Status of a single application on the device. """ """ diff --git a/flightctl/models/applications_summary_status_type.py b/flightctl/flightctl/models/applications_summary_status_type.py similarity index 69% rename from flightctl/models/applications_summary_status_type.py rename to flightctl/flightctl/models/applications_summary_status_type.py index adbf058..53f03c8 100644 --- a/flightctl/models/applications_summary_status_type.py +++ b/flightctl/flightctl/models/applications_summary_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class ApplicationsSummaryStatusType(str, Enum): """ - ApplicationsSummaryStatusType + Status of all applications on the device. """ """ diff --git a/flightctl/models/auth_config.py b/flightctl/flightctl/models/auth_config.py similarity index 85% rename from flightctl/models/auth_config.py rename to flightctl/flightctl/models/auth_config.py index 15181b2..ebaa565 100644 --- a/flightctl/models/auth_config.py +++ b/flightctl/flightctl/models/auth_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,8 +27,8 @@ class AuthConfig(BaseModel): """ Auth config. """ # noqa: E501 - auth_type: StrictStr = Field(description="Auth type", alias="authType") - auth_url: StrictStr = Field(description="Auth URL", alias="authURL") + auth_type: StrictStr = Field(description="Auth type.", alias="authType") + auth_url: StrictStr = Field(description="Auth URL.", alias="authURL") __properties: ClassVar[List[str]] = ["authType", "authURL"] model_config = ConfigDict( diff --git a/flightctl/models/batch.py b/flightctl/flightctl/models/batch.py similarity index 93% rename from flightctl/models/batch.py rename to flightctl/flightctl/models/batch.py index 645af2b..86f26d7 100644 --- a/flightctl/models/batch.py +++ b/flightctl/flightctl/models/batch.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/batch_limit.py b/flightctl/flightctl/models/batch_limit.py similarity index 94% rename from flightctl/models/batch_limit.py rename to flightctl/flightctl/models/batch_limit.py index cd7dba3..517a2d8 100644 --- a/flightctl/models/batch_limit.py +++ b/flightctl/flightctl/models/batch_limit.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,7 +27,7 @@ class BatchLimit(BaseModel): """ - BatchLimit + The maximum number or percentage of devices to update in the batch. """ # data type: str oneof_schema_1_validator: Optional[StrictStr] = Field(default=None, description="Percentage is the string format representing percentage string.") diff --git a/flightctl/models/batch_sequence.py b/flightctl/flightctl/models/batch_sequence.py similarity index 84% rename from flightctl/models/batch_sequence.py rename to flightctl/flightctl/models/batch_sequence.py index fe61b81..4ca81ed 100644 --- a/flightctl/models/batch_sequence.py +++ b/flightctl/flightctl/models/batch_sequence.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -21,6 +22,7 @@ from typing import Any, ClassVar, Dict, List, Optional from typing_extensions import Annotated from flightctl.models.batch import Batch +from flightctl.models.rollout_strategy import RolloutStrategy from typing import Optional, Set from typing_extensions import Self @@ -28,8 +30,9 @@ class BatchSequence(BaseModel): """ BatchSequence defines the list of batches to be executed in sequence. """ # noqa: E501 - sequence: Optional[Annotated[List[Batch], Field(min_length=1)]] = None - __properties: ClassVar[List[str]] = ["sequence"] + strategy: RolloutStrategy + sequence: Optional[Annotated[List[Batch], Field(min_length=1)]] = Field(default=None, description="A list of batch definitions.") + __properties: ClassVar[List[str]] = ["strategy", "sequence"] model_config = ConfigDict( populate_by_name=True, @@ -89,6 +92,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ + "strategy": obj.get("strategy"), "sequence": [Batch.from_dict(_item) for _item in obj["sequence"]] if obj.get("sequence") is not None else None }) return _obj diff --git a/flightctl/models/certificate_signing_request.py b/flightctl/flightctl/models/certificate_signing_request.py similarity index 93% rename from flightctl/models/certificate_signing_request.py rename to flightctl/flightctl/models/certificate_signing_request.py index 62c6fdb..c3ece1c 100644 --- a/flightctl/models/certificate_signing_request.py +++ b/flightctl/flightctl/models/certificate_signing_request.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,10 +28,10 @@ class CertificateSigningRequest(BaseModel): """ - CertificateSigningRequest represents a request for a signed certificate from the CA + CertificateSigningRequest represents a request for a signed certificate from the CA. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta spec: CertificateSigningRequestSpec status: Optional[CertificateSigningRequestStatus] = None diff --git a/flightctl/models/certificate_signing_request_list.py b/flightctl/flightctl/models/certificate_signing_request_list.py similarity index 93% rename from flightctl/models/certificate_signing_request_list.py rename to flightctl/flightctl/models/certificate_signing_request_list.py index 5693cdc..08c53df 100644 --- a/flightctl/models/certificate_signing_request_list.py +++ b/flightctl/flightctl/models/certificate_signing_request_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,10 +27,10 @@ class CertificateSigningRequestList(BaseModel): """ - CertificateSigningRequestList is a list of CertificateSigningRequest + CertificateSigningRequestList is a list of CertificateSigningRequest. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[CertificateSigningRequest] = Field(description="List of CertificateSigningRequest.") __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "items"] diff --git a/flightctl/models/certificate_signing_request_spec.py b/flightctl/flightctl/models/certificate_signing_request_spec.py similarity index 83% rename from flightctl/models/certificate_signing_request_spec.py rename to flightctl/flightctl/models/certificate_signing_request_spec.py index b62c91f..6ee2c70 100644 --- a/flightctl/models/certificate_signing_request_spec.py +++ b/flightctl/flightctl/models/certificate_signing_request_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,15 +25,15 @@ class CertificateSigningRequestSpec(BaseModel): """ - Wrapper around a user-created CSR, modeled on kubernetes io.k8s.api.certificates.v1.CertificateSigningRequestSpec + Wrapper around a user-created CSR, modeled on kubernetes io.k8s.api.certificates.v1.CertificateSigningRequestSpec. """ # noqa: E501 - expiration_seconds: Optional[StrictInt] = Field(default=None, description="Requested duration of validity for the certificate", alias="expirationSeconds") - extra: Optional[Dict[str, List[StrictStr]]] = Field(default=None, description="Extra attributes of the user that created the CSR, populated by the API server on creation and immutable") - request: Optional[Union[StrictBytes, StrictStr]] = Field(default=None, description="The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource") - signer_name: StrictStr = Field(description="Indicates the requested signer, and is a qualified name", alias="signerName") - uid: Optional[StrictStr] = Field(default=None, description="UID of the user that created the CSR, populated by the API server on creation and immutable") + expiration_seconds: Optional[StrictInt] = Field(default=None, description="Requested duration of validity for the certificate.", alias="expirationSeconds") + extra: Optional[Dict[str, List[StrictStr]]] = Field(default=None, description="Extra attributes of the user that created the CSR, populated by the API server on creation and immutable.") + request: Union[StrictBytes, StrictStr] = Field(description="The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource.") + signer_name: StrictStr = Field(description="Indicates the requested signer, and is a qualified name.", alias="signerName") + uid: Optional[StrictStr] = Field(default=None, description="UID of the user that created the CSR, populated by the API server on creation and immutable.") usages: Optional[List[StrictStr]] = Field(default=None, description="Usages specifies a set of key usages requested in the issued certificate.") - username: Optional[StrictStr] = Field(default=None, description="Name of the user that created the CSR, populated by the API server on creation and immutable") + username: Optional[StrictStr] = Field(default=None, description="Name of the user that created the CSR, populated by the API server on creation and immutable.") __properties: ClassVar[List[str]] = ["expirationSeconds", "extra", "request", "signerName", "uid", "usages", "username"] model_config = ConfigDict( diff --git a/flightctl/models/certificate_signing_request_status.py b/flightctl/flightctl/models/certificate_signing_request_status.py similarity index 91% rename from flightctl/models/certificate_signing_request_status.py rename to flightctl/flightctl/models/certificate_signing_request_status.py index 601d5e9..cbc02d8 100644 --- a/flightctl/models/certificate_signing_request_status.py +++ b/flightctl/flightctl/models/certificate_signing_request_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,10 +26,10 @@ class CertificateSigningRequestStatus(BaseModel): """ - Indicates approval/denial/failure status of the CSR, and contains the issued certifiate if any exists + Indicates approval/denial/failure status of the CSR, and contains the issued certificate if any exists. """ # noqa: E501 - certificate: Optional[Union[StrictBytes, StrictStr]] = Field(default=None, description="The issued signed certificate, immutable once populated") - conditions: List[Condition] = Field(description="Conditions applied to the request. Known conditions are Approved, Denied, and Failed") + certificate: Optional[Union[StrictBytes, StrictStr]] = Field(default=None, description="The issued signed certificate, immutable once populated.") + conditions: List[Condition] = Field(description="Conditions applied to the request. Known conditions are Approved, Denied, and Failed.") __properties: ClassVar[List[str]] = ["certificate", "conditions"] model_config = ConfigDict( diff --git a/flightctl/models/condition.py b/flightctl/flightctl/models/condition.py similarity index 90% rename from flightctl/models/condition.py rename to flightctl/flightctl/models/condition.py index ad9869f..9765470 100644 --- a/flightctl/models/condition.py +++ b/flightctl/flightctl/models/condition.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -34,7 +35,7 @@ class Condition(BaseModel): observed_generation: Optional[StrictInt] = Field(default=None, description="The .metadata.generation that the condition was set based upon.", alias="observedGeneration") last_transition_time: datetime = Field(description="The last time the condition transitioned from one status to another.", alias="lastTransitionTime") message: StrictStr = Field(description="Human readable message indicating details about last transition.") - reason: StrictStr = Field(description="(brief) reason for the condition's last transition.") + reason: StrictStr = Field(description="A (brief) reason for the condition's last transition.") __properties: ClassVar[List[str]] = ["type", "status", "observedGeneration", "lastTransitionTime", "message", "reason"] model_config = ConfigDict( diff --git a/flightctl/models/condition_status.py b/flightctl/flightctl/models/condition_status.py similarity index 66% rename from flightctl/models/condition_status.py rename to flightctl/flightctl/models/condition_status.py index e9a309c..56119c4 100644 --- a/flightctl/models/condition_status.py +++ b/flightctl/flightctl/models/condition_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class ConditionStatus(str, Enum): """ - ConditionStatus + Status of the condition, one of True, False, Unknown. """ """ diff --git a/flightctl/models/condition_type.py b/flightctl/flightctl/models/condition_type.py similarity index 66% rename from flightctl/models/condition_type.py rename to flightctl/flightctl/models/condition_type.py index 9c16587..9db971d 100644 --- a/flightctl/models/condition_type.py +++ b/flightctl/flightctl/models/condition_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,23 +21,27 @@ class ConditionType(str, Enum): """ - ConditionType + Type of condition in CamelCase. """ """ allowed enum values """ APPROVED = 'Approved' + APPROVED = 'Approved' DENIED = 'Denied' FAILED = 'Failed' ACCESSIBLE = 'Accessible' + ACCESSIBLE = 'Accessible' RESOURCEPARSED = 'ResourceParsed' SYNCED = 'Synced' OVERLAPPINGSELECTORS = 'OverlappingSelectors' VALID = 'Valid' + ROLLOUTINPROGRESS = 'RolloutInProgress' UPDATING = 'Updating' SPECVALID = 'SpecValid' MULTIPLEOWNERS = 'MultipleOwners' + DEVICEDECOMMISSIONING = 'DeviceDecommissioning' @classmethod def from_json(cls, json_str: str) -> Self: diff --git a/flightctl/models/config_provider_spec.py b/flightctl/flightctl/models/config_provider_spec.py similarity index 96% rename from flightctl/models/config_provider_spec.py rename to flightctl/flightctl/models/config_provider_spec.py index 2611b11..b8deaae 100644 --- a/flightctl/models/config_provider_spec.py +++ b/flightctl/flightctl/models/config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/cpu_resource_monitor_spec.py b/flightctl/flightctl/models/cpu_resource_monitor_spec.py similarity index 86% rename from flightctl/models/cpu_resource_monitor_spec.py rename to flightctl/flightctl/models/cpu_resource_monitor_spec.py index 03cc01c..72cdda7 100644 --- a/flightctl/models/cpu_resource_monitor_spec.py +++ b/flightctl/flightctl/models/cpu_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,11 +25,11 @@ from typing import Optional, Set from typing_extensions import Self -class CPUResourceMonitorSpec(BaseModel): +class CpuResourceMonitorSpec(BaseModel): """ - CPUResourceMonitorSpec + CpuResourceMonitorSpec """ # noqa: E501 - monitor_type: StrictStr = Field(alias="monitorType") + monitor_type: StrictStr = Field(description="The type of resource to monitor.", alias="monitorType") alert_rules: List[ResourceAlertRule] = Field(description="Array of alert rules. Only one alert per severity is allowed.", alias="alertRules") sampling_interval: Annotated[str, Field(strict=True)] = Field(description="Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours.", alias="samplingInterval") __properties: ClassVar[List[str]] = ["monitorType", "alertRules", "samplingInterval"] @@ -58,7 +59,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of CPUResourceMonitorSpec from a JSON string""" + """Create an instance of CpuResourceMonitorSpec from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -90,7 +91,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of CPUResourceMonitorSpec from a dict""" + """Create an instance of CpuResourceMonitorSpec from a dict""" if obj is None: return None diff --git a/flightctl/models/custom_resource_monitor_spec.py b/flightctl/flightctl/models/custom_resource_monitor_spec.py similarity index 91% rename from flightctl/models/custom_resource_monitor_spec.py rename to flightctl/flightctl/models/custom_resource_monitor_spec.py index 1c71679..bd22ce2 100644 --- a/flightctl/models/custom_resource_monitor_spec.py +++ b/flightctl/flightctl/models/custom_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class CustomResourceMonitorSpec(BaseModel): """ CustomResourceMonitorSpec """ # noqa: E501 - monitor_type: StrictStr = Field(alias="monitorType") + monitor_type: StrictStr = Field(description="The type of resource to monitor.", alias="monitorType") alert_rules: List[ResourceAlertRule] = Field(description="Array of alert rules. Only one alert per severity is allowed.", alias="alertRules") sampling_interval: Annotated[str, Field(strict=True)] = Field(description="Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours.", alias="samplingInterval") __properties: ClassVar[List[str]] = ["monitorType", "alertRules", "samplingInterval"] diff --git a/flightctl/models/device.py b/flightctl/flightctl/models/device.py similarity index 93% rename from flightctl/models/device.py rename to flightctl/flightctl/models/device.py index 51366f6..faefe38 100644 --- a/flightctl/models/device.py +++ b/flightctl/flightctl/models/device.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,8 +30,8 @@ class Device(BaseModel): """ Device represents a physical device. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta spec: Optional[DeviceSpec] = None status: Optional[DeviceStatus] = None diff --git a/flightctl/models/device_application_status.py b/flightctl/flightctl/models/device_application_status.py similarity index 92% rename from flightctl/models/device_application_status.py rename to flightctl/flightctl/models/device_application_status.py index 7fdc9f6..be66641 100644 --- a/flightctl/models/device_application_status.py +++ b/flightctl/flightctl/models/device_application_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/device_applications_summary_status.py b/flightctl/flightctl/models/device_applications_summary_status.py similarity index 87% rename from flightctl/models/device_applications_summary_status.py rename to flightctl/flightctl/models/device_applications_summary_status.py index b86cd71..c33f013 100644 --- a/flightctl/models/device_applications_summary_status.py +++ b/flightctl/flightctl/models/device_applications_summary_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,10 +26,10 @@ class DeviceApplicationsSummaryStatus(BaseModel): """ - DeviceApplicationsSummaryStatus + A summary of the health of applications on the device. """ # noqa: E501 status: ApplicationsSummaryStatusType - info: Optional[StrictStr] = Field(default=None, description="Human readable information detailing the last system application transition.") + info: Optional[StrictStr] = Field(default=None, description="Human readable information detailing the last application transition.") __properties: ClassVar[List[str]] = ["status", "info"] model_config = ConfigDict( diff --git a/flightctl/models/device_config_status.py b/flightctl/flightctl/models/device_config_status.py similarity index 85% rename from flightctl/models/device_config_status.py rename to flightctl/flightctl/models/device_config_status.py index 864926a..c21a3a5 100644 --- a/flightctl/models/device_config_status.py +++ b/flightctl/flightctl/models/device_config_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,9 +25,9 @@ class DeviceConfigStatus(BaseModel): """ - DeviceConfigStatus + Current status of the device config. """ # noqa: E501 - rendered_version: StrictStr = Field(description="Version of the device rendered config.", alias="renderedVersion") + rendered_version: StrictStr = Field(description="Rendered version of the device config.", alias="renderedVersion") __properties: ClassVar[List[str]] = ["renderedVersion"] model_config = ConfigDict( diff --git a/flightctl/models/device_console.py b/flightctl/flightctl/models/device_console.py similarity index 74% rename from flightctl/models/device_console.py rename to flightctl/flightctl/models/device_console.py index 3c35588..959d9d2 100644 --- a/flightctl/models/device_console.py +++ b/flightctl/flightctl/models/device_console.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,11 +25,11 @@ class DeviceConsole(BaseModel): """ - DeviceConsole + DeviceConsole represents the console connection information. """ # noqa: E501 - g_rpc_endpoint: StrictStr = Field(alias="gRPCEndpoint") - session_id: StrictStr = Field(alias="sessionID") - __properties: ClassVar[List[str]] = ["gRPCEndpoint", "sessionID"] + session_metadata: StrictStr = Field(description="Additional session metadata in the form of key=value pairs, can be used to initialize the type of terminal, console to be used, etc.", alias="sessionMetadata") + session_id: StrictStr = Field(description="The session ID for the console connection.", alias="sessionID") + __properties: ClassVar[List[str]] = ["sessionMetadata", "sessionID"] model_config = ConfigDict( populate_by_name=True, @@ -81,7 +82,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "gRPCEndpoint": obj.get("gRPCEndpoint"), + "sessionMetadata": obj.get("sessionMetadata"), "sessionID": obj.get("sessionID") }) return _obj diff --git a/flightctl/models/rendered_device_spec_systemd.py b/flightctl/flightctl/models/device_decommission.py similarity index 71% rename from flightctl/models/rendered_device_spec_systemd.py rename to flightctl/flightctl/models/device_decommission.py index 62d10f0..e280a1e 100644 --- a/flightctl/models/rendered_device_spec_systemd.py +++ b/flightctl/flightctl/models/device_decommission.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,17 +18,18 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictStr -from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, ConfigDict +from typing import Any, ClassVar, Dict, List +from flightctl.models.device_decommission_target_type import DeviceDecommissionTargetType from typing import Optional, Set from typing_extensions import Self -class RenderedDeviceSpecSystemd(BaseModel): +class DeviceDecommission(BaseModel): """ - RenderedDeviceSpecSystemd + Metadata about a device decommissioning request. """ # noqa: E501 - match_patterns: Optional[List[StrictStr]] = Field(default=None, alias="matchPatterns") - __properties: ClassVar[List[str]] = ["matchPatterns"] + target: DeviceDecommissionTargetType + __properties: ClassVar[List[str]] = ["target"] model_config = ConfigDict( populate_by_name=True, @@ -47,7 +49,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of RenderedDeviceSpecSystemd from a JSON string""" + """Create an instance of DeviceDecommission from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -72,7 +74,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of RenderedDeviceSpecSystemd from a dict""" + """Create an instance of DeviceDecommission from a dict""" if obj is None: return None @@ -80,7 +82,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "matchPatterns": obj.get("matchPatterns") + "target": obj.get("target") }) return _obj diff --git a/flightctl/flightctl/models/device_decommission_target_type.py b/flightctl/flightctl/models/device_decommission_target_type.py new file mode 100644 index 0000000..18df809 --- /dev/null +++ b/flightctl/flightctl/models/device_decommission_target_type.py @@ -0,0 +1,38 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DeviceDecommissionTargetType(str, Enum): + """ + Specifies the desired decommissioning method of the device. + """ + + """ + allowed enum values + """ + UNENROLL = 'Unenroll' + FACTORYRESET = 'FactoryReset' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DeviceDecommissionTargetType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/flightctl/models/device_integrity_status_summary.py b/flightctl/flightctl/models/device_integrity_status.py similarity index 83% rename from flightctl/models/device_integrity_status_summary.py rename to flightctl/flightctl/models/device_integrity_status.py index 1eefc5e..9f18354 100644 --- a/flightctl/models/device_integrity_status_summary.py +++ b/flightctl/flightctl/models/device_integrity_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -23,9 +24,9 @@ from typing import Optional, Set from typing_extensions import Self -class DeviceIntegrityStatusSummary(BaseModel): +class DeviceIntegrityStatus(BaseModel): """ - DeviceIntegrityStatusSummary + Summary status of the integrity of the device. """ # noqa: E501 status: DeviceIntegrityStatusSummaryType info: Optional[StrictStr] = Field(default=None, description="Human readable information about the last integrity transition.") @@ -49,7 +50,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceIntegrityStatusSummary from a JSON string""" + """Create an instance of DeviceIntegrityStatus from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -74,7 +75,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceIntegrityStatusSummary from a dict""" + """Create an instance of DeviceIntegrityStatus from a dict""" if obj is None: return None diff --git a/flightctl/models/device_integrity_status_summary_type.py b/flightctl/flightctl/models/device_integrity_status_summary_type.py similarity index 70% rename from flightctl/models/device_integrity_status_summary_type.py rename to flightctl/flightctl/models/device_integrity_status_summary_type.py index 0f724ab..8e529a3 100644 --- a/flightctl/models/device_integrity_status_summary_type.py +++ b/flightctl/flightctl/models/device_integrity_status_summary_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class DeviceIntegrityStatusSummaryType(str, Enum): """ - DeviceIntegrityStatusSummaryType + Status of the integrity of the device. """ """ diff --git a/flightctl/flightctl/models/device_lifecycle_hook_type.py b/flightctl/flightctl/models/device_lifecycle_hook_type.py new file mode 100644 index 0000000..37bd847 --- /dev/null +++ b/flightctl/flightctl/models/device_lifecycle_hook_type.py @@ -0,0 +1,40 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DeviceLifecycleHookType(str, Enum): + """ + DeviceLifecycleHookType + """ + + """ + allowed enum values + """ + BEFOREUPDATING = 'BeforeUpdating' + AFTERUPDATING = 'AfterUpdating' + BEFOREREBOOTING = 'BeforeRebooting' + AFTERREBOOTING = 'AfterRebooting' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DeviceLifecycleHookType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/flightctl/models/rendered_application_spec.py b/flightctl/flightctl/models/device_lifecycle_status.py similarity index 69% rename from flightctl/models/rendered_application_spec.py rename to flightctl/flightctl/models/device_lifecycle_status.py index a81bb0a..276013c 100644 --- a/flightctl/models/rendered_application_spec.py +++ b/flightctl/flightctl/models/device_lifecycle_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -19,17 +20,17 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional +from flightctl.models.device_lifecycle_status_type import DeviceLifecycleStatusType from typing import Optional, Set from typing_extensions import Self -class RenderedApplicationSpec(BaseModel): +class DeviceLifecycleStatus(BaseModel): """ - RenderedApplicationSpec + Current status of the device lifecycle. """ # noqa: E501 - env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime", alias="envVars") - name: Optional[StrictStr] = None - image: StrictStr = Field(description="Reference to the container image for the application package") - __properties: ClassVar[List[str]] = ["envVars", "name", "image"] + status: DeviceLifecycleStatusType + info: Optional[StrictStr] = Field(default=None, description="Human readable information about the device lifecycle status.") + __properties: ClassVar[List[str]] = ["status", "info"] model_config = ConfigDict( populate_by_name=True, @@ -49,7 +50,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of RenderedApplicationSpec from a JSON string""" + """Create an instance of DeviceLifecycleStatus from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -74,7 +75,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of RenderedApplicationSpec from a dict""" + """Create an instance of DeviceLifecycleStatus from a dict""" if obj is None: return None @@ -82,9 +83,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "envVars": obj.get("envVars"), - "name": obj.get("name"), - "image": obj.get("image") + "status": obj.get("status"), + "info": obj.get("info") }) return _obj diff --git a/flightctl/flightctl/models/device_lifecycle_status_type.py b/flightctl/flightctl/models/device_lifecycle_status_type.py new file mode 100644 index 0000000..f5292be --- /dev/null +++ b/flightctl/flightctl/models/device_lifecycle_status_type.py @@ -0,0 +1,40 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DeviceLifecycleStatusType(str, Enum): + """ + Status type of the device lifecycle. + """ + + """ + allowed enum values + """ + UNKNOWN = 'Unknown' + ENROLLED = 'Enrolled' + DECOMMISSIONING = 'Decommissioning' + DECOMMISSIONED = 'Decommissioned' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DeviceLifecycleStatusType from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/flightctl/models/device_list.py b/flightctl/flightctl/models/device_list.py similarity index 93% rename from flightctl/models/device_list.py rename to flightctl/flightctl/models/device_list.py index 2de8751..e1deeb1 100644 --- a/flightctl/models/device_list.py +++ b/flightctl/flightctl/models/device_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,8 +30,8 @@ class DeviceList(BaseModel): """ DeviceList is a list of Devices. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[Device] = Field(description="List of Devices.") summary: Optional[DevicesSummary] = None diff --git a/flightctl/models/device_os_spec.py b/flightctl/flightctl/models/device_os_spec.py similarity index 80% rename from flightctl/models/device_os_spec.py rename to flightctl/flightctl/models/device_os_spec.py index 1cd05a7..be58a2e 100644 --- a/flightctl/models/device_os_spec.py +++ b/flightctl/flightctl/models/device_os_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,11 +23,11 @@ from typing import Optional, Set from typing_extensions import Self -class DeviceOSSpec(BaseModel): +class DeviceOsSpec(BaseModel): """ - DeviceOSSpec + DeviceOsSpec describes the target OS for the device. """ # noqa: E501 - image: StrictStr = Field(description="ostree image name or URL.") + image: StrictStr = Field(description="The target OS image name or URL.") __properties: ClassVar[List[str]] = ["image"] model_config = ConfigDict( @@ -47,7 +48,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceOSSpec from a JSON string""" + """Create an instance of DeviceOsSpec from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -72,7 +73,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceOSSpec from a dict""" + """Create an instance of DeviceOsSpec from a dict""" if obj is None: return None diff --git a/flightctl/models/device_os_status.py b/flightctl/flightctl/models/device_os_status.py similarity index 82% rename from flightctl/models/device_os_status.py rename to flightctl/flightctl/models/device_os_status.py index 8a3b666..80f18dd 100644 --- a/flightctl/models/device_os_status.py +++ b/flightctl/flightctl/models/device_os_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,12 +23,12 @@ from typing import Optional, Set from typing_extensions import Self -class DeviceOSStatus(BaseModel): +class DeviceOsStatus(BaseModel): """ - DeviceOSStatus + Current status of the device OS. """ # noqa: E501 image: StrictStr = Field(description="Version of the OS image.") - image_digest: StrictStr = Field(description="The digest of the OS image (e.g. sha256:a0...)", alias="imageDigest") + image_digest: StrictStr = Field(description="The digest of the OS image (e.g. sha256:a0...).", alias="imageDigest") __properties: ClassVar[List[str]] = ["image", "imageDigest"] model_config = ConfigDict( @@ -48,7 +49,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceOSStatus from a JSON string""" + """Create an instance of DeviceOsStatus from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -73,7 +74,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceOSStatus from a dict""" + """Create an instance of DeviceOsStatus from a dict""" if obj is None: return None diff --git a/flightctl/models/device_resource_status.py b/flightctl/flightctl/models/device_resource_status.py similarity index 89% rename from flightctl/models/device_resource_status.py rename to flightctl/flightctl/models/device_resource_status.py index b2498e8..ea1ad97 100644 --- a/flightctl/models/device_resource_status.py +++ b/flightctl/flightctl/models/device_resource_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,7 @@ class DeviceResourceStatus(BaseModel): """ - DeviceResourceStatus + Current status of the resources of the device. """ # noqa: E501 cpu: DeviceResourceStatusType memory: DeviceResourceStatusType diff --git a/flightctl/models/device_resource_status_type.py b/flightctl/flightctl/models/device_resource_status_type.py similarity index 70% rename from flightctl/models/device_resource_status_type.py rename to flightctl/flightctl/models/device_resource_status_type.py index f357232..23f5ee2 100644 --- a/flightctl/models/device_resource_status_type.py +++ b/flightctl/flightctl/models/device_resource_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class DeviceResourceStatusType(str, Enum): """ - DeviceResourceStatusType + The types of resource statuses. """ """ diff --git a/flightctl/models/device_spec.py b/flightctl/flightctl/models/device_spec.py similarity index 64% rename from flightctl/models/device_spec.py rename to flightctl/flightctl/models/device_spec.py index 7c783ef..e3c99b3 100644 --- a/flightctl/models/device_spec.py +++ b/flightctl/flightctl/models/device_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -19,26 +20,30 @@ from pydantic import BaseModel, ConfigDict, Field from typing import Any, ClassVar, Dict, List, Optional -from flightctl.models.application_spec import ApplicationSpec +from flightctl.models.application_provider_spec import ApplicationProviderSpec from flightctl.models.config_provider_spec import ConfigProviderSpec -from flightctl.models.device_hooks_spec import DeviceHooksSpec -from flightctl.models.device_os_spec import DeviceOSSpec +from flightctl.models.device_console import DeviceConsole +from flightctl.models.device_decommission import DeviceDecommission +from flightctl.models.device_os_spec import DeviceOsSpec from flightctl.models.device_spec_systemd import DeviceSpecSystemd +from flightctl.models.device_update_policy_spec import DeviceUpdatePolicySpec from flightctl.models.resource_monitor import ResourceMonitor from typing import Optional, Set from typing_extensions import Self class DeviceSpec(BaseModel): """ - DeviceSpec + DeviceSpec describes a device. """ # noqa: E501 - os: Optional[DeviceOSSpec] = None + update_policy: Optional[DeviceUpdatePolicySpec] = Field(default=None, alias="updatePolicy") + os: Optional[DeviceOsSpec] = None config: Optional[List[ConfigProviderSpec]] = Field(default=None, description="List of config providers.") - hooks: Optional[DeviceHooksSpec] = None - applications: Optional[List[ApplicationSpec]] = Field(default=None, description="List of applications.") + applications: Optional[List[ApplicationProviderSpec]] = Field(default=None, description="List of application providers.") systemd: Optional[DeviceSpecSystemd] = None resources: Optional[List[ResourceMonitor]] = Field(default=None, description="Array of resource monitor configurations.") - __properties: ClassVar[List[str]] = ["os", "config", "hooks", "applications", "systemd", "resources"] + consoles: Optional[List[DeviceConsole]] = Field(default=None, description="The list of active console sessions.") + decommissioning: Optional[DeviceDecommission] = None + __properties: ClassVar[List[str]] = ["updatePolicy", "os", "config", "applications", "systemd", "resources", "consoles", "decommissioning"] model_config = ConfigDict( populate_by_name=True, @@ -79,6 +84,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of update_policy + if self.update_policy: + _dict['updatePolicy'] = self.update_policy.to_dict() # override the default output from pydantic by calling `to_dict()` of os if self.os: _dict['os'] = self.os.to_dict() @@ -89,9 +97,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_config: _items.append(_item_config.to_dict()) _dict['config'] = _items - # override the default output from pydantic by calling `to_dict()` of hooks - if self.hooks: - _dict['hooks'] = self.hooks.to_dict() # override the default output from pydantic by calling `to_dict()` of each item in applications (list) _items = [] if self.applications: @@ -109,6 +114,16 @@ def to_dict(self) -> Dict[str, Any]: if _item_resources: _items.append(_item_resources.to_dict()) _dict['resources'] = _items + # override the default output from pydantic by calling `to_dict()` of each item in consoles (list) + _items = [] + if self.consoles: + for _item_consoles in self.consoles: + if _item_consoles: + _items.append(_item_consoles.to_dict()) + _dict['consoles'] = _items + # override the default output from pydantic by calling `to_dict()` of decommissioning + if self.decommissioning: + _dict['decommissioning'] = self.decommissioning.to_dict() return _dict @classmethod @@ -121,12 +136,14 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "os": DeviceOSSpec.from_dict(obj["os"]) if obj.get("os") is not None else None, + "updatePolicy": DeviceUpdatePolicySpec.from_dict(obj["updatePolicy"]) if obj.get("updatePolicy") is not None else None, + "os": DeviceOsSpec.from_dict(obj["os"]) if obj.get("os") is not None else None, "config": [ConfigProviderSpec.from_dict(_item) for _item in obj["config"]] if obj.get("config") is not None else None, - "hooks": DeviceHooksSpec.from_dict(obj["hooks"]) if obj.get("hooks") is not None else None, - "applications": [ApplicationSpec.from_dict(_item) for _item in obj["applications"]] if obj.get("applications") is not None else None, + "applications": [ApplicationProviderSpec.from_dict(_item) for _item in obj["applications"]] if obj.get("applications") is not None else None, "systemd": DeviceSpecSystemd.from_dict(obj["systemd"]) if obj.get("systemd") is not None else None, - "resources": [ResourceMonitor.from_dict(_item) for _item in obj["resources"]] if obj.get("resources") is not None else None + "resources": [ResourceMonitor.from_dict(_item) for _item in obj["resources"]] if obj.get("resources") is not None else None, + "consoles": [DeviceConsole.from_dict(_item) for _item in obj["consoles"]] if obj.get("consoles") is not None else None, + "decommissioning": DeviceDecommission.from_dict(obj["decommissioning"]) if obj.get("decommissioning") is not None else None }) return _obj diff --git a/flightctl/models/device_spec_systemd.py b/flightctl/flightctl/models/device_spec_systemd.py similarity index 86% rename from flightctl/models/device_spec_systemd.py rename to flightctl/flightctl/models/device_spec_systemd.py index 5b36604..3ec97f0 100644 --- a/flightctl/models/device_spec_systemd.py +++ b/flightctl/flightctl/models/device_spec_systemd.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,9 +26,9 @@ class DeviceSpecSystemd(BaseModel): """ - DeviceSpecSystemd + The systemd services to monitor. """ # noqa: E501 - match_patterns: Optional[List[Annotated[str, Field(strict=True, max_length=256)]]] = Field(default=None, alias="matchPatterns") + match_patterns: Optional[List[Annotated[str, Field(strict=True, max_length=256)]]] = Field(default=None, description="A list of match patterns.", alias="matchPatterns") __properties: ClassVar[List[str]] = ["matchPatterns"] model_config = ConfigDict( diff --git a/flightctl/models/device_status.py b/flightctl/flightctl/models/device_status.py similarity index 87% rename from flightctl/models/device_status.py rename to flightctl/flightctl/models/device_status.py index 005a1f4..509a90d 100644 --- a/flightctl/models/device_status.py +++ b/flightctl/flightctl/models/device_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,8 @@ from flightctl.models.device_applications_summary_status import DeviceApplicationsSummaryStatus from flightctl.models.device_config_status import DeviceConfigStatus from flightctl.models.device_integrity_status import DeviceIntegrityStatus -from flightctl.models.device_os_status import DeviceOSStatus +from flightctl.models.device_lifecycle_status import DeviceLifecycleStatus +from flightctl.models.device_os_status import DeviceOsStatus from flightctl.models.device_resource_status import DeviceResourceStatus from flightctl.models.device_summary_status import DeviceSummaryStatus from flightctl.models.device_system_info import DeviceSystemInfo @@ -44,11 +46,12 @@ class DeviceStatus(BaseModel): resources: DeviceResourceStatus integrity: DeviceIntegrityStatus config: DeviceConfigStatus - os: DeviceOSStatus + os: DeviceOsStatus updated: DeviceUpdatedStatus summary: DeviceSummaryStatus - last_seen: datetime = Field(alias="lastSeen") - __properties: ClassVar[List[str]] = ["conditions", "systemInfo", "applications", "applicationsSummary", "resources", "integrity", "config", "os", "updated", "summary", "lastSeen"] + last_seen: datetime = Field(description="The last time the device was seen by the service.", alias="lastSeen") + lifecycle: DeviceLifecycleStatus + __properties: ClassVar[List[str]] = ["conditions", "systemInfo", "applications", "applicationsSummary", "resources", "integrity", "config", "os", "updated", "summary", "lastSeen", "lifecycle"] model_config = ConfigDict( populate_by_name=True, @@ -127,6 +130,9 @@ def to_dict(self) -> Dict[str, Any]: # override the default output from pydantic by calling `to_dict()` of summary if self.summary: _dict['summary'] = self.summary.to_dict() + # override the default output from pydantic by calling `to_dict()` of lifecycle + if self.lifecycle: + _dict['lifecycle'] = self.lifecycle.to_dict() return _dict @classmethod @@ -146,10 +152,11 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: "resources": DeviceResourceStatus.from_dict(obj["resources"]) if obj.get("resources") is not None else None, "integrity": DeviceIntegrityStatus.from_dict(obj["integrity"]) if obj.get("integrity") is not None else None, "config": DeviceConfigStatus.from_dict(obj["config"]) if obj.get("config") is not None else None, - "os": DeviceOSStatus.from_dict(obj["os"]) if obj.get("os") is not None else None, + "os": DeviceOsStatus.from_dict(obj["os"]) if obj.get("os") is not None else None, "updated": DeviceUpdatedStatus.from_dict(obj["updated"]) if obj.get("updated") is not None else None, "summary": DeviceSummaryStatus.from_dict(obj["summary"]) if obj.get("summary") is not None else None, - "lastSeen": obj.get("lastSeen") + "lastSeen": obj.get("lastSeen"), + "lifecycle": DeviceLifecycleStatus.from_dict(obj["lifecycle"]) if obj.get("lifecycle") is not None else None }) return _obj diff --git a/flightctl/models/device_summary_status.py b/flightctl/flightctl/models/device_summary_status.py similarity index 89% rename from flightctl/models/device_summary_status.py rename to flightctl/flightctl/models/device_summary_status.py index a61c43a..7215744 100644 --- a/flightctl/models/device_summary_status.py +++ b/flightctl/flightctl/models/device_summary_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,7 @@ class DeviceSummaryStatus(BaseModel): """ - DeviceSummaryStatus + A summary of the health of the device hardware and operating system resources. """ # noqa: E501 status: DeviceSummaryStatusType info: Optional[StrictStr] = Field(default=None, description="Human readable information detailing the last device status transition.") diff --git a/flightctl/models/device_summary_status_type.py b/flightctl/flightctl/models/device_summary_status_type.py similarity index 72% rename from flightctl/models/device_summary_status_type.py rename to flightctl/flightctl/models/device_summary_status_type.py index 01c7a48..b089776 100644 --- a/flightctl/models/device_summary_status_type.py +++ b/flightctl/flightctl/models/device_summary_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class DeviceSummaryStatusType(str, Enum): """ - DeviceSummaryStatusType + Status of the device. """ """ diff --git a/flightctl/models/device_system_info.py b/flightctl/flightctl/models/device_system_info.py similarity index 85% rename from flightctl/models/device_system_info.py rename to flightctl/flightctl/models/device_system_info.py index d180716..d9344f8 100644 --- a/flightctl/models/device_system_info.py +++ b/flightctl/flightctl/models/device_system_info.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,7 +30,8 @@ class DeviceSystemInfo(BaseModel): architecture: StrictStr = Field(description="The Architecture reported by the device.") boot_id: StrictStr = Field(description="Boot ID reported by the device.", alias="bootID") operating_system: StrictStr = Field(description="The Operating System reported by the device.", alias="operatingSystem") - __properties: ClassVar[List[str]] = ["architecture", "bootID", "operatingSystem"] + agent_version: StrictStr = Field(description="The Agent version.", alias="agentVersion") + __properties: ClassVar[List[str]] = ["architecture", "bootID", "operatingSystem", "agentVersion"] model_config = ConfigDict( populate_by_name=True, @@ -84,7 +86,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "architecture": obj.get("architecture"), "bootID": obj.get("bootID"), - "operatingSystem": obj.get("operatingSystem") + "operatingSystem": obj.get("operatingSystem"), + "agentVersion": obj.get("agentVersion") }) return _obj diff --git a/flightctl/models/device_reboot_hook_spec.py b/flightctl/flightctl/models/device_update_policy_spec.py similarity index 57% rename from flightctl/models/device_reboot_hook_spec.py rename to flightctl/flightctl/models/device_update_policy_spec.py index b7ca042..3255bd5 100644 --- a/flightctl/models/device_reboot_hook_spec.py +++ b/flightctl/flightctl/models/device_update_policy_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,20 +18,19 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic import BaseModel, ConfigDict, Field from typing import Any, ClassVar, Dict, List, Optional -from flightctl.models.hook_action import HookAction +from flightctl.models.update_schedule import UpdateSchedule from typing import Optional, Set from typing_extensions import Self -class DeviceRebootHookSpec(BaseModel): +class DeviceUpdatePolicySpec(BaseModel): """ - DeviceRebootHookSpec + Specifies the policy for managing device updates, including when updates should be downloaded and applied. """ # noqa: E501 - name: Optional[StrictStr] = None - description: Optional[StrictStr] = None - actions: List[HookAction] = Field(description="The actions taken before and after system reboots are observed. Each action is executed in the order they are defined.") - __properties: ClassVar[List[str]] = ["name", "description", "actions"] + download_schedule: Optional[UpdateSchedule] = Field(default=None, alias="downloadSchedule") + update_schedule: Optional[UpdateSchedule] = Field(default=None, alias="updateSchedule") + __properties: ClassVar[List[str]] = ["downloadSchedule", "updateSchedule"] model_config = ConfigDict( populate_by_name=True, @@ -50,7 +50,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceRebootHookSpec from a JSON string""" + """Create an instance of DeviceUpdatePolicySpec from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -71,18 +71,17 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # override the default output from pydantic by calling `to_dict()` of each item in actions (list) - _items = [] - if self.actions: - for _item_actions in self.actions: - if _item_actions: - _items.append(_item_actions.to_dict()) - _dict['actions'] = _items + # override the default output from pydantic by calling `to_dict()` of download_schedule + if self.download_schedule: + _dict['downloadSchedule'] = self.download_schedule.to_dict() + # override the default output from pydantic by calling `to_dict()` of update_schedule + if self.update_schedule: + _dict['updateSchedule'] = self.update_schedule.to_dict() return _dict @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceRebootHookSpec from a dict""" + """Create an instance of DeviceUpdatePolicySpec from a dict""" if obj is None: return None @@ -90,9 +89,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "name": obj.get("name"), - "description": obj.get("description"), - "actions": [HookAction.from_dict(_item) for _item in obj["actions"]] if obj.get("actions") is not None else None + "downloadSchedule": UpdateSchedule.from_dict(obj["downloadSchedule"]) if obj.get("downloadSchedule") is not None else None, + "updateSchedule": UpdateSchedule.from_dict(obj["updateSchedule"]) if obj.get("updateSchedule") is not None else None }) return _obj diff --git a/flightctl/models/device_updated_status.py b/flightctl/flightctl/models/device_updated_status.py similarity index 90% rename from flightctl/models/device_updated_status.py rename to flightctl/flightctl/models/device_updated_status.py index 5546c14..78895b0 100644 --- a/flightctl/models/device_updated_status.py +++ b/flightctl/flightctl/models/device_updated_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,7 @@ class DeviceUpdatedStatus(BaseModel): """ - DeviceUpdatedStatus + Current status of the device update. """ # noqa: E501 status: DeviceUpdatedStatusType info: Optional[StrictStr] = Field(default=None, description="Human readable information about the last device update transition.") diff --git a/flightctl/models/device_updated_status_type.py b/flightctl/flightctl/models/device_updated_status_type.py similarity index 70% rename from flightctl/models/device_updated_status_type.py rename to flightctl/flightctl/models/device_updated_status_type.py index ab94020..9bb5cab 100644 --- a/flightctl/models/device_updated_status_type.py +++ b/flightctl/flightctl/models/device_updated_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class DeviceUpdatedStatusType(str, Enum): """ - DeviceUpdatedStatusType + Status type of the device update. """ """ diff --git a/flightctl/models/devices_summary.py b/flightctl/flightctl/models/devices_summary.py similarity index 77% rename from flightctl/models/devices_summary.py rename to flightctl/flightctl/models/devices_summary.py index 966d624..eb5098d 100644 --- a/flightctl/models/devices_summary.py +++ b/flightctl/flightctl/models/devices_summary.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -18,7 +19,7 @@ import json from pydantic import BaseModel, ConfigDict, Field, StrictInt -from typing import Any, ClassVar, Dict, List, Optional +from typing import Any, ClassVar, Dict, List from typing import Optional, Set from typing_extensions import Self @@ -27,9 +28,9 @@ class DevicesSummary(BaseModel): A summary of the devices in the fleet returned when fetching a single Fleet. """ # noqa: E501 total: StrictInt = Field(description="The total number of devices in the fleet.") - application_status: Optional[Dict[str, StrictInt]] = Field(default=None, description="A breakdown of the devices in the fleet by \"application\" status.", alias="applicationStatus") - summary_status: Optional[Dict[str, StrictInt]] = Field(default=None, description="A breakdown of the devices in the fleet by \"summary\" status.", alias="summaryStatus") - update_status: Optional[Dict[str, StrictInt]] = Field(default=None, description="A breakdown of the devices in the fleet by \"updated\" status.", alias="updateStatus") + application_status: Dict[str, StrictInt] = Field(description="A breakdown of the devices in the fleet by \"application\" status.", alias="applicationStatus") + summary_status: Dict[str, StrictInt] = Field(description="A breakdown of the devices in the fleet by \"summary\" status.", alias="summaryStatus") + update_status: Dict[str, StrictInt] = Field(description="A breakdown of the devices in the fleet by \"updated\" status.", alias="updateStatus") __properties: ClassVar[List[str]] = ["total", "applicationStatus", "summaryStatus", "updateStatus"] model_config = ConfigDict( diff --git a/flightctl/models/disk_resource_monitor_spec.py b/flightctl/flightctl/models/disk_resource_monitor_spec.py similarity index 91% rename from flightctl/models/disk_resource_monitor_spec.py rename to flightctl/flightctl/models/disk_resource_monitor_spec.py index b35e8cd..a096db6 100644 --- a/flightctl/models/disk_resource_monitor_spec.py +++ b/flightctl/flightctl/models/disk_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class DiskResourceMonitorSpec(BaseModel): """ DiskResourceMonitorSpec """ # noqa: E501 - monitor_type: StrictStr = Field(alias="monitorType") + monitor_type: StrictStr = Field(description="The type of resource to monitor.", alias="monitorType") alert_rules: List[ResourceAlertRule] = Field(description="Array of alert rules. Only one alert per severity is allowed.", alias="alertRules") sampling_interval: Annotated[str, Field(strict=True)] = Field(description="Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours.", alias="samplingInterval") path: StrictStr = Field(description="The directory path to monitor for disk usage.") diff --git a/flightctl/models/disruption_allowance.py b/flightctl/flightctl/models/disruption_budget.py similarity index 65% rename from flightctl/models/disruption_allowance.py rename to flightctl/flightctl/models/disruption_budget.py index 911636e..494a375 100644 --- a/flightctl/models/disruption_allowance.py +++ b/flightctl/flightctl/models/disruption_budget.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,18 +18,19 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from pydantic import BaseModel, ConfigDict, Field, field_validator from typing import Any, ClassVar, Dict, List, Optional +from typing_extensions import Annotated from typing import Optional, Set from typing_extensions import Self -class DisruptionAllowance(BaseModel): +class DisruptionBudget(BaseModel): """ - DisruptionAllowance defines the level of allowed disruption when rollout is in progress. + DisruptionBudget defines the level of allowed disruption when rollout is in progress. """ # noqa: E501 - group_by: Optional[List[StrictStr]] = Field(default=None, description="List of label keys to perform grouping for the disruption allowance.", alias="groupBy") - min_available: Optional[StrictInt] = Field(default=None, description="The maximum number of unavailable devices allowed during rollout.", alias="minAvailable") - max_unavailable: Optional[StrictInt] = Field(default=None, description="The minimum number of required available devices during rollout.", alias="maxUnavailable") + group_by: Optional[List[Annotated[str, Field(strict=True)]]] = Field(default=None, description="List of label keys to perform grouping for the disruption budget.", alias="groupBy") + min_available: Optional[Annotated[int, Field(strict=True, ge=1)]] = Field(default=None, description="The maximum number of unavailable devices allowed during rollout.", alias="minAvailable") + max_unavailable: Optional[Annotated[int, Field(strict=True, ge=1)]] = Field(default=None, description="The minimum number of required available devices during rollout.", alias="maxUnavailable") __properties: ClassVar[List[str]] = ["groupBy", "minAvailable", "maxUnavailable"] model_config = ConfigDict( @@ -49,7 +51,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DisruptionAllowance from a JSON string""" + """Create an instance of DisruptionBudget from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -74,7 +76,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DisruptionAllowance from a dict""" + """Create an instance of DisruptionBudget from a dict""" if obj is None: return None diff --git a/flightctl/models/enrollment_config.py b/flightctl/flightctl/models/enrollment_config.py similarity index 83% rename from flightctl/models/enrollment_config.py rename to flightctl/flightctl/models/enrollment_config.py index f8ba1f9..aa7687f 100644 --- a/flightctl/models/enrollment_config.py +++ b/flightctl/flightctl/models/enrollment_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic import BaseModel, ConfigDict, Field from typing import Any, ClassVar, Dict, List from flightctl.models.enrollment_service import EnrollmentService from typing import Optional, Set @@ -28,8 +29,7 @@ class EnrollmentConfig(BaseModel): EnrollmentConfig """ # noqa: E501 enrollment_service: EnrollmentService = Field(alias="enrollment-service") - grpc_management_endpoint: StrictStr = Field(alias="grpc-management-endpoint") - __properties: ClassVar[List[str]] = ["enrollment-service", "grpc-management-endpoint"] + __properties: ClassVar[List[str]] = ["enrollment-service"] model_config = ConfigDict( populate_by_name=True, @@ -85,8 +85,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "enrollment-service": EnrollmentService.from_dict(obj["enrollment-service"]) if obj.get("enrollment-service") is not None else None, - "grpc-management-endpoint": obj.get("grpc-management-endpoint") + "enrollment-service": EnrollmentService.from_dict(obj["enrollment-service"]) if obj.get("enrollment-service") is not None else None }) return _obj diff --git a/flightctl/models/enrollment_request.py b/flightctl/flightctl/models/enrollment_request.py similarity index 93% rename from flightctl/models/enrollment_request.py rename to flightctl/flightctl/models/enrollment_request.py index ee7eab0..f4daf60 100644 --- a/flightctl/models/enrollment_request.py +++ b/flightctl/flightctl/models/enrollment_request.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,8 +30,8 @@ class EnrollmentRequest(BaseModel): """ EnrollmentRequest represents a request for approval to enroll a device. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta spec: EnrollmentRequestSpec status: Optional[EnrollmentRequestStatus] = None diff --git a/flightctl/flightctl/models/enrollment_request_approval.py b/flightctl/flightctl/models/enrollment_request_approval.py new file mode 100644 index 0000000..2a62d08 --- /dev/null +++ b/flightctl/flightctl/models/enrollment_request_approval.py @@ -0,0 +1,90 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class EnrollmentRequestApproval(BaseModel): + """ + EnrollmentRequestApproval contains information about the approval of a device enrollment request. + """ # noqa: E501 + labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="A set of labels to apply to the device.") + approved: StrictBool = Field(description="Indicates whether the request has been approved.") + __properties: ClassVar[List[str]] = ["labels", "approved"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EnrollmentRequestApproval from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EnrollmentRequestApproval from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "labels": obj.get("labels"), + "approved": obj.get("approved") + }) + return _obj + + diff --git a/flightctl/models/enrollment_request_approval.py b/flightctl/flightctl/models/enrollment_request_approval_status.py similarity index 72% rename from flightctl/models/enrollment_request_approval.py rename to flightctl/flightctl/models/enrollment_request_approval_status.py index a19e859..5ac4484 100644 --- a/flightctl/models/enrollment_request_approval.py +++ b/flightctl/flightctl/models/enrollment_request_approval_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -23,14 +24,14 @@ from typing import Optional, Set from typing_extensions import Self -class EnrollmentRequestApproval(BaseModel): +class EnrollmentRequestApprovalStatus(BaseModel): """ - EnrollmentRequestApproval + EnrollmentRequestApprovalStatus represents information about the status of a device enrollment request approval. """ # noqa: E501 - labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="labels is a set of labels to apply to the device.") - approved: StrictBool = Field(description="approved indicates whether the request has been approved.") - approved_by: Optional[StrictStr] = Field(default=None, description="approvedBy is the name of the approver.", alias="approvedBy") - approved_at: Optional[datetime] = Field(default=None, description="approvedAt is the time at which the request was approved.", alias="approvedAt") + labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="A set of labels to apply to the device.") + approved: StrictBool = Field(description="Indicates whether the request has been approved.") + approved_by: StrictStr = Field(description="The name of the approver.", alias="approvedBy") + approved_at: datetime = Field(description="The time at which the request was approved.", alias="approvedAt") __properties: ClassVar[List[str]] = ["labels", "approved", "approvedBy", "approvedAt"] model_config = ConfigDict( @@ -51,7 +52,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of EnrollmentRequestApproval from a JSON string""" + """Create an instance of EnrollmentRequestApprovalStatus from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -76,7 +77,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of EnrollmentRequestApproval from a dict""" + """Create an instance of EnrollmentRequestApprovalStatus from a dict""" if obj is None: return None diff --git a/flightctl/models/enrollment_request_list.py b/flightctl/flightctl/models/enrollment_request_list.py similarity index 93% rename from flightctl/models/enrollment_request_list.py rename to flightctl/flightctl/models/enrollment_request_list.py index 2381506..0ee0d76 100644 --- a/flightctl/models/enrollment_request_list.py +++ b/flightctl/flightctl/models/enrollment_request_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,8 +29,8 @@ class EnrollmentRequestList(BaseModel): """ EnrollmentRequestList is a list of EnrollmentRequest. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[EnrollmentRequest] = Field(description="List of EnrollmentRequest.") __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "items"] diff --git a/flightctl/models/enrollment_request_spec.py b/flightctl/flightctl/models/enrollment_request_spec.py similarity index 89% rename from flightctl/models/enrollment_request_spec.py rename to flightctl/flightctl/models/enrollment_request_spec.py index 253901c..3ad2f2d 100644 --- a/flightctl/models/enrollment_request_spec.py +++ b/flightctl/flightctl/models/enrollment_request_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,9 +28,9 @@ class EnrollmentRequestSpec(BaseModel): """ EnrollmentRequestSpec is a description of a EnrollmentRequest's target state. """ # noqa: E501 - csr: StrictStr = Field(description="csr is a PEM-encoded PKCS#10 certificate signing request.") + csr: StrictStr = Field(description="The PEM-encoded PKCS#10 certificate signing request.") device_status: Optional[DeviceStatus] = Field(default=None, alias="deviceStatus") - labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="A set of labels that the service will apply to this device when its enrollment is approved") + labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="A set of labels that the service will apply to this device when its enrollment is approved.") __properties: ClassVar[List[str]] = ["csr", "deviceStatus", "labels"] model_config = ConfigDict( diff --git a/flightctl/models/enrollment_request_status.py b/flightctl/flightctl/models/enrollment_request_status.py similarity index 85% rename from flightctl/models/enrollment_request_status.py rename to flightctl/flightctl/models/enrollment_request_status.py index 02c37c9..6a1f73f 100644 --- a/flightctl/models/enrollment_request_status.py +++ b/flightctl/flightctl/models/enrollment_request_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional from flightctl.models.condition import Condition -from flightctl.models.enrollment_request_approval import EnrollmentRequestApproval +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus from typing import Optional, Set from typing_extensions import Self @@ -28,9 +29,9 @@ class EnrollmentRequestStatus(BaseModel): """ EnrollmentRequestStatus represents information about the status of a EnrollmentRequest. """ # noqa: E501 - certificate: Optional[StrictStr] = Field(default=None, description="certificate is a PEM-encoded signed certificate.") + certificate: Optional[StrictStr] = Field(default=None, description="The PEM-encoded signed certificate.") conditions: List[Condition] = Field(description="Current state of the EnrollmentRequest.") - approval: Optional[EnrollmentRequestApproval] = None + approval: Optional[EnrollmentRequestApprovalStatus] = None __properties: ClassVar[List[str]] = ["certificate", "conditions", "approval"] model_config = ConfigDict( @@ -96,7 +97,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "certificate": obj.get("certificate"), "conditions": [Condition.from_dict(_item) for _item in obj["conditions"]] if obj.get("conditions") is not None else None, - "approval": EnrollmentRequestApproval.from_dict(obj["approval"]) if obj.get("approval") is not None else None + "approval": EnrollmentRequestApprovalStatus.from_dict(obj["approval"]) if obj.get("approval") is not None else None }) return _obj diff --git a/flightctl/models/enrollment_service.py b/flightctl/flightctl/models/enrollment_service.py similarity index 85% rename from flightctl/models/enrollment_service.py rename to flightctl/flightctl/models/enrollment_service.py index b5f7971..8b9dd93 100644 --- a/flightctl/models/enrollment_service.py +++ b/flightctl/flightctl/models/enrollment_service.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,11 +27,11 @@ class EnrollmentService(BaseModel): """ - EnrollmentService + EnrollmentService contains information about how to communicate with a Flight Control enrollment service. """ # noqa: E501 authentication: EnrollmentServiceAuth service: EnrollmentServiceService - enrollment_ui_endpoint: StrictStr = Field(alias="enrollment-ui-endpoint") + enrollment_ui_endpoint: StrictStr = Field(description="The URL of the UI that the agent uses to print the QR code and link for enrolling the device.", alias="enrollment-ui-endpoint") __properties: ClassVar[List[str]] = ["authentication", "service", "enrollment-ui-endpoint"] model_config = ConfigDict( diff --git a/flightctl/models/enrollment_service_auth.py b/flightctl/flightctl/models/enrollment_service_auth.py similarity index 78% rename from flightctl/models/enrollment_service_auth.py rename to flightctl/flightctl/models/enrollment_service_auth.py index 6908567..0f83b21 100644 --- a/flightctl/models/enrollment_service_auth.py +++ b/flightctl/flightctl/models/enrollment_service_auth.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,10 +25,10 @@ class EnrollmentServiceAuth(BaseModel): """ - EnrollmentServiceAuth + EnrollmentServiceAuth contains the client authentication information for a Flight Control enrollment service. """ # noqa: E501 - client_certificate_data: StrictStr = Field(alias="client-certificate-data") - client_key_data: StrictStr = Field(alias="client-key-data") + client_certificate_data: StrictStr = Field(description="ClientCertificateData contains PEM-encoded data from a client cert file for TLS.", alias="client-certificate-data") + client_key_data: StrictStr = Field(description="ClientKeyData contains PEM-encoded data from a client key file for TLS.", alias="client-key-data") __properties: ClassVar[List[str]] = ["client-certificate-data", "client-key-data"] model_config = ConfigDict( diff --git a/flightctl/models/enrollment_service_service.py b/flightctl/flightctl/models/enrollment_service_service.py similarity index 78% rename from flightctl/models/enrollment_service_service.py rename to flightctl/flightctl/models/enrollment_service_service.py index 942bd26..2b34fe6 100644 --- a/flightctl/models/enrollment_service_service.py +++ b/flightctl/flightctl/models/enrollment_service_service.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,10 +25,10 @@ class EnrollmentServiceService(BaseModel): """ - EnrollmentServiceService + EnrollmentServiceService contains information about connecting to a Flight Control enrollment service. """ # noqa: E501 - certificate_authority_data: StrictStr = Field(alias="certificate-authority-data") - server: StrictStr + certificate_authority_data: StrictStr = Field(description="CertificateAuthorityData contains PEM-encoded certificate authority certificates.", alias="certificate-authority-data") + server: StrictStr = Field(description="Server is the address of the Flight Control enrollment service (https://hostname:port).") __properties: ClassVar[List[str]] = ["certificate-authority-data", "server"] model_config = ConfigDict( diff --git a/flightctl/models/file_operation.py b/flightctl/flightctl/models/file_operation.py similarity index 60% rename from flightctl/models/file_operation.py rename to flightctl/flightctl/models/file_operation.py index d8f2eb1..8bf5333 100644 --- a/flightctl/models/file_operation.py +++ b/flightctl/flightctl/models/file_operation.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,16 +21,15 @@ class FileOperation(str, Enum): """ - The type of operation that was observed on the file. + FileOperation """ """ allowed enum values """ - CREATE = 'Create' - REMOVE = 'Remove' - UPDATE = 'Update' - REBOOT = 'Reboot' + CREATED = 'created' + REMOVED = 'removed' + UPDATED = 'updated' @classmethod def from_json(cls, json_str: str) -> Self: diff --git a/flightctl/models/file_spec.py b/flightctl/flightctl/models/file_spec.py similarity index 88% rename from flightctl/models/file_spec.py rename to flightctl/flightctl/models/file_spec.py index da111c3..05ac61c 100644 --- a/flightctl/models/file_spec.py +++ b/flightctl/flightctl/models/file_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,7 +30,7 @@ class FileSpec(BaseModel): path: StrictStr = Field(description="The absolute path to the file on the device. Note that any existing file will be overwritten.") content: StrictStr = Field(description="The plain text (UTF-8) or base64-encoded content of the file.") content_encoding: Optional[StrictStr] = Field(default=None, description="How the contents are encoded. Must be either \"plain\" or \"base64\". Defaults to \"plain\".", alias="contentEncoding") - mode: Optional[StrictInt] = Field(default=None, description="The file’s permission mode. You may specify the more familiar octal with a leading zero (e.g., 0644) or as a decimal without a leading zero (e.g., 420). Setuid/setgid/sticky bits are supported. If not specified, the permission mode for files defaults to 0644. ") + mode: Optional[StrictInt] = Field(default=None, description="The file's permission mode. You may specify the more familiar octal with a leading zero (e.g., 0644) or as a decimal without a leading zero (e.g., 420). Setuid/setgid/sticky bits are supported. If not specified, the permission mode for files defaults to 0644.") user: Optional[StrictStr] = Field(default=None, description="The file's owner, specified either as a name or numeric ID. Defaults to \"root\".") group: Optional[StrictStr] = Field(default=None, description="The file's group, specified either as a name or numeric ID. Defaults to \"root\".") __properties: ClassVar[List[str]] = ["path", "content", "contentEncoding", "mode", "user", "group"] diff --git a/flightctl/models/fleet.py b/flightctl/flightctl/models/fleet.py similarity index 93% rename from flightctl/models/fleet.py rename to flightctl/flightctl/models/fleet.py index e56f582..ad0ab26 100644 --- a/flightctl/models/fleet.py +++ b/flightctl/flightctl/models/fleet.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,8 +30,8 @@ class Fleet(BaseModel): """ Fleet represents a set of devices. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta spec: FleetSpec status: Optional[FleetStatus] = None diff --git a/flightctl/models/fleet_list.py b/flightctl/flightctl/models/fleet_list.py similarity index 93% rename from flightctl/models/fleet_list.py rename to flightctl/flightctl/models/fleet_list.py index 61a239e..435d65f 100644 --- a/flightctl/models/fleet_list.py +++ b/flightctl/flightctl/models/fleet_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,8 +29,8 @@ class FleetList(BaseModel): """ FleetList is a list of Fleets. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[Fleet] = Field(description="List of Fleets.") __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "items"] diff --git a/flightctl/models/fleet_rollout_status.py b/flightctl/flightctl/models/fleet_rollout_status.py similarity index 83% rename from flightctl/models/fleet_rollout_status.py rename to flightctl/flightctl/models/fleet_rollout_status.py index b4dc177..baf59ae 100644 --- a/flightctl/models/fleet_rollout_status.py +++ b/flightctl/flightctl/models/fleet_rollout_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,9 +25,9 @@ class FleetRolloutStatus(BaseModel): """ - FleetRolloutStatus + FleetRolloutStatus represents information about the status of a fleet rollout. """ # noqa: E501 - current_batch: Optional[StrictInt] = Field(default=None, alias="currentBatch") + current_batch: Optional[StrictInt] = Field(default=None, description="The batch number currently being rolled out.", alias="currentBatch") __properties: ClassVar[List[str]] = ["currentBatch"] model_config = ConfigDict( diff --git a/flightctl/models/fleet_spec.py b/flightctl/flightctl/models/fleet_spec.py similarity index 93% rename from flightctl/models/fleet_spec.py rename to flightctl/flightctl/models/fleet_spec.py index df991ee..28d1cf1 100644 --- a/flightctl/models/fleet_spec.py +++ b/flightctl/flightctl/models/fleet_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/fleet_spec_template.py b/flightctl/flightctl/models/fleet_spec_template.py similarity index 91% rename from flightctl/models/fleet_spec_template.py rename to flightctl/flightctl/models/fleet_spec_template.py index e94a3e5..2ebeb9e 100644 --- a/flightctl/models/fleet_spec_template.py +++ b/flightctl/flightctl/models/fleet_spec_template.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,7 +27,7 @@ class FleetSpecTemplate(BaseModel): """ - FleetSpecTemplate + The template for the devices in the fleet. """ # noqa: E501 metadata: Optional[ObjectMeta] = None spec: DeviceSpec diff --git a/flightctl/models/fleet_status.py b/flightctl/flightctl/models/fleet_status.py similarity index 94% rename from flightctl/models/fleet_status.py rename to flightctl/flightctl/models/fleet_status.py index 89d5f38..02a1a4e 100644 --- a/flightctl/models/fleet_status.py +++ b/flightctl/flightctl/models/fleet_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/generic_repo_spec.py b/flightctl/flightctl/models/generic_repo_spec.py similarity index 90% rename from flightctl/models/generic_repo_spec.py rename to flightctl/flightctl/models/generic_repo_spec.py index f9908ec..e1b12fd 100644 --- a/flightctl/models/generic_repo_spec.py +++ b/flightctl/flightctl/models/generic_repo_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,7 +28,7 @@ class GenericRepoSpec(BaseModel): """ GenericRepoSpec """ # noqa: E501 - url: StrictStr = Field(description="The (possibly remote) repository URL") + url: StrictStr = Field(description="The (possibly remote) repository URL.") type: RepoSpecType __properties: ClassVar[List[str]] = ["url", "type"] diff --git a/flightctl/models/git_config_provider_spec.py b/flightctl/flightctl/models/git_config_provider_spec.py similarity index 91% rename from flightctl/models/git_config_provider_spec.py rename to flightctl/flightctl/models/git_config_provider_spec.py index f0434ee..791814d 100644 --- a/flightctl/models/git_config_provider_spec.py +++ b/flightctl/flightctl/models/git_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,7 +28,7 @@ class GitConfigProviderSpec(BaseModel): """ GitConfigProviderSpec """ # noqa: E501 - name: StrictStr = Field(description="The name of the config provider") + name: StrictStr = Field(description="The name of the config provider.") git_ref: GitConfigProviderSpecGitRef = Field(alias="gitRef") __properties: ClassVar[List[str]] = ["name", "gitRef"] diff --git a/flightctl/models/git_config_provider_spec_git_ref.py b/flightctl/flightctl/models/git_config_provider_spec_git_ref.py similarity index 79% rename from flightctl/models/git_config_provider_spec_git_ref.py rename to flightctl/flightctl/models/git_config_provider_spec_git_ref.py index 81172ac..c3461f0 100644 --- a/flightctl/models/git_config_provider_spec_git_ref.py +++ b/flightctl/flightctl/models/git_config_provider_spec_git_ref.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,12 +25,12 @@ class GitConfigProviderSpecGitRef(BaseModel): """ - GitConfigProviderSpecGitRef + The reference to a Git configuration server. """ # noqa: E501 - repository: StrictStr = Field(description="The name of the repository resource to use as the sync source ") - target_revision: StrictStr = Field(alias="targetRevision") - path: StrictStr - mount_path: Optional[StrictStr] = Field(default='/', description="Path to config in device", alias="mountPath") + repository: StrictStr = Field(description="The name of the Repository resource.") + target_revision: StrictStr = Field(description="The revision to use from the Repository.", alias="targetRevision") + path: StrictStr = Field(description="The path to the config in the Repository.") + mount_path: Optional[StrictStr] = Field(default='/', description="Path in the device's file system at which the repository's path should be mounted.", alias="mountPath") __properties: ClassVar[List[str]] = ["repository", "targetRevision", "path", "mountPath"] model_config = ConfigDict( diff --git a/flightctl/models/hook_action_executable_spec.py b/flightctl/flightctl/models/hook_action.py similarity index 65% rename from flightctl/models/hook_action_executable_spec.py rename to flightctl/flightctl/models/hook_action.py index 301939e..834c999 100644 --- a/flightctl/models/hook_action_executable_spec.py +++ b/flightctl/flightctl/models/hook_action.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,18 +21,20 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator from typing import Any, ClassVar, Dict, List, Optional from typing_extensions import Annotated +from flightctl.models.hook_condition import HookCondition from typing import Optional, Set from typing_extensions import Self -class HookActionExecutableSpec(BaseModel): +class HookAction(BaseModel): """ - HookActionExecutableSpec + HookAction """ # noqa: E501 - timeout: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days ") + var_if: Optional[List[HookCondition]] = Field(default=None, description="Conditions that must be met for the action to be executed.", alias="if") + timeout: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are 's' for seconds, 'm' for minutes, and 'h' for hours.") run: StrictStr = Field(description="The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context.") - env_vars: Optional[List[StrictStr]] = Field(default=None, description="An optional list of KEY=VALUE pairs to set as environment variables for the executable.", alias="envVars") - work_dir: Optional[StrictStr] = Field(default=None, description="The directory in which the executable will be run from if it is left empty it will run from the users home directory.", alias="workDir") - __properties: ClassVar[List[str]] = ["timeout", "run", "envVars", "workDir"] + env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime.", alias="envVars") + work_dir: Optional[StrictStr] = Field(default=None, description="The working directory to be used when running the command.", alias="workDir") + __properties: ClassVar[List[str]] = ["if", "timeout", "run", "envVars", "workDir"] @field_validator('timeout') def timeout_validate_regular_expression(cls, value): @@ -39,8 +42,8 @@ def timeout_validate_regular_expression(cls, value): if value is None: return value - if not re.match(r"^[1-9]\d*[smhd]$", value): - raise ValueError(r"must validate the regular expression /^[1-9]\d*[smhd]$/") + if not re.match(r"^(?:[1-9]\d*)?\d[smh]$", value): + raise ValueError(r"must validate the regular expression /^(?:[1-9]\d*)?\d[smh]$/") return value model_config = ConfigDict( @@ -61,7 +64,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionExecutableSpec from a JSON string""" + """Create an instance of HookAction from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -82,11 +85,18 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of each item in var_if (list) + _items = [] + if self.var_if: + for _item_var_if in self.var_if: + if _item_var_if: + _items.append(_item_var_if.to_dict()) + _dict['if'] = _items return _dict @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionExecutableSpec from a dict""" + """Create an instance of HookAction from a dict""" if obj is None: return None @@ -94,6 +104,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ + "if": [HookCondition.from_dict(_item) for _item in obj["if"]] if obj.get("if") is not None else None, "timeout": obj.get("timeout"), "run": obj.get("run"), "envVars": obj.get("envVars"), diff --git a/flightctl/models/hook_action_executable.py b/flightctl/flightctl/models/hook_action_run.py similarity index 77% rename from flightctl/models/hook_action_executable.py rename to flightctl/flightctl/models/hook_action_run.py index 283e067..3273543 100644 --- a/flightctl/models/hook_action_executable.py +++ b/flightctl/flightctl/models/hook_action_run.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,13 +23,13 @@ from typing import Optional, Set from typing_extensions import Self -class HookActionExecutable(BaseModel): +class HookActionRun(BaseModel): """ - HookActionExecutable + HookActionRun """ # noqa: E501 run: StrictStr = Field(description="The command to be executed, including any arguments using standard shell syntax. This field supports multiple commands piped together, as if they were executed under a bash -c context.") - env_vars: Optional[List[StrictStr]] = Field(default=None, description="An optional list of KEY=VALUE pairs to set as environment variables for the executable.", alias="envVars") - work_dir: Optional[StrictStr] = Field(default=None, description="The directory in which the executable will be run from if it is left empty it will run from the users home directory.", alias="workDir") + env_vars: Optional[Dict[str, StrictStr]] = Field(default=None, description="Environment variable key-value pairs, injected during runtime.", alias="envVars") + work_dir: Optional[StrictStr] = Field(default=None, description="The working directory to be used when running the command.", alias="workDir") __properties: ClassVar[List[str]] = ["run", "envVars", "workDir"] model_config = ConfigDict( @@ -49,7 +50,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionExecutable from a JSON string""" + """Create an instance of HookActionRun from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -74,7 +75,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionExecutable from a dict""" + """Create an instance of HookActionRun from a dict""" if obj is None: return None diff --git a/flightctl/models/hook_action.py b/flightctl/flightctl/models/hook_condition.py similarity index 60% rename from flightctl/models/hook_action.py rename to flightctl/flightctl/models/hook_condition.py index fbe4045..936151c 100644 --- a/flightctl/models/hook_action.py +++ b/flightctl/flightctl/models/hook_condition.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,24 +18,23 @@ import pprint from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator from typing import Any, List, Optional -from flightctl.models.hook_action_one_of import HookActionOneOf -from flightctl.models.hook_action_one_of1 import HookActionOneOf1 +from flightctl.models.hook_condition_path_op import HookConditionPathOp from pydantic import StrictStr, Field from typing import Union, List, Set, Optional, Dict from typing_extensions import Literal, Self -HOOKACTION_ONE_OF_SCHEMAS = ["HookActionOneOf", "HookActionOneOf1"] +HOOKCONDITION_ONE_OF_SCHEMAS = ["HookConditionPathOp", "str"] -class HookAction(BaseModel): +class HookCondition(BaseModel): """ - HookAction + HookCondition """ - # data type: HookActionOneOf - oneof_schema_1_validator: Optional[HookActionOneOf] = None - # data type: HookActionOneOf1 - oneof_schema_2_validator: Optional[HookActionOneOf1] = None - actual_instance: Optional[Union[HookActionOneOf, HookActionOneOf1]] = None - one_of_schemas: Set[str] = { "HookActionOneOf", "HookActionOneOf1" } + # data type: HookConditionPathOp + oneof_schema_1_validator: Optional[HookConditionPathOp] = None + # data type: str + oneof_schema_2_validator: Optional[StrictStr] = Field(default=None, description="An expression that must evaluate to true as condition for the action to be performed.") + actual_instance: Optional[Union[HookConditionPathOp, str]] = None + one_of_schemas: Set[str] = { "HookConditionPathOp", "str" } model_config = ConfigDict( validate_assignment=True, @@ -54,25 +54,26 @@ def __init__(self, *args, **kwargs) -> None: @field_validator('actual_instance') def actual_instance_must_validate_oneof(cls, v): - instance = HookAction.model_construct() + instance = HookCondition.model_construct() error_messages = [] match = 0 - # validate data type: HookActionOneOf - if not isinstance(v, HookActionOneOf): - error_messages.append(f"Error! Input type `{type(v)}` is not `HookActionOneOf`") + # validate data type: HookConditionPathOp + if not isinstance(v, HookConditionPathOp): + error_messages.append(f"Error! Input type `{type(v)}` is not `HookConditionPathOp`") else: match += 1 - # validate data type: HookActionOneOf1 - if not isinstance(v, HookActionOneOf1): - error_messages.append(f"Error! Input type `{type(v)}` is not `HookActionOneOf1`") - else: + # validate data type: str + try: + instance.oneof_schema_2_validator = v match += 1 + except (ValidationError, ValueError) as e: + error_messages.append(str(e)) if match > 1: # more than 1 match - raise ValueError("Multiple matches found when setting `actual_instance` in HookAction with oneOf schemas: HookActionOneOf, HookActionOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("Multiple matches found when setting `actual_instance` in HookCondition with oneOf schemas: HookConditionPathOp, str. Details: " + ", ".join(error_messages)) elif match == 0: # no match - raise ValueError("No match found when setting `actual_instance` in HookAction with oneOf schemas: HookActionOneOf, HookActionOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("No match found when setting `actual_instance` in HookCondition with oneOf schemas: HookConditionPathOp, str. Details: " + ", ".join(error_messages)) else: return v @@ -87,25 +88,28 @@ def from_json(cls, json_str: str) -> Self: error_messages = [] match = 0 - # deserialize data into HookActionOneOf + # deserialize data into HookConditionPathOp try: - instance.actual_instance = HookActionOneOf.from_json(json_str) + instance.actual_instance = HookConditionPathOp.from_json(json_str) match += 1 except (ValidationError, ValueError) as e: error_messages.append(str(e)) - # deserialize data into HookActionOneOf1 + # deserialize data into str try: - instance.actual_instance = HookActionOneOf1.from_json(json_str) + # validation + instance.oneof_schema_2_validator = json.loads(json_str) + # assign value to actual_instance + instance.actual_instance = instance.oneof_schema_2_validator match += 1 except (ValidationError, ValueError) as e: error_messages.append(str(e)) if match > 1: # more than 1 match - raise ValueError("Multiple matches found when deserializing the JSON string into HookAction with oneOf schemas: HookActionOneOf, HookActionOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("Multiple matches found when deserializing the JSON string into HookCondition with oneOf schemas: HookConditionPathOp, str. Details: " + ", ".join(error_messages)) elif match == 0: # no match - raise ValueError("No match found when deserializing the JSON string into HookAction with oneOf schemas: HookActionOneOf, HookActionOneOf1. Details: " + ", ".join(error_messages)) + raise ValueError("No match found when deserializing the JSON string into HookCondition with oneOf schemas: HookConditionPathOp, str. Details: " + ", ".join(error_messages)) else: return instance @@ -119,7 +123,7 @@ def to_json(self) -> str: else: return json.dumps(self.actual_instance) - def to_dict(self) -> Optional[Union[Dict[str, Any], HookActionOneOf, HookActionOneOf1]]: + def to_dict(self) -> Optional[Union[Dict[str, Any], HookConditionPathOp, str]]: """Returns the dict representation of the actual instance""" if self.actual_instance is None: return None diff --git a/flightctl/flightctl/models/hook_condition_path_op.py b/flightctl/flightctl/models/hook_condition_path_op.py new file mode 100644 index 0000000..f33c623 --- /dev/null +++ b/flightctl/flightctl/models/hook_condition_path_op.py @@ -0,0 +1,91 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List +from flightctl.models.file_operation import FileOperation +from typing import Optional, Set +from typing_extensions import Self + +class HookConditionPathOp(BaseModel): + """ + HookConditionPathOp + """ # noqa: E501 + path: StrictStr = Field(description="The absolute path to a file or directory that must have changed as condition for the action to be performed.") + op: List[FileOperation] = Field(description="The operation(s) on files at or below the path that satisfy the path condition.") + __properties: ClassVar[List[str]] = ["path", "op"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of HookConditionPathOp from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of HookConditionPathOp from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "path": obj.get("path"), + "op": obj.get("op") + }) + return _obj + + diff --git a/flightctl/models/http_config.py b/flightctl/flightctl/models/http_config.py similarity index 82% rename from flightctl/models/http_config.py rename to flightctl/flightctl/models/http_config.py index 9fe7ab2..878444f 100644 --- a/flightctl/models/http_config.py +++ b/flightctl/flightctl/models/http_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,15 +25,15 @@ class HttpConfig(BaseModel): """ - HttpConfig + Configuration for HTTP transport. """ # noqa: E501 - username: Optional[StrictStr] = Field(default=None, description="The username for auth with HTTP transport") - password: Optional[SecretStr] = Field(default=None, description="The password for auth with HTTP transport") - tls_crt: Optional[SecretStr] = Field(default=None, description="Base64 encoded TLS cert data", alias="tls.crt") - tls_key: Optional[SecretStr] = Field(default=None, description="Base64 encoded TLS cert key", alias="tls.key") - ca_crt: Optional[StrictStr] = Field(default=None, description="Base64 encoded root CA", alias="ca.crt") - skip_server_verification: Optional[StrictBool] = Field(default=None, description="Skip remote server verification", alias="skipServerVerification") - token: Optional[SecretStr] = Field(default=None, description="The token for auth with HTTP transport") + username: Optional[StrictStr] = Field(default=None, description="The username for auth with HTTP transport.") + password: Optional[SecretStr] = Field(default=None, description="The password for auth with HTTP transport.") + tls_crt: Optional[SecretStr] = Field(default=None, description="Base64 encoded TLS cert data.", alias="tls.crt") + tls_key: Optional[SecretStr] = Field(default=None, description="Base64 encoded TLS cert key.", alias="tls.key") + ca_crt: Optional[StrictStr] = Field(default=None, description="Base64 encoded root CA.", alias="ca.crt") + skip_server_verification: Optional[StrictBool] = Field(default=None, description="Skip remote server verification.", alias="skipServerVerification") + token: Optional[SecretStr] = Field(default=None, description="The token for auth with HTTP transport.") __properties: ClassVar[List[str]] = ["username", "password", "tls.crt", "tls.key", "ca.crt", "skipServerVerification", "token"] model_config = ConfigDict( diff --git a/flightctl/models/http_config_provider_spec.py b/flightctl/flightctl/models/http_config_provider_spec.py similarity index 92% rename from flightctl/models/http_config_provider_spec.py rename to flightctl/flightctl/models/http_config_provider_spec.py index 4fbc199..7166043 100644 --- a/flightctl/models/http_config_provider_spec.py +++ b/flightctl/flightctl/models/http_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,7 +28,7 @@ class HttpConfigProviderSpec(BaseModel): """ HttpConfigProviderSpec """ # noqa: E501 - name: StrictStr = Field(description="The name of the config provider") + name: StrictStr = Field(description="The name of the config provider.") http_ref: HttpConfigProviderSpecHttpRef = Field(alias="httpRef") __properties: ClassVar[List[str]] = ["name", "httpRef"] diff --git a/flightctl/models/http_config_provider_spec_http_ref.py b/flightctl/flightctl/models/http_config_provider_spec_http_ref.py similarity index 82% rename from flightctl/models/http_config_provider_spec_http_ref.py rename to flightctl/flightctl/models/http_config_provider_spec_http_ref.py index 5d72b41..51111e7 100644 --- a/flightctl/models/http_config_provider_spec_http_ref.py +++ b/flightctl/flightctl/models/http_config_provider_spec_http_ref.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,11 +25,11 @@ class HttpConfigProviderSpecHttpRef(BaseModel): """ - HttpConfigProviderSpecHttpRef + The reference to an HTTP configuration server. """ # noqa: E501 - repository: StrictStr = Field(description="The name of the repository resource to use as the sync source ") - suffix: Optional[StrictStr] = Field(default=None, description="Part of the URL that comes after the base URL. It can include query parameters such as: /path/to/endpoint?query=param ") - file_path: StrictStr = Field(description="The path of the file where the response is stored in the filesystem of the device. ", alias="filePath") + repository: StrictStr = Field(description="The name of the repository resource to use as the sync source.") + suffix: Optional[StrictStr] = Field(default=None, description="Part of the URL that comes after the base URL. It can include query parameters such as: \"/path/to/endpoint?query=param\".") + file_path: StrictStr = Field(description="Path in the device's file system to which the content returned by the HTTP sever should be written.", alias="filePath") __properties: ClassVar[List[str]] = ["repository", "suffix", "filePath"] model_config = ConfigDict( diff --git a/flightctl/models/http_repo_spec.py b/flightctl/flightctl/models/http_repo_spec.py similarity index 92% rename from flightctl/models/http_repo_spec.py rename to flightctl/flightctl/models/http_repo_spec.py index b070663..a471af7 100644 --- a/flightctl/models/http_repo_spec.py +++ b/flightctl/flightctl/models/http_repo_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class HttpRepoSpec(BaseModel): """ HttpRepoSpec """ # noqa: E501 - url: StrictStr = Field(description="The HTTP URL to call or clone from") + url: StrictStr = Field(description="The HTTP URL to call or clone from.") type: RepoSpecType http_config: HttpConfig = Field(alias="httpConfig") validation_suffix: Optional[StrictStr] = Field(default=None, description="URL suffix used only for validating access to the repository. Users might use the URL field as a root URL to be used by config sources adding suffixes. This will help with the validation of the http endpoint.", alias="validationSuffix") diff --git a/flightctl/models/image_application_provider.py b/flightctl/flightctl/models/image_application_provider.py similarity index 89% rename from flightctl/models/image_application_provider.py rename to flightctl/flightctl/models/image_application_provider.py index 19cdec2..c96526e 100644 --- a/flightctl/models/image_application_provider.py +++ b/flightctl/flightctl/models/image_application_provider.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,7 +27,7 @@ class ImageApplicationProvider(BaseModel): """ ImageApplicationProvider """ # noqa: E501 - image: StrictStr = Field(description="Reference to the container image for the application package") + image: StrictStr = Field(description="Reference to the container image for the application package.") __properties: ClassVar[List[str]] = ["image"] model_config = ConfigDict( diff --git a/flightctl/models/inline_config_provider_spec.py b/flightctl/flightctl/models/inline_config_provider_spec.py similarity index 89% rename from flightctl/models/inline_config_provider_spec.py rename to flightctl/flightctl/models/inline_config_provider_spec.py index ba1dec1..7504c27 100644 --- a/flightctl/models/inline_config_provider_spec.py +++ b/flightctl/flightctl/models/inline_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,8 +28,8 @@ class InlineConfigProviderSpec(BaseModel): """ InlineConfigProviderSpec """ # noqa: E501 - name: StrictStr = Field(description="The name of the config provider") - inline: List[FileSpec] + name: StrictStr = Field(description="The name of the config provider.") + inline: List[FileSpec] = Field(description="A list of files to create on the device.") __properties: ClassVar[List[str]] = ["name", "inline"] model_config = ConfigDict( diff --git a/flightctl/models/kubernetes_secret_provider_spec.py b/flightctl/flightctl/models/kubernetes_secret_provider_spec.py similarity index 92% rename from flightctl/models/kubernetes_secret_provider_spec.py rename to flightctl/flightctl/models/kubernetes_secret_provider_spec.py index 56fea19..20052e2 100644 --- a/flightctl/models/kubernetes_secret_provider_spec.py +++ b/flightctl/flightctl/models/kubernetes_secret_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,7 +28,7 @@ class KubernetesSecretProviderSpec(BaseModel): """ KubernetesSecretProviderSpec """ # noqa: E501 - name: StrictStr = Field(description="The name of the config provider") + name: StrictStr = Field(description="The name of the config provider.") secret_ref: KubernetesSecretProviderSpecSecretRef = Field(alias="secretRef") __properties: ClassVar[List[str]] = ["name", "secretRef"] diff --git a/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py b/flightctl/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py similarity index 81% rename from flightctl/models/kubernetes_secret_provider_spec_secret_ref.py rename to flightctl/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py index 4823169..63252f2 100644 --- a/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py +++ b/flightctl/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,11 +25,11 @@ class KubernetesSecretProviderSpecSecretRef(BaseModel): """ - KubernetesSecretProviderSpecSecretRef + The reference to a Kubernetes secret. """ # noqa: E501 - name: StrictStr - namespace: StrictStr - mount_path: StrictStr = Field(alias="mountPath") + name: StrictStr = Field(description="The name of the secret.") + namespace: StrictStr = Field(description="The namespace of the secret.") + mount_path: StrictStr = Field(description="Path in the device's file system at which the secret should be mounted.", alias="mountPath") __properties: ClassVar[List[str]] = ["name", "namespace", "mountPath"] model_config = ConfigDict( diff --git a/flightctl/models/label_selector.py b/flightctl/flightctl/models/label_selector.py similarity index 84% rename from flightctl/models/label_selector.py rename to flightctl/flightctl/models/label_selector.py index 641ecf4..b81f9bc 100644 --- a/flightctl/models/label_selector.py +++ b/flightctl/flightctl/models/label_selector.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,10 +27,10 @@ class LabelSelector(BaseModel): """ - A map of key,value pairs that are ANDed. Empty/null label selectors match nothing. + A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. Empty/null label selectors match nothing. """ # noqa: E501 - match_labels: Optional[Dict[str, StrictStr]] = Field(default=None, alias="matchLabels") - match_expressions: Optional[Annotated[List[MatchExpression], Field(min_length=1)]] = Field(default=None, alias="matchExpressions") + match_labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="A map of {key,value} pairs.", alias="matchLabels") + match_expressions: Optional[Annotated[List[MatchExpression], Field(min_length=1)]] = Field(default=None, description="A list of match expressions.", alias="matchExpressions") __properties: ClassVar[List[str]] = ["matchLabels", "matchExpressions"] model_config = ConfigDict( diff --git a/flightctl/models/list_meta.py b/flightctl/flightctl/models/list_meta.py similarity index 63% rename from flightctl/models/list_meta.py rename to flightctl/flightctl/models/list_meta.py index ab117bc..fb22356 100644 --- a/flightctl/models/list_meta.py +++ b/flightctl/flightctl/models/list_meta.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,8 +27,8 @@ class ListMeta(BaseModel): """ ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}. """ # noqa: E501 - var_continue: Optional[StrictStr] = Field(default=None, description="continue may be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message.", alias="continue") - remaining_item_count: Optional[StrictInt] = Field(default=None, description="remainingItemCount is the number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact.", alias="remainingItemCount") + var_continue: Optional[StrictStr] = Field(default=None, description="May be set if the user set a limit on the number of items returned, and indicates that the server has more data available. The value is opaque and may be used to issue another request to the endpoint that served this list to retrieve the next set of available objects. Continuing a consistent list may not be possible if the server configuration has changed or more than a few minutes have passed. The resourceVersion field returned when using this continue value will be identical to the value in the first response, unless you have received this token from an error message.", alias="continue") + remaining_item_count: Optional[StrictInt] = Field(default=None, description="The number of subsequent items in the list which are not included in this list response. If the list request contained label or field selectors, then the number of remaining items is unknown and the field will be left unset and omitted during serialization. If the list is complete (either because it is not chunking or because this is the last chunk), then there are no more remaining items and this field will be left unset and omitted during serialization. Servers older than v1.15 do not set this field. The intended use of the remainingItemCount is *estimating* the size of a collection. Clients should not rely on the remainingItemCount to be set or to be exact.", alias="remainingItemCount") __properties: ClassVar[List[str]] = ["continue", "remainingItemCount"] model_config = ConfigDict( diff --git a/flightctl/models/match_expression.py b/flightctl/flightctl/models/match_expression.py similarity index 81% rename from flightctl/models/match_expression.py rename to flightctl/flightctl/models/match_expression.py index d22d441..9113ca0 100644 --- a/flightctl/models/match_expression.py +++ b/flightctl/flightctl/models/match_expression.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,7 +18,7 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, StrictStr, field_validator +from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -26,9 +27,9 @@ class MatchExpression(BaseModel): """ MatchExpression """ # noqa: E501 - key: StrictStr - operator: StrictStr - values: Optional[List[StrictStr]] = None + key: StrictStr = Field(description="The label key that the selector applies to.") + operator: StrictStr = Field(description="The operation to apply when matching.") + values: Optional[List[StrictStr]] = Field(default=None, description="The list of values to match.") __properties: ClassVar[List[str]] = ["key", "operator", "values"] @field_validator('operator') diff --git a/flightctl/models/memory_resource_monitor_spec.py b/flightctl/flightctl/models/memory_resource_monitor_spec.py similarity index 91% rename from flightctl/models/memory_resource_monitor_spec.py rename to flightctl/flightctl/models/memory_resource_monitor_spec.py index 3e92e84..79710a6 100644 --- a/flightctl/models/memory_resource_monitor_spec.py +++ b/flightctl/flightctl/models/memory_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class MemoryResourceMonitorSpec(BaseModel): """ MemoryResourceMonitorSpec """ # noqa: E501 - monitor_type: StrictStr = Field(alias="monitorType") + monitor_type: StrictStr = Field(description="The type of resource to monitor.", alias="monitorType") alert_rules: List[ResourceAlertRule] = Field(description="Array of alert rules. Only one alert per severity is allowed.", alias="alertRules") sampling_interval: Annotated[str, Field(strict=True)] = Field(description="Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours.", alias="samplingInterval") __properties: ClassVar[List[str]] = ["monitorType", "alertRules", "samplingInterval"] diff --git a/flightctl/models/object_meta.py b/flightctl/flightctl/models/object_meta.py similarity index 90% rename from flightctl/models/object_meta.py rename to flightctl/flightctl/models/object_meta.py index 18aa717..1ae40a1 100644 --- a/flightctl/models/object_meta.py +++ b/flightctl/flightctl/models/object_meta.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,9 +28,9 @@ class ObjectMeta(BaseModel): """ ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. """ # noqa: E501 - creation_timestamp: Optional[datetime] = Field(default=None, alias="creationTimestamp") - deletion_timestamp: Optional[datetime] = Field(default=None, alias="deletionTimestamp") - name: Optional[StrictStr] = Field(default=None, description="name of the object") + creation_timestamp: Optional[datetime] = Field(default=None, description="The time the object was created.", alias="creationTimestamp") + deletion_timestamp: Optional[datetime] = Field(default=None, description="The time the object will be deleted.", alias="deletionTimestamp") + name: Optional[StrictStr] = Field(default=None, description="The name of the object.") labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="Map of string keys and values that can be used to organize and categorize (scope and select) objects.") generation: Optional[StrictInt] = Field(default=None, description="A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.") owner: Optional[StrictStr] = Field(default=None, description="A resource that owns this resource, in \"kind/name\" format.") diff --git a/flightctl/models/patch_request_inner.py b/flightctl/flightctl/models/patch_request_inner.py similarity index 92% rename from flightctl/models/patch_request_inner.py rename to flightctl/flightctl/models/patch_request_inner.py index b3a3ef9..32d90f9 100644 --- a/flightctl/models/patch_request_inner.py +++ b/flightctl/flightctl/models/patch_request_inner.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/repo_spec_type.py b/flightctl/flightctl/models/repo_spec_type.py similarity index 66% rename from flightctl/models/repo_spec_type.py rename to flightctl/flightctl/models/repo_spec_type.py index 529b04b..bd3d663 100644 --- a/flightctl/models/repo_spec_type.py +++ b/flightctl/flightctl/models/repo_spec_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class RepoSpecType(str, Enum): """ - RepoSpecType is the type of the repository + RepoSpecType is the type of the repository. """ """ diff --git a/flightctl/models/repository.py b/flightctl/flightctl/models/repository.py similarity index 91% rename from flightctl/models/repository.py rename to flightctl/flightctl/models/repository.py index 0f994aa..fc7ab5f 100644 --- a/flightctl/models/repository.py +++ b/flightctl/flightctl/models/repository.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,12 +28,12 @@ class Repository(BaseModel): """ - Repository represents a Git repository or an HTTP endpoint + Repository represents a Git repository or an HTTP endpoint. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta - spec: Optional[RepositorySpec] = None + spec: RepositorySpec status: Optional[RepositoryStatus] = None __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "spec", "status"] diff --git a/flightctl/models/repository_list.py b/flightctl/flightctl/models/repository_list.py similarity index 93% rename from flightctl/models/repository_list.py rename to flightctl/flightctl/models/repository_list.py index eeb2cb7..68af1fe 100644 --- a/flightctl/models/repository_list.py +++ b/flightctl/flightctl/models/repository_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,8 +29,8 @@ class RepositoryList(BaseModel): """ RepositoryList is a list of Repositories. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[Repository] = Field(description="List of repositories.") __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "items"] diff --git a/flightctl/models/repository_spec.py b/flightctl/flightctl/models/repository_spec.py similarity index 95% rename from flightctl/models/repository_spec.py rename to flightctl/flightctl/models/repository_spec.py index 24b49a9..9783d24 100644 --- a/flightctl/models/repository_spec.py +++ b/flightctl/flightctl/models/repository_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class RepositorySpec(BaseModel): """ - RepositorySpec + RepositorySpec describes a configuration repository. """ # data type: GenericRepoSpec oneof_schema_1_validator: Optional[GenericRepoSpec] = None diff --git a/flightctl/models/repository_status.py b/flightctl/flightctl/models/repository_status.py similarity index 91% rename from flightctl/models/repository_status.py rename to flightctl/flightctl/models/repository_status.py index 17f561e..358163d 100644 --- a/flightctl/models/repository_status.py +++ b/flightctl/flightctl/models/repository_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,7 +26,7 @@ class RepositoryStatus(BaseModel): """ - RepositoryStatus represents information about the status of a repository. Status may trail the actual state of a repository. + RepositoryStatus represents information about the status of a repository. """ # noqa: E501 conditions: List[Condition] = Field(description="Current state of the repository.") __properties: ClassVar[List[str]] = ["conditions"] diff --git a/flightctl/models/resource_alert_rule.py b/flightctl/flightctl/models/resource_alert_rule.py similarity index 93% rename from flightctl/models/resource_alert_rule.py rename to flightctl/flightctl/models/resource_alert_rule.py index c6eacba..be4fac1 100644 --- a/flightctl/models/resource_alert_rule.py +++ b/flightctl/flightctl/models/resource_alert_rule.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/resource_alert_severity_type.py b/flightctl/flightctl/models/resource_alert_severity_type.py similarity index 70% rename from flightctl/models/resource_alert_severity_type.py rename to flightctl/flightctl/models/resource_alert_severity_type.py index de1688e..de048c4 100644 --- a/flightctl/models/resource_alert_severity_type.py +++ b/flightctl/flightctl/models/resource_alert_severity_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ class ResourceAlertSeverityType(str, Enum): """ - ResourceAlertSeverityType + Severity of the alert. """ """ diff --git a/flightctl/models/resource_monitor.py b/flightctl/flightctl/models/resource_monitor.py similarity index 82% rename from flightctl/models/resource_monitor.py rename to flightctl/flightctl/models/resource_monitor.py index b5faadf..fab2ee1 100644 --- a/flightctl/models/resource_monitor.py +++ b/flightctl/flightctl/models/resource_monitor.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,27 +18,27 @@ import pprint from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator from typing import Any, List, Optional -from flightctl.models.cpu_resource_monitor_spec import CPUResourceMonitorSpec +from flightctl.models.cpu_resource_monitor_spec import CpuResourceMonitorSpec from flightctl.models.disk_resource_monitor_spec import DiskResourceMonitorSpec from flightctl.models.memory_resource_monitor_spec import MemoryResourceMonitorSpec from pydantic import StrictStr, Field from typing import Union, List, Set, Optional, Dict from typing_extensions import Literal, Self -RESOURCEMONITOR_ONE_OF_SCHEMAS = ["CPUResourceMonitorSpec", "DiskResourceMonitorSpec", "MemoryResourceMonitorSpec"] +RESOURCEMONITOR_ONE_OF_SCHEMAS = ["CpuResourceMonitorSpec", "DiskResourceMonitorSpec", "MemoryResourceMonitorSpec"] class ResourceMonitor(BaseModel): """ ResourceMonitor """ - # data type: CPUResourceMonitorSpec - oneof_schema_1_validator: Optional[CPUResourceMonitorSpec] = None + # data type: CpuResourceMonitorSpec + oneof_schema_1_validator: Optional[CpuResourceMonitorSpec] = None # data type: MemoryResourceMonitorSpec oneof_schema_2_validator: Optional[MemoryResourceMonitorSpec] = None # data type: DiskResourceMonitorSpec oneof_schema_3_validator: Optional[DiskResourceMonitorSpec] = None - actual_instance: Optional[Union[CPUResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec]] = None - one_of_schemas: Set[str] = { "CPUResourceMonitorSpec", "DiskResourceMonitorSpec", "MemoryResourceMonitorSpec" } + actual_instance: Optional[Union[CpuResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec]] = None + one_of_schemas: Set[str] = { "CpuResourceMonitorSpec", "DiskResourceMonitorSpec", "MemoryResourceMonitorSpec" } model_config = ConfigDict( validate_assignment=True, @@ -63,9 +64,9 @@ def actual_instance_must_validate_oneof(cls, v): instance = ResourceMonitor.model_construct() error_messages = [] match = 0 - # validate data type: CPUResourceMonitorSpec - if not isinstance(v, CPUResourceMonitorSpec): - error_messages.append(f"Error! Input type `{type(v)}` is not `CPUResourceMonitorSpec`") + # validate data type: CpuResourceMonitorSpec + if not isinstance(v, CpuResourceMonitorSpec): + error_messages.append(f"Error! Input type `{type(v)}` is not `CpuResourceMonitorSpec`") else: match += 1 # validate data type: MemoryResourceMonitorSpec @@ -80,10 +81,10 @@ def actual_instance_must_validate_oneof(cls, v): match += 1 if match > 1: # more than 1 match - raise ValueError("Multiple matches found when setting `actual_instance` in ResourceMonitor with oneOf schemas: CPUResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) + raise ValueError("Multiple matches found when setting `actual_instance` in ResourceMonitor with oneOf schemas: CpuResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) elif match == 0: # no match - raise ValueError("No match found when setting `actual_instance` in ResourceMonitor with oneOf schemas: CPUResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) + raise ValueError("No match found when setting `actual_instance` in ResourceMonitor with oneOf schemas: CpuResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) else: return v @@ -98,9 +99,9 @@ def from_json(cls, json_str: str) -> Self: error_messages = [] match = 0 - # deserialize data into CPUResourceMonitorSpec + # deserialize data into CpuResourceMonitorSpec try: - instance.actual_instance = CPUResourceMonitorSpec.from_json(json_str) + instance.actual_instance = CpuResourceMonitorSpec.from_json(json_str) match += 1 except (ValidationError, ValueError) as e: error_messages.append(str(e)) @@ -119,10 +120,10 @@ def from_json(cls, json_str: str) -> Self: if match > 1: # more than 1 match - raise ValueError("Multiple matches found when deserializing the JSON string into ResourceMonitor with oneOf schemas: CPUResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) + raise ValueError("Multiple matches found when deserializing the JSON string into ResourceMonitor with oneOf schemas: CpuResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) elif match == 0: # no match - raise ValueError("No match found when deserializing the JSON string into ResourceMonitor with oneOf schemas: CPUResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) + raise ValueError("No match found when deserializing the JSON string into ResourceMonitor with oneOf schemas: CpuResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec. Details: " + ", ".join(error_messages)) else: return instance @@ -136,7 +137,7 @@ def to_json(self) -> str: else: return json.dumps(self.actual_instance) - def to_dict(self) -> Optional[Union[Dict[str, Any], CPUResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec]]: + def to_dict(self) -> Optional[Union[Dict[str, Any], CpuResourceMonitorSpec, DiskResourceMonitorSpec, MemoryResourceMonitorSpec]]: """Returns the dict representation of the actual instance""" if self.actual_instance is None: return None diff --git a/flightctl/models/resource_monitor_spec.py b/flightctl/flightctl/models/resource_monitor_spec.py similarity index 90% rename from flightctl/models/resource_monitor_spec.py rename to flightctl/flightctl/models/resource_monitor_spec.py index cba9ef4..24b7bde 100644 --- a/flightctl/models/resource_monitor_spec.py +++ b/flightctl/flightctl/models/resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,9 +27,9 @@ class ResourceMonitorSpec(BaseModel): """ - ResourceMonitorSpec + Specification for monitoring a resource. """ # noqa: E501 - monitor_type: StrictStr = Field(alias="monitorType") + monitor_type: StrictStr = Field(description="The type of resource to monitor.", alias="monitorType") alert_rules: List[ResourceAlertRule] = Field(description="Array of alert rules. Only one alert per severity is allowed.", alias="alertRules") sampling_interval: Annotated[str, Field(strict=True)] = Field(description="Duration between monitor samples. Format: positive integer followed by 's' for seconds, 'm' for minutes, 'h' for hours.", alias="samplingInterval") __properties: ClassVar[List[str]] = ["monitorType", "alertRules", "samplingInterval"] diff --git a/flightctl/models/resource_sync.py b/flightctl/flightctl/models/resource_sync.py similarity index 92% rename from flightctl/models/resource_sync.py rename to flightctl/flightctl/models/resource_sync.py index 39d083d..7ad48b6 100644 --- a/flightctl/models/resource_sync.py +++ b/flightctl/flightctl/models/resource_sync.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -27,10 +28,10 @@ class ResourceSync(BaseModel): """ - ResourceSync represents a reference to one or more files in a repository to sync to resource definitions + ResourceSync represents a reference to one or more files in a repository to sync to resource definitions. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta spec: ResourceSyncSpec status: Optional[ResourceSyncStatus] = None diff --git a/flightctl/models/resource_sync_list.py b/flightctl/flightctl/models/resource_sync_list.py similarity index 93% rename from flightctl/models/resource_sync_list.py rename to flightctl/flightctl/models/resource_sync_list.py index ac30a4d..b0f4b50 100644 --- a/flightctl/models/resource_sync_list.py +++ b/flightctl/flightctl/models/resource_sync_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,8 +29,8 @@ class ResourceSyncList(BaseModel): """ ResourceSyncList """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[ResourceSync] = Field(description="List of resourcesync.") __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "items"] diff --git a/flightctl/models/resource_sync_spec.py b/flightctl/flightctl/models/resource_sync_spec.py similarity index 85% rename from flightctl/models/resource_sync_spec.py rename to flightctl/flightctl/models/resource_sync_spec.py index 71366b8..5675dd2 100644 --- a/flightctl/models/resource_sync_spec.py +++ b/flightctl/flightctl/models/resource_sync_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,11 +25,11 @@ class ResourceSyncSpec(BaseModel): """ - ResourceSyncSpec + ResourceSyncSpec describes the file(s) to sync from a repository. """ # noqa: E501 - repository: StrictStr = Field(description="The name of the repository resource to use as the sync source ") - target_revision: StrictStr = Field(description="The desired revision in the repository", alias="targetRevision") - path: StrictStr = Field(description="The path of a file or directory in the repository. If a directory, the directory should contain only resource definitions with no subdirectories. Each file should contain the definition of one or more resources. ") + repository: StrictStr = Field(description="The name of the repository resource to use as the sync source.") + target_revision: StrictStr = Field(description="The desired revision in the repository.", alias="targetRevision") + path: StrictStr = Field(description="The path of a file or directory in the repository. If a directory, the directory should contain only resource definitions with no subdirectories. Each file should contain the definition of one or more resources.") __properties: ClassVar[List[str]] = ["repository", "targetRevision", "path"] model_config = ConfigDict( diff --git a/flightctl/models/resource_sync_status.py b/flightctl/flightctl/models/resource_sync_status.py similarity index 89% rename from flightctl/models/resource_sync_status.py rename to flightctl/flightctl/models/resource_sync_status.py index ecc7200..4572d88 100644 --- a/flightctl/models/resource_sync_status.py +++ b/flightctl/flightctl/models/resource_sync_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -25,10 +26,10 @@ class ResourceSyncStatus(BaseModel): """ - ResourceSyncStatus represents information about the status of a resourcesync + ResourceSyncStatus represents information about the status of a ResourceSync. """ # noqa: E501 - observed_commit: Optional[StrictStr] = Field(default=None, description="The last commit hash that was synced ", alias="observedCommit") - observed_generation: Optional[StrictInt] = Field(default=None, description="The last generation that was synced ", alias="observedGeneration") + observed_commit: Optional[StrictStr] = Field(default=None, description="The last commit hash that was synced.", alias="observedCommit") + observed_generation: Optional[StrictInt] = Field(default=None, description="The last generation that was synced.", alias="observedGeneration") conditions: List[Condition] = Field(description="Current state of a resourcesync.") __properties: ClassVar[List[str]] = ["observedCommit", "observedGeneration", "conditions"] diff --git a/flightctl/models/rollout_device_selection.py b/flightctl/flightctl/models/rollout_device_selection.py similarity index 94% rename from flightctl/models/rollout_device_selection.py rename to flightctl/flightctl/models/rollout_device_selection.py index 1633dc6..1958818 100644 --- a/flightctl/models/rollout_device_selection.py +++ b/flightctl/flightctl/models/rollout_device_selection.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -26,7 +27,7 @@ class RolloutDeviceSelection(BaseModel): """ - RolloutDeviceSelection + Describes how to select devices for rollout. """ # data type: BatchSequence oneof_schema_1_validator: Optional[BatchSequence] = None diff --git a/flightctl/models/rollout_policy.py b/flightctl/flightctl/models/rollout_policy.py similarity index 76% rename from flightctl/models/rollout_policy.py rename to flightctl/flightctl/models/rollout_policy.py index 4a9faa4..bf44480 100644 --- a/flightctl/models/rollout_policy.py +++ b/flightctl/flightctl/models/rollout_policy.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,7 +21,7 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator from typing import Any, ClassVar, Dict, List, Optional from typing_extensions import Annotated -from flightctl.models.disruption_allowance import DisruptionAllowance +from flightctl.models.disruption_budget import DisruptionBudget from flightctl.models.rollout_device_selection import RolloutDeviceSelection from typing import Optional, Set from typing_extensions import Self @@ -29,11 +30,11 @@ class RolloutPolicy(BaseModel): """ RolloutPolicy is the rollout policy of the fleet. """ # noqa: E501 - disruption_allowance: Optional[DisruptionAllowance] = Field(default=None, alias="disruptionAllowance") + disruption_budget: Optional[DisruptionBudget] = Field(default=None, alias="disruptionBudget") device_selection: Optional[RolloutDeviceSelection] = Field(default=None, alias="deviceSelection") success_threshold: Optional[StrictStr] = Field(default=None, description="Percentage is the string format representing percentage string.", alias="successThreshold") - default_update_timeout: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days ", alias="defaultUpdateTimeout") - __properties: ClassVar[List[str]] = ["disruptionAllowance", "deviceSelection", "successThreshold", "defaultUpdateTimeout"] + default_update_timeout: Optional[Annotated[str, Field(strict=True)]] = Field(default='0s', description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: `s` for seconds, `m` for minutes, `h` for hours.", alias="defaultUpdateTimeout") + __properties: ClassVar[List[str]] = ["disruptionBudget", "deviceSelection", "successThreshold", "defaultUpdateTimeout"] @field_validator('default_update_timeout') def default_update_timeout_validate_regular_expression(cls, value): @@ -41,8 +42,8 @@ def default_update_timeout_validate_regular_expression(cls, value): if value is None: return value - if not re.match(r"^[1-9]\d*[smhd]$", value): - raise ValueError(r"must validate the regular expression /^[1-9]\d*[smhd]$/") + if not re.match(r"^(?:[1-9]\d*)?\d[smh]$", value): + raise ValueError(r"must validate the regular expression /^(?:[1-9]\d*)?\d[smh]$/") return value model_config = ConfigDict( @@ -84,9 +85,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # override the default output from pydantic by calling `to_dict()` of disruption_allowance - if self.disruption_allowance: - _dict['disruptionAllowance'] = self.disruption_allowance.to_dict() + # override the default output from pydantic by calling `to_dict()` of disruption_budget + if self.disruption_budget: + _dict['disruptionBudget'] = self.disruption_budget.to_dict() # override the default output from pydantic by calling `to_dict()` of device_selection if self.device_selection: _dict['deviceSelection'] = self.device_selection.to_dict() @@ -102,10 +103,10 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "disruptionAllowance": DisruptionAllowance.from_dict(obj["disruptionAllowance"]) if obj.get("disruptionAllowance") is not None else None, + "disruptionBudget": DisruptionBudget.from_dict(obj["disruptionBudget"]) if obj.get("disruptionBudget") is not None else None, "deviceSelection": RolloutDeviceSelection.from_dict(obj["deviceSelection"]) if obj.get("deviceSelection") is not None else None, "successThreshold": obj.get("successThreshold"), - "defaultUpdateTimeout": obj.get("defaultUpdateTimeout") + "defaultUpdateTimeout": obj.get("defaultUpdateTimeout") if obj.get("defaultUpdateTimeout") is not None else '0s' }) return _obj diff --git a/flightctl/flightctl/models/rollout_strategy.py b/flightctl/flightctl/models/rollout_strategy.py new file mode 100644 index 0000000..eb4603f --- /dev/null +++ b/flightctl/flightctl/models/rollout_strategy.py @@ -0,0 +1,37 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class RolloutStrategy(str, Enum): + """ + The strategy of choice for device selection in rollout policy. + """ + + """ + allowed enum values + """ + BATCHSEQUENCE = 'BatchSequence' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of RolloutStrategy from a JSON string""" + return cls(json.loads(json_str)) + + diff --git a/flightctl/models/ssh_config.py b/flightctl/flightctl/models/ssh_config.py similarity index 83% rename from flightctl/models/ssh_config.py rename to flightctl/flightctl/models/ssh_config.py index eeb7a1b..9d13f1c 100644 --- a/flightctl/models/ssh_config.py +++ b/flightctl/flightctl/models/ssh_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,11 +25,11 @@ class SshConfig(BaseModel): """ - SshConfig + Configuration for SSH transport. """ # noqa: E501 - ssh_private_key: Optional[SecretStr] = Field(default=None, description="Base64 encoded private SSH key", alias="sshPrivateKey") - private_key_passphrase: Optional[SecretStr] = Field(default=None, description="The passphrase for sshPrivateKey", alias="privateKeyPassphrase") - skip_server_verification: Optional[StrictBool] = Field(default=None, description="Skip remote server verification", alias="skipServerVerification") + ssh_private_key: Optional[SecretStr] = Field(default=None, description="Base64 encoded private SSH key.", alias="sshPrivateKey") + private_key_passphrase: Optional[SecretStr] = Field(default=None, description="The passphrase for sshPrivateKey.", alias="privateKeyPassphrase") + skip_server_verification: Optional[StrictBool] = Field(default=None, description="Skip remote server verification.", alias="skipServerVerification") __properties: ClassVar[List[str]] = ["sshPrivateKey", "privateKeyPassphrase", "skipServerVerification"] model_config = ConfigDict( diff --git a/flightctl/models/ssh_repo_spec.py b/flightctl/flightctl/models/ssh_repo_spec.py similarity index 91% rename from flightctl/models/ssh_repo_spec.py rename to flightctl/flightctl/models/ssh_repo_spec.py index 4b7cbd2..fb4f92d 100644 --- a/flightctl/models/ssh_repo_spec.py +++ b/flightctl/flightctl/models/ssh_repo_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,7 +29,7 @@ class SshRepoSpec(BaseModel): """ SshRepoSpec """ # noqa: E501 - url: StrictStr = Field(description="The SSH Git repository URL to clone from") + url: StrictStr = Field(description="The SSH Git repository URL to clone from.") type: RepoSpecType ssh_config: SshConfig = Field(alias="sshConfig") __properties: ClassVar[List[str]] = ["url", "type", "sshConfig"] diff --git a/flightctl/models/status.py b/flightctl/flightctl/models/status.py similarity index 53% rename from flightctl/models/status.py rename to flightctl/flightctl/models/status.py index f907731..7ba3c6c 100644 --- a/flightctl/models/status.py +++ b/flightctl/flightctl/models/status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -17,8 +18,8 @@ import re # noqa: F401 import json -from pydantic import BaseModel, ConfigDict, Field, StrictStr -from typing import Any, ClassVar, Dict, List, Optional +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List from typing import Optional, Set from typing_extensions import Self @@ -26,10 +27,13 @@ class Status(BaseModel): """ Status is a return value for calls that don't return other objects. """ # noqa: E501 - message: Optional[StrictStr] = Field(default=None, description="A human-readable description of the status of this operation.") - reason: Optional[StrictStr] = Field(default=None, description="A machine-readable description of why this operation is in the \"Failure\" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.") - status: Optional[StrictStr] = Field(default=None, description="Status of the operation. One of: \"Success\" or \"Failure\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status") - __properties: ClassVar[List[str]] = ["message", "reason", "status"] + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") + code: StrictInt = Field(description="Suggested HTTP return code for this status, 0 if not set.") + message: StrictStr = Field(description="A human-readable description of the status of this operation.") + reason: StrictStr = Field(description="A machine-readable description of why this operation is in the \"Failure\" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.") + status: StrictStr = Field(description="Status of the operation. One of: \"Success\" or \"Failure\". More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.") + __properties: ClassVar[List[str]] = ["apiVersion", "kind", "code", "message", "reason", "status"] model_config = ConfigDict( populate_by_name=True, @@ -82,6 +86,9 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ + "apiVersion": obj.get("apiVersion"), + "kind": obj.get("kind"), + "code": obj.get("code"), "message": obj.get("message"), "reason": obj.get("reason"), "status": obj.get("status") diff --git a/flightctl/models/template_version.py b/flightctl/flightctl/models/template_version.py similarity index 93% rename from flightctl/models/template_version.py rename to flightctl/flightctl/models/template_version.py index a26a648..a93186c 100644 --- a/flightctl/models/template_version.py +++ b/flightctl/flightctl/models/template_version.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -29,8 +30,8 @@ class TemplateVersion(BaseModel): """ TemplateVersion represents a version of a template. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta spec: TemplateVersionSpec status: Optional[TemplateVersionStatus] = None diff --git a/flightctl/models/template_version_list.py b/flightctl/flightctl/models/template_version_list.py similarity index 93% rename from flightctl/models/template_version_list.py rename to flightctl/flightctl/models/template_version_list.py index b58b85b..c004c3c 100644 --- a/flightctl/models/template_version_list.py +++ b/flightctl/flightctl/models/template_version_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -28,8 +29,8 @@ class TemplateVersionList(BaseModel): """ TemplateVersionList is a list of TemplateVersions. """ # noqa: E501 - api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", alias="apiVersion") - kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds") + api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") + kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ListMeta items: List[TemplateVersion] = Field(description="List of TemplateVersions.") __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "items"] diff --git a/flightctl/models/template_version_spec.py b/flightctl/flightctl/models/template_version_spec.py similarity index 88% rename from flightctl/models/template_version_spec.py rename to flightctl/flightctl/models/template_version_spec.py index 46a2f3b..315e862 100644 --- a/flightctl/models/template_version_spec.py +++ b/flightctl/flightctl/models/template_version_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -24,7 +25,7 @@ class TemplateVersionSpec(BaseModel): """ - TemplateVersionSpec + TemplateVersionSpec describes a version of a device template. """ # noqa: E501 fleet: StrictStr = Field(description="The fleet whose template this refers to.") __properties: ClassVar[List[str]] = ["fleet"] diff --git a/flightctl/models/template_version_status.py b/flightctl/flightctl/models/template_version_status.py similarity index 64% rename from flightctl/models/template_version_status.py rename to flightctl/flightctl/models/template_version_status.py index da1ca4c..d919dfb 100644 --- a/flightctl/models/template_version_status.py +++ b/flightctl/flightctl/models/template_version_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -20,29 +21,33 @@ from datetime import datetime from pydantic import BaseModel, ConfigDict, Field from typing import Any, ClassVar, Dict, List, Optional -from flightctl.models.application_spec import ApplicationSpec +from flightctl.models.application_provider_spec import ApplicationProviderSpec from flightctl.models.condition import Condition from flightctl.models.config_provider_spec import ConfigProviderSpec -from flightctl.models.device_hooks_spec import DeviceHooksSpec -from flightctl.models.device_os_spec import DeviceOSSpec +from flightctl.models.device_console import DeviceConsole +from flightctl.models.device_decommission import DeviceDecommission +from flightctl.models.device_os_spec import DeviceOsSpec from flightctl.models.device_spec_systemd import DeviceSpecSystemd +from flightctl.models.device_update_policy_spec import DeviceUpdatePolicySpec from flightctl.models.resource_monitor import ResourceMonitor from typing import Optional, Set from typing_extensions import Self class TemplateVersionStatus(BaseModel): """ - TemplateVersionStatus + TemplateVersionStatus represents information about the status of a template version. """ # noqa: E501 - os: Optional[DeviceOSSpec] = None + update_policy: Optional[DeviceUpdatePolicySpec] = Field(default=None, alias="updatePolicy") + os: Optional[DeviceOsSpec] = None config: Optional[List[ConfigProviderSpec]] = Field(default=None, description="List of config providers.") - hooks: Optional[DeviceHooksSpec] = None - applications: Optional[List[ApplicationSpec]] = Field(default=None, description="List of applications.") + applications: Optional[List[ApplicationProviderSpec]] = Field(default=None, description="List of application providers.") systemd: Optional[DeviceSpecSystemd] = None resources: Optional[List[ResourceMonitor]] = Field(default=None, description="Array of resource monitor configurations.") - updated_at: Optional[datetime] = Field(default=None, alias="updatedAt") - conditions: Optional[List[Condition]] = Field(default=None, description="Current state of the device.") - __properties: ClassVar[List[str]] = ["os", "config", "hooks", "applications", "systemd", "resources", "updatedAt", "conditions"] + consoles: Optional[List[DeviceConsole]] = Field(default=None, description="The list of active console sessions.") + decommissioning: Optional[DeviceDecommission] = None + updated_at: Optional[datetime] = Field(default=None, description="The time at which the template was last updated.", alias="updatedAt") + conditions: List[Condition] = Field(description="Current state of the device.") + __properties: ClassVar[List[str]] = ["updatePolicy", "os", "config", "applications", "systemd", "resources", "consoles", "decommissioning", "updatedAt", "conditions"] model_config = ConfigDict( populate_by_name=True, @@ -83,6 +88,9 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # override the default output from pydantic by calling `to_dict()` of update_policy + if self.update_policy: + _dict['updatePolicy'] = self.update_policy.to_dict() # override the default output from pydantic by calling `to_dict()` of os if self.os: _dict['os'] = self.os.to_dict() @@ -93,9 +101,6 @@ def to_dict(self) -> Dict[str, Any]: if _item_config: _items.append(_item_config.to_dict()) _dict['config'] = _items - # override the default output from pydantic by calling `to_dict()` of hooks - if self.hooks: - _dict['hooks'] = self.hooks.to_dict() # override the default output from pydantic by calling `to_dict()` of each item in applications (list) _items = [] if self.applications: @@ -113,6 +118,16 @@ def to_dict(self) -> Dict[str, Any]: if _item_resources: _items.append(_item_resources.to_dict()) _dict['resources'] = _items + # override the default output from pydantic by calling `to_dict()` of each item in consoles (list) + _items = [] + if self.consoles: + for _item_consoles in self.consoles: + if _item_consoles: + _items.append(_item_consoles.to_dict()) + _dict['consoles'] = _items + # override the default output from pydantic by calling `to_dict()` of decommissioning + if self.decommissioning: + _dict['decommissioning'] = self.decommissioning.to_dict() # override the default output from pydantic by calling `to_dict()` of each item in conditions (list) _items = [] if self.conditions: @@ -132,12 +147,14 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "os": DeviceOSSpec.from_dict(obj["os"]) if obj.get("os") is not None else None, + "updatePolicy": DeviceUpdatePolicySpec.from_dict(obj["updatePolicy"]) if obj.get("updatePolicy") is not None else None, + "os": DeviceOsSpec.from_dict(obj["os"]) if obj.get("os") is not None else None, "config": [ConfigProviderSpec.from_dict(_item) for _item in obj["config"]] if obj.get("config") is not None else None, - "hooks": DeviceHooksSpec.from_dict(obj["hooks"]) if obj.get("hooks") is not None else None, - "applications": [ApplicationSpec.from_dict(_item) for _item in obj["applications"]] if obj.get("applications") is not None else None, + "applications": [ApplicationProviderSpec.from_dict(_item) for _item in obj["applications"]] if obj.get("applications") is not None else None, "systemd": DeviceSpecSystemd.from_dict(obj["systemd"]) if obj.get("systemd") is not None else None, "resources": [ResourceMonitor.from_dict(_item) for _item in obj["resources"]] if obj.get("resources") is not None else None, + "consoles": [DeviceConsole.from_dict(_item) for _item in obj["consoles"]] if obj.get("consoles") is not None else None, + "decommissioning": DeviceDecommission.from_dict(obj["decommissioning"]) if obj.get("decommissioning") is not None else None, "updatedAt": obj.get("updatedAt"), "conditions": [Condition.from_dict(_item) for _item in obj["conditions"]] if obj.get("conditions") is not None else None }) diff --git a/flightctl/flightctl/models/update_schedule.py b/flightctl/flightctl/models/update_schedule.py new file mode 100644 index 0000000..47ea7ad --- /dev/null +++ b/flightctl/flightctl/models/update_schedule.py @@ -0,0 +1,103 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator +from typing import Any, ClassVar, Dict, List, Optional +from typing_extensions import Annotated +from typing import Optional, Set +from typing_extensions import Self + +class UpdateSchedule(BaseModel): + """ + Defines the schedule for automatic downloading and updates, including timing and optional timeout. + """ # noqa: E501 + time_zone: Optional[StrictStr] = Field(default='Local', description="Time zone identifiers follow the IANA format AREA/LOCATION, where AREA represents a continent or ocean, and LOCATION specifies a particular site within that area, for example America/New_York, Europe/Paris. Only unambiguous 3-character time zones are supported (\"GMT\", \"UTC\").", alias="timeZone") + at: StrictStr = Field(description="Cron expression format for scheduling times. The format is `* * * * *`: - Minutes: `*` matches 0-59. - Hours: `*` matches 0-23. - Day of Month: `*` matches 1-31. - Month: `*` matches 1-12. - Day of Week: `*` matches 0-6. Supported operators: - `*`: Matches any value (e.g., `*` in hours matches every hour). - `-`: Range (e.g., `0-8` for 12 AM to 8 AM). - `,`: List (e.g., `1,12` for 1st and 12th minute). - `/`: Step (e.g., `*/12` for every 12th minute). - Single value (e.g., `8` matches the 8th minute). Example: `* 0-8,16-23 * * *`.") + start_grace_duration: Optional[Annotated[str, Field(strict=True)]] = Field(default='0s', description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: `s` for seconds, `m` for minutes, `h` for hours.", alias="startGraceDuration") + __properties: ClassVar[List[str]] = ["timeZone", "at", "startGraceDuration"] + + @field_validator('start_grace_duration') + def start_grace_duration_validate_regular_expression(cls, value): + """Validates the regular expression""" + if value is None: + return value + + if not re.match(r"^(?:[1-9]\d*)?\d[smh]$", value): + raise ValueError(r"must validate the regular expression /^(?:[1-9]\d*)?\d[smh]$/") + return value + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return json.dumps(self.to_dict()) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of UpdateSchedule from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of UpdateSchedule from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "timeZone": obj.get("timeZone") if obj.get("timeZone") is not None else 'Local', + "at": obj.get("at"), + "startGraceDuration": obj.get("startGraceDuration") if obj.get("startGraceDuration") is not None else '0s' + }) + return _obj + + diff --git a/flightctl/models/error.py b/flightctl/flightctl/models/version.py similarity index 78% rename from flightctl/models/error.py rename to flightctl/flightctl/models/version.py index 346c870..4cf3bc2 100644 --- a/flightctl/models/error.py +++ b/flightctl/flightctl/models/version.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -22,12 +23,12 @@ from typing import Optional, Set from typing_extensions import Self -class Error(BaseModel): +class Version(BaseModel): """ - Error + Version """ # noqa: E501 - message: StrictStr = Field(description="Error message") - __properties: ClassVar[List[str]] = ["message"] + version: StrictStr = Field(description="Git version of the service.") + __properties: ClassVar[List[str]] = ["version"] model_config = ConfigDict( populate_by_name=True, @@ -47,7 +48,7 @@ def to_json(self) -> str: @classmethod def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of Error from a JSON string""" + """Create an instance of Version from a JSON string""" return cls.from_dict(json.loads(json_str)) def to_dict(self) -> Dict[str, Any]: @@ -72,7 +73,7 @@ def to_dict(self) -> Dict[str, Any]: @classmethod def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of Error from a dict""" + """Create an instance of Version from a dict""" if obj is None: return None @@ -80,7 +81,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: return cls.model_validate(obj) _obj = cls.model_validate({ - "message": obj.get("message") + "version": obj.get("version") }) return _obj diff --git a/flightctl/py.typed b/flightctl/flightctl/py.typed similarity index 100% rename from flightctl/py.typed rename to flightctl/flightctl/py.typed diff --git a/flightctl/rest.py b/flightctl/flightctl/rest.py similarity index 97% rename from flightctl/rest.py rename to flightctl/flightctl/rest.py index c3f8418..404aace 100644 --- a/flightctl/rest.py +++ b/flightctl/flightctl/rest.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/flightctl/models/device_hooks_spec.py b/flightctl/models/device_hooks_spec.py deleted file mode 100644 index 8f5318a..0000000 --- a/flightctl/models/device_hooks_spec.py +++ /dev/null @@ -1,123 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict, Field -from typing import Any, ClassVar, Dict, List, Optional -from flightctl.models.device_reboot_hook_spec import DeviceRebootHookSpec -from flightctl.models.device_update_hook_spec import DeviceUpdateHookSpec -from typing import Optional, Set -from typing_extensions import Self - -class DeviceHooksSpec(BaseModel): - """ - DeviceHooksSpec - """ # noqa: E501 - before_updating: Optional[List[DeviceUpdateHookSpec]] = Field(default=None, description="Hooks executed before updating allow for custom actions and integration with other systems or services. These actions occur before configuration changes are applied to the device. ", alias="beforeUpdating") - after_updating: Optional[List[DeviceUpdateHookSpec]] = Field(default=None, description="Hooks executed after updating enable custom actions and integration with other systems or services. These actions occur after configuration changes have been applied to the device. ", alias="afterUpdating") - before_rebooting: Optional[List[DeviceRebootHookSpec]] = Field(default=None, description="Hooks executed before rebooting allow for custom actions and integration with other systems or services. These actions occur before the device is rebooted. ", alias="beforeRebooting") - after_rebooting: Optional[List[DeviceRebootHookSpec]] = Field(default=None, description="Hooks executed after rebooting enable custom actions and integration with other systems or services. These actions occur after the device has rebooted, allowing for post-reboot tasks. ", alias="afterRebooting") - __properties: ClassVar[List[str]] = ["beforeUpdating", "afterUpdating", "beforeRebooting", "afterRebooting"] - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceHooksSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each item in before_updating (list) - _items = [] - if self.before_updating: - for _item_before_updating in self.before_updating: - if _item_before_updating: - _items.append(_item_before_updating.to_dict()) - _dict['beforeUpdating'] = _items - # override the default output from pydantic by calling `to_dict()` of each item in after_updating (list) - _items = [] - if self.after_updating: - for _item_after_updating in self.after_updating: - if _item_after_updating: - _items.append(_item_after_updating.to_dict()) - _dict['afterUpdating'] = _items - # override the default output from pydantic by calling `to_dict()` of each item in before_rebooting (list) - _items = [] - if self.before_rebooting: - for _item_before_rebooting in self.before_rebooting: - if _item_before_rebooting: - _items.append(_item_before_rebooting.to_dict()) - _dict['beforeRebooting'] = _items - # override the default output from pydantic by calling `to_dict()` of each item in after_rebooting (list) - _items = [] - if self.after_rebooting: - for _item_after_rebooting in self.after_rebooting: - if _item_after_rebooting: - _items.append(_item_after_rebooting.to_dict()) - _dict['afterRebooting'] = _items - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceHooksSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "beforeUpdating": [DeviceUpdateHookSpec.from_dict(_item) for _item in obj["beforeUpdating"]] if obj.get("beforeUpdating") is not None else None, - "afterUpdating": [DeviceUpdateHookSpec.from_dict(_item) for _item in obj["afterUpdating"]] if obj.get("afterUpdating") is not None else None, - "beforeRebooting": [DeviceRebootHookSpec.from_dict(_item) for _item in obj["beforeRebooting"]] if obj.get("beforeRebooting") is not None else None, - "afterRebooting": [DeviceRebootHookSpec.from_dict(_item) for _item in obj["afterRebooting"]] if obj.get("afterRebooting") is not None else None - }) - return _obj - - diff --git a/flightctl/models/device_integrity_status.py b/flightctl/models/device_integrity_status.py deleted file mode 100644 index 66010de..0000000 --- a/flightctl/models/device_integrity_status.py +++ /dev/null @@ -1,91 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict -from typing import Any, ClassVar, Dict, List -from flightctl.models.device_integrity_status_summary import DeviceIntegrityStatusSummary -from typing import Optional, Set -from typing_extensions import Self - -class DeviceIntegrityStatus(BaseModel): - """ - DeviceIntegrityStatus - """ # noqa: E501 - summary: DeviceIntegrityStatusSummary - __properties: ClassVar[List[str]] = ["summary"] - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceIntegrityStatus from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of summary - if self.summary: - _dict['summary'] = self.summary.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceIntegrityStatus from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "summary": DeviceIntegrityStatusSummary.from_dict(obj["summary"]) if obj.get("summary") is not None else None - }) - return _obj - - diff --git a/flightctl/models/device_update_hook_spec.py b/flightctl/models/device_update_hook_spec.py deleted file mode 100644 index 615e2a0..0000000 --- a/flightctl/models/device_update_hook_spec.py +++ /dev/null @@ -1,104 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict, Field, StrictStr -from typing import Any, ClassVar, Dict, List, Optional -from flightctl.models.file_operation import FileOperation -from flightctl.models.hook_action import HookAction -from typing import Optional, Set -from typing_extensions import Self - -class DeviceUpdateHookSpec(BaseModel): - """ - DeviceUpdateHookSpec - """ # noqa: E501 - name: Optional[StrictStr] = None - description: Optional[StrictStr] = None - actions: List[HookAction] = Field(description="The actions to take when the specified file operations are observed. Each action is executed in the order they are defined.") - on_file: Optional[List[FileOperation]] = Field(default=None, alias="onFile") - path: Optional[StrictStr] = Field(default=None, description="The path to monitor for changes in configuration files. This path can point to either a specific file or an entire directory.") - __properties: ClassVar[List[str]] = ["name", "description", "actions", "onFile", "path"] - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of DeviceUpdateHookSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of each item in actions (list) - _items = [] - if self.actions: - for _item_actions in self.actions: - if _item_actions: - _items.append(_item_actions.to_dict()) - _dict['actions'] = _items - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of DeviceUpdateHookSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "name": obj.get("name"), - "description": obj.get("description"), - "actions": [HookAction.from_dict(_item) for _item in obj["actions"]] if obj.get("actions") is not None else None, - "onFile": obj.get("onFile"), - "path": obj.get("path") - }) - return _obj - - diff --git a/flightctl/models/hook_action_one_of.py b/flightctl/models/hook_action_one_of.py deleted file mode 100644 index 4dd929f..0000000 --- a/flightctl/models/hook_action_one_of.py +++ /dev/null @@ -1,91 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict -from typing import Any, ClassVar, Dict, List -from flightctl.models.hook_action_executable_spec import HookActionExecutableSpec -from typing import Optional, Set -from typing_extensions import Self - -class HookActionOneOf(BaseModel): - """ - HookActionOneOf - """ # noqa: E501 - executable: HookActionExecutableSpec - __properties: ClassVar[List[str]] = ["executable"] - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionOneOf from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of executable - if self.executable: - _dict['executable'] = self.executable.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionOneOf from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "executable": HookActionExecutableSpec.from_dict(obj["executable"]) if obj.get("executable") is not None else None - }) - return _obj - - diff --git a/flightctl/models/hook_action_one_of1.py b/flightctl/models/hook_action_one_of1.py deleted file mode 100644 index 413bf62..0000000 --- a/flightctl/models/hook_action_one_of1.py +++ /dev/null @@ -1,91 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict -from typing import Any, ClassVar, Dict, List -from flightctl.models.hook_action_systemd_spec import HookActionSystemdSpec -from typing import Optional, Set -from typing_extensions import Self - -class HookActionOneOf1(BaseModel): - """ - HookActionOneOf1 - """ # noqa: E501 - systemd: HookActionSystemdSpec - __properties: ClassVar[List[str]] = ["systemd"] - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionOneOf1 from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of systemd - if self.systemd: - _dict['systemd'] = self.systemd.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionOneOf1 from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "systemd": HookActionSystemdSpec.from_dict(obj["systemd"]) if obj.get("systemd") is not None else None - }) - return _obj - - diff --git a/flightctl/models/hook_action_spec.py b/flightctl/models/hook_action_spec.py deleted file mode 100644 index 03c2660..0000000 --- a/flightctl/models/hook_action_spec.py +++ /dev/null @@ -1,98 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict, Field, field_validator -from typing import Any, ClassVar, Dict, List, Optional -from typing_extensions import Annotated -from typing import Optional, Set -from typing_extensions import Self - -class HookActionSpec(BaseModel): - """ - HookActionSpec - """ # noqa: E501 - timeout: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days ") - __properties: ClassVar[List[str]] = ["timeout"] - - @field_validator('timeout') - def timeout_validate_regular_expression(cls, value): - """Validates the regular expression""" - if value is None: - return value - - if not re.match(r"^[1-9]\d*[smhd]$", value): - raise ValueError(r"must validate the regular expression /^[1-9]\d*[smhd]$/") - return value - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "timeout": obj.get("timeout") - }) - return _obj - - diff --git a/flightctl/models/hook_action_systemd_spec.py b/flightctl/models/hook_action_systemd_spec.py deleted file mode 100644 index ec6d56e..0000000 --- a/flightctl/models/hook_action_systemd_spec.py +++ /dev/null @@ -1,104 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict, Field, field_validator -from typing import Any, ClassVar, Dict, List, Optional -from typing_extensions import Annotated -from flightctl.models.hook_action_systemd_unit import HookActionSystemdUnit -from typing import Optional, Set -from typing_extensions import Self - -class HookActionSystemdSpec(BaseModel): - """ - HookActionSystemdSpec - """ # noqa: E501 - timeout: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The maximum duration allowed for the action to complete. The duration should be specified as a positive integer followed by a time unit. Supported time units are: - 's' for seconds - 'm' for minutes - 'h' for hours - 'd' for days ") - unit: HookActionSystemdUnit - __properties: ClassVar[List[str]] = ["timeout", "unit"] - - @field_validator('timeout') - def timeout_validate_regular_expression(cls, value): - """Validates the regular expression""" - if value is None: - return value - - if not re.match(r"^[1-9]\d*[smhd]$", value): - raise ValueError(r"must validate the regular expression /^[1-9]\d*[smhd]$/") - return value - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionSystemdSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of unit - if self.unit: - _dict['unit'] = self.unit.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionSystemdSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "timeout": obj.get("timeout"), - "unit": HookActionSystemdUnit.from_dict(obj["unit"]) if obj.get("unit") is not None else None - }) - return _obj - - diff --git a/flightctl/models/hook_action_systemd_unit.py b/flightctl/models/hook_action_systemd_unit.py deleted file mode 100644 index 8156180..0000000 --- a/flightctl/models/hook_action_systemd_unit.py +++ /dev/null @@ -1,99 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator -from typing import Any, ClassVar, Dict, List, Optional -from typing import Optional, Set -from typing_extensions import Self - -class HookActionSystemdUnit(BaseModel): - """ - HookActionSystemdUnit - """ # noqa: E501 - name: StrictStr = Field(description="The name of the systemd unit on which the specified operations will be performed. This should be the exact name of the unit file, such as example.service. If the name is not populated the name will be auto discovered from the file path.") - operations: List[StrictStr] = Field(description="The specific systemd operations to perform on the specified unit.") - work_dir: Optional[StrictStr] = Field(default=None, description="The directory in which the executable will be run from if it is left empty it will run from the users home directory.", alias="workDir") - __properties: ClassVar[List[str]] = ["name", "operations", "workDir"] - - @field_validator('operations') - def operations_validate_enum(cls, value): - """Validates the enum""" - for i in value: - if i not in set(['Enable', 'Disable', 'Start', 'Stop', 'Restart', 'Reload', 'DaemonReload']): - raise ValueError("each list item must be one of ('Enable', 'Disable', 'Start', 'Stop', 'Restart', 'Reload', 'DaemonReload')") - return value - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of HookActionSystemdUnit from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of HookActionSystemdUnit from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "name": obj.get("name"), - "operations": obj.get("operations"), - "workDir": obj.get("workDir") - }) - return _obj - - diff --git a/flightctl/models/rendered_device_spec.py b/flightctl/models/rendered_device_spec.py deleted file mode 100644 index afd7f3a..0000000 --- a/flightctl/models/rendered_device_spec.py +++ /dev/null @@ -1,133 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import pprint -import re # noqa: F401 -import json - -from pydantic import BaseModel, ConfigDict, Field, StrictStr -from typing import Any, ClassVar, Dict, List, Optional -from flightctl.models.device_console import DeviceConsole -from flightctl.models.device_hooks_spec import DeviceHooksSpec -from flightctl.models.device_os_spec import DeviceOSSpec -from flightctl.models.rendered_application_spec import RenderedApplicationSpec -from flightctl.models.rendered_device_spec_systemd import RenderedDeviceSpecSystemd -from flightctl.models.resource_monitor import ResourceMonitor -from typing import Optional, Set -from typing_extensions import Self - -class RenderedDeviceSpec(BaseModel): - """ - RenderedDeviceSpec - """ # noqa: E501 - rendered_version: StrictStr = Field(alias="renderedVersion") - os: Optional[DeviceOSSpec] = None - config: Optional[StrictStr] = None - applications: Optional[List[RenderedApplicationSpec]] = None - hooks: Optional[DeviceHooksSpec] = None - systemd: Optional[RenderedDeviceSpecSystemd] = None - resources: Optional[List[ResourceMonitor]] = Field(default=None, description="Array of resource monitor configurations.") - console: Optional[DeviceConsole] = None - __properties: ClassVar[List[str]] = ["renderedVersion", "os", "config", "applications", "hooks", "systemd", "resources", "console"] - - model_config = ConfigDict( - populate_by_name=True, - validate_assignment=True, - protected_namespaces=(), - ) - - - def to_str(self) -> str: - """Returns the string representation of the model using alias""" - return pprint.pformat(self.model_dump(by_alias=True)) - - def to_json(self) -> str: - """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) - - @classmethod - def from_json(cls, json_str: str) -> Optional[Self]: - """Create an instance of RenderedDeviceSpec from a JSON string""" - return cls.from_dict(json.loads(json_str)) - - def to_dict(self) -> Dict[str, Any]: - """Return the dictionary representation of the model using alias. - - This has the following differences from calling pydantic's - `self.model_dump(by_alias=True)`: - - * `None` is only added to the output dict for nullable fields that - were set at model initialization. Other fields with value `None` - are ignored. - """ - excluded_fields: Set[str] = set([ - ]) - - _dict = self.model_dump( - by_alias=True, - exclude=excluded_fields, - exclude_none=True, - ) - # override the default output from pydantic by calling `to_dict()` of os - if self.os: - _dict['os'] = self.os.to_dict() - # override the default output from pydantic by calling `to_dict()` of each item in applications (list) - _items = [] - if self.applications: - for _item_applications in self.applications: - if _item_applications: - _items.append(_item_applications.to_dict()) - _dict['applications'] = _items - # override the default output from pydantic by calling `to_dict()` of hooks - if self.hooks: - _dict['hooks'] = self.hooks.to_dict() - # override the default output from pydantic by calling `to_dict()` of systemd - if self.systemd: - _dict['systemd'] = self.systemd.to_dict() - # override the default output from pydantic by calling `to_dict()` of each item in resources (list) - _items = [] - if self.resources: - for _item_resources in self.resources: - if _item_resources: - _items.append(_item_resources.to_dict()) - _dict['resources'] = _items - # override the default output from pydantic by calling `to_dict()` of console - if self.console: - _dict['console'] = self.console.to_dict() - return _dict - - @classmethod - def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: - """Create an instance of RenderedDeviceSpec from a dict""" - if obj is None: - return None - - if not isinstance(obj, dict): - return cls.model_validate(obj) - - _obj = cls.model_validate({ - "renderedVersion": obj.get("renderedVersion"), - "os": DeviceOSSpec.from_dict(obj["os"]) if obj.get("os") is not None else None, - "config": obj.get("config"), - "applications": [RenderedApplicationSpec.from_dict(_item) for _item in obj["applications"]] if obj.get("applications") is not None else None, - "hooks": DeviceHooksSpec.from_dict(obj["hooks"]) if obj.get("hooks") is not None else None, - "systemd": RenderedDeviceSpecSystemd.from_dict(obj["systemd"]) if obj.get("systemd") is not None else None, - "resources": [ResourceMonitor.from_dict(_item) for _item in obj["resources"]] if obj.get("resources") is not None else None, - "console": DeviceConsole.from_dict(obj["console"]) if obj.get("console") is not None else None - }) - return _obj - - diff --git a/flightctl/models/sort_order.py b/flightctl/models/sort_order.py deleted file mode 100644 index bece02b..0000000 --- a/flightctl/models/sort_order.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -import json -from enum import Enum -from typing_extensions import Self - - -class SortOrder(str, Enum): - """ - Specifies the sort order. - """ - - """ - allowed enum values - """ - ASC = 'Asc' - DESC = 'Desc' - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Create an instance of SortOrder from a JSON string""" - return cls(json.loads(json_str)) - - diff --git a/pyproject.toml b/pyproject.toml index ed67c3c..536d9eb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,18 +1,18 @@ [tool.poetry] name = "flightctl" version = "1.0.0" -description = "Open Device Management API" -authors = ["OpenAPI Generator Community "] +description = "Flight Control API" +authors = ["The Flight Control Team "] license = "Apache 2.0" readme = "README.md" -repository = "https://github.com/flightctl/python-client" -keywords = ["OpenAPI", "OpenAPI-Generator", "Open Device Management API"] +repository = "https://github.com/GIT_USER_ID/GIT_REPO_ID" +keywords = ["OpenAPI", "OpenAPI-Generator", "Flight Control API"] include = ["flightctl/py.typed"] [tool.poetry.dependencies] python = "^3.8" -urllib3 = ">= 1.25.3 < 3.0.0" +urllib3 = ">= 1.25.3, < 3.0.0" python-dateutil = ">= 2.8.2" pydantic = ">= 2" typing-extensions = ">= 4.7.1" diff --git a/setup.py b/setup.py index cd6b374..07d57fa 100644 --- a/setup.py +++ b/setup.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -33,18 +34,18 @@ setup( name=NAME, version=VERSION, - description="Open Device Management API", - author="OpenAPI Generator community", - author_email="team@openapitools.org", + description="Flight Control API", + author="The Flight Control Team", + author_email="team@flightctl.io", url="", - keywords=["OpenAPI", "OpenAPI-Generator", "Open Device Management API"], + keywords=["OpenAPI", "OpenAPI-Generator", "Flight Control API"], install_requires=REQUIRES, packages=find_packages(exclude=["test", "tests"]), include_package_data=True, license="Apache 2.0", long_description_content_type='text/markdown', long_description="""\ - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. """, # noqa: E501 package_data={"flightctl": ["py.typed"]}, -) +) \ No newline at end of file diff --git a/test/test_application_env_vars.py b/test/test_application_env_vars.py index 65f9a60..00d5b80 100644 --- a/test/test_application_env_vars.py +++ b/test/test_application_env_vars.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_application_spec.py b/test/test_application_provider_spec.py similarity index 51% rename from test/test_application_spec.py rename to test/test_application_provider_spec.py index 377b941..bdd1995 100644 --- a/test/test_application_spec.py +++ b/test/test_application_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -14,10 +15,10 @@ import unittest -from flightctl.models.application_spec import ApplicationSpec +from flightctl.models.application_provider_spec import ApplicationProviderSpec -class TestApplicationSpec(unittest.TestCase): - """ApplicationSpec unit test stubs""" +class TestApplicationProviderSpec(unittest.TestCase): + """ApplicationProviderSpec unit test stubs""" def setUp(self): pass @@ -25,16 +26,16 @@ def setUp(self): def tearDown(self): pass - def make_instance(self, include_optional) -> ApplicationSpec: - """Test ApplicationSpec + def make_instance(self, include_optional) -> ApplicationProviderSpec: + """Test ApplicationProviderSpec include_optional is a boolean, when False only required params are included, when True both required and optional params are included """ - # uncomment below to create an instance of `ApplicationSpec` + # uncomment below to create an instance of `ApplicationProviderSpec` """ - model = ApplicationSpec() + model = ApplicationProviderSpec() if include_optional: - return ApplicationSpec( + return ApplicationProviderSpec( env_vars = { 'key' : '' }, @@ -42,13 +43,13 @@ def make_instance(self, include_optional) -> ApplicationSpec: image = '' ) else: - return ApplicationSpec( + return ApplicationProviderSpec( image = '', ) """ - def testApplicationSpec(self): - """Test ApplicationSpec""" + def testApplicationProviderSpec(self): + """Test ApplicationProviderSpec""" # inst_req_only = self.make_instance(include_optional=False) # inst_req_and_optional = self.make_instance(include_optional=True) diff --git a/test/test_application_status_type.py b/test/test_application_status_type.py index c3ce0b5..466d924 100644 --- a/test/test_application_status_type.py +++ b/test/test_application_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_applications_summary_status_type.py b/test/test_applications_summary_status_type.py index fd98b98..eb6f146 100644 --- a/test/test_applications_summary_status_type.py +++ b/test/test_applications_summary_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_auth_config.py b/test/test_auth_config.py index 2ac3183..d08b758 100644 --- a/test/test_auth_config.py +++ b/test/test_auth_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_authentication_api.py b/test/test_authentication_api.py new file mode 100644 index 0000000..8592041 --- /dev/null +++ b/test/test_authentication_api.py @@ -0,0 +1,44 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.api.authentication_api import AuthenticationApi + + +class TestAuthenticationApi(unittest.TestCase): + """AuthenticationApi unit test stubs""" + + def setUp(self) -> None: + self.api = AuthenticationApi() + + def tearDown(self) -> None: + pass + + def test_auth_config(self) -> None: + """Test case for auth_config + + """ + pass + + def test_auth_validate(self) -> None: + """Test case for auth_validate + + """ + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_batch.py b/test/test_batch.py index 139cf53..4a39338 100644 --- a/test/test_batch.py +++ b/test/test_batch.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_batch_limit.py b/test/test_batch_limit.py index 0f18823..070fba9 100644 --- a/test/test_batch_limit.py +++ b/test/test_batch_limit.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_batch_sequence.py b/test/test_batch_sequence.py index 5d3666e..1a10987 100644 --- a/test/test_batch_sequence.py +++ b/test/test_batch_sequence.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,6 +36,7 @@ def make_instance(self, include_optional) -> BatchSequence: model = BatchSequence() if include_optional: return BatchSequence( + strategy = 'BatchSequence', sequence = [ flightctl.models.batch.Batch( selector = flightctl.models.label_selector.LabelSelector( @@ -55,6 +57,7 @@ def make_instance(self, include_optional) -> BatchSequence: ) else: return BatchSequence( + strategy = 'BatchSequence', ) """ diff --git a/test/test_certificate_signing_request.py b/test/test_certificate_signing_request.py index 029c77a..148e95b 100644 --- a/test/test_certificate_signing_request.py +++ b/test/test_certificate_signing_request.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -67,7 +68,13 @@ def make_instance(self, include_optional) -> CertificateSigningRequest: status = flightctl.models.certificate_signing_request_status.CertificateSigningRequestStatus( certificate = 'YQ==', conditions = [ - null + flightctl.models.condition.Condition( + type = 'Approved', + status = 'True', + observed_generation = 56, + last_transition_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + message = '', + reason = '', ) ], ) ) else: diff --git a/test/test_certificate_signing_request_list.py b/test/test_certificate_signing_request_list.py index 0668d9b..63279fc 100644 --- a/test/test_certificate_signing_request_list.py +++ b/test/test_certificate_signing_request_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -74,7 +75,13 @@ def make_instance(self, include_optional) -> CertificateSigningRequestList: status = flightctl.models.certificate_signing_request_status.CertificateSigningRequestStatus( certificate = 'YQ==', conditions = [ - null + flightctl.models.condition.Condition( + type = 'Approved', + status = 'True', + observed_generation = 56, + last_transition_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + message = '', + reason = '', ) ], ), ) ] ) @@ -119,7 +126,13 @@ def make_instance(self, include_optional) -> CertificateSigningRequestList: status = flightctl.models.certificate_signing_request_status.CertificateSigningRequestStatus( certificate = 'YQ==', conditions = [ - null + flightctl.models.condition.Condition( + type = 'Approved', + status = 'True', + observed_generation = 56, + last_transition_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + message = '', + reason = '', ) ], ), ) ], ) diff --git a/test/test_certificate_signing_request_spec.py b/test/test_certificate_signing_request_spec.py index c316f16..fac1f1b 100644 --- a/test/test_certificate_signing_request_spec.py +++ b/test/test_certificate_signing_request_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -51,6 +52,7 @@ def make_instance(self, include_optional) -> CertificateSigningRequestSpec: ) else: return CertificateSigningRequestSpec( + request = 'YQ==', signer_name = '', ) """ diff --git a/test/test_certificate_signing_request_status.py b/test/test_certificate_signing_request_status.py index 2d83989..888d22b 100644 --- a/test/test_certificate_signing_request_status.py +++ b/test/test_certificate_signing_request_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -37,13 +38,25 @@ def make_instance(self, include_optional) -> CertificateSigningRequestStatus: return CertificateSigningRequestStatus( certificate = 'YQ==', conditions = [ - null + flightctl.models.condition.Condition( + type = 'Approved', + status = 'True', + observed_generation = 56, + last_transition_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + message = '', + reason = '', ) ] ) else: return CertificateSigningRequestStatus( conditions = [ - null + flightctl.models.condition.Condition( + type = 'Approved', + status = 'True', + observed_generation = 56, + last_transition_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + message = '', + reason = '', ) ], ) """ diff --git a/test/test_certificatesigningrequest_api.py b/test/test_certificatesigningrequest_api.py index 39f796c..53d5ec6 100644 --- a/test/test_certificatesigningrequest_api.py +++ b/test/test_certificatesigningrequest_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -68,6 +69,12 @@ def test_replace_certificate_signing_request(self) -> None: """ pass + def test_update_certificate_signing_request_approval(self) -> None: + """Test case for update_certificate_signing_request_approval + + """ + pass + if __name__ == '__main__': unittest.main() diff --git a/test/test_condition.py b/test/test_condition.py index cb0277e..39a0f14 100644 --- a/test/test_condition.py +++ b/test/test_condition.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_condition_status.py b/test/test_condition_status.py index f6195db..a2c64c0 100644 --- a/test/test_condition_status.py +++ b/test/test_condition_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_condition_type.py b/test/test_condition_type.py index 03eb16c..6d90a97 100644 --- a/test/test_condition_type.py +++ b/test/test_condition_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_config_provider_spec.py b/test/test_config_provider_spec.py index ea97efd..fe48f1b 100644 --- a/test/test_config_provider_spec.py +++ b/test/test_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_cpu_resource_monitor_spec.py b/test/test_cpu_resource_monitor_spec.py index a23bf29..50f3aeb 100644 --- a/test/test_cpu_resource_monitor_spec.py +++ b/test/test_cpu_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -14,10 +15,10 @@ import unittest -from flightctl.models.cpu_resource_monitor_spec import CPUResourceMonitorSpec +from flightctl.models.cpu_resource_monitor_spec import CpuResourceMonitorSpec -class TestCPUResourceMonitorSpec(unittest.TestCase): - """CPUResourceMonitorSpec unit test stubs""" +class TestCpuResourceMonitorSpec(unittest.TestCase): + """CpuResourceMonitorSpec unit test stubs""" def setUp(self): pass @@ -25,16 +26,16 @@ def setUp(self): def tearDown(self): pass - def make_instance(self, include_optional) -> CPUResourceMonitorSpec: - """Test CPUResourceMonitorSpec + def make_instance(self, include_optional) -> CpuResourceMonitorSpec: + """Test CpuResourceMonitorSpec include_optional is a boolean, when False only required params are included, when True both required and optional params are included """ - # uncomment below to create an instance of `CPUResourceMonitorSpec` + # uncomment below to create an instance of `CpuResourceMonitorSpec` """ - model = CPUResourceMonitorSpec() + model = CpuResourceMonitorSpec() if include_optional: - return CPUResourceMonitorSpec( + return CpuResourceMonitorSpec( monitor_type = '', alert_rules = [ flightctl.models.resource_alert_rule.ResourceAlertRule( @@ -46,7 +47,7 @@ def make_instance(self, include_optional) -> CPUResourceMonitorSpec: sampling_interval = '68072888001528021798096225500h' ) else: - return CPUResourceMonitorSpec( + return CpuResourceMonitorSpec( monitor_type = '', alert_rules = [ flightctl.models.resource_alert_rule.ResourceAlertRule( @@ -59,8 +60,8 @@ def make_instance(self, include_optional) -> CPUResourceMonitorSpec: ) """ - def testCPUResourceMonitorSpec(self): - """Test CPUResourceMonitorSpec""" + def testCpuResourceMonitorSpec(self): + """Test CpuResourceMonitorSpec""" # inst_req_only = self.make_instance(include_optional=False) # inst_req_and_optional = self.make_instance(include_optional=True) diff --git a/test/test_custom_resource_monitor_spec.py b/test/test_custom_resource_monitor_spec.py index 7a51d5c..c77a269 100644 --- a/test/test_custom_resource_monitor_spec.py +++ b/test/test_custom_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_default_api.py b/test/test_default_api.py deleted file mode 100644 index 35b0ed4..0000000 --- a/test/test_default_api.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.api.default_api import DefaultApi - - -class TestDefaultApi(unittest.TestCase): - """DefaultApi unit test stubs""" - - def setUp(self) -> None: - self.api = DefaultApi() - - def tearDown(self) -> None: - pass - - def test_approve_certificate_signing_request(self) -> None: - """Test case for approve_certificate_signing_request - - """ - pass - - def test_auth_config(self) -> None: - """Test case for auth_config - - """ - pass - - def test_auth_validate(self) -> None: - """Test case for auth_validate - - """ - pass - - def test_deny_certificate_signing_request(self) -> None: - """Test case for deny_certificate_signing_request - - """ - pass - - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_device.py b/test/test_device.py index 61000bd..9d0ea1c 100644 --- a/test/test_device.py +++ b/test/test_device.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -51,51 +52,20 @@ def make_instance(self, include_optional) -> Device: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + at = '', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -103,7 +73,14 @@ def make_instance(self, include_optional) -> Device: ], ), resources = [ null - ], ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), status = flightctl.models.device_status.DeviceStatus( conditions = [ flightctl.models.condition.Condition( @@ -117,7 +94,8 @@ def make_instance(self, include_optional) -> Device: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -133,12 +111,11 @@ def make_instance(self, include_optional) -> Device: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -147,7 +124,10 @@ def make_instance(self, include_optional) -> Device: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ) + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ) ) else: return Device( diff --git a/test/test_device_api.py b/test/test_device_api.py index 4840b57..8cd0711 100644 --- a/test/test_device_api.py +++ b/test/test_device_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -32,6 +33,12 @@ def test_create_device(self) -> None: """ pass + def test_decommission_device(self) -> None: + """Test case for decommission_device + + """ + pass + def test_delete_device(self) -> None: """Test case for delete_device @@ -44,8 +51,8 @@ def test_delete_devices(self) -> None: """ pass - def test_get_rendered_device_spec(self) -> None: - """Test case for get_rendered_device_spec + def test_get_rendered_device(self) -> None: + """Test case for get_rendered_device """ pass @@ -62,6 +69,12 @@ def test_patch_device(self) -> None: """ pass + def test_patch_device_status(self) -> None: + """Test case for patch_device_status + + """ + pass + def test_read_device(self) -> None: """Test case for read_device @@ -86,12 +99,6 @@ def test_replace_device_status(self) -> None: """ pass - def test_request_console(self) -> None: - """Test case for request_console - - """ - pass - if __name__ == '__main__': unittest.main() diff --git a/test/test_device_application_status.py b/test/test_device_application_status.py index 3f6a02b..0ff4fb4 100644 --- a/test/test_device_application_status.py +++ b/test/test_device_application_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_applications_summary_status.py b/test/test_device_applications_summary_status.py index bc61c14..73dfc54 100644 --- a/test/test_device_applications_summary_status.py +++ b/test/test_device_applications_summary_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_config_status.py b/test/test_device_config_status.py index 343b666..1f445c4 100644 --- a/test/test_device_config_status.py +++ b/test/test_device_config_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_console.py b/test/test_device_console.py index 73c1838..23cfbfa 100644 --- a/test/test_device_console.py +++ b/test/test_device_console.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,12 +36,12 @@ def make_instance(self, include_optional) -> DeviceConsole: model = DeviceConsole() if include_optional: return DeviceConsole( - g_rpc_endpoint = '', + session_metadata = '', session_id = '' ) else: return DeviceConsole( - g_rpc_endpoint = '', + session_metadata = '', session_id = '', ) """ diff --git a/test/test_device_decommission.py b/test/test_device_decommission.py new file mode 100644 index 0000000..0229598 --- /dev/null +++ b/test/test_device_decommission.py @@ -0,0 +1,53 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.device_decommission import DeviceDecommission + +class TestDeviceDecommission(unittest.TestCase): + """DeviceDecommission unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> DeviceDecommission: + """Test DeviceDecommission + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `DeviceDecommission` + """ + model = DeviceDecommission() + if include_optional: + return DeviceDecommission( + target = 'Unenroll' + ) + else: + return DeviceDecommission( + target = 'Unenroll', + ) + """ + + def testDeviceDecommission(self): + """Test DeviceDecommission""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_device_decommission_target_type.py b/test/test_device_decommission_target_type.py new file mode 100644 index 0000000..fd9089d --- /dev/null +++ b/test/test_device_decommission_target_type.py @@ -0,0 +1,34 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.device_decommission_target_type import DeviceDecommissionTargetType + +class TestDeviceDecommissionTargetType(unittest.TestCase): + """DeviceDecommissionTargetType unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testDeviceDecommissionTargetType(self): + """Test DeviceDecommissionTargetType""" + # inst = DeviceDecommissionTargetType() + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_device_hooks_spec.py b/test/test_device_hooks_spec.py deleted file mode 100644 index fcc667a..0000000 --- a/test/test_device_hooks_spec.py +++ /dev/null @@ -1,90 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.device_hooks_spec import DeviceHooksSpec - -class TestDeviceHooksSpec(unittest.TestCase): - """DeviceHooksSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> DeviceHooksSpec: - """Test DeviceHooksSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `DeviceHooksSpec` - """ - model = DeviceHooksSpec() - if include_optional: - return DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ] - ) - else: - return DeviceHooksSpec( - ) - """ - - def testDeviceHooksSpec(self): - """Test DeviceHooksSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_device_integrity_status.py b/test/test_device_integrity_status.py index 749fb1f..3027026 100644 --- a/test/test_device_integrity_status.py +++ b/test/test_device_integrity_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,15 +36,12 @@ def make_instance(self, include_optional) -> DeviceIntegrityStatus: model = DeviceIntegrityStatus() if include_optional: return DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ) + status = 'Passed', + info = '' ) else: return DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), + status = 'Passed', ) """ diff --git a/test/test_device_integrity_status_summary.py b/test/test_device_integrity_status_summary.py deleted file mode 100644 index 30fa50c..0000000 --- a/test/test_device_integrity_status_summary.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.device_integrity_status_summary import DeviceIntegrityStatusSummary - -class TestDeviceIntegrityStatusSummary(unittest.TestCase): - """DeviceIntegrityStatusSummary unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> DeviceIntegrityStatusSummary: - """Test DeviceIntegrityStatusSummary - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `DeviceIntegrityStatusSummary` - """ - model = DeviceIntegrityStatusSummary() - if include_optional: - return DeviceIntegrityStatusSummary( - status = 'Passed', - info = '' - ) - else: - return DeviceIntegrityStatusSummary( - status = 'Passed', - ) - """ - - def testDeviceIntegrityStatusSummary(self): - """Test DeviceIntegrityStatusSummary""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_device_integrity_status_summary_type.py b/test/test_device_integrity_status_summary_type.py index a1d3b35..df67191 100644 --- a/test/test_device_integrity_status_summary_type.py +++ b/test/test_device_integrity_status_summary_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_lifecycle_hook_type.py b/test/test_device_lifecycle_hook_type.py new file mode 100644 index 0000000..4b4764f --- /dev/null +++ b/test/test_device_lifecycle_hook_type.py @@ -0,0 +1,34 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.device_lifecycle_hook_type import DeviceLifecycleHookType + +class TestDeviceLifecycleHookType(unittest.TestCase): + """DeviceLifecycleHookType unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testDeviceLifecycleHookType(self): + """Test DeviceLifecycleHookType""" + # inst = DeviceLifecycleHookType() + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_device_lifecycle_status.py b/test/test_device_lifecycle_status.py new file mode 100644 index 0000000..bb16fd1 --- /dev/null +++ b/test/test_device_lifecycle_status.py @@ -0,0 +1,54 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.device_lifecycle_status import DeviceLifecycleStatus + +class TestDeviceLifecycleStatus(unittest.TestCase): + """DeviceLifecycleStatus unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> DeviceLifecycleStatus: + """Test DeviceLifecycleStatus + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `DeviceLifecycleStatus` + """ + model = DeviceLifecycleStatus() + if include_optional: + return DeviceLifecycleStatus( + status = 'Unknown', + info = '' + ) + else: + return DeviceLifecycleStatus( + status = 'Unknown', + ) + """ + + def testDeviceLifecycleStatus(self): + """Test DeviceLifecycleStatus""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_device_lifecycle_status_type.py b/test/test_device_lifecycle_status_type.py new file mode 100644 index 0000000..fa33d59 --- /dev/null +++ b/test/test_device_lifecycle_status_type.py @@ -0,0 +1,34 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.device_lifecycle_status_type import DeviceLifecycleStatusType + +class TestDeviceLifecycleStatusType(unittest.TestCase): + """DeviceLifecycleStatusType unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testDeviceLifecycleStatusType(self): + """Test DeviceLifecycleStatusType""" + # inst = DeviceLifecycleStatusType() + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_device_list.py b/test/test_device_list.py index 49d0966..d3bbfc9 100644 --- a/test/test_device_list.py +++ b/test/test_device_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -58,51 +59,22 @@ def make_instance(self, include_optional) -> DeviceList: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -110,7 +82,14 @@ def make_instance(self, include_optional) -> DeviceList: ], ), resources = [ null - ], ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), status = flightctl.models.device_status.DeviceStatus( conditions = [ flightctl.models.condition.Condition( @@ -124,7 +103,8 @@ def make_instance(self, include_optional) -> DeviceList: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -140,12 +120,11 @@ def make_instance(self, include_optional) -> DeviceList: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -154,7 +133,10 @@ def make_instance(self, include_optional) -> DeviceList: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ) + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), ) ], summary = flightctl.models.devices_summary.DevicesSummary( total = 56, @@ -193,51 +175,22 @@ def make_instance(self, include_optional) -> DeviceList: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -245,7 +198,14 @@ def make_instance(self, include_optional) -> DeviceList: ], ), resources = [ null - ], ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), status = flightctl.models.device_status.DeviceStatus( conditions = [ flightctl.models.condition.Condition( @@ -259,7 +219,8 @@ def make_instance(self, include_optional) -> DeviceList: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -275,12 +236,11 @@ def make_instance(self, include_optional) -> DeviceList: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -289,7 +249,10 @@ def make_instance(self, include_optional) -> DeviceList: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ) + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), ) ], ) """ diff --git a/test/test_device_os_spec.py b/test/test_device_os_spec.py index 3916b23..fd75be4 100644 --- a/test/test_device_os_spec.py +++ b/test/test_device_os_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -14,10 +15,10 @@ import unittest -from flightctl.models.device_os_spec import DeviceOSSpec +from flightctl.models.device_os_spec import DeviceOsSpec -class TestDeviceOSSpec(unittest.TestCase): - """DeviceOSSpec unit test stubs""" +class TestDeviceOsSpec(unittest.TestCase): + """DeviceOsSpec unit test stubs""" def setUp(self): pass @@ -25,26 +26,26 @@ def setUp(self): def tearDown(self): pass - def make_instance(self, include_optional) -> DeviceOSSpec: - """Test DeviceOSSpec + def make_instance(self, include_optional) -> DeviceOsSpec: + """Test DeviceOsSpec include_optional is a boolean, when False only required params are included, when True both required and optional params are included """ - # uncomment below to create an instance of `DeviceOSSpec` + # uncomment below to create an instance of `DeviceOsSpec` """ - model = DeviceOSSpec() + model = DeviceOsSpec() if include_optional: - return DeviceOSSpec( + return DeviceOsSpec( image = '' ) else: - return DeviceOSSpec( + return DeviceOsSpec( image = '', ) """ - def testDeviceOSSpec(self): - """Test DeviceOSSpec""" + def testDeviceOsSpec(self): + """Test DeviceOsSpec""" # inst_req_only = self.make_instance(include_optional=False) # inst_req_and_optional = self.make_instance(include_optional=True) diff --git a/test/test_device_os_status.py b/test/test_device_os_status.py index aea9212..5897489 100644 --- a/test/test_device_os_status.py +++ b/test/test_device_os_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -14,10 +15,10 @@ import unittest -from flightctl.models.device_os_status import DeviceOSStatus +from flightctl.models.device_os_status import DeviceOsStatus -class TestDeviceOSStatus(unittest.TestCase): - """DeviceOSStatus unit test stubs""" +class TestDeviceOsStatus(unittest.TestCase): + """DeviceOsStatus unit test stubs""" def setUp(self): pass @@ -25,28 +26,28 @@ def setUp(self): def tearDown(self): pass - def make_instance(self, include_optional) -> DeviceOSStatus: - """Test DeviceOSStatus + def make_instance(self, include_optional) -> DeviceOsStatus: + """Test DeviceOsStatus include_optional is a boolean, when False only required params are included, when True both required and optional params are included """ - # uncomment below to create an instance of `DeviceOSStatus` + # uncomment below to create an instance of `DeviceOsStatus` """ - model = DeviceOSStatus() + model = DeviceOsStatus() if include_optional: - return DeviceOSStatus( + return DeviceOsStatus( image = '', image_digest = '' ) else: - return DeviceOSStatus( + return DeviceOsStatus( image = '', image_digest = '', ) """ - def testDeviceOSStatus(self): - """Test DeviceOSStatus""" + def testDeviceOsStatus(self): + """Test DeviceOsStatus""" # inst_req_only = self.make_instance(include_optional=False) # inst_req_and_optional = self.make_instance(include_optional=True) diff --git a/test/test_device_reboot_hook_spec.py b/test/test_device_reboot_hook_spec.py deleted file mode 100644 index 3d03757..0000000 --- a/test/test_device_reboot_hook_spec.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.device_reboot_hook_spec import DeviceRebootHookSpec - -class TestDeviceRebootHookSpec(unittest.TestCase): - """DeviceRebootHookSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> DeviceRebootHookSpec: - """Test DeviceRebootHookSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `DeviceRebootHookSpec` - """ - model = DeviceRebootHookSpec() - if include_optional: - return DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ] - ) - else: - return DeviceRebootHookSpec( - actions = [ - flightctl.models.hook_action.HookAction() - ], - ) - """ - - def testDeviceRebootHookSpec(self): - """Test DeviceRebootHookSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_device_resource_status.py b/test/test_device_resource_status.py index 4c1d981..e074a03 100644 --- a/test/test_device_resource_status.py +++ b/test/test_device_resource_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_resource_status_type.py b/test/test_device_resource_status_type.py index 72bc07f..24512d2 100644 --- a/test/test_device_resource_status_type.py +++ b/test/test_device_resource_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_spec.py b/test/test_device_spec.py index 34fd365..fd7ce28 100644 --- a/test/test_device_spec.py +++ b/test/test_device_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,51 +36,22 @@ def make_instance(self, include_optional) -> DeviceSpec: model = DeviceSpec() if include_optional: return DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -87,7 +59,14 @@ def make_instance(self, include_optional) -> DeviceSpec: ], ), resources = [ null - ] + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ) ) else: return DeviceSpec( diff --git a/test/test_device_spec_systemd.py b/test/test_device_spec_systemd.py index 834d052..3b8be6b 100644 --- a/test/test_device_spec_systemd.py +++ b/test/test_device_spec_systemd.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_status.py b/test/test_device_status.py index d403fd3..b10768d 100644 --- a/test/test_device_status.py +++ b/test/test_device_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -47,7 +48,8 @@ def make_instance(self, include_optional) -> DeviceStatus: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -63,12 +65,11 @@ def make_instance(self, include_optional) -> DeviceStatus: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -77,7 +78,10 @@ def make_instance(self, include_optional) -> DeviceStatus: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f') + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ) ) else: return DeviceStatus( @@ -93,7 +97,8 @@ def make_instance(self, include_optional) -> DeviceStatus: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -109,12 +114,11 @@ def make_instance(self, include_optional) -> DeviceStatus: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -124,6 +128,9 @@ def make_instance(self, include_optional) -> DeviceStatus: status = 'Online', info = '', ), last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ) """ diff --git a/test/test_device_summary_status.py b/test/test_device_summary_status.py index d5881fa..8b7dca0 100644 --- a/test/test_device_summary_status.py +++ b/test/test_device_summary_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_summary_status_type.py b/test/test_device_summary_status_type.py index c8eaba2..6ee6c66 100644 --- a/test/test_device_summary_status_type.py +++ b/test/test_device_summary_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_system_info.py b/test/test_device_system_info.py index 2915220..f7ab180 100644 --- a/test/test_device_system_info.py +++ b/test/test_device_system_info.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -37,13 +38,15 @@ def make_instance(self, include_optional) -> DeviceSystemInfo: return DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '' + operating_system = '', + agent_version = '' ) else: return DeviceSystemInfo( architecture = '', boot_id = '', operating_system = '', + agent_version = '', ) """ diff --git a/test/test_device_update_hook_spec.py b/test/test_device_update_hook_spec.py deleted file mode 100644 index 8457619..0000000 --- a/test/test_device_update_hook_spec.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.device_update_hook_spec import DeviceUpdateHookSpec - -class TestDeviceUpdateHookSpec(unittest.TestCase): - """DeviceUpdateHookSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> DeviceUpdateHookSpec: - """Test DeviceUpdateHookSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `DeviceUpdateHookSpec` - """ - model = DeviceUpdateHookSpec() - if include_optional: - return DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '' - ) - else: - return DeviceUpdateHookSpec( - actions = [ - flightctl.models.hook_action.HookAction() - ], - ) - """ - - def testDeviceUpdateHookSpec(self): - """Test DeviceUpdateHookSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_device_update_policy_spec.py b/test/test_device_update_policy_spec.py new file mode 100644 index 0000000..1f1f357 --- /dev/null +++ b/test/test_device_update_policy_spec.py @@ -0,0 +1,59 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.device_update_policy_spec import DeviceUpdatePolicySpec + +class TestDeviceUpdatePolicySpec(unittest.TestCase): + """DeviceUpdatePolicySpec unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> DeviceUpdatePolicySpec: + """Test DeviceUpdatePolicySpec + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `DeviceUpdatePolicySpec` + """ + model = DeviceUpdatePolicySpec() + if include_optional: + return DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ) + ) + else: + return DeviceUpdatePolicySpec( + ) + """ + + def testDeviceUpdatePolicySpec(self): + """Test DeviceUpdatePolicySpec""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_device_updated_status.py b/test/test_device_updated_status.py index b09a8fe..c2eea67 100644 --- a/test/test_device_updated_status.py +++ b/test/test_device_updated_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_device_updated_status_type.py b/test/test_device_updated_status_type.py index 98f5612..deebdc2 100644 --- a/test/test_device_updated_status_type.py +++ b/test/test_device_updated_status_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_devices_summary.py b/test/test_devices_summary.py index 0fac3ad..565fa8d 100644 --- a/test/test_devices_summary.py +++ b/test/test_devices_summary.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -49,6 +50,15 @@ def make_instance(self, include_optional) -> DevicesSummary: else: return DevicesSummary( total = 56, + application_status = { + 'key' : 56 + }, + summary_status = { + 'key' : 56 + }, + update_status = { + 'key' : 56 + }, ) """ diff --git a/test/test_disk_resource_monitor_spec.py b/test/test_disk_resource_monitor_spec.py index bca4c9d..d02047f 100644 --- a/test/test_disk_resource_monitor_spec.py +++ b/test/test_disk_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_disruption_allowance.py b/test/test_disruption_allowance.py deleted file mode 100644 index cc38c8e..0000000 --- a/test/test_disruption_allowance.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.disruption_allowance import DisruptionAllowance - -class TestDisruptionAllowance(unittest.TestCase): - """DisruptionAllowance unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> DisruptionAllowance: - """Test DisruptionAllowance - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `DisruptionAllowance` - """ - model = DisruptionAllowance() - if include_optional: - return DisruptionAllowance( - group_by = [ - '' - ], - min_available = 56, - max_unavailable = 56 - ) - else: - return DisruptionAllowance( - ) - """ - - def testDisruptionAllowance(self): - """Test DisruptionAllowance""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_disruption_budget.py b/test/test_disruption_budget.py new file mode 100644 index 0000000..75da23f --- /dev/null +++ b/test/test_disruption_budget.py @@ -0,0 +1,56 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.disruption_budget import DisruptionBudget + +class TestDisruptionBudget(unittest.TestCase): + """DisruptionBudget unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> DisruptionBudget: + """Test DisruptionBudget + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `DisruptionBudget` + """ + model = DisruptionBudget() + if include_optional: + return DisruptionBudget( + group_by = [ + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' + ], + min_available = 1, + max_unavailable = 1 + ) + else: + return DisruptionBudget( + ) + """ + + def testDisruptionBudget(self): + """Test DisruptionBudget""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_enrollment_config.py b/test/test_enrollment_config.py index cc779bf..3b95558 100644 --- a/test/test_enrollment_config.py +++ b/test/test_enrollment_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -42,8 +43,7 @@ def make_instance(self, include_optional) -> EnrollmentConfig: service = flightctl.models.enrollment_service_service.EnrollmentServiceService( certificate_authority_data = '', server = '', ), - enrollment_ui_endpoint = '', ), - grpc_management_endpoint = '' + enrollment_ui_endpoint = '', ) ) else: return EnrollmentConfig( @@ -55,7 +55,6 @@ def make_instance(self, include_optional) -> EnrollmentConfig: certificate_authority_data = '', server = '', ), enrollment_ui_endpoint = '', ), - grpc_management_endpoint = '', ) """ diff --git a/test/test_enrollment_request.py b/test/test_enrollment_request.py index f992645..5470dff 100644 --- a/test/test_enrollment_request.py +++ b/test/test_enrollment_request.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -65,7 +66,8 @@ def make_instance(self, include_optional) -> EnrollmentRequest: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -81,12 +83,11 @@ def make_instance(self, include_optional) -> EnrollmentRequest: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -95,7 +96,10 @@ def make_instance(self, include_optional) -> EnrollmentRequest: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), labels = { 'key' : '' }, ), @@ -110,13 +114,7 @@ def make_instance(self, include_optional) -> EnrollmentRequest: message = '', reason = '', ) ], - approval = flightctl.models.enrollment_request_approval.EnrollmentRequestApproval( - labels = { - 'key' : '' - }, - approved = True, - approved_by = '', - approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ) + approval = null, ) ) else: return EnrollmentRequest( @@ -150,7 +148,8 @@ def make_instance(self, include_optional) -> EnrollmentRequest: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -166,12 +165,11 @@ def make_instance(self, include_optional) -> EnrollmentRequest: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -180,7 +178,10 @@ def make_instance(self, include_optional) -> EnrollmentRequest: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), labels = { 'key' : '' }, ), diff --git a/test/test_enrollment_request_approval.py b/test/test_enrollment_request_approval.py index 2f19e91..600a9ed 100644 --- a/test/test_enrollment_request_approval.py +++ b/test/test_enrollment_request_approval.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -38,9 +39,7 @@ def make_instance(self, include_optional) -> EnrollmentRequestApproval: labels = { 'key' : '' }, - approved = True, - approved_by = '', - approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f') + approved = True ) else: return EnrollmentRequestApproval( diff --git a/test/test_enrollment_request_approval_status.py b/test/test_enrollment_request_approval_status.py new file mode 100644 index 0000000..d1df465 --- /dev/null +++ b/test/test_enrollment_request_approval_status.py @@ -0,0 +1,60 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.enrollment_request_approval_status import EnrollmentRequestApprovalStatus + +class TestEnrollmentRequestApprovalStatus(unittest.TestCase): + """EnrollmentRequestApprovalStatus unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> EnrollmentRequestApprovalStatus: + """Test EnrollmentRequestApprovalStatus + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `EnrollmentRequestApprovalStatus` + """ + model = EnrollmentRequestApprovalStatus() + if include_optional: + return EnrollmentRequestApprovalStatus( + labels = { + 'key' : '' + }, + approved = True, + approved_by = '', + approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f') + ) + else: + return EnrollmentRequestApprovalStatus( + approved = True, + approved_by = '', + approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + ) + """ + + def testEnrollmentRequestApprovalStatus(self): + """Test EnrollmentRequestApprovalStatus""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_enrollment_request_list.py b/test/test_enrollment_request_list.py index 072bdcd..16915a0 100644 --- a/test/test_enrollment_request_list.py +++ b/test/test_enrollment_request_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -72,7 +73,8 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -88,12 +90,11 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -102,7 +103,10 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ), + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), ), status = flightctl.models.enrollment_request_status.EnrollmentRequestStatus( certificate = '', conditions = [ @@ -114,10 +118,7 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: message = '', reason = '', ) ], - approval = flightctl.models.enrollment_request_approval.EnrollmentRequestApproval( - approved = True, - approved_by = '', - approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ), ) + approval = null, ), ) ] ) else: @@ -159,7 +160,8 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -175,12 +177,11 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -189,7 +190,10 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ), + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), ), status = flightctl.models.enrollment_request_status.EnrollmentRequestStatus( certificate = '', conditions = [ @@ -201,10 +205,7 @@ def make_instance(self, include_optional) -> EnrollmentRequestList: message = '', reason = '', ) ], - approval = flightctl.models.enrollment_request_approval.EnrollmentRequestApproval( - approved = True, - approved_by = '', - approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), ), ) + approval = null, ), ) ], ) """ diff --git a/test/test_enrollment_request_spec.py b/test/test_enrollment_request_spec.py index 608a672..e388e33 100644 --- a/test/test_enrollment_request_spec.py +++ b/test/test_enrollment_request_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -49,7 +50,8 @@ def make_instance(self, include_optional) -> EnrollmentRequestSpec: system_info = flightctl.models.device_system_info.DeviceSystemInfo( architecture = '', boot_id = '', - operating_system = '', ), + operating_system = '', + agent_version = '', ), applications = [ flightctl.models.device_application_status.DeviceApplicationStatus( name = '', @@ -65,12 +67,11 @@ def make_instance(self, include_optional) -> EnrollmentRequestSpec: memory = 'Healthy', disk = 'Healthy', ), integrity = flightctl.models.device_integrity_status.DeviceIntegrityStatus( - summary = flightctl.models.device_integrity_status_summary.DeviceIntegrityStatusSummary( - status = 'Passed', - info = '', ), ), + status = 'Passed', + info = '', ), config = flightctl.models.device_config_status.DeviceConfigStatus( rendered_version = '', ), - os = flightctl.models.device_os_status.DeviceOSStatus( + os = flightctl.models.device_os_status.DeviceOsStatus( image = '', image_digest = '', ), updated = flightctl.models.device_updated_status.DeviceUpdatedStatus( @@ -79,7 +80,10 @@ def make_instance(self, include_optional) -> EnrollmentRequestSpec: summary = flightctl.models.device_summary_status.DeviceSummaryStatus( status = 'Online', info = '', ), - last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), + last_seen = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + lifecycle = flightctl.models.device_lifecycle_status.DeviceLifecycleStatus( + status = 'Unknown', + info = '', ), ), labels = { 'key' : '' } diff --git a/test/test_enrollment_request_status.py b/test/test_enrollment_request_status.py index 58b6007..e562e74 100644 --- a/test/test_enrollment_request_status.py +++ b/test/test_enrollment_request_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -45,13 +46,7 @@ def make_instance(self, include_optional) -> EnrollmentRequestStatus: message = '', reason = '', ) ], - approval = flightctl.models.enrollment_request_approval.EnrollmentRequestApproval( - labels = { - 'key' : '' - }, - approved = True, - approved_by = '', - approved_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ) + approval = None ) else: return EnrollmentRequestStatus( diff --git a/test/test_enrollment_service.py b/test/test_enrollment_service.py index ec2370f..14464c8 100644 --- a/test/test_enrollment_service.py +++ b/test/test_enrollment_service.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_enrollment_service_auth.py b/test/test_enrollment_service_auth.py index 3d09e90..cbeb47c 100644 --- a/test/test_enrollment_service_auth.py +++ b/test/test_enrollment_service_auth.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_enrollment_service_service.py b/test/test_enrollment_service_service.py index a06a35f..3b8ea0a 100644 --- a/test/test_enrollment_service_service.py +++ b/test/test_enrollment_service_service.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_enrollmentconfig_api.py b/test/test_enrollmentconfig_api.py deleted file mode 100644 index 9863072..0000000 --- a/test/test_enrollmentconfig_api.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.api.enrollmentconfig_api import EnrollmentconfigApi - - -class TestEnrollmentconfigApi(unittest.TestCase): - """EnrollmentconfigApi unit test stubs""" - - def setUp(self) -> None: - self.api = EnrollmentconfigApi() - - def tearDown(self) -> None: - pass - - def test_enrollment_config(self) -> None: - """Test case for enrollment_config - - """ - pass - - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_enrollmentrequest_api.py b/test/test_enrollmentrequest_api.py index 7dd47c7..7756cc9 100644 --- a/test/test_enrollmentrequest_api.py +++ b/test/test_enrollmentrequest_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -50,12 +51,30 @@ def test_delete_enrollment_requests(self) -> None: """ pass + def test_get_enrollment_config(self) -> None: + """Test case for get_enrollment_config + + """ + pass + def test_list_enrollment_requests(self) -> None: """Test case for list_enrollment_requests """ pass + def test_patch_enrollment_request(self) -> None: + """Test case for patch_enrollment_request + + """ + pass + + def test_patch_enrollment_request_status(self) -> None: + """Test case for patch_enrollment_request_status + + """ + pass + def test_read_enrollment_request(self) -> None: """Test case for read_enrollment_request diff --git a/test/test_file_operation.py b/test/test_file_operation.py index c5e6a83..9dd1c2a 100644 --- a/test/test_file_operation.py +++ b/test/test_file_operation.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_file_spec.py b/test/test_file_spec.py index cfa33b4..58ad16f 100644 --- a/test/test_file_spec.py +++ b/test/test_file_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_fleet.py b/test/test_fleet.py index e07bf77..d83596f 100644 --- a/test/test_fleet.py +++ b/test/test_fleet.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -64,16 +65,15 @@ def make_instance(self, include_optional) -> Fleet: ], ) ], ), rollout_policy = flightctl.models.rollout_policy.RolloutPolicy( - disruption_allowance = flightctl.models.disruption_allowance.DisruptionAllowance( + disruption_budget = flightctl.models.disruption_budget.DisruptionBudget( group_by = [ - '' + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' ], - min_available = 56, - max_unavailable = 56, ), - device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection( - strategy = '', ), + min_available = 1, + max_unavailable = 1, ), + device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection(), success_threshold = '', - default_update_timeout = '68072888001528021798096225500h', ), + default_update_timeout = '0s', ), template = flightctl.models.fleet_spec_template.FleetSpec_template( metadata = flightctl.models.object_meta.ObjectMeta( creation_timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), @@ -89,51 +89,22 @@ def make_instance(self, include_optional) -> Fleet: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -141,7 +112,14 @@ def make_instance(self, include_optional) -> Fleet: ], ), resources = [ null - ], ), ), ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ), ), status = flightctl.models.fleet_status.FleetStatus( rollout = flightctl.models.fleet_rollout_status.FleetRolloutStatus( current_batch = 56, ), @@ -197,16 +175,15 @@ def make_instance(self, include_optional) -> Fleet: ], ) ], ), rollout_policy = flightctl.models.rollout_policy.RolloutPolicy( - disruption_allowance = flightctl.models.disruption_allowance.DisruptionAllowance( + disruption_budget = flightctl.models.disruption_budget.DisruptionBudget( group_by = [ - '' + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' ], - min_available = 56, - max_unavailable = 56, ), - device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection( - strategy = '', ), + min_available = 1, + max_unavailable = 1, ), + device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection(), success_threshold = '', - default_update_timeout = '68072888001528021798096225500h', ), + default_update_timeout = '0s', ), template = flightctl.models.fleet_spec_template.FleetSpec_template( metadata = flightctl.models.object_meta.ObjectMeta( creation_timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), @@ -222,51 +199,22 @@ def make_instance(self, include_optional) -> Fleet: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -274,7 +222,14 @@ def make_instance(self, include_optional) -> Fleet: ], ), resources = [ null - ], ), ), ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ), ), ) """ diff --git a/test/test_fleet_api.py b/test/test_fleet_api.py index 5e8b328..fd25860 100644 --- a/test/test_fleet_api.py +++ b/test/test_fleet_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -44,18 +45,42 @@ def test_delete_fleets(self) -> None: """ pass + def test_delete_template_version(self) -> None: + """Test case for delete_template_version + + """ + pass + + def test_delete_template_versions(self) -> None: + """Test case for delete_template_versions + + """ + pass + def test_list_fleets(self) -> None: """Test case for list_fleets """ pass + def test_list_template_versions(self) -> None: + """Test case for list_template_versions + + """ + pass + def test_patch_fleet(self) -> None: """Test case for patch_fleet """ pass + def test_patch_fleet_status(self) -> None: + """Test case for patch_fleet_status + + """ + pass + def test_read_fleet(self) -> None: """Test case for read_fleet @@ -68,6 +93,12 @@ def test_read_fleet_status(self) -> None: """ pass + def test_read_template_version(self) -> None: + """Test case for read_template_version + + """ + pass + def test_replace_fleet(self) -> None: """Test case for replace_fleet diff --git a/test/test_fleet_list.py b/test/test_fleet_list.py index d033ba9..a810d36 100644 --- a/test/test_fleet_list.py +++ b/test/test_fleet_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -71,63 +72,33 @@ def make_instance(self, include_optional) -> FleetList: ], ) ], ), rollout_policy = flightctl.models.rollout_policy.RolloutPolicy( - disruption_allowance = flightctl.models.disruption_allowance.DisruptionAllowance( + disruption_budget = flightctl.models.disruption_budget.DisruptionBudget( group_by = [ - '' + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' ], - min_available = 56, - max_unavailable = 56, ), - device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection( - strategy = '', ), + min_available = 1, + max_unavailable = 1, ), + device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection(), success_threshold = '', - default_update_timeout = '68072888001528021798096225500h', ), + default_update_timeout = '0s', ), template = flightctl.models.fleet_spec_template.FleetSpec_template( spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -135,7 +106,14 @@ def make_instance(self, include_optional) -> FleetList: ], ), resources = [ null - ], ), ), ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ), ), status = flightctl.models.fleet_status.FleetStatus( rollout = flightctl.models.fleet_rollout_status.FleetRolloutStatus( current_batch = 56, ), @@ -199,63 +177,33 @@ def make_instance(self, include_optional) -> FleetList: ], ) ], ), rollout_policy = flightctl.models.rollout_policy.RolloutPolicy( - disruption_allowance = flightctl.models.disruption_allowance.DisruptionAllowance( + disruption_budget = flightctl.models.disruption_budget.DisruptionBudget( group_by = [ - '' + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' ], - min_available = 56, - max_unavailable = 56, ), - device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection( - strategy = '', ), + min_available = 1, + max_unavailable = 1, ), + device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection(), success_threshold = '', - default_update_timeout = '68072888001528021798096225500h', ), + default_update_timeout = '0s', ), template = flightctl.models.fleet_spec_template.FleetSpec_template( spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -263,7 +211,14 @@ def make_instance(self, include_optional) -> FleetList: ], ), resources = [ null - ], ), ), ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ), ), status = flightctl.models.fleet_status.FleetStatus( rollout = flightctl.models.fleet_rollout_status.FleetRolloutStatus( current_batch = 56, ), diff --git a/test/test_fleet_rollout_status.py b/test/test_fleet_rollout_status.py index 7c4f001..ec13650 100644 --- a/test/test_fleet_rollout_status.py +++ b/test/test_fleet_rollout_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_fleet_spec.py b/test/test_fleet_spec.py index 5c7736d..90b047a 100644 --- a/test/test_fleet_spec.py +++ b/test/test_fleet_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -48,16 +49,15 @@ def make_instance(self, include_optional) -> FleetSpec: ], ) ], ), rollout_policy = flightctl.models.rollout_policy.RolloutPolicy( - disruption_allowance = flightctl.models.disruption_allowance.DisruptionAllowance( + disruption_budget = flightctl.models.disruption_budget.DisruptionBudget( group_by = [ - '' + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' ], - min_available = 56, - max_unavailable = 56, ), - device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection( - strategy = '', ), + min_available = 1, + max_unavailable = 1, ), + device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection(), success_threshold = '', - default_update_timeout = '68072888001528021798096225500h', ), + default_update_timeout = '0s', ), template = flightctl.models.fleet_spec_template.FleetSpec_template( metadata = flightctl.models.object_meta.ObjectMeta( creation_timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), @@ -73,51 +73,22 @@ def make_instance(self, include_optional) -> FleetSpec: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -125,7 +96,14 @@ def make_instance(self, include_optional) -> FleetSpec: ], ), resources = [ null - ], ), ) + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ) ) else: return FleetSpec( @@ -144,51 +122,22 @@ def make_instance(self, include_optional) -> FleetSpec: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -196,7 +145,14 @@ def make_instance(self, include_optional) -> FleetSpec: ], ), resources = [ null - ], ), ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ), ) """ diff --git a/test/test_fleet_spec_template.py b/test/test_fleet_spec_template.py index e28c237..f35b421 100644 --- a/test/test_fleet_spec_template.py +++ b/test/test_fleet_spec_template.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -49,51 +50,22 @@ def make_instance(self, include_optional) -> FleetSpecTemplate: }, resource_version = '', ), spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -101,56 +73,34 @@ def make_instance(self, include_optional) -> FleetSpecTemplate: ], ), resources = [ null - ], ) + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ) ) else: return FleetSpecTemplate( spec = flightctl.models.device_spec.DeviceSpec( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -158,7 +108,14 @@ def make_instance(self, include_optional) -> FleetSpecTemplate: ], ), resources = [ null - ], ), + ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), ), ) """ diff --git a/test/test_fleet_status.py b/test/test_fleet_status.py index 164d75f..689fb1f 100644 --- a/test/test_fleet_status.py +++ b/test/test_fleet_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_generic_repo_spec.py b/test/test_generic_repo_spec.py index fe39824..7f52a84 100644 --- a/test/test_generic_repo_spec.py +++ b/test/test_generic_repo_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_git_config_provider_spec.py b/test/test_git_config_provider_spec.py index 61f59d8..b065625 100644 --- a/test/test_git_config_provider_spec.py +++ b/test/test_git_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_git_config_provider_spec_git_ref.py b/test/test_git_config_provider_spec_git_ref.py index 2c2ec79..bf5c93b 100644 --- a/test/test_git_config_provider_spec_git_ref.py +++ b/test/test_git_config_provider_spec_git_ref.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_hook_action.py b/test/test_hook_action.py index 455e00e..cb7ff4a 100644 --- a/test/test_hook_action.py +++ b/test/test_hook_action.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,13 +36,19 @@ def make_instance(self, include_optional) -> HookAction: model = HookAction() if include_optional: return HookAction( - executable = None, - systemd = None + var_if = [ + flightctl.models.hook_condition.HookCondition() + ], + timeout = '90728880015280217980962255008507620686293393339756506851391026912917h', + run = '', + env_vars = { + 'key' : '' + }, + work_dir = '' ) else: return HookAction( - executable = None, - systemd = None, + run = '', ) """ diff --git a/test/test_hook_action_executable.py b/test/test_hook_action_executable.py deleted file mode 100644 index b723fd2..0000000 --- a/test/test_hook_action_executable.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_executable import HookActionExecutable - -class TestHookActionExecutable(unittest.TestCase): - """HookActionExecutable unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionExecutable: - """Test HookActionExecutable - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionExecutable` - """ - model = HookActionExecutable() - if include_optional: - return HookActionExecutable( - run = '', - env_vars = [ - '' - ], - work_dir = '' - ) - else: - return HookActionExecutable( - run = '', - ) - """ - - def testHookActionExecutable(self): - """Test HookActionExecutable""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_action_executable_spec.py b/test/test_hook_action_executable_spec.py deleted file mode 100644 index 28a8792..0000000 --- a/test/test_hook_action_executable_spec.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_executable_spec import HookActionExecutableSpec - -class TestHookActionExecutableSpec(unittest.TestCase): - """HookActionExecutableSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionExecutableSpec: - """Test HookActionExecutableSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionExecutableSpec` - """ - model = HookActionExecutableSpec() - if include_optional: - return HookActionExecutableSpec( - timeout = '68072888001528021798096225500h', - run = '', - env_vars = [ - '' - ], - work_dir = '' - ) - else: - return HookActionExecutableSpec( - run = '', - ) - """ - - def testHookActionExecutableSpec(self): - """Test HookActionExecutableSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_action_one_of.py b/test/test_hook_action_one_of.py deleted file mode 100644 index 2d29a78..0000000 --- a/test/test_hook_action_one_of.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_one_of import HookActionOneOf - -class TestHookActionOneOf(unittest.TestCase): - """HookActionOneOf unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionOneOf: - """Test HookActionOneOf - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionOneOf` - """ - model = HookActionOneOf() - if include_optional: - return HookActionOneOf( - executable = None - ) - else: - return HookActionOneOf( - executable = None, - ) - """ - - def testHookActionOneOf(self): - """Test HookActionOneOf""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_action_one_of1.py b/test/test_hook_action_one_of1.py deleted file mode 100644 index ae2c4f7..0000000 --- a/test/test_hook_action_one_of1.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_one_of1 import HookActionOneOf1 - -class TestHookActionOneOf1(unittest.TestCase): - """HookActionOneOf1 unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionOneOf1: - """Test HookActionOneOf1 - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionOneOf1` - """ - model = HookActionOneOf1() - if include_optional: - return HookActionOneOf1( - systemd = None - ) - else: - return HookActionOneOf1( - systemd = None, - ) - """ - - def testHookActionOneOf1(self): - """Test HookActionOneOf1""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_action_run.py b/test/test_hook_action_run.py new file mode 100644 index 0000000..9decf2c --- /dev/null +++ b/test/test_hook_action_run.py @@ -0,0 +1,57 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.hook_action_run import HookActionRun + +class TestHookActionRun(unittest.TestCase): + """HookActionRun unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> HookActionRun: + """Test HookActionRun + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `HookActionRun` + """ + model = HookActionRun() + if include_optional: + return HookActionRun( + run = '', + env_vars = { + 'key' : '' + }, + work_dir = '' + ) + else: + return HookActionRun( + run = '', + ) + """ + + def testHookActionRun(self): + """Test HookActionRun""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_hook_action_spec.py b/test/test_hook_action_spec.py deleted file mode 100644 index 8434b1e..0000000 --- a/test/test_hook_action_spec.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_spec import HookActionSpec - -class TestHookActionSpec(unittest.TestCase): - """HookActionSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionSpec: - """Test HookActionSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionSpec` - """ - model = HookActionSpec() - if include_optional: - return HookActionSpec( - timeout = '68072888001528021798096225500h' - ) - else: - return HookActionSpec( - ) - """ - - def testHookActionSpec(self): - """Test HookActionSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_action_systemd_spec.py b/test/test_hook_action_systemd_spec.py deleted file mode 100644 index a7e44d9..0000000 --- a/test/test_hook_action_systemd_spec.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_systemd_spec import HookActionSystemdSpec - -class TestHookActionSystemdSpec(unittest.TestCase): - """HookActionSystemdSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionSystemdSpec: - """Test HookActionSystemdSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionSystemdSpec` - """ - model = HookActionSystemdSpec() - if include_optional: - return HookActionSystemdSpec( - timeout = '68072888001528021798096225500h', - unit = flightctl.models.hook_action_systemd_unit.HookActionSystemdUnit( - name = '', - operations = [ - 'Enable' - ], - work_dir = '', ) - ) - else: - return HookActionSystemdSpec( - unit = flightctl.models.hook_action_systemd_unit.HookActionSystemdUnit( - name = '', - operations = [ - 'Enable' - ], - work_dir = '', ), - ) - """ - - def testHookActionSystemdSpec(self): - """Test HookActionSystemdSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_action_systemd_unit.py b/test/test_hook_action_systemd_unit.py deleted file mode 100644 index 392a5d9..0000000 --- a/test/test_hook_action_systemd_unit.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.hook_action_systemd_unit import HookActionSystemdUnit - -class TestHookActionSystemdUnit(unittest.TestCase): - """HookActionSystemdUnit unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> HookActionSystemdUnit: - """Test HookActionSystemdUnit - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `HookActionSystemdUnit` - """ - model = HookActionSystemdUnit() - if include_optional: - return HookActionSystemdUnit( - name = '', - operations = [ - 'Enable' - ], - work_dir = '' - ) - else: - return HookActionSystemdUnit( - name = '', - operations = [ - 'Enable' - ], - ) - """ - - def testHookActionSystemdUnit(self): - """Test HookActionSystemdUnit""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_hook_condition.py b/test/test_hook_condition.py new file mode 100644 index 0000000..d6b3a77 --- /dev/null +++ b/test/test_hook_condition.py @@ -0,0 +1,59 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.hook_condition import HookCondition + +class TestHookCondition(unittest.TestCase): + """HookCondition unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> HookCondition: + """Test HookCondition + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `HookCondition` + """ + model = HookCondition() + if include_optional: + return HookCondition( + path = '', + op = [ + 'created' + ] + ) + else: + return HookCondition( + path = '', + op = [ + 'created' + ], + ) + """ + + def testHookCondition(self): + """Test HookCondition""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_hook_condition_path_op.py b/test/test_hook_condition_path_op.py new file mode 100644 index 0000000..469b5f1 --- /dev/null +++ b/test/test_hook_condition_path_op.py @@ -0,0 +1,59 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.hook_condition_path_op import HookConditionPathOp + +class TestHookConditionPathOp(unittest.TestCase): + """HookConditionPathOp unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> HookConditionPathOp: + """Test HookConditionPathOp + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `HookConditionPathOp` + """ + model = HookConditionPathOp() + if include_optional: + return HookConditionPathOp( + path = '', + op = [ + 'created' + ] + ) + else: + return HookConditionPathOp( + path = '', + op = [ + 'created' + ], + ) + """ + + def testHookConditionPathOp(self): + """Test HookConditionPathOp""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_http_config.py b/test/test_http_config.py index 82fbebb..367c390 100644 --- a/test/test_http_config.py +++ b/test/test_http_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_http_config_provider_spec.py b/test/test_http_config_provider_spec.py index f06fbd0..ca5111e 100644 --- a/test/test_http_config_provider_spec.py +++ b/test/test_http_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_http_config_provider_spec_http_ref.py b/test/test_http_config_provider_spec_http_ref.py index cd56f10..48343ec 100644 --- a/test/test_http_config_provider_spec_http_ref.py +++ b/test/test_http_config_provider_spec_http_ref.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_http_repo_spec.py b/test/test_http_repo_spec.py index 87a5654..aabc284 100644 --- a/test/test_http_repo_spec.py +++ b/test/test_http_repo_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_image_application_provider.py b/test/test_image_application_provider.py index a93c1e7..cab32fe 100644 --- a/test/test_image_application_provider.py +++ b/test/test_image_application_provider.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_inline_config_provider_spec.py b/test/test_inline_config_provider_spec.py index 32ace94..0355114 100644 --- a/test/test_inline_config_provider_spec.py +++ b/test/test_inline_config_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_kubernetes_secret_provider_spec.py b/test/test_kubernetes_secret_provider_spec.py index 2b43662..283dead 100644 --- a/test/test_kubernetes_secret_provider_spec.py +++ b/test/test_kubernetes_secret_provider_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_kubernetes_secret_provider_spec_secret_ref.py b/test/test_kubernetes_secret_provider_spec_secret_ref.py index 85c1ac5..715e964 100644 --- a/test/test_kubernetes_secret_provider_spec_secret_ref.py +++ b/test/test_kubernetes_secret_provider_spec_secret_ref.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_label_selector.py b/test/test_label_selector.py index 37dfd0d..c39f8ea 100644 --- a/test/test_label_selector.py +++ b/test/test_label_selector.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_list_meta.py b/test/test_list_meta.py index aa4bca6..2f3bf77 100644 --- a/test/test_list_meta.py +++ b/test/test_list_meta.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_match_expression.py b/test/test_match_expression.py index a8f4737..924d21c 100644 --- a/test/test_match_expression.py +++ b/test/test_match_expression.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_memory_resource_monitor_spec.py b/test/test_memory_resource_monitor_spec.py index 12fed4e..0ee6a0a 100644 --- a/test/test_memory_resource_monitor_spec.py +++ b/test/test_memory_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_object_meta.py b/test/test_object_meta.py index a02d688..2ae61b9 100644 --- a/test/test_object_meta.py +++ b/test/test_object_meta.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_patch_request_inner.py b/test/test_patch_request_inner.py index 8324d07..d1f18d1 100644 --- a/test/test_patch_request_inner.py +++ b/test/test_patch_request_inner.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_rendered_application_spec.py b/test/test_rendered_application_spec.py deleted file mode 100644 index 4aa4baf..0000000 --- a/test/test_rendered_application_spec.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.rendered_application_spec import RenderedApplicationSpec - -class TestRenderedApplicationSpec(unittest.TestCase): - """RenderedApplicationSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> RenderedApplicationSpec: - """Test RenderedApplicationSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `RenderedApplicationSpec` - """ - model = RenderedApplicationSpec() - if include_optional: - return RenderedApplicationSpec( - env_vars = { - 'key' : '' - }, - name = '', - image = '' - ) - else: - return RenderedApplicationSpec( - image = '', - ) - """ - - def testRenderedApplicationSpec(self): - """Test RenderedApplicationSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_rendered_device_spec.py b/test/test_rendered_device_spec.py deleted file mode 100644 index 1ac62ae..0000000 --- a/test/test_rendered_device_spec.py +++ /dev/null @@ -1,106 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.rendered_device_spec import RenderedDeviceSpec - -class TestRenderedDeviceSpec(unittest.TestCase): - """RenderedDeviceSpec unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> RenderedDeviceSpec: - """Test RenderedDeviceSpec - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `RenderedDeviceSpec` - """ - model = RenderedDeviceSpec() - if include_optional: - return RenderedDeviceSpec( - rendered_version = '', - os = flightctl.models.device_os_spec.DeviceOSSpec( - image = '', ), - config = '', - applications = [ - flightctl.models.rendered_application_spec.RenderedApplicationSpec() - ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), - systemd = flightctl.models.rendered_device_spec_systemd.RenderedDeviceSpec_systemd( - match_patterns = [ - '' - ], ), - resources = [ - null - ], - console = flightctl.models.device_console.DeviceConsole( - g_rpc_endpoint = '', - session_id = '', ) - ) - else: - return RenderedDeviceSpec( - rendered_version = '', - ) - """ - - def testRenderedDeviceSpec(self): - """Test RenderedDeviceSpec""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_rendered_device_spec_systemd.py b/test/test_rendered_device_spec_systemd.py deleted file mode 100644 index 0ee0d67..0000000 --- a/test/test_rendered_device_spec_systemd.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.rendered_device_spec_systemd import RenderedDeviceSpecSystemd - -class TestRenderedDeviceSpecSystemd(unittest.TestCase): - """RenderedDeviceSpecSystemd unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> RenderedDeviceSpecSystemd: - """Test RenderedDeviceSpecSystemd - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `RenderedDeviceSpecSystemd` - """ - model = RenderedDeviceSpecSystemd() - if include_optional: - return RenderedDeviceSpecSystemd( - match_patterns = [ - '' - ] - ) - else: - return RenderedDeviceSpecSystemd( - ) - """ - - def testRenderedDeviceSpecSystemd(self): - """Test RenderedDeviceSpecSystemd""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_repo_spec_type.py b/test/test_repo_spec_type.py index d7455a2..6dc7085 100644 --- a/test/test_repo_spec_type.py +++ b/test/test_repo_spec_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_repository.py b/test/test_repository.py index 20b2ab9..a1f57b5 100644 --- a/test/test_repository.py +++ b/test/test_repository.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -79,6 +80,7 @@ def make_instance(self, include_optional) -> Repository: 'key' : '' }, resource_version = '', ), + spec = flightctl.models.repository_spec.RepositorySpec(), ) """ diff --git a/test/test_repository_api.py b/test/test_repository_api.py index 9f4d948..45833a9 100644 --- a/test/test_repository_api.py +++ b/test/test_repository_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_repository_list.py b/test/test_repository_list.py index ca52274..030e936 100644 --- a/test/test_repository_list.py +++ b/test/test_repository_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_repository_spec.py b/test/test_repository_spec.py index cb2a1c5..0f96598 100644 --- a/test/test_repository_spec.py +++ b/test/test_repository_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_repository_status.py b/test/test_repository_status.py index fe7538b..5e7f51f 100644 --- a/test/test_repository_status.py +++ b/test/test_repository_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_alert_rule.py b/test/test_resource_alert_rule.py index 3c802dc..db1aa8c 100644 --- a/test/test_resource_alert_rule.py +++ b/test/test_resource_alert_rule.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_alert_severity_type.py b/test/test_resource_alert_severity_type.py index 3a4f5b5..c672fa2 100644 --- a/test/test_resource_alert_severity_type.py +++ b/test/test_resource_alert_severity_type.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_monitor.py b/test/test_resource_monitor.py index 20eaca9..93feb87 100644 --- a/test/test_resource_monitor.py +++ b/test/test_resource_monitor.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_monitor_spec.py b/test/test_resource_monitor_spec.py index 819cd07..388e2c6 100644 --- a/test/test_resource_monitor_spec.py +++ b/test/test_resource_monitor_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_sync.py b/test/test_resource_sync.py index a90857c..80a899f 100644 --- a/test/test_resource_sync.py +++ b/test/test_resource_sync.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_sync_list.py b/test/test_resource_sync_list.py index 2a02fb7..fbfea2e 100644 --- a/test/test_resource_sync_list.py +++ b/test/test_resource_sync_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_sync_spec.py b/test/test_resource_sync_spec.py index 949c04f..835d207 100644 --- a/test/test_resource_sync_spec.py +++ b/test/test_resource_sync_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resource_sync_status.py b/test/test_resource_sync_status.py index e453023..4a1bd45 100644 --- a/test/test_resource_sync_status.py +++ b/test/test_resource_sync_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_resourcesync_api.py b/test/test_resourcesync_api.py index 36754ed..8a247cc 100644 --- a/test/test_resourcesync_api.py +++ b/test/test_resourcesync_api.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_rollout_device_selection.py b/test/test_rollout_device_selection.py index e03b03a..e6f033b 100644 --- a/test/test_rollout_device_selection.py +++ b/test/test_rollout_device_selection.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,7 +36,7 @@ def make_instance(self, include_optional) -> RolloutDeviceSelection: model = RolloutDeviceSelection() if include_optional: return RolloutDeviceSelection( - strategy = '', + strategy = 'BatchSequence', sequence = [ flightctl.models.batch.Batch( selector = flightctl.models.label_selector.LabelSelector( @@ -56,7 +57,7 @@ def make_instance(self, include_optional) -> RolloutDeviceSelection: ) else: return RolloutDeviceSelection( - strategy = '', + strategy = 'BatchSequence', ) """ diff --git a/test/test_rollout_policy.py b/test/test_rollout_policy.py index 028a049..3f550cf 100644 --- a/test/test_rollout_policy.py +++ b/test/test_rollout_policy.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,16 +36,15 @@ def make_instance(self, include_optional) -> RolloutPolicy: model = RolloutPolicy() if include_optional: return RolloutPolicy( - disruption_allowance = flightctl.models.disruption_allowance.DisruptionAllowance( + disruption_budget = flightctl.models.disruption_budget.DisruptionBudget( group_by = [ - '' + 'C98JLe5iL60-aa-.Ctq9dcsc.2-790gAa7Xa5u50ArrlGpCQjkQVRmfnjddwcDM.9fv7' ], - min_available = 56, - max_unavailable = 56, ), - device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection( - strategy = '', ), + min_available = 1, + max_unavailable = 1, ), + device_selection = flightctl.models.rollout_device_selection.RolloutDeviceSelection(), success_threshold = '', - default_update_timeout = '68072888001528021798096225500h' + default_update_timeout = '0s' ) else: return RolloutPolicy( diff --git a/test/test_rollout_strategy.py b/test/test_rollout_strategy.py new file mode 100644 index 0000000..db55b14 --- /dev/null +++ b/test/test_rollout_strategy.py @@ -0,0 +1,34 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.rollout_strategy import RolloutStrategy + +class TestRolloutStrategy(unittest.TestCase): + """RolloutStrategy unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testRolloutStrategy(self): + """Test RolloutStrategy""" + # inst = RolloutStrategy() + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_sort_order.py b/test/test_sort_order.py deleted file mode 100644 index e5ee1ea..0000000 --- a/test/test_sort_order.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.models.sort_order import SortOrder - -class TestSortOrder(unittest.TestCase): - """SortOrder unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def testSortOrder(self): - """Test SortOrder""" - # inst = SortOrder() - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_ssh_config.py b/test/test_ssh_config.py index cb739bb..5f0bdfa 100644 --- a/test/test_ssh_config.py +++ b/test/test_ssh_config.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_ssh_repo_spec.py b/test/test_ssh_repo_spec.py index fdca34d..d3f9f34 100644 --- a/test/test_ssh_repo_spec.py +++ b/test/test_ssh_repo_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_status.py b/test/test_status.py index 954b394..6689a76 100644 --- a/test/test_status.py +++ b/test/test_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,12 +36,21 @@ def make_instance(self, include_optional) -> Status: model = Status() if include_optional: return Status( + api_version = '', + kind = '', + code = 56, message = '', reason = '', status = '' ) else: return Status( + api_version = '', + kind = '', + code = 56, + message = '', + reason = '', + status = '', ) """ diff --git a/test/test_template_version.py b/test/test_template_version.py index c82c12c..ff8baa9 100644 --- a/test/test_template_version.py +++ b/test/test_template_version.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_template_version_list.py b/test/test_template_version_list.py index a9cda0e..30343ae 100644 --- a/test/test_template_version_list.py +++ b/test/test_template_version_list.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_template_version_spec.py b/test/test_template_version_spec.py index 44b6157..40e38e5 100644 --- a/test/test_template_version_spec.py +++ b/test/test_template_version_spec.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. diff --git a/test/test_template_version_status.py b/test/test_template_version_status.py index 2e0fcd2..4e8abf0 100644 --- a/test/test_template_version_status.py +++ b/test/test_template_version_status.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -35,51 +36,22 @@ def make_instance(self, include_optional) -> TemplateVersionStatus: model = TemplateVersionStatus() if include_optional: return TemplateVersionStatus( - os = flightctl.models.device_os_spec.DeviceOSSpec( + update_policy = flightctl.models.device_update_policy_spec.DeviceUpdatePolicySpec( + download_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), + update_schedule = flightctl.models.update_schedule.UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s', ), ), + os = flightctl.models.device_os_spec.DeviceOsSpec( image = '', ), config = [ null ], - hooks = flightctl.models.device_hooks_spec.DeviceHooksSpec( - before_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - on_file = [ - 'Create' - ], - path = '', ) - ], - after_updating = [ - flightctl.models.device_update_hook_spec.DeviceUpdateHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], - path = '', ) - ], - before_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], - after_rebooting = [ - flightctl.models.device_reboot_hook_spec.DeviceRebootHookSpec( - name = '', - description = '', - actions = [ - flightctl.models.hook_action.HookAction() - ], ) - ], ), applications = [ - flightctl.models.application_spec.ApplicationSpec() + flightctl.models.application_provider_spec.ApplicationProviderSpec() ], systemd = flightctl.models.device_spec_systemd.DeviceSpec_systemd( match_patterns = [ @@ -88,6 +60,13 @@ def make_instance(self, include_optional) -> TemplateVersionStatus: resources = [ null ], + consoles = [ + flightctl.models.device_console.DeviceConsole( + session_metadata = '', + session_id = '', ) + ], + decommissioning = flightctl.models.device_decommission.DeviceDecommission( + target = 'Unenroll', ), updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), conditions = [ flightctl.models.condition.Condition( @@ -101,6 +80,15 @@ def make_instance(self, include_optional) -> TemplateVersionStatus: ) else: return TemplateVersionStatus( + conditions = [ + flightctl.models.condition.Condition( + type = 'Approved', + status = 'True', + observed_generation = 56, + last_transition_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), + message = '', + reason = '', ) + ], ) """ diff --git a/test/test_templateversion_api.py b/test/test_templateversion_api.py deleted file mode 100644 index 43eed5e..0000000 --- a/test/test_templateversion_api.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding: utf-8 - -""" - Open Device Management API - - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - - The version of the OpenAPI document: undefined - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from flightctl.api.templateversion_api import TemplateversionApi - - -class TestTemplateversionApi(unittest.TestCase): - """TemplateversionApi unit test stubs""" - - def setUp(self) -> None: - self.api = TemplateversionApi() - - def tearDown(self) -> None: - pass - - def test_delete_template_version(self) -> None: - """Test case for delete_template_version - - """ - pass - - def test_delete_template_versions(self) -> None: - """Test case for delete_template_versions - - """ - pass - - def test_list_template_versions(self) -> None: - """Test case for list_template_versions - - """ - pass - - def test_read_template_version(self) -> None: - """Test case for read_template_version - - """ - pass - - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_update_schedule.py b/test/test_update_schedule.py new file mode 100644 index 0000000..48e0fe7 --- /dev/null +++ b/test/test_update_schedule.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.models.update_schedule import UpdateSchedule + +class TestUpdateSchedule(unittest.TestCase): + """UpdateSchedule unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def make_instance(self, include_optional) -> UpdateSchedule: + """Test UpdateSchedule + include_optional is a boolean, when False only required + params are included, when True both required and + optional params are included """ + # uncomment below to create an instance of `UpdateSchedule` + """ + model = UpdateSchedule() + if include_optional: + return UpdateSchedule( + time_zone = 'Local', + at = '', + start_grace_duration = '0s' + ) + else: + return UpdateSchedule( + at = '', + ) + """ + + def testUpdateSchedule(self): + """Test UpdateSchedule""" + # inst_req_only = self.make_instance(include_optional=False) + # inst_req_and_optional = self.make_instance(include_optional=True) + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_error.py b/test/test_version.py similarity index 50% rename from test/test_error.py rename to test/test_version.py index f0aed9d..0ed366b 100644 --- a/test/test_error.py +++ b/test/test_version.py @@ -1,11 +1,12 @@ # coding: utf-8 """ - Open Device Management API + Flight Control API - No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. - The version of the OpenAPI document: undefined + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io Generated by OpenAPI Generator (https://openapi-generator.tech) Do not edit the class manually. @@ -14,10 +15,10 @@ import unittest -from flightctl.models.error import Error +from flightctl.models.version import Version -class TestError(unittest.TestCase): - """Error unit test stubs""" +class TestVersion(unittest.TestCase): + """Version unit test stubs""" def setUp(self): pass @@ -25,26 +26,26 @@ def setUp(self): def tearDown(self): pass - def make_instance(self, include_optional) -> Error: - """Test Error + def make_instance(self, include_optional) -> Version: + """Test Version include_optional is a boolean, when False only required params are included, when True both required and optional params are included """ - # uncomment below to create an instance of `Error` + # uncomment below to create an instance of `Version` """ - model = Error() + model = Version() if include_optional: - return Error( - message = '' + return Version( + version = '' ) else: - return Error( - message = '', + return Version( + version = '', ) """ - def testError(self): - """Test Error""" + def testVersion(self): + """Test Version""" # inst_req_only = self.make_instance(include_optional=False) # inst_req_and_optional = self.make_instance(include_optional=True) diff --git a/test/test_version_api.py b/test/test_version_api.py new file mode 100644 index 0000000..7979f5f --- /dev/null +++ b/test/test_version_api.py @@ -0,0 +1,38 @@ +# coding: utf-8 + +""" + Flight Control API + + [Flight Control](https://flightctl.io) is a service for declarative management of fleets of edge devices and their workloads. + + The version of the OpenAPI document: v1alpha1 + Contact: team@flightctl.io + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import unittest + +from flightctl.api.version_api import VersionApi + + +class TestVersionApi(unittest.TestCase): + """VersionApi unit test stubs""" + + def setUp(self) -> None: + self.api = VersionApi() + + def tearDown(self) -> None: + pass + + def test_get_version(self) -> None: + """Test case for get_version + + """ + pass + + +if __name__ == '__main__': + unittest.main() From d052845adeb156dcdbb277d1cb32143709e5fb13 Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Sun, 2 Mar 2025 20:17:52 -0500 Subject: [PATCH 02/11] update file dir --- flightctl/{flightctl => }/__init__.py | 0 flightctl/{flightctl => }/api/__init__.py | 0 flightctl/{flightctl => }/api/authentication_api.py | 0 flightctl/{flightctl => }/api/certificatesigningrequest_api.py | 0 flightctl/{flightctl => }/api/device_api.py | 0 flightctl/{flightctl => }/api/enrollmentrequest_api.py | 0 flightctl/{flightctl => }/api/fleet_api.py | 0 flightctl/{flightctl => }/api/repository_api.py | 0 flightctl/{flightctl => }/api/resourcesync_api.py | 0 flightctl/{flightctl => }/api/version_api.py | 0 flightctl/{flightctl => }/api_client.py | 0 flightctl/{flightctl => }/api_response.py | 0 flightctl/{flightctl => }/configuration.py | 0 flightctl/{flightctl => }/exceptions.py | 0 flightctl/{flightctl => }/models/__init__.py | 0 flightctl/{flightctl => }/models/application_env_vars.py | 0 flightctl/{flightctl => }/models/application_provider_spec.py | 0 flightctl/{flightctl => }/models/application_status_type.py | 0 .../{flightctl => }/models/applications_summary_status_type.py | 0 flightctl/{flightctl => }/models/auth_config.py | 0 flightctl/{flightctl => }/models/batch.py | 0 flightctl/{flightctl => }/models/batch_limit.py | 0 flightctl/{flightctl => }/models/batch_sequence.py | 0 flightctl/{flightctl => }/models/certificate_signing_request.py | 0 .../{flightctl => }/models/certificate_signing_request_list.py | 0 .../{flightctl => }/models/certificate_signing_request_spec.py | 0 .../{flightctl => }/models/certificate_signing_request_status.py | 0 flightctl/{flightctl => }/models/condition.py | 0 flightctl/{flightctl => }/models/condition_status.py | 0 flightctl/{flightctl => }/models/condition_type.py | 0 flightctl/{flightctl => }/models/config_provider_spec.py | 0 flightctl/{flightctl => }/models/cpu_resource_monitor_spec.py | 0 flightctl/{flightctl => }/models/custom_resource_monitor_spec.py | 0 flightctl/{flightctl => }/models/device.py | 0 flightctl/{flightctl => }/models/device_application_status.py | 0 .../{flightctl => }/models/device_applications_summary_status.py | 0 flightctl/{flightctl => }/models/device_config_status.py | 0 flightctl/{flightctl => }/models/device_console.py | 0 flightctl/{flightctl => }/models/device_decommission.py | 0 .../{flightctl => }/models/device_decommission_target_type.py | 0 flightctl/{flightctl => }/models/device_integrity_status.py | 0 .../models/device_integrity_status_summary_type.py | 0 flightctl/{flightctl => }/models/device_lifecycle_hook_type.py | 0 flightctl/{flightctl => }/models/device_lifecycle_status.py | 0 flightctl/{flightctl => }/models/device_lifecycle_status_type.py | 0 flightctl/{flightctl => }/models/device_list.py | 0 flightctl/{flightctl => }/models/device_os_spec.py | 0 flightctl/{flightctl => }/models/device_os_status.py | 0 flightctl/{flightctl => }/models/device_resource_status.py | 0 flightctl/{flightctl => }/models/device_resource_status_type.py | 0 flightctl/{flightctl => }/models/device_spec.py | 0 flightctl/{flightctl => }/models/device_spec_systemd.py | 0 flightctl/{flightctl => }/models/device_status.py | 0 flightctl/{flightctl => }/models/device_summary_status.py | 0 flightctl/{flightctl => }/models/device_summary_status_type.py | 0 flightctl/{flightctl => }/models/device_system_info.py | 0 flightctl/{flightctl => }/models/device_update_policy_spec.py | 0 flightctl/{flightctl => }/models/device_updated_status.py | 0 flightctl/{flightctl => }/models/device_updated_status_type.py | 0 flightctl/{flightctl => }/models/devices_summary.py | 0 flightctl/{flightctl => }/models/disk_resource_monitor_spec.py | 0 flightctl/{flightctl => }/models/disruption_budget.py | 0 flightctl/{flightctl => }/models/enrollment_config.py | 0 flightctl/{flightctl => }/models/enrollment_request.py | 0 flightctl/{flightctl => }/models/enrollment_request_approval.py | 0 .../{flightctl => }/models/enrollment_request_approval_status.py | 0 flightctl/{flightctl => }/models/enrollment_request_list.py | 0 flightctl/{flightctl => }/models/enrollment_request_spec.py | 0 flightctl/{flightctl => }/models/enrollment_request_status.py | 0 flightctl/{flightctl => }/models/enrollment_service.py | 0 flightctl/{flightctl => }/models/enrollment_service_auth.py | 0 flightctl/{flightctl => }/models/enrollment_service_service.py | 0 flightctl/{flightctl => }/models/file_operation.py | 0 flightctl/{flightctl => }/models/file_spec.py | 0 flightctl/{flightctl => }/models/fleet.py | 0 flightctl/{flightctl => }/models/fleet_list.py | 0 flightctl/{flightctl => }/models/fleet_rollout_status.py | 0 flightctl/{flightctl => }/models/fleet_spec.py | 0 flightctl/{flightctl => }/models/fleet_spec_template.py | 0 flightctl/{flightctl => }/models/fleet_status.py | 0 flightctl/{flightctl => }/models/generic_repo_spec.py | 0 flightctl/{flightctl => }/models/git_config_provider_spec.py | 0 .../{flightctl => }/models/git_config_provider_spec_git_ref.py | 0 flightctl/{flightctl => }/models/hook_action.py | 0 flightctl/{flightctl => }/models/hook_action_run.py | 0 flightctl/{flightctl => }/models/hook_condition.py | 0 flightctl/{flightctl => }/models/hook_condition_path_op.py | 0 flightctl/{flightctl => }/models/http_config.py | 0 flightctl/{flightctl => }/models/http_config_provider_spec.py | 0 .../{flightctl => }/models/http_config_provider_spec_http_ref.py | 0 flightctl/{flightctl => }/models/http_repo_spec.py | 0 flightctl/{flightctl => }/models/image_application_provider.py | 0 flightctl/{flightctl => }/models/inline_config_provider_spec.py | 0 .../{flightctl => }/models/kubernetes_secret_provider_spec.py | 0 .../models/kubernetes_secret_provider_spec_secret_ref.py | 0 flightctl/{flightctl => }/models/label_selector.py | 0 flightctl/{flightctl => }/models/list_meta.py | 0 flightctl/{flightctl => }/models/match_expression.py | 0 flightctl/{flightctl => }/models/memory_resource_monitor_spec.py | 0 flightctl/{flightctl => }/models/object_meta.py | 0 flightctl/{flightctl => }/models/patch_request_inner.py | 0 flightctl/{flightctl => }/models/repo_spec_type.py | 0 flightctl/{flightctl => }/models/repository.py | 0 flightctl/{flightctl => }/models/repository_list.py | 0 flightctl/{flightctl => }/models/repository_spec.py | 0 flightctl/{flightctl => }/models/repository_status.py | 0 flightctl/{flightctl => }/models/resource_alert_rule.py | 0 flightctl/{flightctl => }/models/resource_alert_severity_type.py | 0 flightctl/{flightctl => }/models/resource_monitor.py | 0 flightctl/{flightctl => }/models/resource_monitor_spec.py | 0 flightctl/{flightctl => }/models/resource_sync.py | 0 flightctl/{flightctl => }/models/resource_sync_list.py | 0 flightctl/{flightctl => }/models/resource_sync_spec.py | 0 flightctl/{flightctl => }/models/resource_sync_status.py | 0 flightctl/{flightctl => }/models/rollout_device_selection.py | 0 flightctl/{flightctl => }/models/rollout_policy.py | 0 flightctl/{flightctl => }/models/rollout_strategy.py | 0 flightctl/{flightctl => }/models/ssh_config.py | 0 flightctl/{flightctl => }/models/ssh_repo_spec.py | 0 flightctl/{flightctl => }/models/status.py | 0 flightctl/{flightctl => }/models/template_version.py | 0 flightctl/{flightctl => }/models/template_version_list.py | 0 flightctl/{flightctl => }/models/template_version_spec.py | 0 flightctl/{flightctl => }/models/template_version_status.py | 0 flightctl/{flightctl => }/models/update_schedule.py | 0 flightctl/{flightctl => }/models/version.py | 0 flightctl/{flightctl => }/py.typed | 0 flightctl/{flightctl => }/rest.py | 0 128 files changed, 0 insertions(+), 0 deletions(-) rename flightctl/{flightctl => }/__init__.py (100%) rename flightctl/{flightctl => }/api/__init__.py (100%) rename flightctl/{flightctl => }/api/authentication_api.py (100%) rename flightctl/{flightctl => }/api/certificatesigningrequest_api.py (100%) rename flightctl/{flightctl => }/api/device_api.py (100%) rename flightctl/{flightctl => }/api/enrollmentrequest_api.py (100%) rename flightctl/{flightctl => }/api/fleet_api.py (100%) rename flightctl/{flightctl => }/api/repository_api.py (100%) rename flightctl/{flightctl => }/api/resourcesync_api.py (100%) rename flightctl/{flightctl => }/api/version_api.py (100%) rename flightctl/{flightctl => }/api_client.py (100%) rename flightctl/{flightctl => }/api_response.py (100%) rename flightctl/{flightctl => }/configuration.py (100%) rename flightctl/{flightctl => }/exceptions.py (100%) rename flightctl/{flightctl => }/models/__init__.py (100%) rename flightctl/{flightctl => }/models/application_env_vars.py (100%) rename flightctl/{flightctl => }/models/application_provider_spec.py (100%) rename flightctl/{flightctl => }/models/application_status_type.py (100%) rename flightctl/{flightctl => }/models/applications_summary_status_type.py (100%) rename flightctl/{flightctl => }/models/auth_config.py (100%) rename flightctl/{flightctl => }/models/batch.py (100%) rename flightctl/{flightctl => }/models/batch_limit.py (100%) rename flightctl/{flightctl => }/models/batch_sequence.py (100%) rename flightctl/{flightctl => }/models/certificate_signing_request.py (100%) rename flightctl/{flightctl => }/models/certificate_signing_request_list.py (100%) rename flightctl/{flightctl => }/models/certificate_signing_request_spec.py (100%) rename flightctl/{flightctl => }/models/certificate_signing_request_status.py (100%) rename flightctl/{flightctl => }/models/condition.py (100%) rename flightctl/{flightctl => }/models/condition_status.py (100%) rename flightctl/{flightctl => }/models/condition_type.py (100%) rename flightctl/{flightctl => }/models/config_provider_spec.py (100%) rename flightctl/{flightctl => }/models/cpu_resource_monitor_spec.py (100%) rename flightctl/{flightctl => }/models/custom_resource_monitor_spec.py (100%) rename flightctl/{flightctl => }/models/device.py (100%) rename flightctl/{flightctl => }/models/device_application_status.py (100%) rename flightctl/{flightctl => }/models/device_applications_summary_status.py (100%) rename flightctl/{flightctl => }/models/device_config_status.py (100%) rename flightctl/{flightctl => }/models/device_console.py (100%) rename flightctl/{flightctl => }/models/device_decommission.py (100%) rename flightctl/{flightctl => }/models/device_decommission_target_type.py (100%) rename flightctl/{flightctl => }/models/device_integrity_status.py (100%) rename flightctl/{flightctl => }/models/device_integrity_status_summary_type.py (100%) rename flightctl/{flightctl => }/models/device_lifecycle_hook_type.py (100%) rename flightctl/{flightctl => }/models/device_lifecycle_status.py (100%) rename flightctl/{flightctl => }/models/device_lifecycle_status_type.py (100%) rename flightctl/{flightctl => }/models/device_list.py (100%) rename flightctl/{flightctl => }/models/device_os_spec.py (100%) rename flightctl/{flightctl => }/models/device_os_status.py (100%) rename flightctl/{flightctl => }/models/device_resource_status.py (100%) rename flightctl/{flightctl => }/models/device_resource_status_type.py (100%) rename flightctl/{flightctl => }/models/device_spec.py (100%) rename flightctl/{flightctl => }/models/device_spec_systemd.py (100%) rename flightctl/{flightctl => }/models/device_status.py (100%) rename flightctl/{flightctl => }/models/device_summary_status.py (100%) rename flightctl/{flightctl => }/models/device_summary_status_type.py (100%) rename flightctl/{flightctl => }/models/device_system_info.py (100%) rename flightctl/{flightctl => }/models/device_update_policy_spec.py (100%) rename flightctl/{flightctl => }/models/device_updated_status.py (100%) rename flightctl/{flightctl => }/models/device_updated_status_type.py (100%) rename flightctl/{flightctl => }/models/devices_summary.py (100%) rename flightctl/{flightctl => }/models/disk_resource_monitor_spec.py (100%) rename flightctl/{flightctl => }/models/disruption_budget.py (100%) rename flightctl/{flightctl => }/models/enrollment_config.py (100%) rename flightctl/{flightctl => }/models/enrollment_request.py (100%) rename flightctl/{flightctl => }/models/enrollment_request_approval.py (100%) rename flightctl/{flightctl => }/models/enrollment_request_approval_status.py (100%) rename flightctl/{flightctl => }/models/enrollment_request_list.py (100%) rename flightctl/{flightctl => }/models/enrollment_request_spec.py (100%) rename flightctl/{flightctl => }/models/enrollment_request_status.py (100%) rename flightctl/{flightctl => }/models/enrollment_service.py (100%) rename flightctl/{flightctl => }/models/enrollment_service_auth.py (100%) rename flightctl/{flightctl => }/models/enrollment_service_service.py (100%) rename flightctl/{flightctl => }/models/file_operation.py (100%) rename flightctl/{flightctl => }/models/file_spec.py (100%) rename flightctl/{flightctl => }/models/fleet.py (100%) rename flightctl/{flightctl => }/models/fleet_list.py (100%) rename flightctl/{flightctl => }/models/fleet_rollout_status.py (100%) rename flightctl/{flightctl => }/models/fleet_spec.py (100%) rename flightctl/{flightctl => }/models/fleet_spec_template.py (100%) rename flightctl/{flightctl => }/models/fleet_status.py (100%) rename flightctl/{flightctl => }/models/generic_repo_spec.py (100%) rename flightctl/{flightctl => }/models/git_config_provider_spec.py (100%) rename flightctl/{flightctl => }/models/git_config_provider_spec_git_ref.py (100%) rename flightctl/{flightctl => }/models/hook_action.py (100%) rename flightctl/{flightctl => }/models/hook_action_run.py (100%) rename flightctl/{flightctl => }/models/hook_condition.py (100%) rename flightctl/{flightctl => }/models/hook_condition_path_op.py (100%) rename flightctl/{flightctl => }/models/http_config.py (100%) rename flightctl/{flightctl => }/models/http_config_provider_spec.py (100%) rename flightctl/{flightctl => }/models/http_config_provider_spec_http_ref.py (100%) rename flightctl/{flightctl => }/models/http_repo_spec.py (100%) rename flightctl/{flightctl => }/models/image_application_provider.py (100%) rename flightctl/{flightctl => }/models/inline_config_provider_spec.py (100%) rename flightctl/{flightctl => }/models/kubernetes_secret_provider_spec.py (100%) rename flightctl/{flightctl => }/models/kubernetes_secret_provider_spec_secret_ref.py (100%) rename flightctl/{flightctl => }/models/label_selector.py (100%) rename flightctl/{flightctl => }/models/list_meta.py (100%) rename flightctl/{flightctl => }/models/match_expression.py (100%) rename flightctl/{flightctl => }/models/memory_resource_monitor_spec.py (100%) rename flightctl/{flightctl => }/models/object_meta.py (100%) rename flightctl/{flightctl => }/models/patch_request_inner.py (100%) rename flightctl/{flightctl => }/models/repo_spec_type.py (100%) rename flightctl/{flightctl => }/models/repository.py (100%) rename flightctl/{flightctl => }/models/repository_list.py (100%) rename flightctl/{flightctl => }/models/repository_spec.py (100%) rename flightctl/{flightctl => }/models/repository_status.py (100%) rename flightctl/{flightctl => }/models/resource_alert_rule.py (100%) rename flightctl/{flightctl => }/models/resource_alert_severity_type.py (100%) rename flightctl/{flightctl => }/models/resource_monitor.py (100%) rename flightctl/{flightctl => }/models/resource_monitor_spec.py (100%) rename flightctl/{flightctl => }/models/resource_sync.py (100%) rename flightctl/{flightctl => }/models/resource_sync_list.py (100%) rename flightctl/{flightctl => }/models/resource_sync_spec.py (100%) rename flightctl/{flightctl => }/models/resource_sync_status.py (100%) rename flightctl/{flightctl => }/models/rollout_device_selection.py (100%) rename flightctl/{flightctl => }/models/rollout_policy.py (100%) rename flightctl/{flightctl => }/models/rollout_strategy.py (100%) rename flightctl/{flightctl => }/models/ssh_config.py (100%) rename flightctl/{flightctl => }/models/ssh_repo_spec.py (100%) rename flightctl/{flightctl => }/models/status.py (100%) rename flightctl/{flightctl => }/models/template_version.py (100%) rename flightctl/{flightctl => }/models/template_version_list.py (100%) rename flightctl/{flightctl => }/models/template_version_spec.py (100%) rename flightctl/{flightctl => }/models/template_version_status.py (100%) rename flightctl/{flightctl => }/models/update_schedule.py (100%) rename flightctl/{flightctl => }/models/version.py (100%) rename flightctl/{flightctl => }/py.typed (100%) rename flightctl/{flightctl => }/rest.py (100%) diff --git a/flightctl/flightctl/__init__.py b/flightctl/__init__.py similarity index 100% rename from flightctl/flightctl/__init__.py rename to flightctl/__init__.py diff --git a/flightctl/flightctl/api/__init__.py b/flightctl/api/__init__.py similarity index 100% rename from flightctl/flightctl/api/__init__.py rename to flightctl/api/__init__.py diff --git a/flightctl/flightctl/api/authentication_api.py b/flightctl/api/authentication_api.py similarity index 100% rename from flightctl/flightctl/api/authentication_api.py rename to flightctl/api/authentication_api.py diff --git a/flightctl/flightctl/api/certificatesigningrequest_api.py b/flightctl/api/certificatesigningrequest_api.py similarity index 100% rename from flightctl/flightctl/api/certificatesigningrequest_api.py rename to flightctl/api/certificatesigningrequest_api.py diff --git a/flightctl/flightctl/api/device_api.py b/flightctl/api/device_api.py similarity index 100% rename from flightctl/flightctl/api/device_api.py rename to flightctl/api/device_api.py diff --git a/flightctl/flightctl/api/enrollmentrequest_api.py b/flightctl/api/enrollmentrequest_api.py similarity index 100% rename from flightctl/flightctl/api/enrollmentrequest_api.py rename to flightctl/api/enrollmentrequest_api.py diff --git a/flightctl/flightctl/api/fleet_api.py b/flightctl/api/fleet_api.py similarity index 100% rename from flightctl/flightctl/api/fleet_api.py rename to flightctl/api/fleet_api.py diff --git a/flightctl/flightctl/api/repository_api.py b/flightctl/api/repository_api.py similarity index 100% rename from flightctl/flightctl/api/repository_api.py rename to flightctl/api/repository_api.py diff --git a/flightctl/flightctl/api/resourcesync_api.py b/flightctl/api/resourcesync_api.py similarity index 100% rename from flightctl/flightctl/api/resourcesync_api.py rename to flightctl/api/resourcesync_api.py diff --git a/flightctl/flightctl/api/version_api.py b/flightctl/api/version_api.py similarity index 100% rename from flightctl/flightctl/api/version_api.py rename to flightctl/api/version_api.py diff --git a/flightctl/flightctl/api_client.py b/flightctl/api_client.py similarity index 100% rename from flightctl/flightctl/api_client.py rename to flightctl/api_client.py diff --git a/flightctl/flightctl/api_response.py b/flightctl/api_response.py similarity index 100% rename from flightctl/flightctl/api_response.py rename to flightctl/api_response.py diff --git a/flightctl/flightctl/configuration.py b/flightctl/configuration.py similarity index 100% rename from flightctl/flightctl/configuration.py rename to flightctl/configuration.py diff --git a/flightctl/flightctl/exceptions.py b/flightctl/exceptions.py similarity index 100% rename from flightctl/flightctl/exceptions.py rename to flightctl/exceptions.py diff --git a/flightctl/flightctl/models/__init__.py b/flightctl/models/__init__.py similarity index 100% rename from flightctl/flightctl/models/__init__.py rename to flightctl/models/__init__.py diff --git a/flightctl/flightctl/models/application_env_vars.py b/flightctl/models/application_env_vars.py similarity index 100% rename from flightctl/flightctl/models/application_env_vars.py rename to flightctl/models/application_env_vars.py diff --git a/flightctl/flightctl/models/application_provider_spec.py b/flightctl/models/application_provider_spec.py similarity index 100% rename from flightctl/flightctl/models/application_provider_spec.py rename to flightctl/models/application_provider_spec.py diff --git a/flightctl/flightctl/models/application_status_type.py b/flightctl/models/application_status_type.py similarity index 100% rename from flightctl/flightctl/models/application_status_type.py rename to flightctl/models/application_status_type.py diff --git a/flightctl/flightctl/models/applications_summary_status_type.py b/flightctl/models/applications_summary_status_type.py similarity index 100% rename from flightctl/flightctl/models/applications_summary_status_type.py rename to flightctl/models/applications_summary_status_type.py diff --git a/flightctl/flightctl/models/auth_config.py b/flightctl/models/auth_config.py similarity index 100% rename from flightctl/flightctl/models/auth_config.py rename to flightctl/models/auth_config.py diff --git a/flightctl/flightctl/models/batch.py b/flightctl/models/batch.py similarity index 100% rename from flightctl/flightctl/models/batch.py rename to flightctl/models/batch.py diff --git a/flightctl/flightctl/models/batch_limit.py b/flightctl/models/batch_limit.py similarity index 100% rename from flightctl/flightctl/models/batch_limit.py rename to flightctl/models/batch_limit.py diff --git a/flightctl/flightctl/models/batch_sequence.py b/flightctl/models/batch_sequence.py similarity index 100% rename from flightctl/flightctl/models/batch_sequence.py rename to flightctl/models/batch_sequence.py diff --git a/flightctl/flightctl/models/certificate_signing_request.py b/flightctl/models/certificate_signing_request.py similarity index 100% rename from flightctl/flightctl/models/certificate_signing_request.py rename to flightctl/models/certificate_signing_request.py diff --git a/flightctl/flightctl/models/certificate_signing_request_list.py b/flightctl/models/certificate_signing_request_list.py similarity index 100% rename from flightctl/flightctl/models/certificate_signing_request_list.py rename to flightctl/models/certificate_signing_request_list.py diff --git a/flightctl/flightctl/models/certificate_signing_request_spec.py b/flightctl/models/certificate_signing_request_spec.py similarity index 100% rename from flightctl/flightctl/models/certificate_signing_request_spec.py rename to flightctl/models/certificate_signing_request_spec.py diff --git a/flightctl/flightctl/models/certificate_signing_request_status.py b/flightctl/models/certificate_signing_request_status.py similarity index 100% rename from flightctl/flightctl/models/certificate_signing_request_status.py rename to flightctl/models/certificate_signing_request_status.py diff --git a/flightctl/flightctl/models/condition.py b/flightctl/models/condition.py similarity index 100% rename from flightctl/flightctl/models/condition.py rename to flightctl/models/condition.py diff --git a/flightctl/flightctl/models/condition_status.py b/flightctl/models/condition_status.py similarity index 100% rename from flightctl/flightctl/models/condition_status.py rename to flightctl/models/condition_status.py diff --git a/flightctl/flightctl/models/condition_type.py b/flightctl/models/condition_type.py similarity index 100% rename from flightctl/flightctl/models/condition_type.py rename to flightctl/models/condition_type.py diff --git a/flightctl/flightctl/models/config_provider_spec.py b/flightctl/models/config_provider_spec.py similarity index 100% rename from flightctl/flightctl/models/config_provider_spec.py rename to flightctl/models/config_provider_spec.py diff --git a/flightctl/flightctl/models/cpu_resource_monitor_spec.py b/flightctl/models/cpu_resource_monitor_spec.py similarity index 100% rename from flightctl/flightctl/models/cpu_resource_monitor_spec.py rename to flightctl/models/cpu_resource_monitor_spec.py diff --git a/flightctl/flightctl/models/custom_resource_monitor_spec.py b/flightctl/models/custom_resource_monitor_spec.py similarity index 100% rename from flightctl/flightctl/models/custom_resource_monitor_spec.py rename to flightctl/models/custom_resource_monitor_spec.py diff --git a/flightctl/flightctl/models/device.py b/flightctl/models/device.py similarity index 100% rename from flightctl/flightctl/models/device.py rename to flightctl/models/device.py diff --git a/flightctl/flightctl/models/device_application_status.py b/flightctl/models/device_application_status.py similarity index 100% rename from flightctl/flightctl/models/device_application_status.py rename to flightctl/models/device_application_status.py diff --git a/flightctl/flightctl/models/device_applications_summary_status.py b/flightctl/models/device_applications_summary_status.py similarity index 100% rename from flightctl/flightctl/models/device_applications_summary_status.py rename to flightctl/models/device_applications_summary_status.py diff --git a/flightctl/flightctl/models/device_config_status.py b/flightctl/models/device_config_status.py similarity index 100% rename from flightctl/flightctl/models/device_config_status.py rename to flightctl/models/device_config_status.py diff --git a/flightctl/flightctl/models/device_console.py b/flightctl/models/device_console.py similarity index 100% rename from flightctl/flightctl/models/device_console.py rename to flightctl/models/device_console.py diff --git a/flightctl/flightctl/models/device_decommission.py b/flightctl/models/device_decommission.py similarity index 100% rename from flightctl/flightctl/models/device_decommission.py rename to flightctl/models/device_decommission.py diff --git a/flightctl/flightctl/models/device_decommission_target_type.py b/flightctl/models/device_decommission_target_type.py similarity index 100% rename from flightctl/flightctl/models/device_decommission_target_type.py rename to flightctl/models/device_decommission_target_type.py diff --git a/flightctl/flightctl/models/device_integrity_status.py b/flightctl/models/device_integrity_status.py similarity index 100% rename from flightctl/flightctl/models/device_integrity_status.py rename to flightctl/models/device_integrity_status.py diff --git a/flightctl/flightctl/models/device_integrity_status_summary_type.py b/flightctl/models/device_integrity_status_summary_type.py similarity index 100% rename from flightctl/flightctl/models/device_integrity_status_summary_type.py rename to flightctl/models/device_integrity_status_summary_type.py diff --git a/flightctl/flightctl/models/device_lifecycle_hook_type.py b/flightctl/models/device_lifecycle_hook_type.py similarity index 100% rename from flightctl/flightctl/models/device_lifecycle_hook_type.py rename to flightctl/models/device_lifecycle_hook_type.py diff --git a/flightctl/flightctl/models/device_lifecycle_status.py b/flightctl/models/device_lifecycle_status.py similarity index 100% rename from flightctl/flightctl/models/device_lifecycle_status.py rename to flightctl/models/device_lifecycle_status.py diff --git a/flightctl/flightctl/models/device_lifecycle_status_type.py b/flightctl/models/device_lifecycle_status_type.py similarity index 100% rename from flightctl/flightctl/models/device_lifecycle_status_type.py rename to flightctl/models/device_lifecycle_status_type.py diff --git a/flightctl/flightctl/models/device_list.py b/flightctl/models/device_list.py similarity index 100% rename from flightctl/flightctl/models/device_list.py rename to flightctl/models/device_list.py diff --git a/flightctl/flightctl/models/device_os_spec.py b/flightctl/models/device_os_spec.py similarity index 100% rename from flightctl/flightctl/models/device_os_spec.py rename to flightctl/models/device_os_spec.py diff --git a/flightctl/flightctl/models/device_os_status.py b/flightctl/models/device_os_status.py similarity index 100% rename from flightctl/flightctl/models/device_os_status.py rename to flightctl/models/device_os_status.py diff --git a/flightctl/flightctl/models/device_resource_status.py b/flightctl/models/device_resource_status.py similarity index 100% rename from flightctl/flightctl/models/device_resource_status.py rename to flightctl/models/device_resource_status.py diff --git a/flightctl/flightctl/models/device_resource_status_type.py b/flightctl/models/device_resource_status_type.py similarity index 100% rename from flightctl/flightctl/models/device_resource_status_type.py rename to flightctl/models/device_resource_status_type.py diff --git a/flightctl/flightctl/models/device_spec.py b/flightctl/models/device_spec.py similarity index 100% rename from flightctl/flightctl/models/device_spec.py rename to flightctl/models/device_spec.py diff --git a/flightctl/flightctl/models/device_spec_systemd.py b/flightctl/models/device_spec_systemd.py similarity index 100% rename from flightctl/flightctl/models/device_spec_systemd.py rename to flightctl/models/device_spec_systemd.py diff --git a/flightctl/flightctl/models/device_status.py b/flightctl/models/device_status.py similarity index 100% rename from flightctl/flightctl/models/device_status.py rename to flightctl/models/device_status.py diff --git a/flightctl/flightctl/models/device_summary_status.py b/flightctl/models/device_summary_status.py similarity index 100% rename from flightctl/flightctl/models/device_summary_status.py rename to flightctl/models/device_summary_status.py diff --git a/flightctl/flightctl/models/device_summary_status_type.py b/flightctl/models/device_summary_status_type.py similarity index 100% rename from flightctl/flightctl/models/device_summary_status_type.py rename to flightctl/models/device_summary_status_type.py diff --git a/flightctl/flightctl/models/device_system_info.py b/flightctl/models/device_system_info.py similarity index 100% rename from flightctl/flightctl/models/device_system_info.py rename to flightctl/models/device_system_info.py diff --git a/flightctl/flightctl/models/device_update_policy_spec.py b/flightctl/models/device_update_policy_spec.py similarity index 100% rename from flightctl/flightctl/models/device_update_policy_spec.py rename to flightctl/models/device_update_policy_spec.py diff --git a/flightctl/flightctl/models/device_updated_status.py b/flightctl/models/device_updated_status.py similarity index 100% rename from flightctl/flightctl/models/device_updated_status.py rename to flightctl/models/device_updated_status.py diff --git a/flightctl/flightctl/models/device_updated_status_type.py b/flightctl/models/device_updated_status_type.py similarity index 100% rename from flightctl/flightctl/models/device_updated_status_type.py rename to flightctl/models/device_updated_status_type.py diff --git a/flightctl/flightctl/models/devices_summary.py b/flightctl/models/devices_summary.py similarity index 100% rename from flightctl/flightctl/models/devices_summary.py rename to flightctl/models/devices_summary.py diff --git a/flightctl/flightctl/models/disk_resource_monitor_spec.py b/flightctl/models/disk_resource_monitor_spec.py similarity index 100% rename from flightctl/flightctl/models/disk_resource_monitor_spec.py rename to flightctl/models/disk_resource_monitor_spec.py diff --git a/flightctl/flightctl/models/disruption_budget.py b/flightctl/models/disruption_budget.py similarity index 100% rename from flightctl/flightctl/models/disruption_budget.py rename to flightctl/models/disruption_budget.py diff --git a/flightctl/flightctl/models/enrollment_config.py b/flightctl/models/enrollment_config.py similarity index 100% rename from flightctl/flightctl/models/enrollment_config.py rename to flightctl/models/enrollment_config.py diff --git a/flightctl/flightctl/models/enrollment_request.py b/flightctl/models/enrollment_request.py similarity index 100% rename from flightctl/flightctl/models/enrollment_request.py rename to flightctl/models/enrollment_request.py diff --git a/flightctl/flightctl/models/enrollment_request_approval.py b/flightctl/models/enrollment_request_approval.py similarity index 100% rename from flightctl/flightctl/models/enrollment_request_approval.py rename to flightctl/models/enrollment_request_approval.py diff --git a/flightctl/flightctl/models/enrollment_request_approval_status.py b/flightctl/models/enrollment_request_approval_status.py similarity index 100% rename from flightctl/flightctl/models/enrollment_request_approval_status.py rename to flightctl/models/enrollment_request_approval_status.py diff --git a/flightctl/flightctl/models/enrollment_request_list.py b/flightctl/models/enrollment_request_list.py similarity index 100% rename from flightctl/flightctl/models/enrollment_request_list.py rename to flightctl/models/enrollment_request_list.py diff --git a/flightctl/flightctl/models/enrollment_request_spec.py b/flightctl/models/enrollment_request_spec.py similarity index 100% rename from flightctl/flightctl/models/enrollment_request_spec.py rename to flightctl/models/enrollment_request_spec.py diff --git a/flightctl/flightctl/models/enrollment_request_status.py b/flightctl/models/enrollment_request_status.py similarity index 100% rename from flightctl/flightctl/models/enrollment_request_status.py rename to flightctl/models/enrollment_request_status.py diff --git a/flightctl/flightctl/models/enrollment_service.py b/flightctl/models/enrollment_service.py similarity index 100% rename from flightctl/flightctl/models/enrollment_service.py rename to flightctl/models/enrollment_service.py diff --git a/flightctl/flightctl/models/enrollment_service_auth.py b/flightctl/models/enrollment_service_auth.py similarity index 100% rename from flightctl/flightctl/models/enrollment_service_auth.py rename to flightctl/models/enrollment_service_auth.py diff --git a/flightctl/flightctl/models/enrollment_service_service.py b/flightctl/models/enrollment_service_service.py similarity index 100% rename from flightctl/flightctl/models/enrollment_service_service.py rename to flightctl/models/enrollment_service_service.py diff --git a/flightctl/flightctl/models/file_operation.py b/flightctl/models/file_operation.py similarity index 100% rename from flightctl/flightctl/models/file_operation.py rename to flightctl/models/file_operation.py diff --git a/flightctl/flightctl/models/file_spec.py b/flightctl/models/file_spec.py similarity index 100% rename from flightctl/flightctl/models/file_spec.py rename to flightctl/models/file_spec.py diff --git a/flightctl/flightctl/models/fleet.py b/flightctl/models/fleet.py similarity index 100% rename from flightctl/flightctl/models/fleet.py rename to flightctl/models/fleet.py diff --git a/flightctl/flightctl/models/fleet_list.py b/flightctl/models/fleet_list.py similarity index 100% rename from flightctl/flightctl/models/fleet_list.py rename to flightctl/models/fleet_list.py diff --git a/flightctl/flightctl/models/fleet_rollout_status.py b/flightctl/models/fleet_rollout_status.py similarity index 100% rename from flightctl/flightctl/models/fleet_rollout_status.py rename to flightctl/models/fleet_rollout_status.py diff --git a/flightctl/flightctl/models/fleet_spec.py b/flightctl/models/fleet_spec.py similarity index 100% rename from flightctl/flightctl/models/fleet_spec.py rename to flightctl/models/fleet_spec.py diff --git a/flightctl/flightctl/models/fleet_spec_template.py b/flightctl/models/fleet_spec_template.py similarity index 100% rename from flightctl/flightctl/models/fleet_spec_template.py rename to flightctl/models/fleet_spec_template.py diff --git a/flightctl/flightctl/models/fleet_status.py b/flightctl/models/fleet_status.py similarity index 100% rename from flightctl/flightctl/models/fleet_status.py rename to flightctl/models/fleet_status.py diff --git a/flightctl/flightctl/models/generic_repo_spec.py b/flightctl/models/generic_repo_spec.py similarity index 100% rename from flightctl/flightctl/models/generic_repo_spec.py rename to flightctl/models/generic_repo_spec.py diff --git a/flightctl/flightctl/models/git_config_provider_spec.py b/flightctl/models/git_config_provider_spec.py similarity index 100% rename from flightctl/flightctl/models/git_config_provider_spec.py rename to flightctl/models/git_config_provider_spec.py diff --git a/flightctl/flightctl/models/git_config_provider_spec_git_ref.py b/flightctl/models/git_config_provider_spec_git_ref.py similarity index 100% rename from flightctl/flightctl/models/git_config_provider_spec_git_ref.py rename to flightctl/models/git_config_provider_spec_git_ref.py diff --git a/flightctl/flightctl/models/hook_action.py b/flightctl/models/hook_action.py similarity index 100% rename from flightctl/flightctl/models/hook_action.py rename to flightctl/models/hook_action.py diff --git a/flightctl/flightctl/models/hook_action_run.py b/flightctl/models/hook_action_run.py similarity index 100% rename from flightctl/flightctl/models/hook_action_run.py rename to flightctl/models/hook_action_run.py diff --git a/flightctl/flightctl/models/hook_condition.py b/flightctl/models/hook_condition.py similarity index 100% rename from flightctl/flightctl/models/hook_condition.py rename to flightctl/models/hook_condition.py diff --git a/flightctl/flightctl/models/hook_condition_path_op.py b/flightctl/models/hook_condition_path_op.py similarity index 100% rename from flightctl/flightctl/models/hook_condition_path_op.py rename to flightctl/models/hook_condition_path_op.py diff --git a/flightctl/flightctl/models/http_config.py b/flightctl/models/http_config.py similarity index 100% rename from flightctl/flightctl/models/http_config.py rename to flightctl/models/http_config.py diff --git a/flightctl/flightctl/models/http_config_provider_spec.py b/flightctl/models/http_config_provider_spec.py similarity index 100% rename from flightctl/flightctl/models/http_config_provider_spec.py rename to flightctl/models/http_config_provider_spec.py diff --git a/flightctl/flightctl/models/http_config_provider_spec_http_ref.py b/flightctl/models/http_config_provider_spec_http_ref.py similarity index 100% rename from flightctl/flightctl/models/http_config_provider_spec_http_ref.py rename to flightctl/models/http_config_provider_spec_http_ref.py diff --git a/flightctl/flightctl/models/http_repo_spec.py b/flightctl/models/http_repo_spec.py similarity index 100% rename from flightctl/flightctl/models/http_repo_spec.py rename to flightctl/models/http_repo_spec.py diff --git a/flightctl/flightctl/models/image_application_provider.py b/flightctl/models/image_application_provider.py similarity index 100% rename from flightctl/flightctl/models/image_application_provider.py rename to flightctl/models/image_application_provider.py diff --git a/flightctl/flightctl/models/inline_config_provider_spec.py b/flightctl/models/inline_config_provider_spec.py similarity index 100% rename from flightctl/flightctl/models/inline_config_provider_spec.py rename to flightctl/models/inline_config_provider_spec.py diff --git a/flightctl/flightctl/models/kubernetes_secret_provider_spec.py b/flightctl/models/kubernetes_secret_provider_spec.py similarity index 100% rename from flightctl/flightctl/models/kubernetes_secret_provider_spec.py rename to flightctl/models/kubernetes_secret_provider_spec.py diff --git a/flightctl/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py b/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py similarity index 100% rename from flightctl/flightctl/models/kubernetes_secret_provider_spec_secret_ref.py rename to flightctl/models/kubernetes_secret_provider_spec_secret_ref.py diff --git a/flightctl/flightctl/models/label_selector.py b/flightctl/models/label_selector.py similarity index 100% rename from flightctl/flightctl/models/label_selector.py rename to flightctl/models/label_selector.py diff --git a/flightctl/flightctl/models/list_meta.py b/flightctl/models/list_meta.py similarity index 100% rename from flightctl/flightctl/models/list_meta.py rename to flightctl/models/list_meta.py diff --git a/flightctl/flightctl/models/match_expression.py b/flightctl/models/match_expression.py similarity index 100% rename from flightctl/flightctl/models/match_expression.py rename to flightctl/models/match_expression.py diff --git a/flightctl/flightctl/models/memory_resource_monitor_spec.py b/flightctl/models/memory_resource_monitor_spec.py similarity index 100% rename from flightctl/flightctl/models/memory_resource_monitor_spec.py rename to flightctl/models/memory_resource_monitor_spec.py diff --git a/flightctl/flightctl/models/object_meta.py b/flightctl/models/object_meta.py similarity index 100% rename from flightctl/flightctl/models/object_meta.py rename to flightctl/models/object_meta.py diff --git a/flightctl/flightctl/models/patch_request_inner.py b/flightctl/models/patch_request_inner.py similarity index 100% rename from flightctl/flightctl/models/patch_request_inner.py rename to flightctl/models/patch_request_inner.py diff --git a/flightctl/flightctl/models/repo_spec_type.py b/flightctl/models/repo_spec_type.py similarity index 100% rename from flightctl/flightctl/models/repo_spec_type.py rename to flightctl/models/repo_spec_type.py diff --git a/flightctl/flightctl/models/repository.py b/flightctl/models/repository.py similarity index 100% rename from flightctl/flightctl/models/repository.py rename to flightctl/models/repository.py diff --git a/flightctl/flightctl/models/repository_list.py b/flightctl/models/repository_list.py similarity index 100% rename from flightctl/flightctl/models/repository_list.py rename to flightctl/models/repository_list.py diff --git a/flightctl/flightctl/models/repository_spec.py b/flightctl/models/repository_spec.py similarity index 100% rename from flightctl/flightctl/models/repository_spec.py rename to flightctl/models/repository_spec.py diff --git a/flightctl/flightctl/models/repository_status.py b/flightctl/models/repository_status.py similarity index 100% rename from flightctl/flightctl/models/repository_status.py rename to flightctl/models/repository_status.py diff --git a/flightctl/flightctl/models/resource_alert_rule.py b/flightctl/models/resource_alert_rule.py similarity index 100% rename from flightctl/flightctl/models/resource_alert_rule.py rename to flightctl/models/resource_alert_rule.py diff --git a/flightctl/flightctl/models/resource_alert_severity_type.py b/flightctl/models/resource_alert_severity_type.py similarity index 100% rename from flightctl/flightctl/models/resource_alert_severity_type.py rename to flightctl/models/resource_alert_severity_type.py diff --git a/flightctl/flightctl/models/resource_monitor.py b/flightctl/models/resource_monitor.py similarity index 100% rename from flightctl/flightctl/models/resource_monitor.py rename to flightctl/models/resource_monitor.py diff --git a/flightctl/flightctl/models/resource_monitor_spec.py b/flightctl/models/resource_monitor_spec.py similarity index 100% rename from flightctl/flightctl/models/resource_monitor_spec.py rename to flightctl/models/resource_monitor_spec.py diff --git a/flightctl/flightctl/models/resource_sync.py b/flightctl/models/resource_sync.py similarity index 100% rename from flightctl/flightctl/models/resource_sync.py rename to flightctl/models/resource_sync.py diff --git a/flightctl/flightctl/models/resource_sync_list.py b/flightctl/models/resource_sync_list.py similarity index 100% rename from flightctl/flightctl/models/resource_sync_list.py rename to flightctl/models/resource_sync_list.py diff --git a/flightctl/flightctl/models/resource_sync_spec.py b/flightctl/models/resource_sync_spec.py similarity index 100% rename from flightctl/flightctl/models/resource_sync_spec.py rename to flightctl/models/resource_sync_spec.py diff --git a/flightctl/flightctl/models/resource_sync_status.py b/flightctl/models/resource_sync_status.py similarity index 100% rename from flightctl/flightctl/models/resource_sync_status.py rename to flightctl/models/resource_sync_status.py diff --git a/flightctl/flightctl/models/rollout_device_selection.py b/flightctl/models/rollout_device_selection.py similarity index 100% rename from flightctl/flightctl/models/rollout_device_selection.py rename to flightctl/models/rollout_device_selection.py diff --git a/flightctl/flightctl/models/rollout_policy.py b/flightctl/models/rollout_policy.py similarity index 100% rename from flightctl/flightctl/models/rollout_policy.py rename to flightctl/models/rollout_policy.py diff --git a/flightctl/flightctl/models/rollout_strategy.py b/flightctl/models/rollout_strategy.py similarity index 100% rename from flightctl/flightctl/models/rollout_strategy.py rename to flightctl/models/rollout_strategy.py diff --git a/flightctl/flightctl/models/ssh_config.py b/flightctl/models/ssh_config.py similarity index 100% rename from flightctl/flightctl/models/ssh_config.py rename to flightctl/models/ssh_config.py diff --git a/flightctl/flightctl/models/ssh_repo_spec.py b/flightctl/models/ssh_repo_spec.py similarity index 100% rename from flightctl/flightctl/models/ssh_repo_spec.py rename to flightctl/models/ssh_repo_spec.py diff --git a/flightctl/flightctl/models/status.py b/flightctl/models/status.py similarity index 100% rename from flightctl/flightctl/models/status.py rename to flightctl/models/status.py diff --git a/flightctl/flightctl/models/template_version.py b/flightctl/models/template_version.py similarity index 100% rename from flightctl/flightctl/models/template_version.py rename to flightctl/models/template_version.py diff --git a/flightctl/flightctl/models/template_version_list.py b/flightctl/models/template_version_list.py similarity index 100% rename from flightctl/flightctl/models/template_version_list.py rename to flightctl/models/template_version_list.py diff --git a/flightctl/flightctl/models/template_version_spec.py b/flightctl/models/template_version_spec.py similarity index 100% rename from flightctl/flightctl/models/template_version_spec.py rename to flightctl/models/template_version_spec.py diff --git a/flightctl/flightctl/models/template_version_status.py b/flightctl/models/template_version_status.py similarity index 100% rename from flightctl/flightctl/models/template_version_status.py rename to flightctl/models/template_version_status.py diff --git a/flightctl/flightctl/models/update_schedule.py b/flightctl/models/update_schedule.py similarity index 100% rename from flightctl/flightctl/models/update_schedule.py rename to flightctl/models/update_schedule.py diff --git a/flightctl/flightctl/models/version.py b/flightctl/models/version.py similarity index 100% rename from flightctl/flightctl/models/version.py rename to flightctl/models/version.py diff --git a/flightctl/flightctl/py.typed b/flightctl/py.typed similarity index 100% rename from flightctl/flightctl/py.typed rename to flightctl/py.typed diff --git a/flightctl/flightctl/rest.py b/flightctl/rest.py similarity index 100% rename from flightctl/flightctl/rest.py rename to flightctl/rest.py From b78fcf40430b56a0e342acf962a72f906281c93d Mon Sep 17 00:00:00 2001 From: Siddarth Royapally <60885840+SiddarthR56@users.noreply.github.com> Date: Sun, 2 Mar 2025 21:17:51 -0500 Subject: [PATCH 03/11] Update condition_type.py remove duplicate --- flightctl/models/condition_type.py | 1 - 1 file changed, 1 deletion(-) diff --git a/flightctl/models/condition_type.py b/flightctl/models/condition_type.py index 9db971d..0f71a61 100644 --- a/flightctl/models/condition_type.py +++ b/flightctl/models/condition_type.py @@ -28,7 +28,6 @@ class ConditionType(str, Enum): allowed enum values """ APPROVED = 'Approved' - APPROVED = 'Approved' DENIED = 'Denied' FAILED = 'Failed' ACCESSIBLE = 'Accessible' From 5beb302589ae8324bfcd8f0dc46dbc685059f86d Mon Sep 17 00:00:00 2001 From: Siddarth Royapally <60885840+SiddarthR56@users.noreply.github.com> Date: Sun, 2 Mar 2025 21:20:06 -0500 Subject: [PATCH 04/11] Update condition_type.py remove duplicate enum --- flightctl/models/condition_type.py | 1 - 1 file changed, 1 deletion(-) diff --git a/flightctl/models/condition_type.py b/flightctl/models/condition_type.py index 0f71a61..e4ef97e 100644 --- a/flightctl/models/condition_type.py +++ b/flightctl/models/condition_type.py @@ -31,7 +31,6 @@ class ConditionType(str, Enum): DENIED = 'Denied' FAILED = 'Failed' ACCESSIBLE = 'Accessible' - ACCESSIBLE = 'Accessible' RESOURCEPARSED = 'ResourceParsed' SYNCED = 'Synced' OVERLAPPINGSELECTORS = 'OverlappingSelectors' From 903a50aae7edb97cb296156ad53041c4d90424af Mon Sep 17 00:00:00 2001 From: Siddarth Royapally <60885840+SiddarthR56@users.noreply.github.com> Date: Mon, 3 Mar 2025 22:48:50 -0500 Subject: [PATCH 05/11] Update devices_summary.py --- flightctl/models/devices_summary.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flightctl/models/devices_summary.py b/flightctl/models/devices_summary.py index eb5098d..a725c35 100644 --- a/flightctl/models/devices_summary.py +++ b/flightctl/models/devices_summary.py @@ -85,9 +85,9 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "total": obj.get("total"), - "applicationStatus": obj.get("applicationStatus"), - "summaryStatus": obj.get("summaryStatus"), - "updateStatus": obj.get("updateStatus") + "applicationStatus": obj.get("applicationStatus") or {}, + "summaryStatus": obj.get("summaryStatus") or {}, + "updateStatus": obj.get("updateStatus") or {} }) return _obj From 5316eee4294e1a0e11c1b64f2cdb7b123c32e02b Mon Sep 17 00:00:00 2001 From: Siddarth Royapally <60885840+SiddarthR56@users.noreply.github.com> Date: Tue, 4 Mar 2025 02:56:45 -0500 Subject: [PATCH 06/11] Update certificate_signing_request_spec.py --- flightctl/models/certificate_signing_request_spec.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flightctl/models/certificate_signing_request_spec.py b/flightctl/models/certificate_signing_request_spec.py index 6ee2c70..8141603 100644 --- a/flightctl/models/certificate_signing_request_spec.py +++ b/flightctl/models/certificate_signing_request_spec.py @@ -89,8 +89,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "expirationSeconds": obj.get("expirationSeconds"), "extra": obj.get("extra"), - "request": obj.get("request"), - "signerName": obj.get("signerName"), + "request": obj.get("request") if isinstance(obj.get("request"), (bytes, str)) else b"", + "signerName": obj.get("signerName") or "", "uid": obj.get("uid"), "usages": obj.get("usages"), "username": obj.get("username") From 50fd204ce6d6d09240d0541135b64f74d356da5d Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Fri, 7 Mar 2025 13:23:46 -0500 Subject: [PATCH 07/11] Revert "Update certificate_signing_request_spec.py" This reverts commit 5316eee4294e1a0e11c1b64f2cdb7b123c32e02b. --- flightctl/models/certificate_signing_request_spec.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flightctl/models/certificate_signing_request_spec.py b/flightctl/models/certificate_signing_request_spec.py index 8141603..6ee2c70 100644 --- a/flightctl/models/certificate_signing_request_spec.py +++ b/flightctl/models/certificate_signing_request_spec.py @@ -89,8 +89,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "expirationSeconds": obj.get("expirationSeconds"), "extra": obj.get("extra"), - "request": obj.get("request") if isinstance(obj.get("request"), (bytes, str)) else b"", - "signerName": obj.get("signerName") or "", + "request": obj.get("request"), + "signerName": obj.get("signerName"), "uid": obj.get("uid"), "usages": obj.get("usages"), "username": obj.get("username") From c6d9b1658bf63e9bc55f1bd8d4b02da478a67ea4 Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Mon, 10 Mar 2025 11:11:29 -0400 Subject: [PATCH 08/11] Updating API spec --- README.md | 12 ++++++++ api/v1alpha1/openapi.yml | 13 +++++---- .../certificate_signing_request_spec.py | 14 +++++++-- flightctl/models/devices_summary.py | 29 ++++++++++++++----- modifications.txt | 17 +++++++++++ 5 files changed, 71 insertions(+), 14 deletions(-) create mode 100644 modifications.txt diff --git a/README.md b/README.md index 2b56a9d..c91bd31 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,18 @@ import flightctl Execute `pytest` to run the tests. + +### Modifying OpenAPI Spec Before Generating Python Client +1. **Get the Latest OpenAPI Spec**: + Make sure you have the most up-to-date version of the OpenAPI spec from the FlightCTL repository. + +2. **Apply the Modifications**: + Refer to the `modifications.txt` file and manually apply the listed changes to the OpenAPI spec. + +3. **Generate the Python Client**: + Once you've made the necessary modifications, generate the Python client with the updated OpenAPI spec + + ## Getting Started Please follow the [installation procedure](#installation--usage) and then run the following: diff --git a/api/v1alpha1/openapi.yml b/api/v1alpha1/openapi.yml index ca3fa38..e068df3 100644 --- a/api/v1alpha1/openapi.yml +++ b/api/v1alpha1/openapi.yml @@ -4623,6 +4623,7 @@ components: applicationStatus: type: object default: {} + nullable: true #EDM-851 additionalProperties: type: integer format: int64 @@ -4630,6 +4631,7 @@ components: summaryStatus: type: object default: {} + nullable: true #EDM-851 additionalProperties: type: integer format: int64 @@ -4637,6 +4639,7 @@ components: updateStatus: type: object default: {} + nullable: true #EDM-851 additionalProperties: type: integer format: int64 @@ -4879,12 +4882,10 @@ components: type: string description: Type of condition in CamelCase. enum: - - 'Approved' # EnrollmentRequest - - 'Approved' # CertificateSigningRequest + - 'Approved' # EnrollmentRequest and CertificateSigningRequest #EDM-1249 - 'Denied' # CertificateSigningRequest - 'Failed' # CertificateSigningRequest - - 'Accessible' # Repository - - 'Accessible' # ResourceSync + - 'Accessible' # Repository and ResourceSync #EDM-1249 - 'ResourceParsed' # ResourceSync - 'Synced' # ResourceSync - 'OverlappingSelectors' # Fleet @@ -4982,9 +4983,11 @@ components: description: The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource. format: byte type: string + nullable: true #EDM-852 signerName: description: Indicates the requested signer, and is a qualified name. type: string + nullable: true #EDM-852 uid: description: UID of the user that created the CSR, populated by the API server on creation and immutable. type: string @@ -5021,4 +5024,4 @@ components: description: Git version of the service. type: string required: - - version + - version \ No newline at end of file diff --git a/flightctl/models/certificate_signing_request_spec.py b/flightctl/models/certificate_signing_request_spec.py index 6ee2c70..1b391d3 100644 --- a/flightctl/models/certificate_signing_request_spec.py +++ b/flightctl/models/certificate_signing_request_spec.py @@ -29,8 +29,8 @@ class CertificateSigningRequestSpec(BaseModel): """ # noqa: E501 expiration_seconds: Optional[StrictInt] = Field(default=None, description="Requested duration of validity for the certificate.", alias="expirationSeconds") extra: Optional[Dict[str, List[StrictStr]]] = Field(default=None, description="Extra attributes of the user that created the CSR, populated by the API server on creation and immutable.") - request: Union[StrictBytes, StrictStr] = Field(description="The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource.") - signer_name: StrictStr = Field(description="Indicates the requested signer, and is a qualified name.", alias="signerName") + request: Optional[Union[StrictBytes, StrictStr]] = Field(description="The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource.") + signer_name: Optional[StrictStr] = Field(description="Indicates the requested signer, and is a qualified name.", alias="signerName") uid: Optional[StrictStr] = Field(default=None, description="UID of the user that created the CSR, populated by the API server on creation and immutable.") usages: Optional[List[StrictStr]] = Field(default=None, description="Usages specifies a set of key usages requested in the issued certificate.") username: Optional[StrictStr] = Field(default=None, description="Name of the user that created the CSR, populated by the API server on creation and immutable.") @@ -75,6 +75,16 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # set to None if request (nullable) is None + # and model_fields_set contains the field + if self.request is None and "request" in self.model_fields_set: + _dict['request'] = None + + # set to None if signer_name (nullable) is None + # and model_fields_set contains the field + if self.signer_name is None and "signer_name" in self.model_fields_set: + _dict['signerName'] = None + return _dict @classmethod diff --git a/flightctl/models/devices_summary.py b/flightctl/models/devices_summary.py index a725c35..2a11707 100644 --- a/flightctl/models/devices_summary.py +++ b/flightctl/models/devices_summary.py @@ -19,7 +19,7 @@ import json from pydantic import BaseModel, ConfigDict, Field, StrictInt -from typing import Any, ClassVar, Dict, List +from typing import Any, ClassVar, Dict, List, Optional from typing import Optional, Set from typing_extensions import Self @@ -28,9 +28,9 @@ class DevicesSummary(BaseModel): A summary of the devices in the fleet returned when fetching a single Fleet. """ # noqa: E501 total: StrictInt = Field(description="The total number of devices in the fleet.") - application_status: Dict[str, StrictInt] = Field(description="A breakdown of the devices in the fleet by \"application\" status.", alias="applicationStatus") - summary_status: Dict[str, StrictInt] = Field(description="A breakdown of the devices in the fleet by \"summary\" status.", alias="summaryStatus") - update_status: Dict[str, StrictInt] = Field(description="A breakdown of the devices in the fleet by \"updated\" status.", alias="updateStatus") + application_status: Optional[Dict[str, StrictInt]] = Field(description="A breakdown of the devices in the fleet by \"application\" status.", alias="applicationStatus") + summary_status: Optional[Dict[str, StrictInt]] = Field(description="A breakdown of the devices in the fleet by \"summary\" status.", alias="summaryStatus") + update_status: Optional[Dict[str, StrictInt]] = Field(description="A breakdown of the devices in the fleet by \"updated\" status.", alias="updateStatus") __properties: ClassVar[List[str]] = ["total", "applicationStatus", "summaryStatus", "updateStatus"] model_config = ConfigDict( @@ -72,6 +72,21 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) + # set to None if application_status (nullable) is None + # and model_fields_set contains the field + if self.application_status is None and "application_status" in self.model_fields_set: + _dict['applicationStatus'] = None + + # set to None if summary_status (nullable) is None + # and model_fields_set contains the field + if self.summary_status is None and "summary_status" in self.model_fields_set: + _dict['summaryStatus'] = None + + # set to None if update_status (nullable) is None + # and model_fields_set contains the field + if self.update_status is None and "update_status" in self.model_fields_set: + _dict['updateStatus'] = None + return _dict @classmethod @@ -85,9 +100,9 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "total": obj.get("total"), - "applicationStatus": obj.get("applicationStatus") or {}, - "summaryStatus": obj.get("summaryStatus") or {}, - "updateStatus": obj.get("updateStatus") or {} + "applicationStatus": obj.get("applicationStatus"), + "summaryStatus": obj.get("summaryStatus"), + "updateStatus": obj.get("updateStatus") }) return _obj diff --git a/modifications.txt b/modifications.txt new file mode 100644 index 0000000..87c97dd --- /dev/null +++ b/modifications.txt @@ -0,0 +1,17 @@ +API Specification Updates + +This document outlines the required changes to the API specification to address validation issues and ensure proper handling of nullable fields. +1. Fix Duplicate Enum Values in ConditionType (EDM-1249) + + Problem: The ConditionType enum contains duplicate values ('Approved' and 'Accessible') for different contexts. + Solution: Replace the duplicate values with more specific names to avoid conflicts. + +2. Allow null for Optional Fields in DevicesSummary (EDM-851) + + Problem: Fields like applicationStatus, summaryStatus, and updateStatus are not nullable, but they may return null in certain cases. + Solution: Add nullable: true to allow these fields to be null. + +3. Nullable Fields in CertificateSigningRequestSpec (EDM-852) + + Problem: The request and signerName fields in the CertificateSigningRequestSpec are sometimes returned as null but are not marked as nullable. + Solution: Add nullable: true to both fields to support null values. \ No newline at end of file From 0bd36830a57e6532e0173e6a021ee19f30a9a8bd Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Mon, 10 Mar 2025 11:49:23 -0400 Subject: [PATCH 09/11] Updating API spec --- api/v1alpha1/openapi.yml | 3 +++ flightctl/models/repository.py | 2 +- modifications.txt | 5 +++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/api/v1alpha1/openapi.yml b/api/v1alpha1/openapi.yml index e068df3..a909d6f 100644 --- a/api/v1alpha1/openapi.yml +++ b/api/v1alpha1/openapi.yml @@ -3306,6 +3306,9 @@ components: metadata: $ref: '#/components/schemas/ObjectMeta' spec: + type: object + nullable: true #EDM-850 + description: 'Specification of the repository (nullable for deletion).' $ref: '#/components/schemas/RepositorySpec' status: $ref: '#/components/schemas/RepositoryStatus' diff --git a/flightctl/models/repository.py b/flightctl/models/repository.py index fc7ab5f..36b6b79 100644 --- a/flightctl/models/repository.py +++ b/flightctl/models/repository.py @@ -33,7 +33,7 @@ class Repository(BaseModel): api_version: StrictStr = Field(description="APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources.", alias="apiVersion") kind: StrictStr = Field(description="Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds.") metadata: ObjectMeta - spec: RepositorySpec + spec: Optional[RepositorySpec] = None status: Optional[RepositoryStatus] = None __properties: ClassVar[List[str]] = ["apiVersion", "kind", "metadata", "spec", "status"] diff --git a/modifications.txt b/modifications.txt index 87c97dd..2bb31d2 100644 --- a/modifications.txt +++ b/modifications.txt @@ -14,4 +14,9 @@ This document outlines the required changes to the API specification to address 3. Nullable Fields in CertificateSigningRequestSpec (EDM-852) Problem: The request and signerName fields in the CertificateSigningRequestSpec are sometimes returned as null but are not marked as nullable. + Solution: Add nullable: true to both fields to support null values. + +4. Nullable Fields in Repository (EDM-850) + + Problem: The RepositorySpecfieldin the Repository is sometimes returned as null but are not marked as nullable. Solution: Add nullable: true to both fields to support null values. \ No newline at end of file From ced14139fe41858332f24f53a4a835a3b0dee414 Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Sat, 15 Mar 2025 15:12:43 -0400 Subject: [PATCH 10/11] Updating nullable fields --- api/v1alpha1/openapi.yml | 1 - flightctl/models/certificate_signing_request_spec.py | 7 +------ 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/api/v1alpha1/openapi.yml b/api/v1alpha1/openapi.yml index a909d6f..3e705d4 100644 --- a/api/v1alpha1/openapi.yml +++ b/api/v1alpha1/openapi.yml @@ -4990,7 +4990,6 @@ components: signerName: description: Indicates the requested signer, and is a qualified name. type: string - nullable: true #EDM-852 uid: description: UID of the user that created the CSR, populated by the API server on creation and immutable. type: string diff --git a/flightctl/models/certificate_signing_request_spec.py b/flightctl/models/certificate_signing_request_spec.py index 1b391d3..0179f76 100644 --- a/flightctl/models/certificate_signing_request_spec.py +++ b/flightctl/models/certificate_signing_request_spec.py @@ -30,7 +30,7 @@ class CertificateSigningRequestSpec(BaseModel): expiration_seconds: Optional[StrictInt] = Field(default=None, description="Requested duration of validity for the certificate.", alias="expirationSeconds") extra: Optional[Dict[str, List[StrictStr]]] = Field(default=None, description="Extra attributes of the user that created the CSR, populated by the API server on creation and immutable.") request: Optional[Union[StrictBytes, StrictStr]] = Field(description="The base64-encoded PEM-encoded PKCS#10 CSR. Matches the spec.request field in a kubernetes CertificateSigningRequest resource.") - signer_name: Optional[StrictStr] = Field(description="Indicates the requested signer, and is a qualified name.", alias="signerName") + signer_name: StrictStr = Field(description="Indicates the requested signer, and is a qualified name.", alias="signerName") uid: Optional[StrictStr] = Field(default=None, description="UID of the user that created the CSR, populated by the API server on creation and immutable.") usages: Optional[List[StrictStr]] = Field(default=None, description="Usages specifies a set of key usages requested in the issued certificate.") username: Optional[StrictStr] = Field(default=None, description="Name of the user that created the CSR, populated by the API server on creation and immutable.") @@ -80,11 +80,6 @@ def to_dict(self) -> Dict[str, Any]: if self.request is None and "request" in self.model_fields_set: _dict['request'] = None - # set to None if signer_name (nullable) is None - # and model_fields_set contains the field - if self.signer_name is None and "signer_name" in self.model_fields_set: - _dict['signerName'] = None - return _dict @classmethod From 3668e4933618f112837a3be098c28f8e3403b9de Mon Sep 17 00:00:00 2001 From: Siddarth R Date: Thu, 20 Mar 2025 14:17:19 -0400 Subject: [PATCH 11/11] remove docs for future updates --- README.md | 12 ------------ modifications.txt | 22 ---------------------- 2 files changed, 34 deletions(-) delete mode 100644 modifications.txt diff --git a/README.md b/README.md index c91bd31..2b56a9d 100644 --- a/README.md +++ b/README.md @@ -47,18 +47,6 @@ import flightctl Execute `pytest` to run the tests. - -### Modifying OpenAPI Spec Before Generating Python Client -1. **Get the Latest OpenAPI Spec**: - Make sure you have the most up-to-date version of the OpenAPI spec from the FlightCTL repository. - -2. **Apply the Modifications**: - Refer to the `modifications.txt` file and manually apply the listed changes to the OpenAPI spec. - -3. **Generate the Python Client**: - Once you've made the necessary modifications, generate the Python client with the updated OpenAPI spec - - ## Getting Started Please follow the [installation procedure](#installation--usage) and then run the following: diff --git a/modifications.txt b/modifications.txt deleted file mode 100644 index 2bb31d2..0000000 --- a/modifications.txt +++ /dev/null @@ -1,22 +0,0 @@ -API Specification Updates - -This document outlines the required changes to the API specification to address validation issues and ensure proper handling of nullable fields. -1. Fix Duplicate Enum Values in ConditionType (EDM-1249) - - Problem: The ConditionType enum contains duplicate values ('Approved' and 'Accessible') for different contexts. - Solution: Replace the duplicate values with more specific names to avoid conflicts. - -2. Allow null for Optional Fields in DevicesSummary (EDM-851) - - Problem: Fields like applicationStatus, summaryStatus, and updateStatus are not nullable, but they may return null in certain cases. - Solution: Add nullable: true to allow these fields to be null. - -3. Nullable Fields in CertificateSigningRequestSpec (EDM-852) - - Problem: The request and signerName fields in the CertificateSigningRequestSpec are sometimes returned as null but are not marked as nullable. - Solution: Add nullable: true to both fields to support null values. - -4. Nullable Fields in Repository (EDM-850) - - Problem: The RepositorySpecfieldin the Repository is sometimes returned as null but are not marked as nullable. - Solution: Add nullable: true to both fields to support null values. \ No newline at end of file