-
Bug
-
Resolution: Answered
-
Medium
-
None
-
5.9.4, 5.9.7
-
Severity 2 - Major
-
1
-
Summary
1. Source-code
/** * Prevents agents from automatically overriding remote agent capabilities on new startup * <p> * <ul> * <li>Default : false * <li>Usage: <ul><li>env : DISABLE_AGENT_AUTO_CAPABILITY_DETECTION="true" * <li>java: -DDISABLE_AGENT_AUTO_CAPABILITY_DETECTION=true * </ul> * </ul> */ public static final SystemProperty DISABLE_AGENT_AUTO_CAPABILITY_DETECTION = new SystemProperty(false, "DISABLE_AGENT_AUTO_CAPABILITY_DETECTION");
2. Steps to Reproduce
- stop Bamboo (server)
- add property to prevent agents from automatically overriding remote agent capabilities on new startup
<bamboo-install>/bin/setenv.sh, Windows (setenv.bat) - Linux/MacOSX (setenv.sh)
JVM_SUPPORT_RECOMMENDED_ARGS="-DDISABLE_AGENT_AUTO_CAPABILITY_DETECTION=true"
- start Bamboo server
- install Bamboo remote agent
java -Dbamboo.home=/path/to/remote-agent-home -jar atlassian-bamboo-agent-installer-5.9.x.jar http://BAMBOO_BASE_URL/agentServer/
3. Expected Results
According to Bamboo's documentation - Disabling auto-capability detection for the remote agent the remote agent should not automatically detect and add capabilities.
There may be situations where you want to prevent Bamboo from automatically detecting and adding capabilities (such as JDKs) to the remote agent, or where you don't want to run the remote agent with default capabilities.
4. Actual Results
By going to "Bamboo administration >> Overview >> Build resources >> Agents" and selecting the "Remote Agent", under "Capabilities" tab we can find a few capabilities listed. The same can be reviewed by running the following SQL query against Bamboo's database:
/* 1507331 is the remote agent id */ select * from queue as AGENT join capability as CAPABILITY on AGENT.capability_set = CAPABILITY.capability_set where AGENT.capability_set = 1507331;
As a response from the query above, you can find the following:
queue_id | agent_type | title | agent_description | created_date | updated_date | enabled | capability_set | last_start_time | last_stop_time | elastic_instance_id | elastic_image | capability_id | key_identifier | value | capability_set |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540115 | system.builder.mvn3.Maven 3 | /opt/maven/apache-maven-3.3.3 | 1507331 |
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540114 | system.jdk.JDK | /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home | 1507331 |
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540113 | system.jdk.JDK 1.7 | /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home | 1507331 |
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540112 | system.hg.executable | /usr/local/bin/hg | 1507331 |
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540111 | system.git.executable | /usr/local/bin/git | 1507331 |
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540110 | system.jdk.JDK 1.7.0_79 | /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home | 1507331 |
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540109 | foo | bar | 1507331 |
5. Notes
In the above example, it was created "<bamboo-agent-home>/bin/bamboo-capabilities.properties"with the following content:
foo=bar
And we can notice the capability was added to the remote agent.
queue_id | agent_type | title | agent_description | created_date | updated_date | enabled | capability_set | last_start_time | last_stop_time | elastic_instance_id | elastic_image | capability_id | key_identifier | value | capability_set |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1474563 | REMOTE | 192.168.10.80 | Remote agent on host 192.168.10.80 | 2015-10-20 12:19:49 | 2015-10-20 12:19:49 | true | 1507331 | 2015-10-20 12:19:49 | (null) | (null) | (null) | 1540109 | foo | bar | 1507331 |
- duplicates
-
BAM-14937 DISABLE_AGENT_AUTO_CAPABILITY_DETECTION not working on Bamboo agent first launch
- Gathering Interest
-
BDEV-10859 Loading...
- has a derivative of
-
BAM-19951 Enable/Disable 'bamboo-capabilities.properties' from being read
- Closed
- is related to
-
BAM-12894 Disable Capability Auto-Detection at the Remote Agent-Level not functioning
- Closed