[[!meta title="Continuous Integration OpenBSD Setup"]] [[!meta author="Kyllikki"]] [[!meta date="2017-09-18T07:53:24Z"]] [[!toc]] Manual setup of OpenBSD 6.1 --------------------------- ### system prep get iso from [mirror](https://www.mirrorservice.org/pub/OpenBSD/) setup VM on phoenix at the welcome prompt choose I to install default keyboard layout system name is nsciworker6 or similar use default re0 for network interface use dhcp to configure ipv4 use none for ipv6 do not configure any more interfaces setup root account start sshd by default disable x window system do not run default console on com0 setup netsurf user do not allow root ssh login GMT timezone select wd0 as available disc select whole disc Edit the auto layout resize home to be smaller and var to be larger with the "R" command write label to disc with w and exit with x location of sets http proxy is none accept default server and directory file sets use -game61.tgz to remove game set same for xfont and xserv select done and sets will be installed select doen for location of sets reboot into new system set serial console up for VM ### required packages Ensure all ports were added in the install or mess with ports as needed pkg_add -v jdk-1.8.0.121p1v0 screen-4.0.3p6 ccache-3.3.4 gcc-4.9.4p4 pkg_add -v rsync-3.1.2p0-iconv git check doxygen pkg_add -v gperf flex bison gtk+2 png jpeg pkg_add -v wget curl bash gmake p5-HTML-Parser for historical reasons link gflex to flex in /usr/bin ### config Add node on jenkins master CI instance Name cislave6 Description OpenBSD 6.1 worker # of executors 1 Remote FS root /var/lib/jenkins Labels amd64-unknown-openbsd6.1 take note of secret for use. add jenkins user mkdir /var/lib adduser -home /var/lib login as jenkins user download slave jar curl -o slave.jar http://ci.netsurf-browser.org/jenkins/jnlpJars/slave.jar create jenkins slave script cat << EOF > jenkins-slave.sh #!/bin/sh PATH=$PATH:/usr/local/jdk-1.8.0/bin/ export PATH java -Djava.awt.headless=true -jar slave.jar -jnlpUrl http://ci.netsurf-browser.org/jenkins/computer/ciworker6/slave-agent.jnlp -secret 1234 EOF chmod a+x jenkins-slave.sh create ssh keypair (accept defaults - no password) ssh-keygen -t rsa -C "netsurf@ciworker6.netsurf-browser.org" copy .ssh/id\_rsa.pub from slave to jenkins master node and append to /home/netsurf/.ssh/authorized\_keys start slave daemon in screen Manual setup of OpenBSD 5.7 --------------------------- ### system prep - set serial console up for VM ### required packages Ensure all ports were added in the install or mess with ports as needed `pkg_add -v jdk-1.7.0.71v0 screen-4.0.3p4 ccache gcc-4.9.2p3` `pkg_add -v rsync-3.1.1-iconv git check doxygen ` `pkg_add -v gperf flex bison gtk+2 png jpeg spidermonkey-1.9.2.28p1v0` `pkg_add -v wget curl bash gmake p5-HTML-Parser` ### config Add node on jenkins master CI instance `Name       cislave6` `Description    OpenBSD 5.7 worker` `# of executors 1` `Remote FS root /var/lib/jenkins` `Labels     amd64-unknown-openbsd5.7` take note of secret for use. add jenkins user `mkdir /var/lib` `adduser -home /var/lib` login as jenkins user download slave jar `curl -o slave.jar `[`http://ci.netsurf-browser.org/jenkins/jnlpJars/slave.jar`](http://ci.netsurf-browser.org/jenkins/jnlpJars/slave.jar) create jenkins slave script `cat << EOF > jenkins-slave.sh` `#!/bin/sh` `java -Djava.awt.headless=true -jar slave.jar -jnlpUrl `[`http://ci.netsurf-browser.org/jenkins/computer/cislave6/slave-agent.jnlp`](http://ci.netsurf-browser.org/jenkins/computer/cislave6/slave-agent.jnlp)` -secret 1234` `EOF` `chmod a+x jenkins-slave.sh` create ssh keypair (accept defaults - no password) `ssh-keygen -t rsa -C "netsurf@cislave8.netsurf-browser.org"` copy .ssh/id\_rsa.pub from slave to jenkins master node and append to /home/netsurf/.ssh/authorized\_keys start slave daemon in screen Manual setup of OpenBSD 5.5 --------------------------- ### required packages Ensure all ports were added in the install or mess with ports as needed `pkg_add -v jdk-1.7.0.21p2v0  screen-4.0.3p4 ccache gcc-4.8.2p2` `pkg_add -v rsync-3.1.0-iconv git check doxygen ` `pkg_add -v gperf flex bison gtk+2 png jpeg spidermonkey-1.9.2.28p1v0` `pkg_add -v wget curl bash gmake p5-HTML-Parser` ### config - on master jenkins use "manage nodes" to create new node. Ensure "remote fs root" is set to /var/lib/jenkins add variable JENKINS\_HOME set to /var/lib/jenkins - As superuser on slave - mkdir /var/lib - create jenkins user `adduser -home /var/lib` Manual setup of OpenBSD 5.4 --------------------------- ### required packages Ensure all ports were added in the install or mess with ports as needed `jdk-1.7.0.21v0` `screen-4.0.3p3` `ccache` `gcc-4.8.1p2` `rsync-3.0.9p3-iconv` `git` `check` `doxygen` `gperf` `flex` `bison` `gtk+2` `png` `jpeg` `spidermonkey-1.9.2.28p0v0` `wget` `curl` `bash` `gmake` `p5-HTML-Parser` ### config - on master jenkins use "manage nodes" to create new node. Ensure "remote fs root" is set to /var/lib/jenkins add variable JENKINS\_HOME set to /var/lib/jenkins - As superuser on slave - mkdir /var/lib - create jenkins user `adduser -home /var/lib`