Firefox no longer installing on Elastic Bamboo Linux AMI
Asked by Robert Watkins:

I'm trying to set up my Elastic Bamboo agents for Selenium, as per the instructions at <https://confluence.atlassian.com/display/AOD/Populating+your+EBS+volume#PopulatingyourEBSvolume-SettingupSeleniumonelasticagents>

The instructions don't work anymore (though I see they did as recently as early January - [https://answers.atlassian.com/questions/120632/setting-up-selenium-on-bamboo-ondemand](/questions/120632/setting-up-selenium-on-bamboo-ondemand)). I'm getting errors on the step for installing Firefox.

```
[root@ip-10-245-59-249 ~]# yum -y --enablerepo=centos-base install firefoxLoaded plugins: fastestmirror, priorities, security, update-motdLoading mirror speeds from cached hostfile * amzn-main: packages.us-east-1.amazonaws.com * amzn-updates: packages.us-east-1.amazonaws.com * centos-base: mirror.trouble-free.netcentos-base                                                                                                             | 1.1 kB     00:00     centos-base/primary                                                                                                     | 983 kB     00:00     centos-base                                                                                                                          2770/27701293 packages excluded due to repository priority protectionsSetting up Install ProcessResolving Dependencies--&gt; Running transaction check---&gt; Package firefox.i386 0:10.0.11-1.el5.centos will be installed--&gt; Processing Dependency: xulrunner &gt;= 10.0.11-1 for package: firefox-10.0.11-1.el5.centos.i386...Package liberation-fonts is obsoleted by liberation-fonts-common, but obsoleting package does not provide for requirements--&gt; Finished Dependency ResolutionError: Package: xulrunner-10.0.11-1.el5_8.i386 (centos-base)           Requires: liberation-fonts           Available: liberation-fonts-1.0-1.el5.noarch (centos-base)               liberation-fonts = 1.0-1.el5Error: Package: xulrunner-10.0.11-1.el5_8.i386 (centos-base)           Requires: nspr &gt;= 4.8.9           Installed: nspr-4.8.8-1.11.amzn1.i686 (@amzn-updates)               nspr = 4.8.8-1.11.amzn1           Available: nspr-4.8.7-1.10.amzn1.i686 (amzn-main)               nspr = 4.8.7-1.10.amzn1Error: Package: xulrunner-10.0.11-1.el5_8.i386 (centos-base)           Requires: nss &gt;= 3.13.1           Installed: nss-3.12.10-2.23.amzn1.i686 (@amzn-updates)               nss = 3.12.10-2.23.amzn1           Available: nss-3.12.9-12.22.amzn1.i686 (amzn-main)               nss = 3.12.9-12.22.amzn1 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
```

Looking at the earlier question, it appears that the instructions worked for Firefox 3.6, but that has been removed from the Centos mirrors.


Answers:
author: Przemek Bruski
body: Internally, we use <https://maven.atlassian.com/content/groups/public/com/atlassian/browsers/>

I've updated the setup script with your change (and also included pango and dbus-glib libraries).

Alternatively, I could provide you with an Ubuntu image with content matching the standard Amazon Linux images if you want.

comments: author: Michael Averto
body: Could you explain a little how to use the <https://maven.atlassian.com/content/groups/public/com/atlassian/browsers/>

with the script from:

<https://confluence.atlassian.com/display/AOD/Populating+your+EBS+volume#PopulatingyourEBSvolume-SettingupSeleniumonelasticagents>


author: Robert Watkins
body: Michael,

The maven artefacts mentioned allow you to pull down pre-built \& packaged browsers. You then unzip them and run them.


author: Michael Averto
body: Robert, thanks for the help. I apologize if I'm missing something but shouldn't I be able to then add this to my POM.xml as a dependency?

I'm running into an issue with

```
&lt;dependency&gt;    &lt;groupId&gt;com.atlassian.browsers&lt;/groupId&gt;	&lt;artifactId&gt;firefox&lt;/artifactId&gt;	&lt;version&gt;21.0&lt;/version&gt;&lt;/dependency&gt;
```

as I can't resolve the -linux at the end of the filename with the above as it would yield:

<https://maven.atlassian.com/content/groups/public/com/atlassian/browsers/firefox/21.0/firefox-21.0.jar>

instead of:

<https://maven.atlassian.com/content/groups/public/com/atlassian/browsers/firefox/21.0/firefox-21.0-linux.jar>


author: Robert Watkins
body: I just downloaded it by hand and added it to my image setup script.

If you're going to use a POM, you can probably do it with a classifier:

```
&lt;dependency&gt;    &lt;groupId&gt;com.atlassian.browsers&lt;/groupId&gt;    &lt;artifactId&gt;firefox&lt;/artifactId&gt;    &lt;version&gt;21.0&lt;/version&gt;    &lt;classifier&gt;linux&lt;/classifier&gt;&lt;/dependency&gt;
```


author: Robert Watkins
body: Okay, I figured it out. Centos 5.9 was released on January 18, and it has the newer version of Firefox that won't install cleanly.

Using the instructions mentioned earlier, but changing the CentOS version to this:

```
centosMajorVersion=5centosMinorVersion=8centosVersion=${centosMajorVersion}.${centosMinorVersion}
```

meant I could install Firefox 3.6.

Which leaves the question: how do you install Firefox 10?

comments: author: Robert Watkins
body: Note that as of March 8, the Centos mirror list doesn't provide a mirror for Centos 5.8 anymore.

So that goes back to the underlying problem of how do you install the support libraries that Firefox needs on the base AMI used by Bamboo?


Tags: cloud