SlideShare a Scribd company logo
1 of 26
Download to read offline
Project Builder:
A GPL continuous packaging solution
1

Bruno Cornec

V2.1 6th of January 2014
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0

HP EMEA Open Source Profession Lead
Introducing Myself
Software engineering and Unices since 1988

●

–

Mostly Configuration Management Systems, Build systems, quality tools, on multiple commercial Unix
systems

–

Discover Open Source & Linux (OSL) & first contributions in 1993

–

Full time on OSL since 1995, first as HP reseller then @HP

Currently:

●

–

Master Technology Architect on OSL for the HP/Intel Solution Center, Grenoble

–

HP OSL Advocate and Converged Infrastructure Ambassador

–

HP EMEA OSL Profession Lead

–

Solutions Linux Conference and AFUL board member. Conferences at WW level in LinuxCon, Linux.conf.au

–

MondoRescue, Project-Builder.org, UUWL and PUSK Project Lead

–

LinuxCOE, mrepo, tellico, rinse, fossology, collectl contributor

–

FOSSBazaar and OSL Governance enthusiast

–

Mandriva, Mageia, Fedora packager

2

●

And also:
–

Amateur singer (Alto / Tenor) and recorder player since 1976 and Choir director since 1987

–

CD collector since 1981 (5000+ and counting) – Concert attendance since 1976

–

Amateur photograph since 1976

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
What is project-builder.org’s goal ?

Make upstream projects
life easier with regards to
packaging their software
3

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
What is project-builder.org’s itch ?

Make *my*
life easier with regards to
packaging *my* software
4

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Users / Sysadmins want packaged software
●
Ease of use: GUI, CLI
>= 90%
●Distribution compliance
●Smooth Integration with
deployment tools

U
5

< 10%
< 1%

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Users / Sysadmins want packaged software
●
Ease of use: GUI, CLI
>= 90%
●Distribution compliance
●Smooth Integration with
deployment tools

U

< 10%
< 1%

6

D
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0

Lag between SW and Pkg
availability
●Test of alpha/beta/VCS SW
●Too many:
● distributions,
● versions,
● package formats,
● tools to generate packages
● tools to manage repositories
●
Upstream benefits from Continuous packaging
Packaging should be a project concern as well as coding, testing, installing, ....
especially for smaller projects
Use packaging as your only way of delivery (not a dream)
Minial overhead, slightly longer than providing a tgz, maximum benefit:
Consistancy and reproduceability for devs and users
Distribution & deployment server integration,
Improved deployment without risk of screwing up the system
7

Packaging is also a marketing activity for the upstream project based on a
technical content. It's an easy way to extend your user base, and improve your
community relationship and is a “competitive advantage”.
New mantra: “Package early, package always”
THE SOLUTION IS INDEED CONTINUOUS PACKAGING (whatever the tool)

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Continuous Packaging Architecture
Local Build Server (may host VMs and/or VEs)
Packagers

VM or VE Build

Repository
Server

Build +
metadata

Local build

8

Project
RM Build
Farm
Developers

(may host VMs)

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0

Remote build
Provisioning the Continuous Packaging Cloud
Local Build Server (may host VMs and/or VEs)
VM or VE Build

Build +
9

metadata

Local build

Project
RM Build Farm (may
host VMs)

Remote build
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0

Repository
Server
Goals
Project-builder main goal is to help you package continuously being
agnostic:
VCS agnostic: no VCS but guys it's 21st century now, SVN, CVS,
Mercurial, GIT and GIT/SVN, SVK....
OS agnostic: Linux: RPM, deb, ebuild, slack based, ... 150+ distro
tuples made and counting – repositories for yum, urpmi, apt. Solaris
pkg. HP-UX sd in roadmap
10

Build environment agnostic: local, VM (QEMU, KVM...), VE
(rpmbootstrap, rinse, mock, debootstrap...), RM (external build farm)
No project impact: preserves the md5sum of the delivered upstream
sources. Can be completely external to the upstream project.
Avoids duplication of code and metadata
THE SOLUTION IS INDEED CONTINUOUS PACKAGING (with projectbuilder.org !)
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Goodies
Project-builder provides additional goodies:
Easy VMs/VEs/RMs installation/setup. More on that later
Macro system with perl variables to avoid duplication
Skeleton generation to help starting
Manages package delivery up to your repository (ssh based) with
repository management (yum, apt, urpmi)
Manages announces on mailing lists
11

Integration of tests in the process
Manages patches/additional sources when not upstream
Checks validity of packages built (lintian, rpmlint)
Easy creation of new versions for upstream management
Manages website delivery
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
VM, VE & RM Management
VE Creation:
debootstrap for .deb based ones.
rpmbootstrap (modeled after debootstrap): create chroot for multiple
RPM based distributions (Mageia, Fedora, Mandriva, CentOS,
OpenSuSE)
VM|RM Creation:
KVM or QEMU iso install possibilities.
12

LinuxCOE/OpenStack as provisioning tool for your VM|RM
VM|VE|RM setup: adds pb tools and build account
VM|VE Snapshot feature – Update of VM|VE|M optional
Building in VM|VE|RM == building locally (build2vm|ve|rm vs build2pkg).
ssh communication for VM/RM
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Metadata Management
Packaging process independent of the project and external
Metadata isolated - No duplication

13

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Configuration file usage
Macro example:
./rpmbootstrap/pbfilter/all.pbf:filter PBSUMMARY = rpmbootstrap is a tool similar
to debootstrap for RPM based distributions
./rpmbootstrap/rpm/rpmbootstrap.spec:Summary: PBSUMMARY
./rpmbootstrap/deb/control:Description: PBSUMMARY
./rpmbootstrap/pkg/pkginfo:NAME="PBSUMMARY"
14

Instantiation possible from distro-ver-arch, distro-ver, distro,
distro-family, distro-type, os
Similar approach for all other parameters (Cf: man pb.conf)

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Commands
[cms|sbx]2build: Create tar files for the project under your CMS. Parameters are
packages to build if not using default list
build2pkg: Create packages for your running distribution
build2ssh: Send the tar files to a SSH host
pkg2ssh: Send the packages built to a SSH host
build2vm|ve|rm: Create packages in VMs/VEs/RMs, launching them if needed and
send those packages to a SSH host once built
launchvm: Launch one virtual machine
script2vm|ve|rm: Launch a VM/VE/RM if needed and executes a script on it
test2vm|ve|rm: Test inside a VM/VE/RM
newvm|ve: Create a new VM/VE/RM
setupvm|ve|rm: Setup a VM/VE/RM for pb usage
newver: Create a new version of the project derived from the current one
newproj: Create a new project and a template set of configuration files under
pbconf

15

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
The Big picture

Packagers
newver / newproj

Packaging

newvm|ve / setupvm|ve|rm

build2vm|ve|rm
cms|sbx2build

Project

16

Developers
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0

Building
build2pkg

build2ssh

Packages
pkg2ssh
Multi platform packaging cycle

VMs/VEs/RMs

Developers

UUWL

Packages

17

VM/VE/RM

Packagers
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Q & A up to now ?
18

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
DEMONSTRATION
19

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Special announce for LCA 2014 !

20

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
More Special announce for LCA 2014 !
I hate time release delivery
Of course, 0.12.3 has bugs ;-)
Lack of time to test thoroughly
So I hate time release delivery
So expect a 0.12.4 later this week, when more tests have been done !
So back to feature set release in fact
21

Did I say I hate time release delivery ?

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
To be done
LSB chroot support. (or not)
LXC support (which one ?)
Support for libvirt, virsh, openstack API
Other CMS (Bazaar, …) only when/if needed
Other VMs (VMWare, Xen, ...) only when/if needed
Multiple delivery means
22

Look at interactions with Buildbot
Add non-interactive signature support for .deb
Config-Model for configuration file management
REST API and Web Interface would be nice. Any contributor ?
© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Learn Project-Builder.org
Start with the Lab (63 pages)
Use man (pb, pb.conf + 8
ProjectBuilder::* man pages)
Use the mailing-list pb-announce
and pb-devel at
http://www.mondorescue.org/sympa

Use examples from
23

http://trac.project-builder.org/browser/projects/

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Web Resources
Project-Builder Web site / Trac / Wiki:
●

http://www.project-builder.org

●

http://trac.project-builder.org

Projects using project-builder.org:
●

http://www.project-builder.org ( of course :-)

●

http://www.mondorescue.org

24

●

Http://www.linuxcoe.org

●

http://www.fossology.org

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Related tools
Project-Builder is mostly suited for upstream projects wanting to package their
applications
Distributions provide each their build tools
● SuSE: Open Build Service (Multi distro, Web based, BaaS)
● Fedora (Koji)
● Mandriva/Mageia (Youri, mdvsys, mgarepo...)
Other complementary tools:
● Buildbot
● KVM/QEMU
● rpmbootstrap, rinse, mock
● Parallel::ForkManager, DBI, DB::SQLite, File::MimeInfo, Mail::Sendmail
25

