hands-on-jenkins - Companion code, slides and exercises of the video course Hands-on Continuous Integration and Automation with Jenkins by Packt Publishing

  •        8

This repository contains the companion code, slides, exercises and solutions for the video course Hands-on Continuous Integration and Automation with Jenkins by Packt Publishing (to be published in 2018). If you wish to ask a question, share an alternative solution to the exercises, raise a bug in the code or in the videos, or simply provide a feedback, feel free to use the issue tracker so that it can be visible and useful for anyone following the course.

https://github.com/cirulls/hands-on-jenkins

Tags
Implementation
License
Platform

   




Related Projects

Jenkins - Continuous Integration Server

  •    Java

Jenkins is an award-winning application that monitors executions of repeated jobs, such as building a software project or jobs run by cron. It focuses on two things, Building/testing software projects continuously and Monitoring executions of externally-run jobs. Jenkins can distribute build/test loads to multiple computers.

Spinnaker - Global Continuous Delivery

  •    Python

Spinnaker is an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence. It helps codify the process of safely and reliably deploying artifacts to the cloud. It can deploy across multiple cloud providers: AWS EC2, Google Compute Engine, Microsoft Azure, OpenStack and Cloud Foundry.

jenkins-build-monitor-plugin - Jenkins CI Build Monitor Plugin

  •    Java

Build Monitor Plugin provides a highly visible view of the status of selected Jenkins jobs. It easily accommodates different computer screen sizes and is ideal as an Extreme Feedback Device to be displayed on a screen on your office wall. (Inspired by the no longer maintained RadiatorView plugin).

screwdriver - An open source build platform designed for continuous delivery.

  •    Javascript

Screwdriver is a self-contained, pluggable service to help you build, test, and continuously deliver software using the latest containerization technologies. Screwdriver began as a hack for simplified interfacing with Jenkins at Yahoo in 2012. As the volume of builds increased, it became clear that Jenkins was not stable or feasible to use at the scale we were running builds. In 2016, we rebuilt Screwdriver from scratch in open source with our best coding practices and CICD goals in mind. Screwdriver is executor and SCM-agnostic, meaning you can choose whichever plugin better suits your need or build your own. It's completely free and open source, and our team is actively maintaining the code.


janky - Continuous integration server built on top of Jenkins and Hubot

  •    Ruby

This is Janky, a continuous integration server built on top of Jenkins, controlled by Hubot, and designed for GitHub.Built on top of Jenkins. The power, vast amount of plugins and large community of the popular CI server all wrapped up in a great experience.

cds - Enterprise-Grade Continuous Delivery & DevOps Automation Open Source Platform

  •    Go

CDS is an Enterprise-Grade Continuous Delivery & DevOps Automation Platform written in Go(lang). CDS provides an intuitive UI that allows you to build complex workflows, run them and dig into the logs when needed.

drone - Drone is a Continuous Delivery platform built on Docker, written in Go

  •    Go

Drone is a Continuous Delivery system built on container technology. Drone uses a simple YAML configuration file, a superset of docker-compose, to define and execute Pipelines inside Docker containers.

atoum - The modern, simple and intuitive PHP unit testing framework.

  •    PHP

To accomplish that, it massively uses capabilities provided by PHP, to give the developer a whole new way of writing unit tests. Therefore, it can be installed and integrated into an existing project extremely easily, since it is only a single PHAR archive, which is the one and only entry point for the developer. Also, thanks to its fluent interface, it allows for writing unit tests in a fashion close to natural language. It also makes it easier to implement stubbing within tests, thanks to intelligent uses of anonymous functions and closures. atoum natively, and by default, performs the execution of each unit test within a separate PHP process, to warrant isolation. Of course, it can be used seamlessly for continuous integration, and given its design, it can be made to cope with specific needs extremely easily. atoum also accomplishes all of this without affecting performance, since it has been developed to boast a reduced memory footprint while allowing for hastened test execution. It can also generate unit test execution reports in the Xunit format, which makes it compatible with continuous integration tools such as Jenkins. atoum also generates code coverage reports, in order to make it possible to supervise unit tests. Finally, even though it is developed mainly on UNIX, it can also work on Windows. If Xdebug or equivalent gets displayed, then the module is properly installed.

