JeanRev / TeamcityDockerCloudPlugin

Docker Cloud Plugin for the TeamCity build server
Apache License 2.0
33 stars 10 forks source link

Cannot move the cloud profile outside of the Default pool #12

Closed leslieonline1 closed 7 years ago

leslieonline1 commented 7 years ago

I believe this may be a known issue but I've not seen it reported anywhere apart from the plugin page @ teamcity.com. After creating a cloud profile using the plugin, I can't assign the profile to any other agent pool in TC apart from the Default pool. I've tested an ECS and Azure cloud profile can be moved wherever.

JeanRev commented 7 years ago

Hi @leslieonline1, this issue should actually be fixed in #2.

Can you check which version of the plugin is currently active in the "Plugin Lists" of the administration interface ?

leslieonline1 commented 7 years ago

Hi @JeanRev I'm on 0.3.3 (Docker Cloud Plugin Cloud Agent Plugin for Docker containers 0.3.3 (build 27fa717e5e02a9bbc9dc43bb154a2d2b9378e412) - from your previous issue link looks like it was fixed in 0.2.3? I downloaded the plugin directly from here: https://plugins.jetbrains.com/plugin/9306-docker-cloud. Should I build from the repo instead

JeanRev commented 7 years ago

Hum, no, building from the repo probably won't bring much.

In the original issue, it was actually possible to assign a cloud profile to a specific agent pool, but this association was lost upon restart or reconfiguration of the plugin. Does this description match your current issue?

leslieonline1 commented 7 years ago

Hmm no actually it doesn't, I can't assign the cloud profile to an agent pool at all. I hit the"Assign agent" button, then select the Docker cloud profile and hit Save, but nothing happens. The profile is still sitting in the Default pool. Does this sound like a different issue?

JeanRev commented 7 years ago

It looks like something different indeed. Can you take a look in the teamcity-server.log file, in the "logs" folder of your TeamCity installation? The shift of agent pool must be displayed, possibly with additional information.

leslieonline1 commented 7 years ago

Weird. All the attempts I've made to move the profile just log this:

[2017-04-05 12:37:38,758] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 12:42:20,232] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=7} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 12:45:21,200] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 12:45:21,325] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 13:21:00,895] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 13:21:01,004] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 13:47:11,938] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 13:47:12,092] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 14:34:48,915] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 14:34:49,061] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 14:36:37,811] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 14:36:37,935] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 14:38:18,931] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 14:38:19,045] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}" [2017-04-05 15:00:05,541] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""DockerTesting" {id=1, default=false}" from ""Default" {id=0, default=true}" by "'admin' {id=1}" [2017-04-05 15:00:05,828] INFO - tbrains.buildServer.ACTIVITIES - Agent AGENT_TYPE{id=2} was moved to agent pool ""Default" {id=0, default=true}" from ""DockerTesting" {id=1, default=false}" by "'admin' {id=1}"

I'm going to change the verbosity and try again, if there's anything more pertinent I'll post it

leslieonline1 commented 7 years ago

ie. it looks like TeamCity simply immediately moves the profile back into the Default pool?

JeanRev commented 7 years ago

I was able to reproduce the issue. I am not sure where the regression happened yet. Looks like that the TC server immediately queries the persisted agent pool association from the plugin after submission, discarding the user choice at once.

Regarding the other cloud providers you tested, did you change the cloud association in the plugins settings or also through the "Pools" administration page ?

leslieonline1 commented 7 years ago

I also changed them in the Pools administration page and they worked as expected.

I'm not a professional developer so although I would love to I probably wouldn't be able to contribute much to this! However I am ready and willing for testing etc.

JeanRev commented 7 years ago

Your help is really appreciable, thanks :-) I'll investigate this a bit more and let you know if there is anything you can do (testing the fix when ready will be definitively helpful).

leslieonline1 commented 7 years ago

No worries at all just shout

JeanRev commented 7 years ago

Can you give a try to this new plugin version and check if the problem still happens? (you'll have to remove the older plugin version first): docker-cloud_0.3.4-SNAPSHOT_75e8ebb.zip

leslieonline1 commented 7 years ago

Excellent! That works as expected. I moved the profile into another pool and then back into the Default pool and then back again - all looks good. Am I ok to use this version for further testing? I'm in the process of doing a PoC for our agent infrastructure

JeanRev commented 7 years ago

Glad to hear it :-) Yes, you can definitively use this version. I'll package the fix into a new hotfix release today or tomorrow. No further changes will be included.

leslieonline1 commented 7 years ago

Thanks for that - should just say excellent work on this it is really opening up possibilities for a more fluid build environment for us, and please let me know if you need any more testing done on new versions I would like to stay involved.

JeanRev commented 7 years ago

You're welcome. I recently created a gitter room for notifications and discussing issues. I will also publish there links to pre-release artifacts when available. Testing is always welcome and much appreciated (even simple things like ensuring that you can install the plugin without breaking your existing configuration). I'll send you an invite.

JeanRev commented 7 years ago

Hmm, looks like I can't invite you without an email... You can then register directly at: https://gitter.im/TeamcityDockerCloudPlugin