# présentation debian nantes janvier 2019
## pkg-from-dsc : Jenkins and aptly to build and host backports
### Rencontres Debian Nantes - janvier 2019
#### Arthur Lutz (Logilab)
![](https://www.logilab.fr/file/2831/raw/logo-logilab.svg =100x)
---
## Introduction
* Arthur Lutz
* [![](https://social.logilab.org/system/custom_emojis/images/000/002/815/original/d91b01cc6bc88981.png =30x)<!-- .element style="border:0;margin:0;background:black" --> @arthurlutz](https://twitter.com/arthurlutz)
* ![](https://social.logilab.org/system/custom_emojis/images/000/002/814/original/63c72d3387d84738.png =30x)<!-- .element style="border:0;margin:0;background:black" --> [@arthurlutz@social.logilab.org](https://social.logilab.org/@arthurlutz)
* [Logilab](https://www.logilab.fr)
* [![](https://social.logilab.org/system/custom_emojis/images/000/002/815/original/d91b01cc6bc88981.png =30x)<!-- .element style="border:0;margin:0;background:black" --> @logilab](https://twitter.com/logilab/)
* ![](https://social.logilab.org/system/custom_emojis/images/000/002/814/original/63c72d3387d84738.png =30x)<!-- .element style="border:0;margin:0;background:black" --> [@logilab@social.logilab.org](https://social.logilab.org/@logilab)
---
## Objective
#### use `Jenkins` to build backports from `dsc` descriptions and upload them to `aptly`
* Allow users to build any packages on a `sbuild` server through a `Jenkins` job
* Allow users to interract with existing aptly repositories without access to `aptly` server
* Provide a simple web interface to get build artifacts & `lintian` results
* Alternative to `Deb-o-Matic` but with `Jenkins` and `aptly`
---
## Jenkins
https://jenkins.io/
![](https://i.imgur.com/2xqJes7.png)
* `pkg-from-dsc.py` in Jenkins
---
## Jenkins parametric build
![](https://i.imgur.com/i6kZBAa.png)
---
## Jenkins build artifacts
![](https://imgur.com/ZDAtAfz.png)
---
## Lintian results
![](https://imgur.com/WYVGAJY.png)
---
## Aptly
https://www.aptly.info/
![](https://i.imgur.com/oHICYhd.png)
---
## aptly hook
* on aptly side, hook with scp-hook
* `dcmd scp pkg.changes aptly@aptly.example.org:incoming/unstable`
* equivalent of `dput` over `ssh`
---
## Uses at Logilab
* stretch-backports
* jessie-backports
* <ubuntu>-backports
---
## Example packages
* mercurial / mercurial-evolve / tortoisehg
* neomutt
* js / typescript / node
* profanity
* python libraries
* wireguard
---
## Conclusion / Questions
* Thanks for your attention
* Any questions ?
![](https://www.logilab.fr/file/2831/raw/logo-logilab.svg =100x)