harbor2_client 0.2.0 → 2.3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +241 -13
- data/build/generate.sh +8 -0
- data/build/swagger-codegen-cli-ruby-config.json +12 -0
- data/docs/Access.md +10 -0
- data/docs/ArtifactApi.md +76 -2
- data/docs/AuditlogApi.md +3 -1
- data/docs/AuthproxySetting.md +12 -0
- data/docs/Body.md +8 -0
- data/docs/Body1.md +8 -0
- data/docs/BoolConfigItem.md +9 -0
- data/docs/ChartMetadata.md +18 -0
- data/docs/ChartVersion.md +23 -0
- data/docs/ComponentHealthStatus.md +10 -0
- data/docs/Configurations.md +62 -0
- data/docs/ConfigurationsResponse.md +60 -0
- data/docs/ConfigurationsResponseScanAllPolicy.md +9 -0
- data/docs/ConfigurationsResponseScanAllPolicyParameter.md +8 -0
- data/docs/ConfigureApi.md +175 -0
- data/docs/Endpoint.md +9 -0
- data/docs/EventType.md +7 -0
- data/docs/FilterStyle.md +10 -0
- data/docs/GCHistory.md +16 -0
- data/docs/GcApi.md +356 -0
- data/docs/GeneralInfo.md +20 -0
- data/docs/HealthApi.md +63 -0
- data/docs/ImmutableApi.md +261 -0
- data/docs/ImmutableRule.md +15 -0
- data/docs/ImmutableSelector.md +11 -0
- data/docs/IntegerConfigItem.md +9 -0
- data/docs/InternalConfigurationsResponse.md +7 -0
- data/docs/IsDefault.md +8 -0
- data/docs/LabelApi.md +309 -0
- data/docs/LdapApi.md +238 -0
- data/docs/LdapConf.md +16 -0
- data/docs/LdapFailedImportUser.md +9 -0
- data/docs/LdapImportUsers.md +8 -0
- data/docs/LdapPingResult.md +9 -0
- data/docs/LdapUser.md +10 -0
- data/docs/MemberApi.md +322 -0
- data/docs/NativeReportSummary.md +1 -0
- data/docs/NotifyType.md +7 -0
- data/docs/OIDCCliSecretReq.md +8 -0
- data/docs/OIDCUserInfo.md +13 -0
- data/docs/OidcApi.md +65 -0
- data/docs/OverallHealthStatus.md +9 -0
- data/docs/PasswordReq.md +9 -0
- data/docs/Permission.md +9 -0
- data/docs/PingApi.md +63 -0
- data/docs/PreheatApi.md +12 -4
- data/docs/ProjectApi.md +237 -27
- data/docs/ProjectMember.md +10 -0
- data/docs/ProjectMemberEntity.md +14 -0
- data/docs/ProjectMetadataApi.md +318 -0
- data/docs/ProjectScanner.md +8 -0
- data/docs/Quota.md +13 -0
- data/docs/QuotaApi.md +191 -0
- data/docs/QuotaRefObject.md +7 -0
- data/docs/QuotaUpdateReq.md +8 -0
- data/docs/Registry.md +2 -2
- data/docs/RegistryApi.md +530 -0
- data/docs/RegistryEndpoint.md +9 -0
- data/docs/RegistryInfo.md +11 -0
- data/docs/RegistryPing.md +14 -0
- data/docs/RegistryProviderCredentialPattern.md +11 -0
- data/docs/RegistryProviderEndpointPattern.md +9 -0
- data/docs/RegistryProviderInfo.md +9 -0
- data/docs/RegistryUpdate.md +14 -0
- data/docs/ReplicationApi.md +673 -0
- data/docs/ReplicationExecution.md +19 -0
- data/docs/ReplicationFilter.md +9 -0
- data/docs/ReplicationPolicy.md +22 -0
- data/docs/ReplicationTask.md +17 -0
- data/docs/ReplicationTrigger.md +9 -0
- data/docs/ReplicationTriggerSettings.md +8 -0
- data/docs/RepositoryApi.md +66 -1
- data/docs/RetentionApi.md +609 -0
- data/docs/RetentionExecution.md +14 -0
- data/docs/RetentionExecutionTask.md +18 -0
- data/docs/RetentionMetadata.md +10 -0
- data/docs/RetentionPolicy.md +12 -0
- data/docs/RetentionPolicyScope.md +9 -0
- data/docs/RetentionRule.md +15 -0
- data/docs/RetentionRuleMetadata.md +11 -0
- data/docs/RetentionRuleParamMetadata.md +10 -0
- data/docs/RetentionRuleTrigger.md +10 -0
- data/docs/RetentionSelector.md +11 -0
- data/docs/RetentionSelectorMetadata.md +10 -0
- data/docs/Robot.md +19 -0
- data/docs/RobotApi.md +365 -0
- data/docs/RobotCreate.md +14 -0
- data/docs/RobotCreateV1.md +11 -0
- data/docs/RobotCreated.md +12 -0
- data/docs/RobotPermission.md +10 -0
- data/docs/RobotSec.md +8 -0
- data/docs/Robotv1Api.md +329 -0
- data/docs/RoleRequest.md +8 -0
- data/docs/ScanAllApi.md +287 -0
- data/docs/Scanner.md +10 -0
- data/docs/ScannerAdapterMetadata.md +10 -0
- data/docs/ScannerApi.md +479 -0
- data/docs/ScannerCapability.md +9 -0
- data/docs/ScannerRegistration.md +23 -0
- data/docs/ScannerRegistrationReq.md +15 -0
- data/docs/ScannerRegistrationSettings.md +11 -0
- data/docs/Schedule.md +13 -0
- data/docs/ScheduleObj.md +9 -0
- data/docs/Search.md +10 -0
- data/docs/SearchApi.md +66 -0
- data/docs/SearchRepository.md +13 -0
- data/docs/SearchResult.md +10 -0
- data/docs/StartReplicationExecution.md +8 -0
- data/docs/Statistic.md +14 -0
- data/docs/StatisticApi.md +63 -0
- data/docs/Stats.md +12 -0
- data/docs/Storage.md +9 -0
- data/docs/StringConfigItem.md +9 -0
- data/docs/SupportedWebhookEventTypes.md +9 -0
- data/docs/SystemCVEAllowlistApi.md +119 -0
- data/docs/SystemInfo.md +8 -0
- data/docs/SysteminfoApi.md +173 -0
- data/docs/UserApi.md +647 -0
- data/docs/UserCreationReq.md +12 -0
- data/docs/UserEntity.md +9 -0
- data/docs/UserGroup.md +11 -0
- data/docs/UserProfile.md +10 -0
- data/docs/UserResp.md +17 -0
- data/docs/UserSearch.md +9 -0
- data/docs/UserSearchRespItem.md +9 -0
- data/docs/UserSysAdminFlag.md +8 -0
- data/docs/UsergroupApi.md +293 -0
- data/docs/WebhookApi.md +448 -0
- data/docs/WebhookJob.md +15 -0
- data/docs/WebhookLastTrigger.md +12 -0
- data/docs/WebhookPolicy.md +17 -0
- data/docs/WebhookTargetObject.md +11 -0
- data/docs/WebhookjobApi.md +81 -0
- data/git_push.sh +3 -3
- data/harbor2_client.gemspec +7 -7
- data/lib/harbor2_client/api/artifact_api.rb +91 -3
- data/lib/harbor2_client/api/auditlog_api.rb +4 -1
- data/lib/harbor2_client/api/configure_api.rb +193 -0
- data/lib/harbor2_client/api/gc_api.rb +391 -0
- data/lib/harbor2_client/api/health_api.rb +78 -0
- data/lib/harbor2_client/api/icon_api.rb +1 -1
- data/lib/harbor2_client/api/immutable_api.rb +312 -0
- data/lib/harbor2_client/api/label_api.rb +350 -0
- data/lib/harbor2_client/api/ldap_api.rb +259 -0
- data/lib/harbor2_client/api/member_api.rb +373 -0
- data/lib/harbor2_client/api/oidc_api.rb +83 -0
- data/lib/harbor2_client/api/ping_api.rb +78 -0
- data/lib/harbor2_client/api/preheat_api.rb +13 -1
- data/lib/harbor2_client/api/project_api.rb +289 -46
- data/lib/harbor2_client/api/project_metadata_api.rb +362 -0
- data/lib/harbor2_client/api/quota_api.rb +224 -0
- data/lib/harbor2_client/api/registry_api.rb +575 -0
- data/lib/harbor2_client/api/replication_api.rb +749 -0
- data/lib/harbor2_client/api/repository_api.rb +75 -1
- data/lib/harbor2_client/api/retention_api.rb +676 -0
- data/lib/harbor2_client/api/robot_api.rb +409 -0
- data/lib/harbor2_client/api/robotv1_api.rb +387 -0
- data/lib/harbor2_client/api/scan_all_api.rb +308 -0
- data/lib/harbor2_client/api/scan_api.rb +1 -1
- data/lib/harbor2_client/api/scanner_api.rb +529 -0
- data/lib/harbor2_client/api/search_api.rb +85 -0
- data/lib/harbor2_client/api/statistic_api.rb +78 -0
- data/lib/harbor2_client/api/system_cve_allowlist_api.rb +134 -0
- data/lib/harbor2_client/api/systeminfo_api.rb +188 -0
- data/lib/harbor2_client/api/user_api.rb +715 -0
- data/lib/harbor2_client/api/usergroup_api.rb +317 -0
- data/lib/harbor2_client/api/webhook_api.rb +514 -0
- data/lib/harbor2_client/api/webhookjob_api.rb +113 -0
- data/lib/harbor2_client/api_client.rb +2 -2
- data/lib/harbor2_client/api_error.rb +1 -1
- data/lib/harbor2_client/configuration.rb +1 -1
- data/lib/harbor2_client/models/access.rb +205 -0
- data/lib/harbor2_client/models/addition_link.rb +1 -1
- data/lib/harbor2_client/models/addition_links.rb +1 -1
- data/lib/harbor2_client/models/annotations.rb +1 -1
- data/lib/harbor2_client/models/artifact.rb +1 -1
- data/lib/harbor2_client/models/audit_log.rb +1 -1
- data/lib/harbor2_client/models/authproxy_setting.rb +225 -0
- data/lib/harbor2_client/models/body.rb +184 -0
- data/lib/harbor2_client/models/body_1.rb +184 -0
- data/lib/harbor2_client/models/bool_config_item.rb +195 -0
- data/lib/harbor2_client/models/chart_metadata.rb +320 -0
- data/lib/harbor2_client/models/chart_version.rb +374 -0
- data/lib/harbor2_client/models/component_health_status.rb +206 -0
- data/lib/harbor2_client/models/configurations.rb +725 -0
- data/lib/harbor2_client/models/configurations_response.rb +704 -0
- data/lib/harbor2_client/models/configurations_response_scan_all_policy.rb +194 -0
- data/lib/harbor2_client/models/configurations_response_scan_all_policy_parameter.rb +186 -0
- data/lib/harbor2_client/models/cve_allowlist.rb +1 -1
- data/lib/harbor2_client/models/cve_allowlist_item.rb +1 -1
- data/lib/harbor2_client/models/endpoint.rb +195 -0
- data/lib/harbor2_client/models/error.rb +1 -1
- data/lib/harbor2_client/models/errors.rb +1 -1
- data/lib/harbor2_client/models/event_type.rb +176 -0
- data/lib/harbor2_client/models/execution.rb +1 -1
- data/lib/harbor2_client/models/extra_attrs.rb +1 -1
- data/lib/harbor2_client/models/filter_style.rb +208 -0
- data/lib/harbor2_client/models/gc_history.rb +264 -0
- data/lib/harbor2_client/models/general_info.rb +305 -0
- data/lib/harbor2_client/models/icon.rb +1 -1
- data/lib/harbor2_client/models/immutable_rule.rb +253 -0
- data/lib/harbor2_client/models/immutable_selector.rb +211 -0
- data/lib/harbor2_client/models/instance.rb +1 -1
- data/lib/harbor2_client/models/integer_config_item.rb +195 -0
- data/lib/harbor2_client/models/internal_configurations_response.rb +175 -0
- data/lib/harbor2_client/models/is_default.rb +185 -0
- data/lib/harbor2_client/models/label.rb +1 -1
- data/lib/harbor2_client/models/ldap_conf.rb +266 -0
- data/lib/harbor2_client/models/ldap_failed_import_user.rb +195 -0
- data/lib/harbor2_client/models/ldap_import_users.rb +187 -0
- data/lib/harbor2_client/models/ldap_ping_result.rb +196 -0
- data/lib/harbor2_client/models/ldap_user.rb +205 -0
- data/lib/harbor2_client/models/metadata.rb +1 -1
- data/lib/harbor2_client/models/metrics.rb +1 -1
- data/lib/harbor2_client/models/native_report_summary.rb +14 -5
- data/lib/harbor2_client/models/notify_type.rb +176 -0
- data/lib/harbor2_client/models/oidc_cli_secret_req.rb +185 -0
- data/lib/harbor2_client/models/oidc_user_info.rb +235 -0
- data/lib/harbor2_client/models/overall_health_status.rb +197 -0
- data/lib/harbor2_client/models/password_req.rb +195 -0
- data/lib/harbor2_client/models/permission.rb +195 -0
- data/lib/harbor2_client/models/platform.rb +7 -7
- data/lib/harbor2_client/models/preheat_policy.rb +1 -1
- data/lib/harbor2_client/models/project.rb +1 -1
- data/lib/harbor2_client/models/project_deletable.rb +1 -1
- data/lib/harbor2_client/models/project_member.rb +203 -0
- data/lib/harbor2_client/models/project_member_entity.rb +245 -0
- data/lib/harbor2_client/models/project_metadata.rb +1 -1
- data/lib/harbor2_client/models/project_req.rb +16 -1
- data/lib/harbor2_client/models/project_scanner.rb +190 -0
- data/lib/harbor2_client/models/project_summary.rb +1 -1
- data/lib/harbor2_client/models/project_summary_quota.rb +1 -1
- data/lib/harbor2_client/models/provider_under_project.rb +1 -1
- data/lib/harbor2_client/models/quota.rb +236 -0
- data/lib/harbor2_client/models/quota_ref_object.rb +175 -0
- data/lib/harbor2_client/models/quota_update_req.rb +185 -0
- data/lib/harbor2_client/models/reference.rb +1 -1
- data/lib/harbor2_client/models/registry.rb +3 -3
- data/lib/harbor2_client/models/registry_credential.rb +1 -1
- data/lib/harbor2_client/models/registry_endpoint.rb +196 -0
- data/lib/harbor2_client/models/registry_info.rb +220 -0
- data/lib/harbor2_client/models/registry_ping.rb +245 -0
- data/lib/harbor2_client/models/registry_provider_credential_pattern.rb +216 -0
- data/lib/harbor2_client/models/registry_provider_endpoint_pattern.rb +198 -0
- data/lib/harbor2_client/models/registry_provider_info.rb +196 -0
- data/lib/harbor2_client/models/registry_update.rb +245 -0
- data/lib/harbor2_client/models/replication_execution.rb +296 -0
- data/lib/harbor2_client/models/replication_filter.rb +195 -0
- data/lib/harbor2_client/models/replication_policy.rb +326 -0
- data/lib/harbor2_client/models/replication_task.rb +276 -0
- data/lib/harbor2_client/models/replication_trigger.rb +194 -0
- data/lib/harbor2_client/models/replication_trigger_settings.rb +185 -0
- data/lib/harbor2_client/models/repository.rb +1 -1
- data/lib/harbor2_client/models/resource_list.rb +1 -1
- data/lib/harbor2_client/models/retention_execution.rb +238 -0
- data/lib/harbor2_client/models/retention_execution_task.rb +274 -0
- data/lib/harbor2_client/models/retention_metadata.rb +212 -0
- data/lib/harbor2_client/models/retention_policy.rb +223 -0
- data/lib/harbor2_client/models/retention_policy_scope.rb +193 -0
- data/lib/harbor2_client/models/retention_rule.rb +253 -0
- data/lib/harbor2_client/models/retention_rule_metadata.rb +218 -0
- data/lib/harbor2_client/models/retention_rule_param_metadata.rb +203 -0
- data/lib/harbor2_client/models/retention_rule_trigger.rb +202 -0
- data/lib/harbor2_client/models/retention_selector.rb +211 -0
- data/lib/harbor2_client/models/retention_selector_metadata.rb +205 -0
- data/lib/harbor2_client/models/robot.rb +296 -0
- data/lib/harbor2_client/models/robot_create.rb +247 -0
- data/lib/harbor2_client/models/robot_create_v1.rb +217 -0
- data/lib/harbor2_client/models/robot_created.rb +226 -0
- data/lib/harbor2_client/models/robot_permission.rb +206 -0
- data/lib/harbor2_client/models/robot_sec.rb +186 -0
- data/lib/harbor2_client/models/role_request.rb +185 -0
- data/lib/harbor2_client/models/scan_overview.rb +1 -1
- data/lib/harbor2_client/models/scanner.rb +205 -0
- data/lib/harbor2_client/models/scanner_adapter_metadata.rb +207 -0
- data/lib/harbor2_client/models/scanner_capability.rb +197 -0
- data/lib/harbor2_client/models/scanner_registration.rb +348 -0
- data/lib/harbor2_client/models/scanner_registration_req.rb +271 -0
- data/lib/harbor2_client/models/scanner_registration_settings.rb +227 -0
- data/lib/harbor2_client/models/schedule.rb +236 -0
- data/lib/harbor2_client/models/schedule_obj.rb +229 -0
- data/lib/harbor2_client/models/search.rb +211 -0
- data/lib/harbor2_client/models/search_repository.rb +235 -0
- data/lib/harbor2_client/models/search_result.rb +205 -0
- data/lib/harbor2_client/models/start_replication_execution.rb +185 -0
- data/lib/harbor2_client/models/statistic.rb +245 -0
- data/lib/harbor2_client/models/stats.rb +262 -0
- data/lib/harbor2_client/models/storage.rb +195 -0
- data/lib/harbor2_client/models/string_config_item.rb +195 -0
- data/lib/harbor2_client/models/supported_webhook_event_types.rb +198 -0
- data/lib/harbor2_client/models/system_info.rb +187 -0
- data/lib/harbor2_client/models/tag.rb +1 -1
- data/lib/harbor2_client/models/task.rb +1 -1
- data/lib/harbor2_client/models/user_creation_req.rb +250 -0
- data/lib/harbor2_client/models/user_entity.rb +195 -0
- data/lib/harbor2_client/models/user_group.rb +215 -0
- data/lib/harbor2_client/models/user_profile.rb +202 -0
- data/lib/harbor2_client/models/user_resp.rb +268 -0
- data/lib/harbor2_client/models/user_search.rb +194 -0
- data/lib/harbor2_client/models/user_search_resp_item.rb +194 -0
- data/lib/harbor2_client/models/user_sys_admin_flag.rb +185 -0
- data/lib/harbor2_client/models/vulnerability_summary.rb +1 -1
- data/lib/harbor2_client/models/webhook_job.rb +256 -0
- data/lib/harbor2_client/models/webhook_last_trigger.rb +226 -0
- data/lib/harbor2_client/models/webhook_policy.rb +278 -0
- data/lib/harbor2_client/models/webhook_target_object.rb +216 -0
- data/lib/harbor2_client/version.rb +2 -2
- data/lib/harbor2_client.rb +127 -1
- data/spec/api/artifact_api_spec.rb +21 -1
- data/spec/api/auditlog_api_spec.rb +2 -1
- data/spec/api/configure_api_spec.rb +72 -0
- data/spec/api/gc_api_spec.rb +115 -0
- data/spec/api/health_api_spec.rb +47 -0
- data/spec/api/icon_api_spec.rb +1 -1
- data/spec/api/immutable_api_spec.rb +97 -0
- data/spec/api/label_api_spec.rb +107 -0
- data/spec/api/ldap_api_spec.rb +88 -0
- data/spec/api/member_api_spec.rb +112 -0
- data/spec/api/oidc_api_spec.rb +48 -0
- data/spec/api/ping_api_spec.rb +47 -0
- data/spec/api/preheat_api_spec.rb +5 -1
- data/spec/api/project_api_spec.rb +63 -6
- data/spec/api/project_metadata_api_spec.rb +110 -0
- data/spec/api/quota_api_spec.rb +79 -0
- data/spec/api/registry_api_spec.rb +155 -0
- data/spec/api/replication_api_spec.rb +194 -0
- data/spec/api/repository_api_spec.rb +18 -1
- data/spec/api/retention_api_spec.rb +175 -0
- data/spec/api/robot_api_spec.rb +118 -0
- data/spec/api/robotv1_api_spec.rb +114 -0
- data/spec/api/scan_all_api_spec.rb +97 -0
- data/spec/api/scan_api_spec.rb +1 -1
- data/spec/api/scanner_api_spec.rb +144 -0
- data/spec/api/search_api_spec.rb +48 -0
- data/spec/api/statistic_api_spec.rb +47 -0
- data/spec/api/system_cve_allowlist_api_spec.rb +60 -0
- data/spec/api/systeminfo_api_spec.rb +71 -0
- data/spec/api/user_api_spec.rb +181 -0
- data/spec/api/usergroup_api_spec.rb +100 -0
- data/spec/api/webhook_api_spec.rb +142 -0
- data/spec/api/webhookjob_api_spec.rb +55 -0
- data/spec/api_client_spec.rb +1 -1
- data/spec/configuration_spec.rb +1 -1
- data/spec/models/access_spec.rb +53 -0
- data/spec/models/addition_link_spec.rb +1 -1
- data/spec/models/addition_links_spec.rb +1 -1
- data/spec/models/annotations_spec.rb +1 -1
- data/spec/models/artifact_spec.rb +1 -1
- data/spec/models/audit_log_spec.rb +1 -1
- data/spec/models/authproxy_setting_spec.rb +65 -0
- data/spec/models/body_1_spec.rb +41 -0
- data/spec/models/body_spec.rb +41 -0
- data/spec/models/bool_config_item_spec.rb +47 -0
- data/spec/models/chart_metadata_spec.rb +101 -0
- data/spec/models/chart_version_spec.rb +131 -0
- data/spec/models/component_health_status_spec.rb +53 -0
- data/spec/models/configurations_response_scan_all_policy_parameter_spec.rb +41 -0
- data/spec/models/configurations_response_scan_all_policy_spec.rb +47 -0
- data/spec/models/configurations_response_spec.rb +353 -0
- data/spec/models/configurations_spec.rb +365 -0
- data/spec/models/cve_allowlist_item_spec.rb +1 -1
- data/spec/models/cve_allowlist_spec.rb +1 -1
- data/spec/models/endpoint_spec.rb +47 -0
- data/spec/models/error_spec.rb +1 -1
- data/spec/models/errors_spec.rb +1 -1
- data/spec/models/event_type_spec.rb +35 -0
- data/spec/models/execution_spec.rb +1 -1
- data/spec/models/extra_attrs_spec.rb +1 -1
- data/spec/models/filter_style_spec.rb +53 -0
- data/spec/models/gc_history_spec.rb +89 -0
- data/spec/models/general_info_spec.rb +113 -0
- data/spec/models/icon_spec.rb +1 -1
- data/spec/models/immutable_rule_spec.rb +83 -0
- data/spec/models/immutable_selector_spec.rb +59 -0
- data/spec/models/instance_spec.rb +1 -1
- data/spec/models/integer_config_item_spec.rb +47 -0
- data/spec/models/internal_configurations_response_spec.rb +35 -0
- data/spec/models/is_default_spec.rb +41 -0
- data/spec/models/label_spec.rb +1 -1
- data/spec/models/ldap_conf_spec.rb +89 -0
- data/spec/models/ldap_failed_import_user_spec.rb +47 -0
- data/spec/models/ldap_import_users_spec.rb +41 -0
- data/spec/models/ldap_ping_result_spec.rb +47 -0
- data/spec/models/ldap_user_spec.rb +53 -0
- data/spec/models/metadata_spec.rb +1 -1
- data/spec/models/metrics_spec.rb +1 -1
- data/spec/models/native_report_summary_spec.rb +7 -1
- data/spec/models/notify_type_spec.rb +35 -0
- data/spec/models/oidc_cli_secret_req_spec.rb +41 -0
- data/spec/models/oidc_user_info_spec.rb +71 -0
- data/spec/models/overall_health_status_spec.rb +47 -0
- data/spec/models/password_req_spec.rb +47 -0
- data/spec/models/permission_spec.rb +47 -0
- data/spec/models/platform_spec.rb +1 -1
- data/spec/models/preheat_policy_spec.rb +1 -1
- data/spec/models/project_deletable_spec.rb +1 -1
- data/spec/models/project_member_entity_spec.rb +77 -0
- data/spec/models/project_member_spec.rb +53 -0
- data/spec/models/project_metadata_spec.rb +1 -1
- data/spec/models/project_req_spec.rb +1 -1
- data/spec/models/project_scanner_spec.rb +41 -0
- data/spec/models/project_spec.rb +1 -1
- data/spec/models/project_summary_quota_spec.rb +1 -1
- data/spec/models/project_summary_spec.rb +1 -1
- data/spec/models/provider_under_project_spec.rb +1 -1
- data/spec/models/quota_ref_object_spec.rb +35 -0
- data/spec/models/quota_spec.rb +71 -0
- data/spec/models/quota_update_req_spec.rb +41 -0
- data/spec/models/reference_spec.rb +1 -1
- data/spec/models/registry_credential_spec.rb +1 -1
- data/spec/models/registry_endpoint_spec.rb +47 -0
- data/spec/models/registry_info_spec.rb +59 -0
- data/spec/models/registry_ping_spec.rb +77 -0
- data/spec/models/registry_provider_credential_pattern_spec.rb +59 -0
- data/spec/models/registry_provider_endpoint_pattern_spec.rb +47 -0
- data/spec/models/registry_provider_info_spec.rb +47 -0
- data/spec/models/registry_spec.rb +1 -1
- data/spec/models/registry_update_spec.rb +77 -0
- data/spec/models/replication_execution_spec.rb +107 -0
- data/spec/models/replication_filter_spec.rb +47 -0
- data/spec/models/replication_policy_spec.rb +125 -0
- data/spec/models/replication_task_spec.rb +95 -0
- data/spec/models/replication_trigger_settings_spec.rb +41 -0
- data/spec/models/replication_trigger_spec.rb +47 -0
- data/spec/models/repository_spec.rb +1 -1
- data/spec/models/resource_list_spec.rb +1 -1
- data/spec/models/retention_execution_spec.rb +77 -0
- data/spec/models/retention_execution_task_spec.rb +101 -0
- data/spec/models/retention_metadata_spec.rb +53 -0
- data/spec/models/retention_policy_scope_spec.rb +47 -0
- data/spec/models/retention_policy_spec.rb +65 -0
- data/spec/models/retention_rule_metadata_spec.rb +59 -0
- data/spec/models/retention_rule_param_metadata_spec.rb +53 -0
- data/spec/models/retention_rule_spec.rb +83 -0
- data/spec/models/retention_rule_trigger_spec.rb +53 -0
- data/spec/models/retention_selector_metadata_spec.rb +53 -0
- data/spec/models/retention_selector_spec.rb +59 -0
- data/spec/models/robot_create_spec.rb +77 -0
- data/spec/models/robot_create_v1_spec.rb +59 -0
- data/spec/models/robot_created_spec.rb +65 -0
- data/spec/models/robot_permission_spec.rb +53 -0
- data/spec/models/robot_sec_spec.rb +41 -0
- data/spec/models/robot_spec.rb +107 -0
- data/spec/models/role_request_spec.rb +41 -0
- data/spec/models/scan_overview_spec.rb +1 -1
- data/spec/models/scanner_adapter_metadata_spec.rb +53 -0
- data/spec/models/scanner_capability_spec.rb +47 -0
- data/spec/models/scanner_registration_req_spec.rb +83 -0
- data/spec/models/scanner_registration_settings_spec.rb +59 -0
- data/spec/models/scanner_registration_spec.rb +131 -0
- data/spec/models/scanner_spec.rb +53 -0
- data/spec/models/schedule_obj_spec.rb +51 -0
- data/spec/models/schedule_spec.rb +71 -0
- data/spec/models/search_repository_spec.rb +71 -0
- data/spec/models/search_result_spec.rb +53 -0
- data/spec/models/search_spec.rb +53 -0
- data/spec/models/start_replication_execution_spec.rb +41 -0
- data/spec/models/statistic_spec.rb +77 -0
- data/spec/models/stats_spec.rb +69 -0
- data/spec/models/storage_spec.rb +47 -0
- data/spec/models/string_config_item_spec.rb +47 -0
- data/spec/models/supported_webhook_event_types_spec.rb +47 -0
- data/spec/models/system_info_spec.rb +41 -0
- data/spec/models/tag_spec.rb +1 -1
- data/spec/models/task_spec.rb +1 -1
- data/spec/models/user_creation_req_spec.rb +65 -0
- data/spec/models/user_entity_spec.rb +47 -0
- data/spec/models/user_group_spec.rb +59 -0
- data/spec/models/user_profile_spec.rb +53 -0
- data/spec/models/user_resp_spec.rb +95 -0
- data/spec/models/user_search_resp_item_spec.rb +47 -0
- data/spec/models/user_search_spec.rb +47 -0
- data/spec/models/user_sys_admin_flag_spec.rb +41 -0
- data/spec/models/vulnerability_summary_spec.rb +1 -1
- data/spec/models/webhook_job_spec.rb +83 -0
- data/spec/models/webhook_last_trigger_spec.rb +65 -0
- data/spec/models/webhook_policy_spec.rb +95 -0
- data/spec/models/webhook_target_object_spec.rb +59 -0
- data/spec/spec_helper.rb +1 -1
- metadata +512 -8
- data/harbor2_client-0.1.0.gem +0 -0
@@ -0,0 +1,312 @@
|
|
1
|
+
=begin
|
2
|
+
#Harbor API
|
3
|
+
|
4
|
+
#These APIs provide services for manipulating Harbor project.
|
5
|
+
|
6
|
+
OpenAPI spec version: 2.0
|
7
|
+
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
Swagger Codegen version: 2.4.22
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'uri'
|
14
|
+
|
15
|
+
module Harbor2Client
|
16
|
+
class ImmutableApi
|
17
|
+
attr_accessor :api_client
|
18
|
+
|
19
|
+
def initialize(api_client = ApiClient.default)
|
20
|
+
@api_client = api_client
|
21
|
+
end
|
22
|
+
# Add an immutable tag rule to current project
|
23
|
+
# This endpoint add an immutable tag rule to the project
|
24
|
+
# @param project_name_or_id The name or id of the project
|
25
|
+
# @param immutable_rule
|
26
|
+
# @param [Hash] opts the optional parameters
|
27
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
28
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name. (default to false)
|
29
|
+
# @return [nil]
|
30
|
+
def create_immu_rule(project_name_or_id, immutable_rule, opts = {})
|
31
|
+
create_immu_rule_with_http_info(project_name_or_id, immutable_rule, opts)
|
32
|
+
nil
|
33
|
+
end
|
34
|
+
|
35
|
+
# Add an immutable tag rule to current project
|
36
|
+
# This endpoint add an immutable tag rule to the project
|
37
|
+
# @param project_name_or_id The name or id of the project
|
38
|
+
# @param immutable_rule
|
39
|
+
# @param [Hash] opts the optional parameters
|
40
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
41
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name.
|
42
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
43
|
+
def create_immu_rule_with_http_info(project_name_or_id, immutable_rule, opts = {})
|
44
|
+
if @api_client.config.debugging
|
45
|
+
@api_client.config.logger.debug 'Calling API: ImmutableApi.create_immu_rule ...'
|
46
|
+
end
|
47
|
+
# verify the required parameter 'project_name_or_id' is set
|
48
|
+
if @api_client.config.client_side_validation && project_name_or_id.nil?
|
49
|
+
fail ArgumentError, "Missing the required parameter 'project_name_or_id' when calling ImmutableApi.create_immu_rule"
|
50
|
+
end
|
51
|
+
# verify the required parameter 'immutable_rule' is set
|
52
|
+
if @api_client.config.client_side_validation && immutable_rule.nil?
|
53
|
+
fail ArgumentError, "Missing the required parameter 'immutable_rule' when calling ImmutableApi.create_immu_rule"
|
54
|
+
end
|
55
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
56
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling ImmutableApi.create_immu_rule, the character length must be great than or equal to 1.'
|
57
|
+
end
|
58
|
+
|
59
|
+
# resource path
|
60
|
+
local_var_path = '/projects/{project_name_or_id}/immutabletagrules'.sub('{' + 'project_name_or_id' + '}', project_name_or_id.to_s)
|
61
|
+
|
62
|
+
# query parameters
|
63
|
+
query_params = {}
|
64
|
+
|
65
|
+
# header parameters
|
66
|
+
header_params = {}
|
67
|
+
# HTTP header 'Accept' (if needed)
|
68
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
69
|
+
# HTTP header 'Content-Type'
|
70
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
71
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
72
|
+
header_params[:'X-Is-Resource-Name'] = opts[:'x_is_resource_name'] if !opts[:'x_is_resource_name'].nil?
|
73
|
+
|
74
|
+
# form parameters
|
75
|
+
form_params = {}
|
76
|
+
|
77
|
+
# http body (model)
|
78
|
+
post_body = @api_client.object_to_http_body(immutable_rule)
|
79
|
+
auth_names = ['basic']
|
80
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
81
|
+
:header_params => header_params,
|
82
|
+
:query_params => query_params,
|
83
|
+
:form_params => form_params,
|
84
|
+
:body => post_body,
|
85
|
+
:auth_names => auth_names)
|
86
|
+
if @api_client.config.debugging
|
87
|
+
@api_client.config.logger.debug "API called: ImmutableApi#create_immu_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
88
|
+
end
|
89
|
+
return data, status_code, headers
|
90
|
+
end
|
91
|
+
# Delete the immutable tag rule.
|
92
|
+
# @param project_name_or_id The name or id of the project
|
93
|
+
# @param immutable_rule_id The ID of the immutable rule
|
94
|
+
# @param [Hash] opts the optional parameters
|
95
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
96
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name. (default to false)
|
97
|
+
# @return [nil]
|
98
|
+
def delete_immu_rule(project_name_or_id, immutable_rule_id, opts = {})
|
99
|
+
delete_immu_rule_with_http_info(project_name_or_id, immutable_rule_id, opts)
|
100
|
+
nil
|
101
|
+
end
|
102
|
+
|
103
|
+
# Delete the immutable tag rule.
|
104
|
+
# @param project_name_or_id The name or id of the project
|
105
|
+
# @param immutable_rule_id The ID of the immutable rule
|
106
|
+
# @param [Hash] opts the optional parameters
|
107
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
108
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name.
|
109
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
110
|
+
def delete_immu_rule_with_http_info(project_name_or_id, immutable_rule_id, opts = {})
|
111
|
+
if @api_client.config.debugging
|
112
|
+
@api_client.config.logger.debug 'Calling API: ImmutableApi.delete_immu_rule ...'
|
113
|
+
end
|
114
|
+
# verify the required parameter 'project_name_or_id' is set
|
115
|
+
if @api_client.config.client_side_validation && project_name_or_id.nil?
|
116
|
+
fail ArgumentError, "Missing the required parameter 'project_name_or_id' when calling ImmutableApi.delete_immu_rule"
|
117
|
+
end
|
118
|
+
# verify the required parameter 'immutable_rule_id' is set
|
119
|
+
if @api_client.config.client_side_validation && immutable_rule_id.nil?
|
120
|
+
fail ArgumentError, "Missing the required parameter 'immutable_rule_id' when calling ImmutableApi.delete_immu_rule"
|
121
|
+
end
|
122
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
123
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling ImmutableApi.delete_immu_rule, the character length must be great than or equal to 1.'
|
124
|
+
end
|
125
|
+
|
126
|
+
# resource path
|
127
|
+
local_var_path = '/projects/{project_name_or_id}/immutabletagrules/{immutable_rule_id}'.sub('{' + 'project_name_or_id' + '}', project_name_or_id.to_s).sub('{' + 'immutable_rule_id' + '}', immutable_rule_id.to_s)
|
128
|
+
|
129
|
+
# query parameters
|
130
|
+
query_params = {}
|
131
|
+
|
132
|
+
# header parameters
|
133
|
+
header_params = {}
|
134
|
+
# HTTP header 'Accept' (if needed)
|
135
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
136
|
+
# HTTP header 'Content-Type'
|
137
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
138
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
139
|
+
header_params[:'X-Is-Resource-Name'] = opts[:'x_is_resource_name'] if !opts[:'x_is_resource_name'].nil?
|
140
|
+
|
141
|
+
# form parameters
|
142
|
+
form_params = {}
|
143
|
+
|
144
|
+
# http body (model)
|
145
|
+
post_body = nil
|
146
|
+
auth_names = ['basic']
|
147
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
|
148
|
+
:header_params => header_params,
|
149
|
+
:query_params => query_params,
|
150
|
+
:form_params => form_params,
|
151
|
+
:body => post_body,
|
152
|
+
:auth_names => auth_names)
|
153
|
+
if @api_client.config.debugging
|
154
|
+
@api_client.config.logger.debug "API called: ImmutableApi#delete_immu_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
155
|
+
end
|
156
|
+
return data, status_code, headers
|
157
|
+
end
|
158
|
+
# List all immutable tag rules of current project
|
159
|
+
# This endpoint returns the immutable tag rules of a project
|
160
|
+
# @param project_name_or_id The name or id of the project
|
161
|
+
# @param [Hash] opts the optional parameters
|
162
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
163
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name. (default to false)
|
164
|
+
# @option opts [Integer] :page The page number (default to 1)
|
165
|
+
# @option opts [Integer] :page_size The size of per page (default to 10)
|
166
|
+
# @option opts [String] :q Query string to query resources. Supported query patterns are \"exact match(k=v)\", \"fuzzy match(k=~v)\", \"range(k=[min~max])\", \"list with union releationship(k={v1 v2 v3})\" and \"list with intersetion relationship(k=(v1 v2 v3))\". The value of range and list can be string(enclosed by \" or '), integer or time(in format \"2020-04-09 02:36:00\"). All of these query patterns should be put in the query string \"q=xxx\" and splitted by \",\". e.g. q=k1=v1,k2=~v2,k3=[min~max]
|
167
|
+
# @option opts [String] :sort Sort the resource list in ascending or descending order. e.g. sort by field1 in ascending orderr and field2 in descending order with \"sort=field1,-field2\"
|
168
|
+
# @return [Array<ImmutableRule>]
|
169
|
+
def list_immu_rules(project_name_or_id, opts = {})
|
170
|
+
data, _status_code, _headers = list_immu_rules_with_http_info(project_name_or_id, opts)
|
171
|
+
data
|
172
|
+
end
|
173
|
+
|
174
|
+
# List all immutable tag rules of current project
|
175
|
+
# This endpoint returns the immutable tag rules of a project
|
176
|
+
# @param project_name_or_id The name or id of the project
|
177
|
+
# @param [Hash] opts the optional parameters
|
178
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
179
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name.
|
180
|
+
# @option opts [Integer] :page The page number
|
181
|
+
# @option opts [Integer] :page_size The size of per page
|
182
|
+
# @option opts [String] :q Query string to query resources. Supported query patterns are \"exact match(k=v)\", \"fuzzy match(k=~v)\", \"range(k=[min~max])\", \"list with union releationship(k={v1 v2 v3})\" and \"list with intersetion relationship(k=(v1 v2 v3))\". The value of range and list can be string(enclosed by \" or '), integer or time(in format \"2020-04-09 02:36:00\"). All of these query patterns should be put in the query string \"q=xxx\" and splitted by \",\". e.g. q=k1=v1,k2=~v2,k3=[min~max]
|
183
|
+
# @option opts [String] :sort Sort the resource list in ascending or descending order. e.g. sort by field1 in ascending orderr and field2 in descending order with \"sort=field1,-field2\"
|
184
|
+
# @return [Array<(Array<ImmutableRule>, Fixnum, Hash)>] Array<ImmutableRule> data, response status code and response headers
|
185
|
+
def list_immu_rules_with_http_info(project_name_or_id, opts = {})
|
186
|
+
if @api_client.config.debugging
|
187
|
+
@api_client.config.logger.debug 'Calling API: ImmutableApi.list_immu_rules ...'
|
188
|
+
end
|
189
|
+
# verify the required parameter 'project_name_or_id' is set
|
190
|
+
if @api_client.config.client_side_validation && project_name_or_id.nil?
|
191
|
+
fail ArgumentError, "Missing the required parameter 'project_name_or_id' when calling ImmutableApi.list_immu_rules"
|
192
|
+
end
|
193
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
194
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling ImmutableApi.list_immu_rules, the character length must be great than or equal to 1.'
|
195
|
+
end
|
196
|
+
|
197
|
+
if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 100
|
198
|
+
fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling ImmutableApi.list_immu_rules, must be smaller than or equal to 100.'
|
199
|
+
end
|
200
|
+
|
201
|
+
# resource path
|
202
|
+
local_var_path = '/projects/{project_name_or_id}/immutabletagrules'.sub('{' + 'project_name_or_id' + '}', project_name_or_id.to_s)
|
203
|
+
|
204
|
+
# query parameters
|
205
|
+
query_params = {}
|
206
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
207
|
+
query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
|
208
|
+
query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
|
209
|
+
query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
|
210
|
+
|
211
|
+
# header parameters
|
212
|
+
header_params = {}
|
213
|
+
# HTTP header 'Accept' (if needed)
|
214
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
215
|
+
# HTTP header 'Content-Type'
|
216
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
217
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
218
|
+
header_params[:'X-Is-Resource-Name'] = opts[:'x_is_resource_name'] if !opts[:'x_is_resource_name'].nil?
|
219
|
+
|
220
|
+
# form parameters
|
221
|
+
form_params = {}
|
222
|
+
|
223
|
+
# http body (model)
|
224
|
+
post_body = nil
|
225
|
+
auth_names = ['basic']
|
226
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
227
|
+
:header_params => header_params,
|
228
|
+
:query_params => query_params,
|
229
|
+
:form_params => form_params,
|
230
|
+
:body => post_body,
|
231
|
+
:auth_names => auth_names,
|
232
|
+
:return_type => 'Array<ImmutableRule>')
|
233
|
+
if @api_client.config.debugging
|
234
|
+
@api_client.config.logger.debug "API called: ImmutableApi#list_immu_rules\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
235
|
+
end
|
236
|
+
return data, status_code, headers
|
237
|
+
end
|
238
|
+
# Update the immutable tag rule or enable or disable the rule
|
239
|
+
# @param project_name_or_id The name or id of the project
|
240
|
+
# @param immutable_rule_id The ID of the immutable rule
|
241
|
+
# @param immutable_rule
|
242
|
+
# @param [Hash] opts the optional parameters
|
243
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
244
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name. (default to false)
|
245
|
+
# @return [nil]
|
246
|
+
def update_immu_rule(project_name_or_id, immutable_rule_id, immutable_rule, opts = {})
|
247
|
+
update_immu_rule_with_http_info(project_name_or_id, immutable_rule_id, immutable_rule, opts)
|
248
|
+
nil
|
249
|
+
end
|
250
|
+
|
251
|
+
# Update the immutable tag rule or enable or disable the rule
|
252
|
+
# @param project_name_or_id The name or id of the project
|
253
|
+
# @param immutable_rule_id The ID of the immutable rule
|
254
|
+
# @param immutable_rule
|
255
|
+
# @param [Hash] opts the optional parameters
|
256
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
257
|
+
# @option opts [BOOLEAN] :x_is_resource_name The flag to indicate whether the parameter which supports both name and id in the path is the name of the resource. When the X-Is-Resource-Name is false and the parameter can be converted to an integer, the parameter will be as an id, otherwise, it will be as a name.
|
258
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
259
|
+
def update_immu_rule_with_http_info(project_name_or_id, immutable_rule_id, immutable_rule, opts = {})
|
260
|
+
if @api_client.config.debugging
|
261
|
+
@api_client.config.logger.debug 'Calling API: ImmutableApi.update_immu_rule ...'
|
262
|
+
end
|
263
|
+
# verify the required parameter 'project_name_or_id' is set
|
264
|
+
if @api_client.config.client_side_validation && project_name_or_id.nil?
|
265
|
+
fail ArgumentError, "Missing the required parameter 'project_name_or_id' when calling ImmutableApi.update_immu_rule"
|
266
|
+
end
|
267
|
+
# verify the required parameter 'immutable_rule_id' is set
|
268
|
+
if @api_client.config.client_side_validation && immutable_rule_id.nil?
|
269
|
+
fail ArgumentError, "Missing the required parameter 'immutable_rule_id' when calling ImmutableApi.update_immu_rule"
|
270
|
+
end
|
271
|
+
# verify the required parameter 'immutable_rule' is set
|
272
|
+
if @api_client.config.client_side_validation && immutable_rule.nil?
|
273
|
+
fail ArgumentError, "Missing the required parameter 'immutable_rule' when calling ImmutableApi.update_immu_rule"
|
274
|
+
end
|
275
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
276
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling ImmutableApi.update_immu_rule, the character length must be great than or equal to 1.'
|
277
|
+
end
|
278
|
+
|
279
|
+
# resource path
|
280
|
+
local_var_path = '/projects/{project_name_or_id}/immutabletagrules/{immutable_rule_id}'.sub('{' + 'project_name_or_id' + '}', project_name_or_id.to_s).sub('{' + 'immutable_rule_id' + '}', immutable_rule_id.to_s)
|
281
|
+
|
282
|
+
# query parameters
|
283
|
+
query_params = {}
|
284
|
+
|
285
|
+
# header parameters
|
286
|
+
header_params = {}
|
287
|
+
# HTTP header 'Accept' (if needed)
|
288
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
289
|
+
# HTTP header 'Content-Type'
|
290
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
291
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
292
|
+
header_params[:'X-Is-Resource-Name'] = opts[:'x_is_resource_name'] if !opts[:'x_is_resource_name'].nil?
|
293
|
+
|
294
|
+
# form parameters
|
295
|
+
form_params = {}
|
296
|
+
|
297
|
+
# http body (model)
|
298
|
+
post_body = @api_client.object_to_http_body(immutable_rule)
|
299
|
+
auth_names = ['basic']
|
300
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
|
301
|
+
:header_params => header_params,
|
302
|
+
:query_params => query_params,
|
303
|
+
:form_params => form_params,
|
304
|
+
:body => post_body,
|
305
|
+
:auth_names => auth_names)
|
306
|
+
if @api_client.config.debugging
|
307
|
+
@api_client.config.logger.debug "API called: ImmutableApi#update_immu_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
308
|
+
end
|
309
|
+
return data, status_code, headers
|
310
|
+
end
|
311
|
+
end
|
312
|
+
end
|
@@ -0,0 +1,350 @@
|
|
1
|
+
=begin
|
2
|
+
#Harbor API
|
3
|
+
|
4
|
+
#These APIs provide services for manipulating Harbor project.
|
5
|
+
|
6
|
+
OpenAPI spec version: 2.0
|
7
|
+
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
Swagger Codegen version: 2.4.22
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'uri'
|
14
|
+
|
15
|
+
module Harbor2Client
|
16
|
+
class LabelApi
|
17
|
+
attr_accessor :api_client
|
18
|
+
|
19
|
+
def initialize(api_client = ApiClient.default)
|
20
|
+
@api_client = api_client
|
21
|
+
end
|
22
|
+
# Post creates a label
|
23
|
+
# This endpoint let user creates a label.
|
24
|
+
# @param label The json object of label.
|
25
|
+
# @param [Hash] opts the optional parameters
|
26
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
27
|
+
# @return [nil]
|
28
|
+
def create_label(label, opts = {})
|
29
|
+
create_label_with_http_info(label, opts)
|
30
|
+
nil
|
31
|
+
end
|
32
|
+
|
33
|
+
# Post creates a label
|
34
|
+
# This endpoint let user creates a label.
|
35
|
+
# @param label The json object of label.
|
36
|
+
# @param [Hash] opts the optional parameters
|
37
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
38
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
39
|
+
def create_label_with_http_info(label, opts = {})
|
40
|
+
if @api_client.config.debugging
|
41
|
+
@api_client.config.logger.debug 'Calling API: LabelApi.create_label ...'
|
42
|
+
end
|
43
|
+
# verify the required parameter 'label' is set
|
44
|
+
if @api_client.config.client_side_validation && label.nil?
|
45
|
+
fail ArgumentError, "Missing the required parameter 'label' when calling LabelApi.create_label"
|
46
|
+
end
|
47
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
48
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling LabelApi.create_label, the character length must be great than or equal to 1.'
|
49
|
+
end
|
50
|
+
|
51
|
+
# resource path
|
52
|
+
local_var_path = '/labels'
|
53
|
+
|
54
|
+
# query parameters
|
55
|
+
query_params = {}
|
56
|
+
|
57
|
+
# header parameters
|
58
|
+
header_params = {}
|
59
|
+
# HTTP header 'Accept' (if needed)
|
60
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
61
|
+
# HTTP header 'Content-Type'
|
62
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
63
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
64
|
+
|
65
|
+
# form parameters
|
66
|
+
form_params = {}
|
67
|
+
|
68
|
+
# http body (model)
|
69
|
+
post_body = @api_client.object_to_http_body(label)
|
70
|
+
auth_names = ['basic']
|
71
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
72
|
+
:header_params => header_params,
|
73
|
+
:query_params => query_params,
|
74
|
+
:form_params => form_params,
|
75
|
+
:body => post_body,
|
76
|
+
:auth_names => auth_names)
|
77
|
+
if @api_client.config.debugging
|
78
|
+
@api_client.config.logger.debug "API called: LabelApi#create_label\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
79
|
+
end
|
80
|
+
return data, status_code, headers
|
81
|
+
end
|
82
|
+
# Delete the label specified by ID.
|
83
|
+
# Delete the label specified by ID.
|
84
|
+
# @param label_id Label ID
|
85
|
+
# @param [Hash] opts the optional parameters
|
86
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
87
|
+
# @return [nil]
|
88
|
+
def delete_label(label_id, opts = {})
|
89
|
+
delete_label_with_http_info(label_id, opts)
|
90
|
+
nil
|
91
|
+
end
|
92
|
+
|
93
|
+
# Delete the label specified by ID.
|
94
|
+
# Delete the label specified by ID.
|
95
|
+
# @param label_id Label ID
|
96
|
+
# @param [Hash] opts the optional parameters
|
97
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
98
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
99
|
+
def delete_label_with_http_info(label_id, opts = {})
|
100
|
+
if @api_client.config.debugging
|
101
|
+
@api_client.config.logger.debug 'Calling API: LabelApi.delete_label ...'
|
102
|
+
end
|
103
|
+
# verify the required parameter 'label_id' is set
|
104
|
+
if @api_client.config.client_side_validation && label_id.nil?
|
105
|
+
fail ArgumentError, "Missing the required parameter 'label_id' when calling LabelApi.delete_label"
|
106
|
+
end
|
107
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
108
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling LabelApi.delete_label, the character length must be great than or equal to 1.'
|
109
|
+
end
|
110
|
+
|
111
|
+
# resource path
|
112
|
+
local_var_path = '/labels/{label_id}'.sub('{' + 'label_id' + '}', label_id.to_s)
|
113
|
+
|
114
|
+
# query parameters
|
115
|
+
query_params = {}
|
116
|
+
|
117
|
+
# header parameters
|
118
|
+
header_params = {}
|
119
|
+
# HTTP header 'Accept' (if needed)
|
120
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
121
|
+
# HTTP header 'Content-Type'
|
122
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
123
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
124
|
+
|
125
|
+
# form parameters
|
126
|
+
form_params = {}
|
127
|
+
|
128
|
+
# http body (model)
|
129
|
+
post_body = nil
|
130
|
+
auth_names = ['basic']
|
131
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
|
132
|
+
:header_params => header_params,
|
133
|
+
:query_params => query_params,
|
134
|
+
:form_params => form_params,
|
135
|
+
:body => post_body,
|
136
|
+
:auth_names => auth_names)
|
137
|
+
if @api_client.config.debugging
|
138
|
+
@api_client.config.logger.debug "API called: LabelApi#delete_label\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
139
|
+
end
|
140
|
+
return data, status_code, headers
|
141
|
+
end
|
142
|
+
# Get the label specified by ID.
|
143
|
+
# This endpoint let user get the label by specific ID.
|
144
|
+
# @param label_id Label ID
|
145
|
+
# @param [Hash] opts the optional parameters
|
146
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
147
|
+
# @return [Label]
|
148
|
+
def get_label_by_id(label_id, opts = {})
|
149
|
+
data, _status_code, _headers = get_label_by_id_with_http_info(label_id, opts)
|
150
|
+
data
|
151
|
+
end
|
152
|
+
|
153
|
+
# Get the label specified by ID.
|
154
|
+
# This endpoint let user get the label by specific ID.
|
155
|
+
# @param label_id Label ID
|
156
|
+
# @param [Hash] opts the optional parameters
|
157
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
158
|
+
# @return [Array<(Label, Fixnum, Hash)>] Label data, response status code and response headers
|
159
|
+
def get_label_by_id_with_http_info(label_id, opts = {})
|
160
|
+
if @api_client.config.debugging
|
161
|
+
@api_client.config.logger.debug 'Calling API: LabelApi.get_label_by_id ...'
|
162
|
+
end
|
163
|
+
# verify the required parameter 'label_id' is set
|
164
|
+
if @api_client.config.client_side_validation && label_id.nil?
|
165
|
+
fail ArgumentError, "Missing the required parameter 'label_id' when calling LabelApi.get_label_by_id"
|
166
|
+
end
|
167
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
168
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling LabelApi.get_label_by_id, the character length must be great than or equal to 1.'
|
169
|
+
end
|
170
|
+
|
171
|
+
# resource path
|
172
|
+
local_var_path = '/labels/{label_id}'.sub('{' + 'label_id' + '}', label_id.to_s)
|
173
|
+
|
174
|
+
# query parameters
|
175
|
+
query_params = {}
|
176
|
+
|
177
|
+
# header parameters
|
178
|
+
header_params = {}
|
179
|
+
# HTTP header 'Accept' (if needed)
|
180
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
181
|
+
# HTTP header 'Content-Type'
|
182
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
183
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
184
|
+
|
185
|
+
# form parameters
|
186
|
+
form_params = {}
|
187
|
+
|
188
|
+
# http body (model)
|
189
|
+
post_body = nil
|
190
|
+
auth_names = ['basic']
|
191
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
192
|
+
:header_params => header_params,
|
193
|
+
:query_params => query_params,
|
194
|
+
:form_params => form_params,
|
195
|
+
:body => post_body,
|
196
|
+
:auth_names => auth_names,
|
197
|
+
:return_type => 'Label')
|
198
|
+
if @api_client.config.debugging
|
199
|
+
@api_client.config.logger.debug "API called: LabelApi#get_label_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
200
|
+
end
|
201
|
+
return data, status_code, headers
|
202
|
+
end
|
203
|
+
# List labels according to the query strings.
|
204
|
+
# This endpoint let user list labels by name, scope and project_id
|
205
|
+
# @param [Hash] opts the optional parameters
|
206
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
207
|
+
# @option opts [String] :q Query string to query resources. Supported query patterns are \"exact match(k=v)\", \"fuzzy match(k=~v)\", \"range(k=[min~max])\", \"list with union releationship(k={v1 v2 v3})\" and \"list with intersetion relationship(k=(v1 v2 v3))\". The value of range and list can be string(enclosed by \" or '), integer or time(in format \"2020-04-09 02:36:00\"). All of these query patterns should be put in the query string \"q=xxx\" and splitted by \",\". e.g. q=k1=v1,k2=~v2,k3=[min~max]
|
208
|
+
# @option opts [String] :sort Sort the resource list in ascending or descending order. e.g. sort by field1 in ascending orderr and field2 in descending order with \"sort=field1,-field2\"
|
209
|
+
# @option opts [Integer] :page The page number (default to 1)
|
210
|
+
# @option opts [Integer] :page_size The size of per page (default to 10)
|
211
|
+
# @option opts [String] :name The label name.
|
212
|
+
# @option opts [String] :scope The label scope. Valid values are g and p. g for global labels and p for project labels.
|
213
|
+
# @option opts [Integer] :project_id Relevant project ID, required when scope is p.
|
214
|
+
# @return [Array<Label>]
|
215
|
+
def list_labels(opts = {})
|
216
|
+
data, _status_code, _headers = list_labels_with_http_info(opts)
|
217
|
+
data
|
218
|
+
end
|
219
|
+
|
220
|
+
# List labels according to the query strings.
|
221
|
+
# This endpoint let user list labels by name, scope and project_id
|
222
|
+
# @param [Hash] opts the optional parameters
|
223
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
224
|
+
# @option opts [String] :q Query string to query resources. Supported query patterns are \"exact match(k=v)\", \"fuzzy match(k=~v)\", \"range(k=[min~max])\", \"list with union releationship(k={v1 v2 v3})\" and \"list with intersetion relationship(k=(v1 v2 v3))\". The value of range and list can be string(enclosed by \" or '), integer or time(in format \"2020-04-09 02:36:00\"). All of these query patterns should be put in the query string \"q=xxx\" and splitted by \",\". e.g. q=k1=v1,k2=~v2,k3=[min~max]
|
225
|
+
# @option opts [String] :sort Sort the resource list in ascending or descending order. e.g. sort by field1 in ascending orderr and field2 in descending order with \"sort=field1,-field2\"
|
226
|
+
# @option opts [Integer] :page The page number
|
227
|
+
# @option opts [Integer] :page_size The size of per page
|
228
|
+
# @option opts [String] :name The label name.
|
229
|
+
# @option opts [String] :scope The label scope. Valid values are g and p. g for global labels and p for project labels.
|
230
|
+
# @option opts [Integer] :project_id Relevant project ID, required when scope is p.
|
231
|
+
# @return [Array<(Array<Label>, Fixnum, Hash)>] Array<Label> data, response status code and response headers
|
232
|
+
def list_labels_with_http_info(opts = {})
|
233
|
+
if @api_client.config.debugging
|
234
|
+
@api_client.config.logger.debug 'Calling API: LabelApi.list_labels ...'
|
235
|
+
end
|
236
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
237
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling LabelApi.list_labels, the character length must be great than or equal to 1.'
|
238
|
+
end
|
239
|
+
|
240
|
+
if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 100
|
241
|
+
fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling LabelApi.list_labels, must be smaller than or equal to 100.'
|
242
|
+
end
|
243
|
+
|
244
|
+
# resource path
|
245
|
+
local_var_path = '/labels'
|
246
|
+
|
247
|
+
# query parameters
|
248
|
+
query_params = {}
|
249
|
+
query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
|
250
|
+
query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
|
251
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
252
|
+
query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
|
253
|
+
query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
|
254
|
+
query_params[:'scope'] = opts[:'scope'] if !opts[:'scope'].nil?
|
255
|
+
query_params[:'project_id'] = opts[:'project_id'] if !opts[:'project_id'].nil?
|
256
|
+
|
257
|
+
# header parameters
|
258
|
+
header_params = {}
|
259
|
+
# HTTP header 'Accept' (if needed)
|
260
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
261
|
+
# HTTP header 'Content-Type'
|
262
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
263
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
264
|
+
|
265
|
+
# form parameters
|
266
|
+
form_params = {}
|
267
|
+
|
268
|
+
# http body (model)
|
269
|
+
post_body = nil
|
270
|
+
auth_names = ['basic']
|
271
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
272
|
+
:header_params => header_params,
|
273
|
+
:query_params => query_params,
|
274
|
+
:form_params => form_params,
|
275
|
+
:body => post_body,
|
276
|
+
:auth_names => auth_names,
|
277
|
+
:return_type => 'Array<Label>')
|
278
|
+
if @api_client.config.debugging
|
279
|
+
@api_client.config.logger.debug "API called: LabelApi#list_labels\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
280
|
+
end
|
281
|
+
return data, status_code, headers
|
282
|
+
end
|
283
|
+
# Update the label properties.
|
284
|
+
# This endpoint let user update label properties.
|
285
|
+
# @param label_id Label ID
|
286
|
+
# @param label The updated label json object.
|
287
|
+
# @param [Hash] opts the optional parameters
|
288
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
289
|
+
# @return [nil]
|
290
|
+
def update_label(label_id, label, opts = {})
|
291
|
+
update_label_with_http_info(label_id, label, opts)
|
292
|
+
nil
|
293
|
+
end
|
294
|
+
|
295
|
+
# Update the label properties.
|
296
|
+
# This endpoint let user update label properties.
|
297
|
+
# @param label_id Label ID
|
298
|
+
# @param label The updated label json object.
|
299
|
+
# @param [Hash] opts the optional parameters
|
300
|
+
# @option opts [String] :x_request_id An unique ID for the request
|
301
|
+
# @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
|
302
|
+
def update_label_with_http_info(label_id, label, opts = {})
|
303
|
+
if @api_client.config.debugging
|
304
|
+
@api_client.config.logger.debug 'Calling API: LabelApi.update_label ...'
|
305
|
+
end
|
306
|
+
# verify the required parameter 'label_id' is set
|
307
|
+
if @api_client.config.client_side_validation && label_id.nil?
|
308
|
+
fail ArgumentError, "Missing the required parameter 'label_id' when calling LabelApi.update_label"
|
309
|
+
end
|
310
|
+
# verify the required parameter 'label' is set
|
311
|
+
if @api_client.config.client_side_validation && label.nil?
|
312
|
+
fail ArgumentError, "Missing the required parameter 'label' when calling LabelApi.update_label"
|
313
|
+
end
|
314
|
+
if @api_client.config.client_side_validation && !opts[:'x_request_id'].nil? && opts[:'x_request_id'].to_s.length < 1
|
315
|
+
fail ArgumentError, 'invalid value for "opts[:"x_request_id"]" when calling LabelApi.update_label, the character length must be great than or equal to 1.'
|
316
|
+
end
|
317
|
+
|
318
|
+
# resource path
|
319
|
+
local_var_path = '/labels/{label_id}'.sub('{' + 'label_id' + '}', label_id.to_s)
|
320
|
+
|
321
|
+
# query parameters
|
322
|
+
query_params = {}
|
323
|
+
|
324
|
+
# header parameters
|
325
|
+
header_params = {}
|
326
|
+
# HTTP header 'Accept' (if needed)
|
327
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
328
|
+
# HTTP header 'Content-Type'
|
329
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
330
|
+
header_params[:'X-Request-Id'] = opts[:'x_request_id'] if !opts[:'x_request_id'].nil?
|
331
|
+
|
332
|
+
# form parameters
|
333
|
+
form_params = {}
|
334
|
+
|
335
|
+
# http body (model)
|
336
|
+
post_body = @api_client.object_to_http_body(label)
|
337
|
+
auth_names = ['basic']
|
338
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
|
339
|
+
:header_params => header_params,
|
340
|
+
:query_params => query_params,
|
341
|
+
:form_params => form_params,
|
342
|
+
:body => post_body,
|
343
|
+
:auth_names => auth_names)
|
344
|
+
if @api_client.config.debugging
|
345
|
+
@api_client.config.logger.debug "API called: LabelApi#update_label\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
346
|
+
end
|
347
|
+
return data, status_code, headers
|
348
|
+
end
|
349
|
+
end
|
350
|
+
end
|