Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port connection not reached #162

Open
jeusdi opened this issue Jan 26, 2017 · 28 comments
Open

Port connection not reached #162

jeusdi opened this issue Jan 26, 2017 · 28 comments

Comments

@jeusdi
Copy link

jeusdi commented Jan 26, 2017

I'm getting this message:

14:23:42.135 [DEBUG] [sun.net.www.protocol.http.HttpURLConnection] sun.net.www.MessageHeader@26b625127 pairs: {POST /management/add-content HTTP/1.1: null}{Connection: close}{Content-Type: multipart/form-data; boundary=CargoBoundary}{User-Agent: Java/1.8.0_45}{Host: localhost:9990}{Accept: text/html, image/gif, image/jpeg, *; q=.2, /; q=.2}{Content-Length: 29831794}
14:23:42.253 [DEBUG] [sun.net.www.protocol.http.HttpURLConnection] sun.net.www.MessageHeader@1fdcbf871 pairs: {Content-type: unknown/unknown}
14:23:42.254 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':deployDevWildfly10'
14:23:42.254 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] :deployDevWildfly10 FAILED
14:23:42.254 [INFO] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] :deployDevWildfly10 (Thread[Daemon worker Thread 5,5,main]) completed. Took 2.664 secs.
14:23:42.254 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationWorkerRegistry] Worker root.5 completed (0 in use)
14:23:42.254 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[Daemon worker Thread 5,5,main]] finished, busy: 2.991 secs, idle: 0.001 secs
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an exception.
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong:
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Execution failed for task ':deployDevWildfly10'.
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > org.codehaus.cargo.util.CargoException: HTTP request failed, response code: -1, response message: null, response body:
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Try:
14:23:42.255 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Run with --stacktrace option to get the stack trace.
14:23:42.255 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger]
14:23:42.255 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger] BUILD FAILED
14:23:42.255 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger]
14:23:42.255 [LIFECYCLE] [org.gradle.internal.buildevents.BuildResultLogger] Total time: 5.263 secs

Nevertheless, my task sets the port to connect to is 9992 instead of used 9990!
So, the connection is refused! How could I change the port?

def remoteContainers = [
	new RemoteContainer(
		name: 'wildfly10',
		container: 'wildfly10x',
		hostname: 'localhost',
		port: 9992,
		username: '----',
		password: '----',
        purpose: 'development'
	)
]

remoteContainers.each { config ->
	task "deployDev${config.name.capitalize()}"(type: com.bmuschko.gradle.cargo.tasks.remote.CargoDeployRemote) {
		description = "Deploys WAR to remote Web Application Server: '${config.name}'."
		containerId = config.container
		hostname = config.hostname
		port = config.port
		username = config.username
		password = config.password
		context = "webapi"
		dependsOn = [createDevelopmentWar]
	}
}
@jeusdi jeusdi changed the title Port connection Port connection not reached Jan 26, 2017
@bmuschko
Copy link
Owner

bmuschko commented Jan 26, 2017

Seems to work properly for me with your provided sample project. I see the following output when run with gradle deployDevWildfly10 -i.

Deployable artifacts = [/Users/bmuschko/dev/projects/gradle-playground/cargo/build/dist/webapi-dev-.war]
Starting action 'deploy' for remote container 'wildfly10x' on 'http://localhost:2200'

BTW: Did you intend to post your password in the code sample?

@bmuschko bmuschko self-assigned this Jan 26, 2017
@jeusdi
Copy link
Author

jeusdi commented Jan 27, 2017

I've just realized that I'm getting different messages when I'm using --debug and --info.

When I perform gradle deployDevWildfly10 --info I'm getting this message:

Deployable artifacts = [D:\projects\living\platform\commty\build\dists\commty-dev-de31042.war]
Starting action 'deploy' for remote container 'wildfly10x' on 'http://localhost:9992'
Container properties = [:]
:deployDevWildfly10 FAILED

Otherwise, using gradle deployDevWildfly10 --debug I'm getting these messages:

08:30:20.505 [DEBUG] [sun.net.www.protocol.http.HttpURLConnection] sun.net.www.MessageHeader@5b565a527 pairs: {POST /management/add-content HTTP/1.1: null}{Connection: close}{Content-Type: multipart/form-data; boundary=CargoBoundary}{User-Agent: Java/1.8.0_45}{Host: localhost:9990}{Accept: text/html, image/gif, image/jpeg, *; q=.2, /; q=.2}{Content-Length: 29832076}
08:30:20.627 [DEBUG] [sun.net.www.protocol.http.HttpURLConnection] sun.net.www.MessageHeader@4a857f181 pairs: {Content-type: unknown/unknown}
08:30:20.627 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':deployDevWildfly10'
08:30:20.627 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] :deployDevWildfly10 FAILED