Project-Builder.org is one of the tool of the vcs-pkg.org initiative.

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
Contact - Thanks
Bruno.Cornec@hp.com
(Open Source and Linux Technology
Architect at the HP/Intel Solution Center)
http://www.hp.com/linux
http://opensource.hp.com

Thanks goes to:

26

Linus Torvalds, Richard Stallman, Eric
Raymond, Nat Makarevitch, René
Cougnenc, Eric Dumas, Rémy Card,
Bdale Garbee, Bryan Gartner, Craig
Lamparter, Lee Mayes, Gallig Renaud,
Andree Leidenfrost, Phil Robb, Bob
Gobeille, Martin Michlmayr among
others, for their work and devotion to
the Open Source Software cause... and
my family for their patience :-)

© Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0

”Changes are never easy to make.
There is comfort and safety in
tradition, but change must come, no
matter how painful or expensive it
may be.”
Bill Hewlett

More Related Content

What's hot

Reaching the multimedia web from embedded platforms with WPEWebkit
Reaching the multimedia web from embedded platforms with WPEWebkitReaching the multimedia web from embedded platforms with WPEWebkit
Reaching the multimedia web from embedded platforms with WPEWebkitIgalia
 
Installing Rhapsody 8.2.x Designer/Architect with Cygwin gcc compiler
Installing Rhapsody 8.2.x Designer/Architect with Cygwin gcc compilerInstalling Rhapsody 8.2.x Designer/Architect with Cygwin gcc compiler
Installing Rhapsody 8.2.x Designer/Architect with Cygwin gcc compilerFraser Chadburn
 
Os Koziarsky
Os KoziarskyOs Koziarsky
Os Koziarskyoscon2007
 
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)Igalia
 
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...Igalia
 
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...AiTi Education
 
A/B Linux updates with RAUC and meta-rauc-community: now & in the future
A/B Linux updates with RAUC and meta-rauc-community: now & in the futureA/B Linux updates with RAUC and meta-rauc-community: now & in the future
A/B Linux updates with RAUC and meta-rauc-community: now & in the futureLeon Anavi
 
Uyuni Community Hours 29.05.2020
Uyuni Community Hours 29.05.2020Uyuni Community Hours 29.05.2020
Uyuni Community Hours 29.05.2020Pau Garcia Quiles
 
FFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitFFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitStefano Sabatini
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Embarcadero Technologies
 
The next generation of protocols and APIs that could change streaming video
The next generation of protocols and APIs that could change streaming videoThe next generation of protocols and APIs that could change streaming video
The next generation of protocols and APIs that could change streaming videoErica Beavers
 
Advanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream ProcessingAdvanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream ProcessingFIWARE
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Pau Garcia Quiles
 
Automotive Grade Linux on Raspberry Pi: How Does It Work?
Automotive Grade Linux on Raspberry Pi: How Does It Work?Automotive Grade Linux on Raspberry Pi: How Does It Work?
Automotive Grade Linux on Raspberry Pi: How Does It Work?Leon Anavi
 
2016 Streaming Media West: Transitioning from Flash to HTML5
2016 Streaming Media West: Transitioning from Flash to HTML52016 Streaming Media West: Transitioning from Flash to HTML5
2016 Streaming Media West: Transitioning from Flash to HTML5Erica Beavers
 

What's hot (17)

Reaching the multimedia web from embedded platforms with WPEWebkit
Reaching the multimedia web from embedded platforms with WPEWebkitReaching the multimedia web from embedded platforms with WPEWebkit
Reaching the multimedia web from embedded platforms with WPEWebkit
 
Installing Rhapsody 8.2.x Designer/Architect with Cygwin gcc compiler
Installing Rhapsody 8.2.x Designer/Architect with Cygwin gcc compilerInstalling Rhapsody 8.2.x Designer/Architect with Cygwin gcc compiler
Installing Rhapsody 8.2.x Designer/Architect with Cygwin gcc compiler
 
Os Koziarsky
Os KoziarskyOs Koziarsky
Os Koziarsky
 
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
Igalia Focus and Goals 2020 (2019 WebKit Contributors Meeting)
 
Collabograte
CollabograteCollabograte
Collabograte
 
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...
 
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
[Vietnam Mobile Day 2013] - Giới thiệu android media framework dựa trên công ...
 
A/B Linux updates with RAUC and meta-rauc-community: now & in the future
A/B Linux updates with RAUC and meta-rauc-community: now & in the futureA/B Linux updates with RAUC and meta-rauc-community: now & in the future
A/B Linux updates with RAUC and meta-rauc-community: now & in the future
 
Uyuni Community Hours 29.05.2020
Uyuni Community Hours 29.05.2020Uyuni Community Hours 29.05.2020
Uyuni Community Hours 29.05.2020
 
FFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitFFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkit
 
Os Lattner
Os LattnerOs Lattner
Os Lattner
 
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
 
The next generation of protocols and APIs that could change streaming video
The next generation of protocols and APIs that could change streaming videoThe next generation of protocols and APIs that could change streaming video
The next generation of protocols and APIs that could change streaming video
 
Advanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream ProcessingAdvanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream Processing
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure
 
Automotive Grade Linux on Raspberry Pi: How Does It Work?
Automotive Grade Linux on Raspberry Pi: How Does It Work?Automotive Grade Linux on Raspberry Pi: How Does It Work?
Automotive Grade Linux on Raspberry Pi: How Does It Work?
 
2016 Streaming Media West: Transitioning from Flash to HTML5
2016 Streaming Media West: Transitioning from Flash to HTML52016 Streaming Media West: Transitioning from Flash to HTML5
2016 Streaming Media West: Transitioning from Flash to HTML5
 

Viewers also liked

Johann Sebastian Bach
Johann Sebastian BachJohann Sebastian Bach
Johann Sebastian BachJaime Cervera
 
Johann Sebastian Bach
Johann Sebastian BachJohann Sebastian Bach
Johann Sebastian BachJaime Cervera
 
Leyla Presentation At Sogeti![1]
Leyla Presentation At Sogeti![1]Leyla Presentation At Sogeti![1]
Leyla Presentation At Sogeti![1]MissLeylaBond
 
Sdsd Matrix Demo Positioning Presentation
Sdsd Matrix   Demo Positioning PresentationSdsd Matrix   Demo Positioning Presentation
Sdsd Matrix Demo Positioning PresentationMissLeylaBond
 

Viewers also liked (8)

Selbukonferansen
SelbukonferansenSelbukonferansen
Selbukonferansen
 
Creativity
CreativityCreativity
Creativity
 
John Williams
John WilliamsJohn Williams
John Williams
 
Johann Sebastian Bach
Johann Sebastian BachJohann Sebastian Bach
Johann Sebastian Bach
 
Johann Sebastian Bach
Johann Sebastian BachJohann Sebastian Bach
Johann Sebastian Bach
 
Lab docker
Lab dockerLab docker
Lab docker
 
Leyla Presentation At Sogeti![1]
Leyla Presentation At Sogeti![1]Leyla Presentation At Sogeti![1]
Leyla Presentation At Sogeti![1]
 
Sdsd Matrix Demo Positioning Presentation
Sdsd Matrix   Demo Positioning PresentationSdsd Matrix   Demo Positioning Presentation
Sdsd Matrix Demo Positioning Presentation
 

Similar to Continuous Packaging Solution

Multi-OS Continuous Packaging with docker and Project-Builder.org
Multi-OS Continuous Packaging with docker and Project-Builder.orgMulti-OS Continuous Packaging with docker and Project-Builder.org
Multi-OS Continuous Packaging with docker and Project-Builder.orgBruno Cornec
 
Project-Builder.org presentation
Project-Builder.org presentationProject-Builder.org presentation
Project-Builder.org presentationBruno Cornec
 
Using containers and Continuous Packaging to Build native FOSSology packages
Using containers and Continuous Packaging to Build native FOSSology packagesUsing containers and Continuous Packaging to Build native FOSSology packages
Using containers and Continuous Packaging to Build native FOSSology packagesBruno Cornec
 
Project-Builder.org Presentation
Project-Builder.org PresentationProject-Builder.org Presentation
Project-Builder.org Presentationguestdd2966
 
Scaleable PHP Applications in Kubernetes
Scaleable PHP Applications in KubernetesScaleable PHP Applications in Kubernetes
Scaleable PHP Applications in KubernetesRobert Lemke
 
Isn’t it Ironic that a Redfish is software defining you
Isn’t it Ironic that a Redfish is software defining you Isn’t it Ironic that a Redfish is software defining you
Isn’t it Ironic that a Redfish is software defining you Bruno Cornec
 
Chicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyChicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyMediafly
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitMarco Ferrigno
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps ParadigmNaLUG
 
Choisir le bon business model et la bonne licence pour la survie de son proje...
Choisir le bon business model et la bonne licence pour la survie de son proje...Choisir le bon business model et la bonne licence pour la survie de son proje...
Choisir le bon business model et la bonne licence pour la survie de son proje...Open Source Experience
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudLiz Warner
 
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdfManaging Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdfAndrew Lamb
 
Continuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOpsContinuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOpsDocker, Inc.
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYEnterprise Management Associates
 
Oss the freedom dpm 2018
Oss the freedom dpm 2018Oss the freedom dpm 2018
Oss the freedom dpm 2018BIT DURG
 
Docker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDocker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDr Ganesh Iyer
 
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...Yusuf Hadiwinata Sutandar
 
Release webinar architecture
Release webinar   architectureRelease webinar   architecture
Release webinar architectureBigData_Europe
 

Similar to Continuous Packaging Solution (20)

Multi-OS Continuous Packaging with docker and Project-Builder.org
Multi-OS Continuous Packaging with docker and Project-Builder.orgMulti-OS Continuous Packaging with docker and Project-Builder.org
Multi-OS Continuous Packaging with docker and Project-Builder.org
 
Project-Builder.org presentation
Project-Builder.org presentationProject-Builder.org presentation
Project-Builder.org presentation
 
Using containers and Continuous Packaging to Build native FOSSology packages
Using containers and Continuous Packaging to Build native FOSSology packagesUsing containers and Continuous Packaging to Build native FOSSology packages
Using containers and Continuous Packaging to Build native FOSSology packages
 
Project-Builder.org Presentation
Project-Builder.org PresentationProject-Builder.org Presentation
Project-Builder.org Presentation
 
Scaleable PHP Applications in Kubernetes
Scaleable PHP Applications in KubernetesScaleable PHP Applications in Kubernetes
Scaleable PHP Applications in Kubernetes
 
Isn’t it Ironic that a Redfish is software defining you
Isn’t it Ironic that a Redfish is software defining you Isn’t it Ironic that a Redfish is software defining you
Isn’t it Ironic that a Redfish is software defining you
 
Chicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyChicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - Mediafly
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps Paradigm
 
Choisir le bon business model et la bonne licence pour la survie de son proje...
Choisir le bon business model et la bonne licence pour la survie de son proje...Choisir le bon business model et la bonne licence pour la survie de son proje...
Choisir le bon business model et la bonne licence pour la survie de son proje...
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual Cloud
 
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdfManaging Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
 
Continuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOpsContinuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOps
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
 
Devsummit 2010
Devsummit 2010Devsummit 2010
Devsummit 2010
 
Oss the freedom dpm 2018
Oss the freedom dpm 2018Oss the freedom dpm 2018
Oss the freedom dpm 2018
 
libdash 2.0
libdash 2.0libdash 2.0
libdash 2.0
 
Docker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDocker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containers
 
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
 
Release webinar architecture
Release webinar   architectureRelease webinar   architecture
Release webinar architecture
 

More from Bruno Cornec

Diaporama-2023.pdf
Diaporama-2023.pdfDiaporama-2023.pdf
Diaporama-2023.pdfBruno Cornec
 
Concert Amicus Meus 2023
Concert Amicus Meus 2023Concert Amicus Meus 2023
Concert Amicus Meus 2023Bruno Cornec
 
intro-linux-v4.pdf
intro-linux-v4.pdfintro-linux-v4.pdf
intro-linux-v4.pdfBruno Cornec
 
Diaporama Exultate 2022
Diaporama Exultate 2022Diaporama Exultate 2022
Diaporama Exultate 2022Bruno Cornec
 
Diaporama-2021.pdf
Diaporama-2021.pdfDiaporama-2021.pdf
Diaporama-2021.pdfBruno Cornec
 
Introduction à Linux et aux logiciels libres
Introduction à Linux et aux logiciels libresIntroduction à Linux et aux logiciels libres
Introduction à Linux et aux logiciels libresBruno Cornec
 
Diaporama Variations 2019
Diaporama Variations 2019Diaporama Variations 2019
Diaporama Variations 2019Bruno Cornec
 
IPMI is dead, Long live Redfish
IPMI is dead, Long live RedfishIPMI is dead, Long live Redfish
IPMI is dead, Long live RedfishBruno Cornec
 
Diaporama Exultate 2019
Diaporama Exultate 2019Diaporama Exultate 2019
Diaporama Exultate 2019Bruno Cornec
 
Diaporama Exultate 2018
Diaporama Exultate 2018Diaporama Exultate 2018
Diaporama Exultate 2018Bruno Cornec
 
Diaporama Exultate 2017
Diaporama Exultate 2017Diaporama Exultate 2017
Diaporama Exultate 2017Bruno Cornec
 
Diaporama 2018 Guerre de 100 ans
Diaporama 2018 Guerre de 100 ansDiaporama 2018 Guerre de 100 ans
Diaporama 2018 Guerre de 100 ansBruno Cornec
 
Introduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à LinuxIntroduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à LinuxBruno Cornec
 
