Hi Community,
I have migrated Bamboo to a new server. Actually, I only copied the home directory data and server.xml file and downloaded the bamboo.tar.gz file from the Atlassian website. I replaced the server.xml file and added the home directory path. Started Bamboo. Everything looks fine except icons are missing from the app link tab. When I right-clicked to inspect the page found out it's still showing the old server's URL (http://bamboo-server:8085) the new URL is https://bamboo-production.server:443, though that server is shutdown. I tested with multiple browsers. Is there anything else I need to copy to the new server? or how can fix this issue? Here is the class code for the app link that I copied from inspect page.
<img class="applinks-icon" src="http://bamboo-server:8085/s/70216/1/6.0.12/_/download/resources/com.atlassian.applinks.applinks-plugin:applinks-images/images/config/logos/128x128/128bitbucket.png" alt="Bitbucket" width="20" height="20">
Thank you
Hello @Shah Baloch
Please update the Server URL:
You need to restart Bamboo after that change.
Also, make sure that the address reported on "Broker client URL" is reachable by the Agents.
Cheers,
Eduardo Alvarenga
Atlassian Support APAC
--please don't forget to Accept the answer if the reply is helpful--
Hi @Eduardo Alvarenga thank you so much, for some reason I missed the URL part. I updated Base URL and Broker client URL. However Broker URL doesn't have a hostname, it is "nio://0.0.0.0:54663?wireFormat.maxInactivityDuration=300000" and the same port as Broker client URL. Do I need to update the Broker URL or leave it as it is?
I stopped Bamboo after updating the hostname from Base URL and Broker client URL. However, I got an error "Kill failed: $CATALINA_PID not set". I see some failed messages in the Catalina.out log file, not sure these are related to this. Any idea why I'm getting that error?
Bamboo Server Edition
Version : 7.2.10If you encounter issues starting or stopping Bamboo Server, please see the Troubleshooting guide at https://confluence.atlassian.com/display/BAMBOO/Installing+and+upgrading+Bamboo
Using CATALINA_BASE: /opt/bamboo
Using CATALINA_HOME: /opt/bamboo
Using CATALINA_TMPDIR: /opt/bamboo/temp
Using JRE_HOME: /usr/lib/jvm/jre-openjdk
Using CLASSPATH: /opt/bamboo/bin/bootstrap.jar:/opt/bamboo/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Kill failed: $CATALINA_PID not set
17-Jan-2023 16:58:08.258 SEVERE [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [ROOT] created a ThreadL
ocal with key of type [org.springframework.core.NamedInheritableThreadLocal] (value [Current invoker bundle context]) and a value of type [org.apache.felix.framework.BundleConte
xtImpl] (value [org.apache.felix.framework.BundleContextImpl@99281c]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to
try and avoid a probable memory leak.
17-Jan-2023 16:58:08.258 SEVERE [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [ROOT] created a ThreadL
ocal with key of type [org.springframework.core.NamedInheritableThreadLocal] (value [Current invoker bundle context]) and a value of type [org.apache.felix.framework.BundleConte
xtImpl] (value [org.apache.felix.framework.BundleContextImpl@99281c]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to
try and avoid a probable memory leak.
Thank you
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello @Shah Baloch
The Broker URL is the address where the Bamboo server will listen to the requests, so "0.0.0.0" will mean any interface on the Server; that's the default so you don't have to change it.
The "Kill failed: $CATALINA_PID not set" message means literally that the $CATALINA_PID environment variable was not set. Depending on how you control Bamboo startup (via a systemd script for example) you must export $CATALINA_PID so it knows which PID to send signals.
Please check the following links for more details and workarounds:
Environment=CATALINA_PID=<bamboo-install>/bin/Catalina.pid
Kind regards,
Eduardo Alvarenga
Atlassian Support APAC
--please don't forget to Accept the answer if the reply is helpful--
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Eduardo Alvarengawe'll use the manual start and stop bamboo script to start and stop bamboo. I followed the steps from the second link. These two lines were already in the setenv.sh file.
PRGDIR=`dirname "$0"` cat "${PRGDIR}"/bamboobanner.txt
I added rest of the code from the link below those lines and it worked.
# set the location of the pid file if [ -z "$CATALINA_PID" ] ; then if [ -n "$CATALINA_BASE" ] ; then CATALINA_PID="$CATALINA_BASE"/work/catalina.pid elif [ -n "$CATALINA_HOME" ] ; then CATALINA_PID="$CATALINA_HOME"/work/catalina.pid fi fi export CATALINA_PID
However, I encountered a couple of issues. I didn't realize and I started bamboo when I was logged in as root. It created Catalina.pid file in /opt/bamboo/work directory. Then I tried to stop bamboo while logged in as a bamboo user it didn't stop. I had to stop bamboo as root and change the catalina.pid file's ownership to the bamboo user and started again. I got an error that bamboo.cfg.xml doesn't exist. I found out that when I started bamboo as root it updated that file's ownership. So had to stop it again and change the ownership to bamboo and it worked. just wanted to mention that if someone will face a similar issue so they'll know how to fix it.
Is there any way to hardcode the bamboo user so that the service always starts from the bamboo user? I mean in Jira and Confluence there is a user file where can add the user. I couldn't find a similar file in bamboo, I might be looking wrong directories.
Thank you,
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey @Shah Baloch
Thanks for the feedback!
Actually, starting Bamboo as the root user is a very common mistake. Unfortunately, there is no protection mechanism that would prevent Administrators from running it as a different user.
On Linux, we recommend you set Bamboo to run as a service and control it from there.
Please do not forget to accept this answer if that works for you as it helps the whole community to index the best answers for common questions!
Best regards,
Eduardo Alvarenga
Atlassian Support APAC
--please don't forget to Accept the answer if the reply is helpful--
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thank you @Eduardo Alvarenga I created aliases for start and stop bamboo for now. When the user types start-bamboo/stop-bamboo it'll su to the bamboo user and start/stop the bamboo from the bamboo user. I'll bookmark the bamboo service related article if needed I'll create systemd service. Thank you so much for your help, you guys are great.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.