This is my last gradle script.

@jeusdi
Copy link
Author

jeusdi commented Jan 30, 2017

I've been trying it for a some days ago, and I'm not able reach my server.

Nevertheless, I'm able to log in using web interface.

Any ideas?

@bmuschko
Copy link
Owner

bmuschko commented Feb 1, 2017

My guess is that you'll have to change the HTTP management port explicitly by a property. That's pre-set by Cargo. For more information see cargo.jboss.management-http.port under Runtime Configuration Properties.

In your task creation you'll have to assign something to the property containerProperties. Something like this (haven't tried it):

remoteContainers.each { config ->
    task "deployDev${config.name.capitalize()}"(type: com.bmuschko.gradle.cargo.tasks.remote.CargoDeployRemote) {
        containerProperties['cargo.jboss.management-http.port', 2222]
    }
}

@jeusdi
Copy link
Author

jeusdi commented Feb 2, 2017

Thanks @bmuschko
I've added the containerProperties:

remoteContainers.each { config ->
	task "deployDev${config.name.capitalize()}"(type: com.bmuschko.gradle.cargo.tasks.remote.CargoDeployRemote) {
		description = "Deploys WAR to remote Web Application Server: '${config.name}'."
		containerId = config.container
		hostname = config.hostname
		port = config.port
		username = config.username
		password = config.password
		context = "webapi"
		dependsOn = [createDevelopmentWar]
		deployables = [new com.bmuschko.gradle.cargo.convention.Deployable(file: createDevelopmentWar.archivePath)]
		containerProperties['cargo.jboss.management-http.port', 9992]
	}

Nevertheless, I keep getting the same message:

09:37:16.667 [DEBUG] [sun.net.www.protocol.http.HttpURLConnection] sun.net.www.MessageHeader@6bcedb777 pairs: {POST /management/add-content HTTP/1.1: null}{Connection: close}{Content-Type: multipart/form-data; boundary=CargoBoundary}{User-Agent: Java/1.8.0_45}{Host: localhost:9990}{Accept: text/html, image/gif, image/jpeg, *; q=.2, /; q=.2}{Content-Length: 29869382}

I'd like you look at cargo dependencies. Currently, I'm setting these dependencies in order to connect cargo with wildfly10:

dependencies {
    cargo 'org.wildfly:wildfly-controller-client:8.2.0.Final'
    cargo 'org.codehaus.cargo:cargo-core-uberjar:1.6.2'
    cargo 'org.codehaus.cargo:cargo-ant:1.6.2'
}

Am I using the correct dependencies in order to connect cargo with a wildfly 10 instance?

@bmuschko
Copy link
Owner

bmuschko commented Feb 6, 2017

In that I case I do not know. I suggest you ask about this on the Cargo user mailing list.

@sutaakar
Copy link

sutaakar commented Feb 7, 2017

I have briefly checked the management-http functionality from Codehaus Cargo side, it should work if cargo.jboss.management-http.port is set in Cargo configuration.
@jeusdi Can you check if that containerProperties value is propagated all the way down to Codehaus Cargo?

@jeusdi
Copy link
Author

jeusdi commented Feb 8, 2017

Thanks @sutaakar for your comment.

Nevertheless, I don't quite know what you exactly mean to... I mean, I don't know how to dig into Codehaus Cargo from my gradle script... Do you mean I take a look on debug? Nevertheless, how can I get this exactly information? Are you thinking about configuring any logger?

I think the messages I get from the task execution shows ho gradle plugin is reporting me correct port:

08:38:41.235 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter] Executing actions for task ':deployDevWildfly10'.
08:38:41.235 [INFO] [org.gradle.api.Task] Deployable artifacts = [D:\projects\living\platform\commty\build\dists\commty-dev-aefaba1-dirty.war]
08:38:41.236 [INFO] [org.gradle.api.Task] Starting action 'deploy' for remote container 'wildfly10x' on 'http://localhost:9992'

Nevertheless, it seems that it's trying to connect to 9990 instead of 9992:

08:38:42.130 [DEBUG] [sun.net.www.protocol.http.HttpURLConnection] sun.net.www.MessageHeader@78b79fc97 pairs: {POST /management/add-content HTTP/1.1: null}{Connection: close}{Content-Type: multipart/form-data; boundary=CargoBoundary}{User-Agent: Java/1.8.0_45}{Host: localhost:9990}{Accept: text/html, image/gif, image/jpeg, *; q=.2, /; q=.2}{Content-Length: 29870112}

Sorry.

@jeusdi
Copy link
Author

jeusdi commented Feb 9, 2017

I meant, I'm absolutly willing to help out adquiring that information, but I don't quite how exactly get it.

Could you give me some lights?

@sutaakar
Copy link

