Martin Peřina has uploaded a new change for review. Change subject: restapi: Add flag to detect kdump before fencing ......................................................................
restapi: Add flag to detect kdump before fencing Enables kdumpDetection flag to be set when adding/updating power management configuration of host using REST API. Change-Id: I3208e62cbca121a741fb83d9fafd37935df9c1ba Bug-Url: https://bugzilla.redhat.com/1079821 Signed-off-by: Martin Perina <mper...@redhat.com> --- M backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd M backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml M backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java M backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/HostMapperTest.java 4 files changed, 17 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/21/26721/1 diff --git a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd index 89a4760..9b87b01 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd +++ b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd @@ -1408,6 +1408,7 @@ <xs:element ref="pm_proxies" minOccurs="0" maxOccurs="1"/> <xs:element ref="agents" minOccurs="0"/> <xs:element name="automatic_pm_enabled" type="xs:boolean" minOccurs="0" maxOccurs="1"/> + <xs:element name="kdump_detection" type="xs:boolean" minOccurs="0" maxOccurs="1"/> </xs:sequence> <xs:attribute name="type" type="xs:string"/> </xs:complexType> diff --git a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml index 2bb756f..20135e2 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml +++ b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml @@ -2482,7 +2482,8 @@ host.power_management.username: 'xs:string', host.power_management.password: 'xs:string', host.power_management.automatic_pm_enabled: 'xs:boolean', host.power_management.options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}, host.power_management.pm_proxy--COLLECTION: {propietary : 'xs:string'}, host.power_management.agents.agent--COLLECTION:{type: 'xs:string', - address: 'xs:string', username: 'xs:string', password: 'xs:string', options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}} + address: 'xs:string', username: 'xs:string', password: 'xs:string', options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}, + host.power_management.kdump_detection: 'xs:boolean'} description: update the specified host in the system. This is deprecated and is provided only for backwards compatibility - mandatoryArguments: {} optionalArguments: {host.name: 'xs:string', host.comment: 'xs:string', host.address: 'xs:string', @@ -2493,7 +2494,8 @@ host.power_management.password: 'xs:string', host.power_management.options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}, host.power_management.pm_proxy--COLLECTION: {propietary : 'xs:string'}, host.power_management.agents.agent--COLLECTION:{type: 'xs:string', address: 'xs:string', username: 'xs:string', password: 'xs:string', - options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}} + options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}, + host.power_management.kdump_detection: 'xs:boolean'} description: update the specified host in the system urlparams: async: {context: matrix, type: 'xs:boolean', value: true|false, required: false} @@ -2512,7 +2514,8 @@ host.power_management.enabled: 'xs:boolean', host.power_management.address: 'xs:string', host.power_management.username: 'xs:string', host.power_management.automatic_pm_enabled: 'xs:boolean', host.power_management.password: 'xs:string', host.power_management.options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}, host.power_management.pm_proxy--COLLECTION: {propietary : 'xs:string'}, host.power_management.agents.agent--COLLECTION:{type: 'xs:string', - address: 'xs:string', username: 'xs:string', password: 'xs:string', options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}, host.reboot_after_installation: 'xs:boolean', host.override_iptables: 'xs:boolean'} + address: 'xs:string', username: 'xs:string', password: 'xs:string', options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}, host.reboot_after_installation: 'xs:boolean', host.override_iptables: 'xs:boolean', + host.power_management.kdump_detection: 'xs:boolean'} description: add a new host to the system providing the host root password. This has been deprecated and provided for backwards compatibility - mandatoryArguments: {host.name: 'xs:string', host.address: 'xs:string', host.cluster.id|name: 'xs:string'} optionalArguments: {host.comment: 'xs:string', host.ssh.port: 'xs:int', host.ssh.fingerprint: 'xs:string', host.ssh.authentication_method: 'xs:string', @@ -2521,7 +2524,8 @@ host.power_management.enabled: 'xs:boolean', host.power_management.address: 'xs:string', host.power_management.username: 'xs:string', host.power_management.password: 'xs:string', host.power_management.options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}, host.power_management.pm_proxy--COLLECTION: {propietary : 'xs:string'}, host.power_management.agents.agent--COLLECTION:{type: 'xs:string', address: 'xs:string', - username: 'xs:string', password: 'xs:string', options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}, host.reboot_after_installation: 'xs:boolean', host.override_iptables: 'xs:boolean'} + username: 'xs:string', password: 'xs:string', options.option--COLLECTION: {option.name: 'xs:string', option.value: 'xs:string'}}, host.reboot_after_installation: 'xs:boolean', host.override_iptables: 'xs:boolean', + host.power_management.kdump_detection: 'xs:boolean'} description: add a new host to the system providing the ssh password or fingerprint urlparams: {} headers: diff --git a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java index edb7497..427fed2 100644 --- a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java +++ b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java @@ -166,6 +166,7 @@ } } } + entity.setPmKdumpDetection(model.isKdumpDetection()); return entity; } @@ -515,6 +516,7 @@ model.getAgents().getAgents().add(agent); } } + model.setKdumpDetection(entity.isPmKdumpDetection()); return model; } diff --git a/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/HostMapperTest.java b/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/HostMapperTest.java index cd6310c..8d02b22 100644 --- a/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/HostMapperTest.java +++ b/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/HostMapperTest.java @@ -202,6 +202,7 @@ powerMgmt.setPassword("passwd"); powerMgmt.setType("apc"); powerMgmt.setUsername("user"); + powerMgmt.setKdumpDetection(true); VdsStatic vdsStatic = new VdsStatic(); vdsStatic.setManagementIp(ip[0]); @@ -210,6 +211,7 @@ vdsStatic.setPmPort(123); vdsStatic.setPmType("apc"); vdsStatic.setPmUser("user"); + vdsStatic.setPmKdumpDetection(false); VdsStatic mappedVdsStatic = HostMapper.map(powerMgmt, vdsStatic); assertEquals(mappedVdsStatic.getManagementIp(), ip[1]); @@ -217,6 +219,7 @@ assertEquals(mappedVdsStatic.getPmPassword(), "passwd"); assertEquals(mappedVdsStatic.getPmType(), "apc"); assertEquals(mappedVdsStatic.getPmUser(), "user"); + assertTrue(mappedVdsStatic.isPmKdumpDetection()); } @Test @@ -247,6 +250,7 @@ powerMgmt.setPassword("passwd"); powerMgmt.setType("apc"); powerMgmt.setUsername("user"); + powerMgmt.setKdumpDetection(true); Agent agent = new Agent(); agent.setOrder(1); @@ -262,6 +266,7 @@ vdsStatic.setPmPort(123); vdsStatic.setPmType("apc"); vdsStatic.setPmUser("user"); + vdsStatic.setPmKdumpDetection(false); VdsStatic mappedVdsStatic = HostMapper.map(powerMgmt, vdsStatic); assertEquals(mappedVdsStatic.getManagementIp(), ip[1]); @@ -269,6 +274,7 @@ assertEquals(mappedVdsStatic.getPmPassword(), "passwd"); assertEquals(mappedVdsStatic.getPmType(), "apc"); assertEquals(mappedVdsStatic.getPmUser(), "user"); + assertTrue(mappedVdsStatic.isPmKdumpDetection()); } @Test -- To view, visit http://gerrit.ovirt.org/26721 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3208e62cbca121a741fb83d9fafd37935df9c1ba Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Peřina <mper...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches