====== Build Server ======
===== Automatic Package Builds =====
The upstream X2Go project provides X2Go packages for several GNU/Linux distributions. For building our packages automatically, we have set up a [[http://jenkins.x2go.org|Jenkins site]]. Please visit our Jenkins server to introspect package build status and other information around package building.
However, the Ubuntu packages we provide are built on [[http://launchpad.net/~x2go|Launchpad]].
===== Manual Package Builds =====
==== Build Server Logon ====
X2Go developers can logon to...
$ ssh -lx2go-admin -p9175 japsand.x2go.org
==== Build X2Go Packages for Debian ====
=== Run a ,,normal" build job ===
... and launch a package build process:
$ x2go-build+upload-deb-package {heuler,main}[/{squeeze,wheezy,jessie,stretch,sid}]
The build scripts use qemubuilder. The packages are built in clean chroot environments of the corresponding distro version. Packages are regularly built for amd64 and i386 archictectures, some other architectures are supported (see below).
=== Run a test build ===
If you just want to trigger a test build from Git master, do this for Debian sid and do not upload to the .deb repository...
$ x2go-build-deb-package heuler/sid
=== Other architectures ===
With
$ EXTRA_ARCHS=armel EXTRA_ARCHS_ONLY=yes x2go-build+upload-deb-package {heuler,main}[/{squeeze,wheezy,sid}]
you can build X2Go components for the ARM(el) architecture. This uses qemu soft emulation and will be quite slow and it will also create quite a CPU load.
Currently, only ARM(el) builds (and of course i386, amd64) are supported.
We normally do only build the stable X2Go code base for ARM(el).
=== Upload packages ===
After the package build follows the package uploaded. Packages are currently uploaded to ''packages.x2go.org'' (aka ''ymir.das-netzwerkteam.de'').
Uploaded packages normally get integrated into the repository by a CRON job. The impatient developer can trigger that command manually with this line at the command line shell of the user ''x2go-admin'' (e.g. for Debian squeeze):
ssh -lx2go-admin packages.x2go.org -p32032
REPREPRO_BASE_DIR=/srv/sites/x2go.org/packages/debian reprepro processincoming x2go-debian-{squeeze|wheezy|jessie|sid}
==== Build X2Go Packages for Ubuntu ====
Ubuntu packages of X2Go (amd64, i386) are built fully automatically via Launchpad: http://launchpad.net/~x2go
==== Build X2Go Packages for Fedora/EPEL ====
=== Run a ,,normal" build job ===
... and launch a package build process:
$ RPM_BUILD_FOR="fedora:18,19 epel:6" x2go-build+upload-rpm-package {heuler,main}
The build scripts use mock. The packages are built in clean chroot environments of the corresponding distro version. Packages are built for amd64 and i386 archictectures.
=== Run a test build ===
If you just want to trigger a test build from Git master, do this for Fedora rawhide and do not upload to the .rpm repository...
$ x2go-build-rpm-package heuler/rawhide