jenkins-ci.org-docker - Maybe official jenkins docker repo

  •    Shell

The Jenkins Continuous Integration and Delivery server. The volume for the "myjenkins" named container will then be persistent.

PHPCI - PHPCI is a free and open source continuous integration tool specifically designed for PHP.

  •    PHP

PHPCI is a free and open source (BSD License) continuous integration tool specifically designed for PHP. We've built it with simplicity in mind, so whilst it doesn't do everything Jenkins can do, it is a breeze to set up and use. We've got documentation on our website on installing PHPCI and adding support for PHPCI to your projects.

PHPCI - PHPCI is a free and open source continuous integration tool specifically designed for PHP.

  •    Javascript

PHPCI is a free and open source (BSD License) continuous integration tool specifically designed for PHP. We've built it with simplicity in mind, so whilst it doesn't do everything Jenkins can do, it is a breeze to set up and use. We've got documentation on our website on installing PHPCI and adding support for PHPCI to your projects.

ansible-role-jenkins - Ansible Role - Jenkins CI

  •    Groovy

Installs Jenkins CI on RHEL/CentOS and Debian/Ubuntu servers. Requires curl to be installed on the server. Also, newer versions of Jenkins require Java 8+ (see the test playbooks inside the tests/ directory for an example of how to use newer versions of Java for your OS).

gradle - Adaptable, fast automation for all

  •    Java

Gradle is a build tool with a focus on build automation and support for multi-language development. If you are building, testing, publishing, and deploying software on any platform, Gradle offers a flexible model that can support the entire development lifecycle from compiling and packaging code to publishing web sites. Gradle has been designed to support build automation across multiple languages and platforms including Java, Scala, Android, C/C++, and Groovy, and is closely integrated with development tools and continuous integration servers including Eclipse, IntelliJ, and Jenkins. This project adheres to the Gradle Code of Conduct. By participating, you are expected to uphold this code.

cml - ♾️ CML - Continuous Machine Learning | CI/CD for ML

  •    Javascript

What is CML? Continuous Machine Learning (CML) is an open-source CLI tool for implementing continuous integration & delivery (CI/CD) with a focus on MLOps. Use it to automate development workflows — including machine provisioning, model training and evaluation, comparing ML experiments across project history, and monitoring changing datasets. CML can help train and evaluate models — and then generate a visual report with results and metrics — automatically on every pull request.

pipeline-plugin - Jenkins Pipeline plugin

  •    

Building continuous delivery pipelines and similarly complex tasks in Jenkins using freestyle projects and traditional plugins can be awkward. You need to mix Parameterized Trigger, Copy Artifact, Promoted Builds, Conditional Build Step, and more just to express what should be a simple script. The Pipeline plugin (formerly known as Workflow) suite attempts to make it possible to directly write that script, what people often call a pipeline, while integrating with Jenkins features like agents and publishers. See the official documentation on jenkins.io.

continuous-deployment-on-kubernetes

  •    Go

For a more in depth best practices guide, go to the solution posted here.This guide will take you through the steps necessary to continuously deliver your software to end users by leveraging Google Container Engine and Jenkins to orchestrate the software delivery pipeline. If you are not familiar with basic Kubernetes concepts, have a look at Kubernetes 101.

jenkins.rb - Use the Jenkins continuous integration server

  •    Ruby

Use the Jenkins continuous integration server

Selunit - Selenium + Continuous Integration

  •    Java

Selunit combines comprehensively Selenium tests in Selenese HTML format (default Selenium IDE format) with Continuous Integration. It provides a flexible Maven plugin for executing Selenese suites in batch and outputs test results in JUnit format. This allows running, controlling and analyzing Selenium tests and reports within all modern CI servers e.g. Hudson or Jenkins without additional tools.

gaia - Build powerful pipelines in any programming language.

  •    Go

Develop powerful pipelines with the help of SDKs and simply check-in your code into a git repository. Gaia automatically clones your code repository, compiles your code to a binary and executes it on-demand. All results are streamed back and formatted to a user-friendly graphical output. Automation Engineer, DevOps, SRE, Cloud Engineer, Platform Engineer - they all have one in common: The majority of tech people are not motivated to take up this work and they are hard to recruit.