a continuous packaging pipeline

Post on 19-May-2015

925 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Description of a continuous integration pipeline for building Debian/Ubuntu packages. Ignite talk given on Devopsdays Europe 2012 in Rome.

TRANSCRIPT

– Nginx is too old

– I need Node.js

– I need foo.jar on all application servers

– A Java VM would help using it…

}Compiling on serveris WRONG

Web infrastructure problems

Debian Policy Manual

http://www.flickr.com/photos/seasonalplume/2519540603/

Metarake

Apt-get

Evoker

Freight

Vendori!cator

FPMPhase 3:

Pro!t

overd

ueVendorificator

https://github.com/3ofcoins/vendorificator/

Vendor everything

Vendorificator

archive 'hello', :version => '2.8', :strip_root => true, :url => "http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz"git 'git://github.com/octocat/Hello-World.git'

Integrate upstream modules in a Git repository

Vendorificator

archive 'hello', :version => '2.8', :strip_root => true, :url => "http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz"git 'git://github.com/octocat/Hello-World.git'

Continuous Integration

Metarake

A Rake extension that:

1.Discovers modules and their build targets

2.Builds modules with unpublished targets

3.Publishes the built targets

https://github.com/3ofcoins/metarake/

Metarake

It’s used to:

1.Find */Rakefile and their *.deb targets

2.Build packages not in the apt repo

3.Push built packages into the apt repo

https://github.com/3ofcoins/metarake/

Evoker

https://github.com/3ofcoins/evoker/

An add-on to Rake to download and manage external dependencies of a project, patch or

modify them as needed, cache them, etc.

Evoker

https://github.com/3ofcoins/evoker/

tarball('swftools', :url => 'http://www.swftools.org/swftools-0.9.1.tar.gz')patch 'swftools', 'swftools-Makefile_hack.patch', '-p1' if linux?task 'swftools' => [ :python, 'swftools_pyconfig.py' ] do sh <<-EOF set -e -x cd swftools eval `../python/bin/python ../swftools_pyconfig.py` ./configure make EOFend

FPM

https://github.com/jordanissel/fpm/

http://www.flickr.com/photos/dominicspics/1406305389/

Metarake

Apt-get

Evoker

Freight

Vendori!cator

FPMPhase 3:

Pro!t

top related