Jenkins plugin for the Aptly Debian repository manager

Zoltan Gyarmati authored on 18 Aug 2017
src get the correct JSON key from config form even when there are multiple publishers, fixes #1 2 years ago
tools add helper shell script to setup testing repos 3 years ago
.gitignore fix global config port value handling, and initial (yet stub) code to implement the REST calls 3 years ago
LICENSE add license headers and file 3 years ago
README.md get the correct JSON key from config form even when there are multiple publishers, fixes #1 2 years ago
TODO some log cleanup 3 years ago
pom.xml start new dev iteration 0.2.0 3 years ago
README.md

aptly-plugin

Jenkins plugin for aptly debian repository manager

Setting up development environment

Install aptly

(from http://www.aptly.info/download/) echo "deb http://repo.aptly.info/ squeeze main" >> /etc/apt/sources.list apt-key adv --keyserver keys.gnupg.net --recv-keys E083A3782A194991 apt-get update apt-get install aptly Running it: aptly api serve -listen=:1080

aptly repo create -distribution="jessie" -component="coolproject-testing" coolproject-testing-jessie
aptly repo add coolproject-testing-jessie smartframeserver-snmpd_0.2.1_amd64.deb
aptly publish repo coolproject-testing-jessie
aptly repo create -distribution="jessie" -component="coolproject-testing" coolproject-testing-jessie
aptly publish repo -architectures="amd64,i386" coolproject-testing-jessie
aptly repo add coolproject-testing-jessie smartframeserver-snmpd_0.2.1_amd64.deb
aptly publish update jessie

Jenkins plugin setup

https://wiki.jenkins.io/display/JENKINS/Plugin+tutorial#Plugintutorial-SettingUpEnvironment

mvn -U org.jenkins-ci.tools:maven-hpi-plugin:create

mvnDebug hpi:run

Notes

Bookmarks

REST client lib: http://unirest.io/java.html

Aptly multiple distributions https://groups.google.com/forum/#!topic/aptly-discuss/QhgkRlR577w

Use cases

  • One package into one repository
  • Multiple packages into one repository
  • Packages from dir into one repository

  • Packages into multiple repositories

Terminology

aptly site: a remote or the local host where Aptly is running and serving the REST API, and one and more repositories

repository: a repository on an Aptly site. One Aptly site can have multiple repositories

package: a .deb file, which has to be uploaded and added to a repository registeren on an aptly site