Diaporama 2011 Musique pour la Vierge
Diaporama 2011 Musique pour la ViergeDiaporama 2011 Musique pour la Vierge
Diaporama 2011 Musique pour la ViergeBruno Cornec
 
Diaporama 2012 Musique polychorale
Diaporama 2012 Musique polychoraleDiaporama 2012 Musique polychorale
Diaporama 2012 Musique polychoraleBruno Cornec
 
Diaporama 2016 Musique Allemande
Diaporama 2016 Musique AllemandeDiaporama 2016 Musique Allemande
Diaporama 2016 Musique AllemandeBruno Cornec
 
Diaporama 2015 François Ier
Diaporama 2015 François IerDiaporama 2015 François Ier
Diaporama 2015 François IerBruno Cornec
 
Guide Open Source Syntec Numérique
Guide Open Source Syntec NumériqueGuide Open Source Syntec Numérique
Guide Open Source Syntec NumériqueBruno Cornec
 

More from Bruno Cornec (20)

Diaporama-TMG.pdf
Diaporama-TMG.pdfDiaporama-TMG.pdf
Diaporama-TMG.pdf
 
Diaporama-2023.pdf
Diaporama-2023.pdfDiaporama-2023.pdf
Diaporama-2023.pdf
 
Concert Amicus Meus 2023
Concert Amicus Meus 2023Concert Amicus Meus 2023
Concert Amicus Meus 2023
 
Docker-v3.pdf
Docker-v3.pdfDocker-v3.pdf
Docker-v3.pdf
 
intro-linux-v4.pdf
intro-linux-v4.pdfintro-linux-v4.pdf
intro-linux-v4.pdf
 
Diaporama Exultate 2022
Diaporama Exultate 2022Diaporama Exultate 2022
Diaporama Exultate 2022
 
Diaporama-2021.pdf
Diaporama-2021.pdfDiaporama-2021.pdf
Diaporama-2021.pdf
 
Introduction à Linux et aux logiciels libres
Introduction à Linux et aux logiciels libresIntroduction à Linux et aux logiciels libres
Introduction à Linux et aux logiciels libres
 
Diaporama Variations 2019
Diaporama Variations 2019Diaporama Variations 2019
Diaporama Variations 2019
 
IPMI is dead, Long live Redfish
IPMI is dead, Long live RedfishIPMI is dead, Long live Redfish
IPMI is dead, Long live Redfish
 
Diaporama Exultate 2019
Diaporama Exultate 2019Diaporama Exultate 2019
Diaporama Exultate 2019
 
Diaporama Exultate 2018
Diaporama Exultate 2018Diaporama Exultate 2018
Diaporama Exultate 2018
 
Diaporama Exultate 2017
Diaporama Exultate 2017Diaporama Exultate 2017
Diaporama Exultate 2017
 
Diaporama 2018 Guerre de 100 ans
Diaporama 2018 Guerre de 100 ansDiaporama 2018 Guerre de 100 ans
Diaporama 2018 Guerre de 100 ans
 
Introduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à LinuxIntroduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à Linux
 
Diaporama 2011 Musique pour la Vierge
Diaporama 2011 Musique pour la ViergeDiaporama 2011 Musique pour la Vierge
Diaporama 2011 Musique pour la Vierge
 
Diaporama 2012 Musique polychorale
Diaporama 2012 Musique polychoraleDiaporama 2012 Musique polychorale
Diaporama 2012 Musique polychorale
 
Diaporama 2016 Musique Allemande
Diaporama 2016 Musique AllemandeDiaporama 2016 Musique Allemande
Diaporama 2016 Musique Allemande
 
Diaporama 2015 François Ier
Diaporama 2015 François IerDiaporama 2015 François Ier
Diaporama 2015 François Ier
 
Guide Open Source Syntec Numérique
Guide Open Source Syntec NumériqueGuide Open Source Syntec Numérique
Guide Open Source Syntec Numérique
 

Recently uploaded

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Recently uploaded (20)

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Continuous Packaging Solution

  • 1. Project Builder: A GPL continuous packaging solution 1 Bruno Cornec V2.1 6th of January 2014 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0 HP EMEA Open Source Profession Lead
  • 2. Introducing Myself Software engineering and Unices since 1988 ● – Mostly Configuration Management Systems, Build systems, quality tools, on multiple commercial Unix systems – Discover Open Source & Linux (OSL) & first contributions in 1993 – Full time on OSL since 1995, first as HP reseller then @HP Currently: ● – Master Technology Architect on OSL for the HP/Intel Solution Center, Grenoble – HP OSL Advocate and Converged Infrastructure Ambassador – HP EMEA OSL Profession Lead – Solutions Linux Conference and AFUL board member. Conferences at WW level in LinuxCon, Linux.conf.au – MondoRescue, Project-Builder.org, UUWL and PUSK Project Lead – LinuxCOE, mrepo, tellico, rinse, fossology, collectl contributor – FOSSBazaar and OSL Governance enthusiast – Mandriva, Mageia, Fedora packager 2 ● And also: – Amateur singer (Alto / Tenor) and recorder player since 1976 and Choir director since 1987 – CD collector since 1981 (5000+ and counting) – Concert attendance since 1976 – Amateur photograph since 1976 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 3. What is project-builder.org’s goal ? Make upstream projects life easier with regards to packaging their software 3 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 4. What is project-builder.org’s itch ? Make *my* life easier with regards to packaging *my* software 4 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 5. Users / Sysadmins want packaged software ● Ease of use: GUI, CLI >= 90% ●Distribution compliance ●Smooth Integration with deployment tools U 5 < 10% < 1% © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 6. Users / Sysadmins want packaged software ● Ease of use: GUI, CLI >= 90% ●Distribution compliance ●Smooth Integration with deployment tools U < 10% < 1% 6 D © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0 Lag between SW and Pkg availability ●Test of alpha/beta/VCS SW ●Too many: ● distributions, ● versions, ● package formats, ● tools to generate packages ● tools to manage repositories ●
  • 7. Upstream benefits from Continuous packaging Packaging should be a project concern as well as coding, testing, installing, .... especially for smaller projects Use packaging as your only way of delivery (not a dream) Minial overhead, slightly longer than providing a tgz, maximum benefit: Consistancy and reproduceability for devs and users Distribution & deployment server integration, Improved deployment without risk of screwing up the system 7 Packaging is also a marketing activity for the upstream project based on a technical content. It's an easy way to extend your user base, and improve your community relationship and is a “competitive advantage”. New mantra: “Package early, package always” THE SOLUTION IS INDEED CONTINUOUS PACKAGING (whatever the tool) © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 8. Continuous Packaging Architecture Local Build Server (may host VMs and/or VEs) Packagers VM or VE Build Repository Server Build + metadata Local build 8 Project RM Build Farm Developers (may host VMs) © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0 Remote build
  • 9. Provisioning the Continuous Packaging Cloud Local Build Server (may host VMs and/or VEs) VM or VE Build Build + 9 metadata Local build Project RM Build Farm (may host VMs) Remote build © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0 Repository Server
  • 10. Goals Project-builder main goal is to help you package continuously being agnostic: VCS agnostic: no VCS but guys it's 21st century now, SVN, CVS, Mercurial, GIT and GIT/SVN, SVK.... OS agnostic: Linux: RPM, deb, ebuild, slack based, ... 150+ distro tuples made and counting – repositories for yum, urpmi, apt. Solaris pkg. HP-UX sd in roadmap 10 Build environment agnostic: local, VM (QEMU, KVM...), VE (rpmbootstrap, rinse, mock, debootstrap...), RM (external build farm) No project impact: preserves the md5sum of the delivered upstream sources. Can be completely external to the upstream project. Avoids duplication of code and metadata THE SOLUTION IS INDEED CONTINUOUS PACKAGING (with projectbuilder.org !) © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 11. Goodies Project-builder provides additional goodies: Easy VMs/VEs/RMs installation/setup. More on that later Macro system with perl variables to avoid duplication Skeleton generation to help starting Manages package delivery up to your repository (ssh based) with repository management (yum, apt, urpmi) Manages announces on mailing lists 11 Integration of tests in the process Manages patches/additional sources when not upstream Checks validity of packages built (lintian, rpmlint) Easy creation of new versions for upstream management Manages website delivery © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 12. VM, VE & RM Management VE Creation: debootstrap for .deb based ones. rpmbootstrap (modeled after debootstrap): create chroot for multiple RPM based distributions (Mageia, Fedora, Mandriva, CentOS, OpenSuSE) VM|RM Creation: KVM or QEMU iso install possibilities. 12 LinuxCOE/OpenStack as provisioning tool for your VM|RM VM|VE|RM setup: adds pb tools and build account VM|VE Snapshot feature – Update of VM|VE|M optional Building in VM|VE|RM == building locally (build2vm|ve|rm vs build2pkg). ssh communication for VM/RM © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 13. Metadata Management Packaging process independent of the project and external Metadata isolated - No duplication 13 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 14. Configuration file usage Macro example: ./rpmbootstrap/pbfilter/all.pbf:filter PBSUMMARY = rpmbootstrap is a tool similar to debootstrap for RPM based distributions ./rpmbootstrap/rpm/rpmbootstrap.spec:Summary: PBSUMMARY ./rpmbootstrap/deb/control:Description: PBSUMMARY ./rpmbootstrap/pkg/pkginfo:NAME="PBSUMMARY" 14 Instantiation possible from distro-ver-arch, distro-ver, distro, distro-family, distro-type, os Similar approach for all other parameters (Cf: man pb.conf) © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 15. Commands [cms|sbx]2build: Create tar files for the project under your CMS. Parameters are packages to build if not using default list build2pkg: Create packages for your running distribution build2ssh: Send the tar files to a SSH host pkg2ssh: Send the packages built to a SSH host build2vm|ve|rm: Create packages in VMs/VEs/RMs, launching them if needed and send those packages to a SSH host once built launchvm: Launch one virtual machine script2vm|ve|rm: Launch a VM/VE/RM if needed and executes a script on it test2vm|ve|rm: Test inside a VM/VE/RM newvm|ve: Create a new VM/VE/RM setupvm|ve|rm: Setup a VM/VE/RM for pb usage newver: Create a new version of the project derived from the current one newproj: Create a new project and a template set of configuration files under pbconf 15 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 16. The Big picture Packagers newver / newproj Packaging newvm|ve / setupvm|ve|rm build2vm|ve|rm cms|sbx2build Project 16 Developers © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0 Building build2pkg build2ssh Packages pkg2ssh
  • 17. Multi platform packaging cycle VMs/VEs/RMs Developers UUWL Packages 17 VM/VE/RM Packagers © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 18. Q & A up to now ? 18 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 19. DEMONSTRATION 19 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 20. Special announce for LCA 2014 ! 20 © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 21. More Special announce for LCA 2014 ! I hate time release delivery Of course, 0.12.3 has bugs ;-) Lack of time to test thoroughly So I hate time release delivery So expect a 0.12.4 later this week, when more tests have been done ! So back to feature set release in fact 21 Did I say I hate time release delivery ? © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 22. To be done LSB chroot support. (or not) LXC support (which one ?) Support for libvirt, virsh, openstack API Other CMS (Bazaar, …) only when/if needed Other VMs (VMWare, Xen, ...) only when/if needed Multiple delivery means 22 Look at interactions with Buildbot Add non-interactive signature support for .deb Config-Model for configuration file management REST API and Web Interface would be nice. Any contributor ? © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 23. Learn Project-Builder.org Start with the Lab (63 pages) Use man (pb, pb.conf + 8 ProjectBuilder::* man pages) Use the mailing-list pb-announce and pb-devel at http://www.mondorescue.org/sympa Use examples from 23 http://trac.project-builder.org/browser/projects/ © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 24. Web Resources Project-Builder Web site / Trac / Wiki: ● http://www.project-builder.org ● http://trac.project-builder.org Projects using project-builder.org: ● http://www.project-builder.org ( of course :-) ● http://www.mondorescue.org 24 ● Http://www.linuxcoe.org ● http://www.fossology.org © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 25. Related tools Project-Builder is mostly suited for upstream projects wanting to package their applications Distributions provide each their build tools ● SuSE: Open Build Service (Multi distro, Web based, BaaS) ● Fedora (Koji) ● Mandriva/Mageia (Youri, mdvsys, mgarepo...) Other complementary tools: ● Buildbot ● KVM/QEMU ● rpmbootstrap, rinse, mock ● Parallel::ForkManager, DBI, DB::SQLite, File::MimeInfo, Mail::Sendmail 25 Project-Builder.org is one of the tool of the vcs-pkg.org initiative. © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0
  • 26. Contact - Thanks Bruno.Cornec@hp.com (Open Source and Linux Technology Architect at the HP/Intel Solution Center) http://www.hp.com/linux http://opensource.hp.com Thanks goes to: 26 Linus Torvalds, Richard Stallman, Eric Raymond, Nat Makarevitch, René Cougnenc, Eric Dumas, Rémy Card, Bdale Garbee, Bryan Gartner, Craig Lamparter, Lee Mayes, Gallig Renaud, Andree Leidenfrost, Phil Robb, Bob Gobeille, Martin Michlmayr among others, for their work and devotion to the Open Source Software cause... and my family for their patience :-) © Copyright 2012 Hewlett-Packard Development Company, L.P. - Licensed under CC-by-SA 3.0 ”Changes are never easy to make. There is comfort and safety in tradition, but change must come, no matter how painful or expensive it may be.” Bill Hewlett