@jeusdi Can you please debug your Cargo execution?
If I understand correctly then this plugin should use Cargo Ant plugin. In that case every container property should be passed to Cargo core here: https://github.com/codehaus-cargo/cargo/blob/master/extensions/ant/tasks/src/main/java/org/codehaus/cargo/ant/ConfigurationElement.java#L325-L328

Can you please put a breakpoint there and check if cargo.jboss.management-http.port is passed there?

@jeusdi
Copy link
Author

jeusdi commented Feb 10, 2017

Is there some tutorial showing how to debug and set a breakpoint to an Ant plugin from gradle?
I've been to see, how to enable debugger on gradle, nevertheless, which code do I need to debug exactly?

@sutaakar
Copy link

You may try to use GRADLE_OPTS, see https://discuss.gradle.org/t/how-do-you-attach-a-debugger-to-gradle-so-that-i-can-debug-it-running-a-task/7526 .
This Cargo Ant plugin can be debugged as any other java application, you will probably need to import the https://github.com/codehaus-cargo/cargo/tree/master/extensions/ant/tasks to be able to properly place debug point to the class.

@jeusdi
Copy link
Author

jeusdi commented Feb 10, 2017

I've imported code from repository. I've set a breakpoint on line 325
Gradle is listening on 5006.

Nevertheless, breakpoint is not reached. Any ideas?

imagen

@sutaakar
Copy link

Put a breakpoint to https://github.com/codehaus-cargo/cargo/blob/master/core/containers/wildfly/src/main/java/org/codehaus/cargo/container/wildfly/internal/AbstractWildFlyRemoteDeployer.java#L85 . This line should definitely be reached. If it is so check the value of management port. If it is 9990 then it is default value.
Try to backtrack to place where this deployer is instantiated. It is constructed with Container parameter. Container should be created using configuration, this configuration should contain property cargo.jboss.management-http.port with your custom value.

@jeusdi
Copy link
Author

jeusdi commented Feb 10, 2017

It's not reached! Nevertheless, debugger is attached...

imagen

@sutaakar
Copy link

Try to put breakpoint to constructor - line 74.

@jeusdi
Copy link
Author

jeusdi commented Feb 10, 2017

It's not reached 😧

@sutaakar
Copy link

Seems that java debug has to be activated differently: https://docs.gradle.org/current/dsl/org.gradle.api.tasks.JavaExec.html try to use parameter --debug-jvm

@jeusdi
Copy link
Author

jeusdi commented Feb 10, 2017

I'm getting this message:

Problem configuring task :deployDevWildfly10 from command line.
Unknown command-line option '--debug-jvm'.

@sutaakar
Copy link

Hmm, from https://discuss.gradle.org/t/how-do-you-attach-a-debugger-to-gradle-so-that-i-can-debug-it-running-a-task/7526/5 it seems that it can be possible to debug if you set jvm args in gradle.properties file.

@jeusdi
Copy link
Author

jeusdi commented Feb 14, 2017

I've ben able to reach this code: https://github.com/codehaus-cargo/cargo/blob/master/extensions/ant/tasks/src/main/java/org/codehaus/cargo/ant/CargoTask.java#L772

As you can see on image the port is 9990, instead of 9992!

imagen

Nevertheless, getContainer() method returns a Container with this properties:

imagen

I've laso just realized 9992 value is set on cargo.servlet.port instead of on cargo.jboss.management-http.port

imagen

@sutaakar
Copy link

Can you please check property cargo.jboss.management-http.port in configuration properties?
cargo.servlet.port property is used as port value for http communication - equals to system property jboss.http.port. cargo.jboss.management-http.port is port value for http management communication - the one we need for remote deployment.

@jeusdi
Copy link
Author

jeusdi commented Feb 14, 2017

Definitely, it seems cargo gradle plugin sends to cargo ant wrong values:

When addConfiguredProperty is reached, is receives this Propertys:

cargo.servlet.port = 9992

imagen

In fact, cargo.jboss.management-http.port is not added.

@jeusdi
Copy link
Author

jeusdi commented Feb 14, 2017

@jeusdi
Copy link
Author

jeusdi commented Feb 16, 2017

@bmuschko , could I help out with anything more?

@jeusdi
Copy link
Author

jeusdi commented Feb 17, 2017

@bmuschko could you give us some feedback. Do you thing it's an issue related with gradle plugin?

@bmuschko
Copy link
Owner

@jeusdi I might be able to have a look within the next 2 weeks but I can't promise it.

@jeusdi
Copy link
Author

jeusdi commented Mar 7, 2017

@bmuschko Please, sorry for asking you for it again. Nevertheless, I'm still sticking in solving that.

Nevertheless, it would be really a great work around if it was ready...

Have you been able to take a look?

@bmuschko bmuschko removed their assignment Dec 12, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants