<story><title>Blue Ocean</title><url>https://jenkins.io/projects/blueocean/</url></story><parent_chain><item><author>tzaman</author><text>Seeing how much people recommend other solutions, I&amp;#x27;ve actually moved from Travis to Jenkins, and never looked back.&lt;p&gt;Yes, Jenkins has its issues (crappy UX, poor&amp;#x2F;awkward docs), but where it shines is the fact it&amp;#x27;s self-hosted, so I can SSH onto the instance to debug a failing build or replay it with a modified Jenkinsfile on the fly.&lt;p&gt;I&amp;#x27;m quite proud of the current setup we have; We&amp;#x27;re hosting our app with Google&amp;#x27;s Container Engine (Kubernetes), so what we&amp;#x27;re doing is on every build Jenkins creates a slave agent within the same cluster (just different node pool) as the production, so the environment in which test containers are ran is identical to production, and what&amp;#x27;s more it actually talks to the same Kubernetes master, which means I can, for example, test our Nginx Reverse proxy with real backend endpoints and real certificates (that are mounted through glusterfs).</text></item></parent_chain><comment><author>scrollaway</author><text>The problem with travis and the like is most do not support arbitrary builds.&lt;p&gt;Drone for example is trying to sell itself as a &amp;quot;jenkins replacement&amp;quot; but has no concept of a build triggering arbitrarily, or that isn&amp;#x27;t intrinsically linked to a git repo. It&amp;#x27;s nonsense.&lt;p&gt;Once you set up a bunch of tooling jobs on Jenkins it&amp;#x27;s very nice to be able to use it as some form of control center for a bunch of different operations. Calling it a build server is underselling it.</text></comment>
<story><title>Blue Ocean</title><url>https://jenkins.io/projects/blueocean/</url></story><parent_chain><item><author>tzaman</author><text>Seeing how much people recommend other solutions, I&amp;#x27;ve actually moved from Travis to Jenkins, and never looked back.&lt;p&gt;Yes, Jenkins has its issues (crappy UX, poor&amp;#x2F;awkward docs), but where it shines is the fact it&amp;#x27;s self-hosted, so I can SSH onto the instance to debug a failing build or replay it with a modified Jenkinsfile on the fly.&lt;p&gt;I&amp;#x27;m quite proud of the current setup we have; We&amp;#x27;re hosting our app with Google&amp;#x27;s Container Engine (Kubernetes), so what we&amp;#x27;re doing is on every build Jenkins creates a slave agent within the same cluster (just different node pool) as the production, so the environment in which test containers are ran is identical to production, and what&amp;#x27;s more it actually talks to the same Kubernetes master, which means I can, for example, test our Nginx Reverse proxy with real backend endpoints and real certificates (that are mounted through glusterfs).</text></item></parent_chain><comment><author>Kudos</author><text>FWIW, Circle CI offers the ability to SSH in to build nodes and free nodes for public projects</text></comment>