Error when I click view log button in task execution screen in Spring CLoud Dataflow Dashboard - spring-cloud-dataflow

Good evening.
I have set up Spring Cloud Dataflow 2.7.0-SNAPSHOT to run spring batch's tasks in Openshift.
I registered an app, using a valid docker path, and created a task using this app.
When I execute the task from SCDF dashboard using an specific platform from the drop-down , the task gets properly executed on Openshift.
When I access the task execution screen, I click the button "View Logs", and I get the following error on screen:
"Log could not be retrieved. Verify that deployments are still available."
In SCDF log file I get:
2020-09-15 14:12:16.546 WARN 7 --- [nio-9376-exec-1] .s.c.d.s.s.i.DefaultTaskExecutionService : Failed to retrieve the log, returning verification message.
java.lang.IllegalStateException: No Launcher found for the platform named 'default'. Available platform names are [platform-test, platform-dev]
at org.springframework.cloud.dataflow.server.service.impl.DefaultTaskExecutionService.findTaskLauncher(DefaultTaskExecutionService.java:683)
at org.springframework.cloud.dataflow.server.service.impl.DefaultTaskExecutionService.getLog(DefaultTaskExecutionService.java:605)
I have seen that REST API endpoint(http://localhost:9393/tasks/logs/<external_exec_id>?platformName=platform-dev) to get the log works properly, but, from dashboard we are invoking http://localhost:9393/tasks/logs/<external_exec_id>, not including platformName.
should I configure anything, or add any attribute to the task execution to make this work, or is this a bug?
Thanks and regards.

Related

Trying to run a Robot Framework Test Case against a Windows app with Appium Server - possible?

I am using Robot Framework with the RIDE IDE. I have an Appium Server session running. As a first try, I want to write a Robot Framework test case to open an instance of the Windows notepad. Firstly, is this even possible, or am I misguided?
Appium
The following are the settings used:
Remote Host: 127.0.0.1
Remote Port: 4723
Remote Path: /
SSL: disabled
The "Desired Capabilities" are set as represented by the following JSON:
{
"app": "C:\\Windows\\system32\\notepad.exe"
}
WinAppDriver
It is running on port 4723.
RIDE IDE
The following test case is being executed:
*** Settings ***
Library AppiumLibrary
*** Test Cases ***
TC0
Open Application http://localhost:4723/wd/hub app=C:\Windows\System32\notepad.exe
This yields the following error:
[ WARN ] Keyword 'Capture Page Screenshot' could not be run on failure: No application is open
What might be the cause of this?
Edit: Additional information - when executing the above test case, the following appears in the WinAppDriver console:
Per default AppiumLibrary will run Capture Page Screenshot on failure.
AppiumLibrary Documentation
Most likely sequence is as follow.
Test case try open notepad but fail.
Open Application http://localhost:4723/wd/hub app=C:\Windows\System32\notepad.exe
On this failure AppiumLibrary try Capture Page Screenshot but fails due to there is no open application since step 1 failed.
I believe you need to focus on troubleshooting why the app do not open properly.
If you like to suppress this failure you can you can set AppiumLibrary to not capture screen on failure in the import with run_on_failure=No Operation, see the linked documentation above.
Library AppiumLibrary run_on_failure=No Operation
Slightly unrelated but I just wanted to give a few tips with using winappdriver and robotframework as there isn't a lot of concise information out there.
I personally have found that running the winappdriver through appium has been slower than running the winappdriver standalone.
localhost is also slower than using 127.0.0.1 as your system has to resolve that address each time: https://github.com/microsoft/WinAppDriver/issues/1269
AppiumLibrary is still very tailored to Mobile automation so it is missing some of the usual things you would want in desktop automation such as 'drag and drop', 'mouse over element', keywords for controlling the driver setup/teardown, etc. RobotFramework-Zoomba's DesktopLibrary extends AppiumLibrary and adds a lot of these keywords if you would be willing to try that out. Keyword docs can be found here: https://accruent.github.io/robotframework-zoomba/DesktopLibraryDocumentation.html

Azure Pipelines | App Center test | error when including category

I'm running a job (series of tasks including nuget restore, build & signing application) on Azure DevOps to build android application and Test (Xamarin.UITest) application through Appcenter.
Test runs fine, if I don't specify any arguments on "Additional options for run" on "Test with Visual Studio App Center" task. When I do that (--include-category LandingPage) task throws error saying:
Error: Command 'test run manifest --manifest-path d:\a\12\a\AppCenterTest\manifest.json --app-path d:/a/12/b/Release/PUBLISH_PACKAGE_NAME_PHONE_ANDROID.PUBLISH_PACKAGE_NAME_PHONE_ANDROID.apk --app SampleApp/Android --devices 12345abcd --test-series DevOps --locale en_US --include-category LandingPage --quiet --token ***' failed with exception "Unknown argument --include-category"
What I'm missing?
[command works perfectly when I run appcenter test run from my local machine.]
Any help is appreciated.
For people facing this issue, make sure you're providing your --include-category AppCenterTest under Prepare Tests area not under Run tests. Additional Options under Run Tests have different purpose it seems.
failed with exception "Unknown argument --include-category
In fact, the error message has been clear to express the caused reason. For this App Center Test task in Azure Devops, this command argument --include-category does not supportted.
Please Refer to the open source of about this task: azure-pipelines-tasks/Tasks/AppCenterTestV1. You can check its logic and which arguments are supported by this task.
After you open the source file in github, go function getTestRunner and you will see that for test runner, the arguments it defined and supported to compile in this task does not include --include-category. That's why you receive the Unknown argument error.

Neo4j embedded database doesnt show the browser in a spring boot app

[update] Please find the config classes here : https://github.com/veeseekay/fooflix.
To run, you can just do a
gradle clean build
java -jar build/libs/fooflix.jar
When you point to localhost:8686 - gives a 404. However, I am running this within my IDE and the browser shows up fine.
I have successfully embedded neo4j within my spring boot application. I could even bring up the webadmin/browser for neo4j using this :
How to enable neo4j webadmin when using spring-data-neo4j?
However there is a weird problem which am not able to figure out. When I run this spring boot application in my IDE, am able to access the neo4j webadmin from the browser and view the graphs, however, if I build an uber jar and run it on a terminal, am not able to access the webadmin. I get a 404.
<code>
HTTP ERROR 404
Problem accessing /browser/. Reason:
Not Found
Powered by Jetty://
</code>
looks like a path issue, but am not able to figure out why. any pointers would be of great help.
here are my gradle deps
<code>
compile("org.springframework.boot:spring-boot-starter")
compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.boot:spring-boot-starter-actuator")
compile("org.springframework:spring-context")
compile("org.springframework:spring-tx")
compile("org.springframework.data:spring-data-neo4j:3.4.0.RELEASE")
compile("org.hibernate:hibernate-validator")
compile("javax.el:javax.el-api:2.2.4")
compile("javax.el:javax.el-api:2.2.4")
compile("org.neo4j.app:neo4j-server:2.2.5")
compile("org.neo4j.app:neo4j-server:2.2.5:static-web")
</code>
thanks

Release Management - Continuous Integration

I've configured Release Management to pick up when source is checked in and deploy the code. However, I am having a problem:
System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Exception: Package location "\devserver1\Drop\Release Manager Build (Continuous)\Release Manager Build (Continuous)_20140115.15_PublishedWebsites\FrontEnd_Package" does not exists or Application Pool user does not have access. at Microsoft.TeamFoundation.Release.Common.Helpers.FileTransferer.CopyFolder(String sourceFolder, String destFolder) at Microsoft.TeamFoundation.Release.Services.DeploymentControllerService.GetPackageFileInfos(String packageLocation) --- End of inner exception stack trace ---
The strange thing is that if I simply open up Release Management tool, go to the failed deployment and click "retry deployment" it works first time no problem.
I have tried giving "Everyone", "TFSService" & "ReleaseManagement" users full permissions to both the drop folder and the build folder but still it doesn't work.
Please help!
So turns out that because I didn't have a "Configuration" set up in my build process, nothing was created as there was no default either. Once I created this it seemed to work.
My discussion with Microsoft here:
MSDN:Release Management - Continuous Integration
I had to give "Network Service" explicit permission to the drop folder.

Can we run sample-app that comes with BB Push SDK without app.id?

I am trying to deploy the sample-app war file that comes with PushSDK.But was not able to deploy the application successfully.Steps followed till now
1) I was able to configure PushSDK.properties log4j.xmlbut didn't change value of ${sampleapp.appid} in sample-app-context.xml.
2)then made the war file using cmd
3) Deployed on the server.
during deployment an error was coming.
Invalid bean definition with name 'registerListeners' defined in class path resource [sample-app-context.xml]: Could not resolve placeholder 'sampleapp.appid'
Tried to register on link but was unsuccessful
I have just started down the path of using the Push SDK, but from what I've read I conclude that you need to get your development registration completed at least before you can run the sample code; unles you're using your own BES.

Resources