diff options
Diffstat (limited to 'continuous_integration.mdwn')
-rw-r--r-- | continuous_integration.mdwn | 44 |
1 files changed, 34 insertions, 10 deletions
diff --git a/continuous_integration.mdwn b/continuous_integration.mdwn index c9ab9bd..9d9162f 100644 --- a/continuous_integration.mdwn +++ b/continuous_integration.mdwn @@ -3,21 +3,39 @@ [[!meta date="2016-02-06T11:38:14Z"]] -[[!toc]] The CI system is a jenkins -instance on <http://ci.netsurf-browser.org/> +[[!toc]] -The old discussion on [[Autobuilder requirements|continuous_integration/autobuilder_requirements]] — -lists requirements for the new autobuilder. +The CI system is a jenkins instance accessed at <http://ci.netsurf-browser.org/> ## Master The master instance is a VPS provided by Mythic beasts. -A VPN between it and all the build slaves provides a network where no -machines are publicly accessible. This is in addition to the ssh based -tunnels used to copy data between CI nodes. +A VPN between the master node and all the build slaves provides a +network where no machines are publicly accessible. -The Jenkins install on the master server is a snapshot release version +The network uses OpenVPN to create a LAN which other systems +connect. The [[virtual host server|virtual_host_server]] instances are +all bridged to the LAN on a single openVPN link. All the physical +nodes for Mac OS X, armhf etc. are bridged via Vincents router through +a single openvpn link. The scaleway and other nodes connect with +separate openvpn connections. + +The master node also runs a dnsmasq instance which provides name +service and DHCP for the CI LAN. The dnsmasq config file has static +mappings for the CI slaves DHCP responses using 192.168.211.100 for CI +worker 0 and so on up the range to 192.168.211.130 for worker 30 + +All virtual machines use locally administered MAC adresses in the +0E:xx:xx:xx:x:xx prefix range. + + - 0e:00:00:00:01:xx used for phoenix VM host + - 0e:00:00:00:02:xx used for arrch64vmhost VM host + - 0e:00:00:00:03:xx used for scaleway VM host + +In addition ssh based tunnels are used to copy data between CI nodes. + +The Jenkins install on the master server is a snapshot release version. ## Slave @@ -25,9 +43,11 @@ The majority of the build slaves are provided by our own [[virtual host server|virtual_host_server]] excepting operating systems which cannot be virtualised (principally MAC OS X). -### [[Continuous Integration Debian Jessie Setup|continuous_integration/debian_jessie_setup]] +### [[Continuous Integration Debian 9 (Stretch) Setup|continuous_integration/debian_stretch_setup]] + +### [[Continuous Integration Debian 8 (Jessie) Setup|continuous_integration/debian_jessie_setup]] - Obsolete -### [[Continuous Integration Debian Wheezy Setup|continuous_integration/debian_wheezy_setup]] +### [[Continuous Integration Debian 7 (Wheezy) Setup|continuous_integration/debian_wheezy_setup]] - Obsolete ### [[Continuous Integration OpenBSD Setup|continuous_integration/openbsd_setup]] @@ -38,3 +58,7 @@ systems which cannot be virtualised (principally MAC OS X). ### [[Continuous Integration Mac OS X Snow Leopard Setup|continuous_integration/mac_os_x_snow_leopard_setup]] ### [[Continuous Integration Mac OS X Yosemite Setup|continuous_integration/mac_os_x_yosemite_setup]] + +## Historical + +The old discussion on [[Autobuilder requirements|continuous_integration/autobuilder_requirements]] lists requirements for the new autobuilder. |