I am trying to use uimapi, and I can't use the deployment_jobs to POST a robot installation.
I'm fulfiling all the required fields to execute the JOB, and I get a "200" code, so the command executes corretly.
However, uimapi jobs_deployment fails to deploy robots.
json sent is accepted (Returns 200) and job is entered in the automated_deployment_engine.
However, deployment fails with the below error in ADE:
02:04:43,657 [Coordinator] TRACE Coordinator - [NEW TASK]->(id:JobIdPair{jobId=11509351fb5f4b3a87e383757a8d4e54, taskId=80})->test
64
<hostname>.xxx.broadcom.net
root
<hostname>.xxx_domain
<ip_address>
<hostname>.xxx_hub
<hostname>.xxx
48002
03102020 02:04:43,658 [AsyncTracker] DEBUG ADEH2Dal - Updated taskId = '80', stageName = 'Preprocessing', status = 'Running', jobId = '11509351fb5f4b3a87e383757a8d4e54'
03102020 02:04:43,658 [pool-5-thread-3] FATAL AbstractActor - Error encountered during distribution of unknown to target <hostname>.xxx.xxx.broadcom.net: (4,Install Failure)
com.nimsoft.ADE.core.DeploymentException: java.lang.NullPointerException
at com.nimsoft.ADE.actor.HostActor.install(HostActor.java:58) ~[automated_deployment_engine_v2-9.0.2-A.jar:9.0.2-A]
at com.nimsoft.ADE.actor.HostActor.install(HostActor.java:23) ~[automated_deployment_engine_v2-9.0.2-A.jar:9.0.2-A]
at com.nimsoft.ADE.actor.AbstractActor.run(AbstractActor.java:87) [automated_deployment_engine_v2-9.0.2-A.jar:9.0.2-A]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_102]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_102]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_102]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_102]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_102]
Caused by: java.lang.NullPointerException
at com.nimsoft.ADE.archive.ArchiveManager.getRobotArchivePackageName(ArchiveManager.java:585) ~[automated_deployment_engine_archive_management-9.0.2-A.jar:9.0.2-A]
at com.nimsoft.ADE.actor.HostActor.install(HostActor.java:34) ~[automated_deployment_engine_v2-9.0.2-A.jar:9.0.2-A]
... 7 more
03102020 02:04:43,659 [AsyncTracker] DEBUG AsyncTracker - TrackerUpdate Received: TrackerUpdate{jobId='11509351fb5f4b3a87e383757a8d4e54', taskId=80, target='<hostname>.xxx.broadcom.net', strStageName='Preprocessing', status=RUNNING, description='', descriptionArgs='', taskUpdateType=STAGE, origin='null'}
03102020 02:04:43,659 [AsyncTracker] DEBUG ADEH2Dal - Updated job 11509351fb5f4b3a87e383757a8d4e54 with job_status Running
03102020 02:04:43,659 [AsyncTracker] INFO JobHandle - JobId: 11509351fb5f4b3a87e383757a8d4e54 1 tasks remaining...
03102020 02:04:43,660 [AsyncTracker] DEBUG AsyncTracker - Job 11509351fb5f4b3a87e383757a8d4e54 still has working tasks.
03102020 02:04:43,660 [AsyncTracker] TRACE ADEH2Dal - Updated taskId = '80', status = 'Failed', exception = 'java.lang.NullPointerException', exceptionArgs = '', jobId = '11509351fb5f4b3a87e383757a8d4e54'
03102020 02:04:43,661 [AsyncTracker] DEBUG AsyncTracker - TrackerUpdate Received: TrackerUpdate{jobId='11509351fb5f4b3a87e383757a8d4e54', taskId=80, target='mundev001158.bpc.broadcom.net', strStageName='null', status=FAILED, description='java.lang.NullPointerException', descriptionArgs='', taskUpdateType=EXCEPTION, origin='null'}
03102020 02:04:43,661 [AsyncTracker] INFO JobHandle - JobId: 11509351fb5f4b3a87e383757a8d4e54 0 tasks remaining...
03102020 02:04:43,661 [AsyncTracker] DEBUG AsyncTracker - Job 11509351fb5f4b3a87e383757a8d4e54 no longer has any working tasks.
03102020 02:04:43,661 [AsyncTracker] DEBUG ADEH2Dal - Updated job 11509351fb5f4b3a87e383757a8d4e54 with job_status Failed
03102020 02:04:43,661 [AsyncTracker] INFO AsyncTracker - Job 11509351fb5f4b3a87e383757a8d4e54 did not complete all tasks successfully.
ADE:
03102020 02:04:43,658 [pool-5-thread-3] FATAL AbstractActor - Error encountered during distribution of unknown to target mundev001158.bpc.broadcom.net: (4,Install Failure)
Bad Parameters POST.
Even if UIMAPI is returning code "200", which represents a successful call and a Job is created in the ADE backlog, the robot may not be installed if the parameters have typos or Bad formatted JSON parameters.
For example, if we pass the parameter:
(Wrong)
"profile": "CENTOS",
(Correct)
"profile": "CentOS",
Another example of what could generate this issue is the definition of the architecture:
(wrong)
"arch": "robot_exe",
(good)
"arch": "64",
Release : 9.2.0
Component : UIM - ADE
Below is an example of correct schema for deploying robots using ADE via deployment_jobs call in UIMAPI
{
"name": "Test",
"description": "Test",
"hosts":
[
{
"domain": "<domain>",
"hub": "hostname_hub",
"arch": "64",
"hostname": "<ip_address>",
"username": "root",
"password": "*****",
"profile": "CentOS",
"hubip": ">hub_ip>",
"hubrobotname": "<hostname>",
"hubport": "48002",
"useOldProbeLocatorConfiguration": true,
"controller_port": "48000",
"hub_update_interval": "300",
"ip_version": "ipv4",
"origin": "test",
"os_user1": "test",
"robotip": "<ip_address>"
}
]
}
Examples of schema can be also found here: