Installing Go server
Introduction
The Go server is the core of your system.
Installation
How to install Go server for Windows
You must be logged in as a user with Administrator privileges to install the Go server on Windows.
- Double-click the go-server-${version}.exe installer file and follow the prompts to install Go.
- During installation you will be asked to select a directory that will serve as the root path for your Go server installation. Go server will store all of its associated data in this directory by default.
- At the end of the installation, Go server will register itself as a windows service owned by 'Local System' and start running automatically.
- Shortcuts to Go will be placed on your Desktop and in your Start Menu for convenience - double-click the shortcut to go to the Go dashboard.
We recommend changing the owner to a login user (i.e. Administrator) and restarting the service. This is due to the fact that the 'Local System' account has limited system permissions which can lead to difficulty in running a build.
How to install Go server for Mac OSX
- Double-click the downloaded file to unzip the contents.
- Drag the Go server Application to the Applications folder.
- Go server will store its data in /Library/Application Support/Cruise Server
- Double-click on the Go Server.app icon to open the launcher.
-
While the Go server is starting up, you'll see a progress bar in the top left of your screen.
- Once the Go server has started, it will open your default browser to the Go dashboard page.
- To get back to the Go dashboard page when the server is running, click on the link in the About box of the Go server
How to install Go server for Linux
You must be logged in as root, or use sudo, to install Go on Linux. Go server also requires that the Sun Java 6 JRE is installed.
The Linux installer will create a user called go if one does not exist on the machine. The home directory will be set to /var/go. If you want to create your own go user, make sure you do it before you install the Go server
RPM based distributions (i.e. RedHat)
The Go server RPM installer has only been tested on RedHat Enterprise Linux 5, CentOS 5 and SUSE(Linux Enterprise Server 10 SP2).
- Run rpm -i go-server-${version}.noarch.rpm to install Go server.
Debian based distributions (i.e. Ubuntu)
The Go server installer has only been tested on Ubuntu 7.10. However it should work on most Linux distributions which use debs.
- Run dpkg -i go-server-${version}.deb to install Go server.
The following command could be used after installation:
- Check Go server status with command sudo /etc/init.d/go-server status
- Start Go server with command sudo /etc/init.d/go-server start
- Stop Go server with command sudo /etc/init.d/go-server stop
Once the installation is complete the Go server will be started and it will print out the URL for the Dashboard page. This will be http://<server host name>:8153/go
How to install Go server for Solaris
The Go server installer has been tested on SunOS Solaris10 5.10.
You must be logged in as root, or use sudo or pfexec, to install Go under Solaris. Go server also requires that the Sun Java 6 JRE is installed.
The Linux installer will create a user called go if one does not exist on the machine. The home directory will be set to /var/go. If you want to create your own go user, make sure you do it before you install the Go server.
- Uncompress the package with the command gzip -d go-server-${version}-solaris.gz
- Install the package with the command pkgadd -d go-server-${version}-solaris
The following command could be used after installation:
- Check Go server status with command svcs go/server
- Start Go server with command svcadm enable -s go/server
- Stop Go server with command svcadm disable -s go/server
Location of files after installation of Go server
Windows
All the files for the Go server are under the root installation path on Windows. The default location is C:\Program Files\Go Server.
Linux
/var/lib/go-server #contains the binaries and database /etc/go #contains the pipeline configuration files /var/log/go-server #contains the server logs /usr/share/go-server #contains the start script
Mac OSX
/Library/Application Support/CruiseServer
Some logging information is also written to /var/log/system.log
Solaris
/var/lib/go-server #contains the binaries and database /etc/go #contains the configuration files /var/log/go-server #contains the server logs /usr/share/go-server #contains the start script
Entering your license key
Go requires you to enter a license key before you can use it. The first screen you should see upon opening the Go dashboard is the screen that prompts you to enter your license key. Go will automatically recognise a license key from version 1.0. You do not need to get a new license key if you have one already.
You should have been emailed a license key when you downloaded Go. If not, you can get a free trial license key from the Studios website: visit the Go homepage and follow the instructions to get your free license.
Your license key is tied to the username you used to register. Enter the username you used to register, and copy and paste the license key from your email into the textbox provided. Go will ignore spaces, line breaks and so forth in the license key. When you are done, click on "Save license" to save your license key. Go should tell you either that your license key has been updated successfully, or give you an error message telling you what went wrong.
Once you've entered your license key, you can proceed to set up your first pipeline by clicking on the "Pipelines" tab.
Artifact repository configuration
Go needs no configuration once installed. However, we recommend that you create a separate partition on your computer's hard disk for Go server artifacts. The artifact repository can grow in size very quickly. If located on your system's main partition you may experience data loss and unpredictable application behaviour as the disk fills up.
Once you have created a new disk partition, you need to tell Go where to find it. Go to the "Administration" tab, and click on the tab marked "Source XML". Then click on "edit" to edit Go's configuration file. You want to update the configuration so it looks like this:
<cruise>
<server artifactsdir="/path/to/artifacts/directory">
...
</server>
</cruise>
In Windows, you may need to assign your artifact repository partition a separate drive letter. In Windows, your configuration might look like this:
<cruise>
<server artifactsdir="E:\go-artifacts">
...
</server>
</cruise>
When you have entered this information, click "Save" to save the configuration file.
You can change the artifacts directory location at any time using the method described above, even when Go is running. However Go will not move existing artifacts to the new location for you, and changing the location while Go is running won't take effect until Go Server is restarted.
If you decide to move your artifact repository, the safe way to do it is:
- pause all pipelines and wait until all active jobs on the agent grid has completed (all agents are in the state "idle")
- shut down Go server
- copy the artifact repository to the new location
- edit Go's configuration file manually as described above to tell Go where to find the artifacts
- restart Go server
Even when all active jobs on the agent grid have stopped, users may still be uploading artifacts using the RESTful URLs. This is why we need to stop Go server completely in order to be safe.