Setup Travis CI Enterprise 2.x
Travis CI Enterprise works with your GitHub.com or GitHub Enterprise (Enterprise Server below version 3.4) setup. Please also note the Travis CI Enterprise 2.x is EOL, so we are strongly recommending an upgrade to Travis CI Enterprise 3.x.
Prerequisites #
-
A valid Travis CI Enterprise license or trial license. If you’re interested in using High Availability, please let us know so we can get your trial license configured.
- At least two virtual machines on your private cloud that meet the system requirements
-
The
secret
andclientid
of a GitHub.com or GitHub Enterprise OAuth application configured with:- Homepage URL -
https://<your-travis-ci-enterprise-domain>
- Authorization callback URL -
https://<your-travis-ci-enterprise-domain>/api
+ URLs must include https or http at the beginning and cannot have trailing slashes.
- Homepage URL -
System Requirements #
The standard setup consists of the Travis CI Enterprise Platform which hosts the web UI and related services, and one or more Worker hosts which run the tests/jobs in isolated containers using LXC and Docker.
Each dedicated host or hypervisor (VMWare, OpenStack using KVM, or EC2) should run Ubuntu 16.04, ideally using Linux 3.16 and have at least 16 gigs of RAM and 8 CPUs.
If you’re running on EC2, we recommend the c4.2xlarge instance type for both Platform and Worker. We also recommend using an image that uses EBS for the root volume, as well as allocating 40 gigs of space to it.
For high availability (HA) configurations, you will also need:
You can also try services like compose.com, if you would like these services hosted outside your organization.
Setup Enterprise Platform virtual machine #
The Travis CI Enterprise Platform handles licensing, coordinates worker
processes, and maintains the Enterprise user and admin dashboard. It must be
installed on it’s own machine instance, separate from that of the Travis CI
Enterprise worker. We recommend using AWS’ c4.2xlarge
instance running
Ubuntu 16.04 LTS or later as the underlying operating system.
-
On your virtual machine management platform, create a Travis CI Platform Security Group.
If you’re setting up your AMI for the first time, you need to create a Security Group. From the EC2 management console, create an entry for each port in the table below:
Port Service Description 8800 Custom TCP Rule This port is to access the admin dashboard for your Enterprise installation. 5672 Custom TCP Rule For RabbitMQ Non-SSL. 4567 Custom TCP Rule For RabbitMQ SSL. 443 HTTPS Web application over HTTPS access. 80 HTTP Web application access. 22 SSH SSH access. -
If you’re using a hostname and not just an IP address, this would be a time to configure it.
-
On your new virtual machine, download and run the installation script:
curl -sSL -o /tmp/installer.sh https://enterprise.travis-ci.com/install sudo bash /tmp/installer.sh
-
In your browser, navigate to
https://<your-travis-ci-enterprise-domain>:8800
(your Enterprise installation’s hostname, port 8800) to complete the setup:- Add a secure certificate or configure a trusted one.
- Upload your Travis CI Enterprise license.
- Configure access to the Admin Console with a password or using openLDAP. This controls access to the Admin Console itself, not to the Travis CI Enterprise instance.
- Connect your GitHub Enterprise or GitHub.com with Travis CI enterprise.
- Optionally, configure Email, Metrics and Caches.
- Copy the RabbitMQ password for the Worker setup.
If you have decided to use a self-signed certificate, there may be additional configuration steps required. Please see our page on SSL Certificate Management for more information.
Setup the Enterprise Worker virtual machine #
The Travis CI Enterprise Worker manages build containers and reports build statuses back to the platform. It must be installed on a separate machine instance from the Platform. We recommend using instance running Ubuntu 16.04 LTS or later as the underlying operating system.
Make sure you have already set up the Enterprise Platform and have the RabbitMQ password and the hostname from the Platform Dashboard.
After that, follow instructions to set up a Worker.
Running builds #
Skip over to the Onboarding Guide and connect some repositories to your new Travis CI Setup!
Contact Enterprise Support #
To get in touch with us, please write a message to enterprise@travis-ci.com. If possible, please include as much of the following as you can:
- Description of the problem - what are you observing?
- Which steps did you try already?
- A support bundle (see table below on how to obtain it)
- Log files from all workers (They can be found at
/var/log/upstart/travis-worker.log
- please include as many as you can retrieve). - If a build failed or errored, a text file of the build log
TCI Enterprise version | Support bundle |
---|---|
3.x | Run kubectl kots admin-console -n [namespace] to access admin console on http://localhost:8800 Support bundle generation instruction is available in ‘troubleshoot’ menu or directly at: http://localhost:8800/app/tci-enterprise-kots/troubleshoot A command for generating support bundle will appear after selecting: If you'd prefer, [click here]() to get a command to manually generate a support bundle. |
2.x+ | You can get it from https://<your-travis-ci-enterprise-domain>:8800/support |
Since the announcement in Q3 2020, the most up to date version of Travis CI Enterprise is 3.x line. There are not any new releases for version 2.2 and the support patches has been limited since March 2021 as well. For existing users of Travis CI 2.x we strongly recommend upgrading to the latest Travis CI Enterprise 3.x.
Have you made any customizations to your setup? While we may be able to see some information (such as hostname, IaaS provider, and license expiration), there are many other things we cannot see which could lead to something not working. Therefore, we would like to ask you to also answer the questions below in your support request (if applicable):
- How many machines are you using / what is your Kubernetes cluster setup?
- Do you use configuration management tools (Chef, Puppet)?
- Which other services do interface with Travis CI Enterprise?
- Which Version Control system (VCS) do you use together with Travis CI Enterprise (e.g. github.com, GitHub Enterprise, or BitBucket Cloud)?
- If you are using GitHub Enterprise, which version of it?
We are looking forward to helping!