--- /dev/null
+FROM centos:centos6
+
+#
+# Install devtools like Make and git
+#
+RUN yum groupinstall -y "Development Tools"
+RUN yum install -y rpmdevtools
+RUN yum install -y vim emacs nano
+RUN yum install -y yum-utils
+
+#
+# Add the EPEL repository for freetds and hiredis
+#
+RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
+
+#
+# Install GCC-4.9 as it has the requisite support for C11 keywords and atomics
+#
+RUN yum install -y centos-release-scl
+RUN yum install -y devtoolset-3-gcc devtoolset-3-gcc-c++
+ENV CC=/opt/rh/devtoolset-3/root/usr/bin/gcc
+
+#
+# Setup a src dir in /usr/local
+#
+RUN mkdir -p /usr/local/src/repositories
+WORKDIR /usr/local/src
+
+#
+# Get a modern version of cmake. We need 3.8.2 or later to build libkqueue rpms
+#
+RUN yum install -y openssl
+
+RUN curl https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.sh > ./cmake.sh
+
+RUN [ "$(cat ./cmake.sh | openssl sha256 | sed 's/^.* //')" = "bb26b1871f9e5c2fb73476186cc94d03b674608f704b48b94d617340b87b4d73" ]
+RUN chmod +x ./cmake.sh
+RUN ./cmake.sh --skip-license --prefix=/usr/local
+
+#
+# Grab libkqueue and build
+#
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth=1 https://github.com/arr2036/libkqueue.git
+WORKDIR libkqueue
+
+# Fixme: Change to the main repo when they merge this branch
+RUN git checkout patch-3
+RUN cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib ./ && \
+ make && \
+ cpack -G RPM
+RUN yum localinstall -y ./*.rpm
+
+
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth=1 https://github.com/mattrose/hiredis.git
+WORKDIR hiredis
+RUN git checkout rpm
+WORKDIR /usr/local/src/repositories
+RUN mkdir -p $HOME/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
+RUN yum-builddep -y hiredis/redhat/hiredis.spec
+RUN v=$(rpm -q --qf '%{VERSION}\n' --specfile hiredis/redhat/hiredis.spec | head -1) ;\
+ mv hiredis hiredis-$v ;\
+ tar -c -z -f $HOME/rpmbuild/SOURCES/hiredis-$v.tar.gz --exclude=.git hiredis-$v ;\
+ rpmbuild -bb hiredis-$v/redhat/hiredis.spec
+RUN yum localinstall -y $HOME/rpmbuild/RPMS/*/hiredis-*.rpm
+
+#
+# Shallow clone the FreeRADIUS source
+#
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth=1 https://github.com/mattrose/freeradius-server.git
+
+WORKDIR freeradius-server
+
+# Install build dependencies for all branches
+RUN for i in $(git for-each-ref --format='%(refname:short)' refs/remotes/origin 2>/dev/null | sed -e 's#origin/##' | egrep "^v[0-9]*\.[0-9x]*\.x$");\
+ do \
+ git checkout $i; \
+ [ -e ./redhat/freeradius.spec ] && yum-builddep -y ./redhat/freeradius.spec; \
+ done
+
+# Create the build tree
+ENV BUILDDIR=/root/rpmbuild
+RUN rpmdev-setuptree
+### This is necessary for the jenkins server to talk to the docker instance
+RUN yum install -y openssh-server java-1.8.0-openjdk-headless createrepo
+RUN adduser jenkins
+RUN echo -e "jenkins1" | passwd --stdin jenkins
+RUN mkdir /var/run/sshd
+RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
+RUN sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd
+EXPOSE 22
+CMD ["/usr/sbin/sshd","-D"]
--- /dev/null
+FROM centos:centos7
+
+#
+# Install devtools like Make and git
+#
+RUN yum groupinstall -y "Development Tools"
+RUN yum install -y rpmdevtools
+RUN yum install -y vim emacs nano
+
+#
+# Add the EPEL repository for freetds and hiredis
+#
+RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
+
+#
+# Install GCC-4.9 as it has the requisite support for C11 keywords and atomics
+#
+RUN yum install -y centos-release-scl
+RUN yum install -y devtoolset-3-gcc devtoolset-3-gcc-c++
+ENV CC=/opt/rh/devtoolset-3/root/usr/bin/gcc
+
+#
+# Setup a src dir in /usr/local
+#
+RUN mkdir -p /usr/local/src/repositories
+WORKDIR /usr/local/src
+
+#
+# Get a modern version of cmake. We need 3.8.2 or later to build libkqueue rpms
+#
+RUN yum install -y openssl
+
+RUN curl https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.sh > ./cmake.sh
+
+RUN [ "$(cat ./cmake.sh | openssl sha256 | sed 's/^.* //')" = "bb26b1871f9e5c2fb73476186cc94d03b674608f704b48b94d617340b87b4d73" ]
+RUN chmod +x ./cmake.sh
+RUN ./cmake.sh --skip-license --prefix=/usr/local
+
+#
+# Grab libkqueue and build
+#
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth=1 --no-single-branch https://github.com/arr2036/libkqueue.git
+WORKDIR libkqueue
+
+# Fixme: Change to the main repo when they merge this branch
+RUN git checkout patch-3
+RUN cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib ./ && \
+ make && \
+ cpack -G RPM
+RUN yum localinstall -y ./*.rpm
+
+#
+# Shallow clone the FreeRADIUS source
+#
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth 1 --no-single-branch https://github.com/FreeRADIUS/freeradius-server.git
+WORKDIR freeradius-server
+
+# Install build dependencies for all branches
+RUN for i in $(git for-each-ref --format='%(refname:short)' refs/remotes/origin 2>/dev/null | sed -e 's#origin/##' | egrep "^v[0-9]*\.[0-9x]*\.x$");\
+ do \
+ git checkout $i; \
+ [ -e ./redhat/freeradius.spec ] && yum-builddep -y ./redhat/freeradius.spec; \
+ done
+
+# Create the build tree
+ENV BUILDDIR=/root/rpmbuild
+RUN rpmdev-setuptree
+### This is necessary for the jenkins server to talk to the docker instance
+RUN yum install -y openssh-server java-1.8.0-openjdk-headless createrepo
+RUN adduser jenkins
+RUN echo -e "jenkins1" | passwd --stdin jenkins
+RUN mkdir /var/run/sshd
+RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
+RUN sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd
+EXPOSE 22
+CMD ["/usr/sbin/sshd","-D"]
--- /dev/null
+FROM debian:jessie
+RUN apt-get update && apt-get install -y devscripts equivs git quilt
+RUN apt-get install -y g++-4.9
+RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9 && update-alternatives --config gcc
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth=1 https://github.com/mattrose/freeradius-server.git
+
+WORKDIR freeradius-server
+
+# Install build dependencies for all branches
+RUN for i in $(git for-each-ref --format='%(refname:short)' refs/remotes/origin 2>/dev/null | sed -e 's#origin/##' | egrep "^v[0-9]*\.[0-9x]*\.x$");\
+ do \
+ git checkout $i; \
+ [ -e ./debian/control.in ] && debian/rules debian/control && echo 'y' | mk-build-deps -irt'apt-get -yV' debian/control; \
+ done
+
+### For some reason this dep was not installed
+# RUN apt-get install -y libiodbc2-dev
+### This is necessary for the jenkins server to talk to the docker instance
+RUN echo deb http://ftp.debian.org/debian jessie-backports main >> /etc/apt/sources.list
+RUN apt-get update && apt-get -t jessie-backports install -y openjdk-8-jre-headless
+RUN apt-get install -y openssh-server sudo
+RUN useradd -m jenkins
+RUN echo "jenkins:jenkins1" | chpasswd
+RUN echo "jenkins ALL=(ALL:ALL) NOPASSWD:ALL" > /etc/sudoers
+RUN mkdir /var/run/sshd
+# RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
+RUN sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd
+EXPOSE 22
+CMD ["/usr/sbin/sshd","-D"]
--- /dev/null
+FROM debian:wheezy
+RUN apt-get update && apt-get install -y sudo firebird-dev freetds-dev libcap-dev libcollectdclient-dev libcurl4-openssl-dev libgdbm-dev libhiredis-dev libidn11-dev libiodbc2-dev libjson0-dev libldap2-dev libpq-dev libmemcached-dev libmysqlclient-dev libpam0g-dev libpcap-dev libperl-dev libsqlite3-dev libunbound-dev libtalloc-dev libwbclient-dev libykclient-dev libyubikey-dev python-dev ruby ruby-dev snmp software-properties-common python-software-properties libssl-dev libtalloc-dev libkqueue-dev make packaging-dev libkrb5-dev libreadline-dev samba4-dev openssh-server mercurial
+
+RUN hg clone http://hg.openjdk.java.net/jdk8/jdk8 YourOpenJDK ;\
+ cd YourOpenJDK ;\
+ bash ./get_source.sh
+RUN apt-get install -y cpio zip openjdk-7-jdk libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev cups libcups2-dev
+RUN apt-get install -y libfreetype6-dev libasound2-dev
+ENV DISABLE_HOTSPOT_OS_VERSION_CHECK=ok
+RUN cd YourOpenJDK && bash ./configure && make
+RUN cd YourOpenJDK && make install
+RUN echo "deb http://http.debian.net/debian wheezy-backports main" >> /etc/apt/sources.list
+RUN apt-get update && apt-get install -y gcc-4.9 g++-4.9
+#RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9 && update-alternatives --config gcc
+RUN apt-get install -y sudo && echo "jenkins ALL=(ALL:ALL) NOPASSWD:ALL" > /etc/sudoers
+RUN useradd -m jenkins
+RUN echo "jenkins:jenkins1" | chpasswd
+RUN mkdir /var/run/sshd
+# RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
+RUN sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd
+EXPOSE 22
+CMD ["/usr/sbin/sshd","-D"]
--- /dev/null
+FROM ubuntu:14.04
+RUN apt-get update && apt-get install -y devscripts equivs git quilt
+RUN apt-get install -y software-properties-common python-software-properties
+RUN add-apt-repository ppa:ubuntu-toolchain-r/test
+RUN apt-get update
+RUN apt-get install -y g++-4.9
+RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9 && update-alternatives --config gcc
+WORKDIR /usr/local/src/repositories
+RUN git clone --depth=1 --no-single-branch https://github.com/mattrose/freeradius-server.git
+
+WORKDIR freeradius-server
+# RUN if [ -e ./debian/control.in ] ; then debian/rules debian/control ; fi ; echo 'y' | mk-build-deps -irt'apt-get -yV' debian/control
+# Install build dependencies for all branches
+RUN for i in $(git for-each-ref --format='%(refname:short)' refs/remotes/origin 2>/dev/null | sed -e 's#origin/##' | egrep "^v[0-9]*\.[0-9x]*\.x$");\
+ do \
+ git checkout $i; \
+ if [ -e ./debian/control.in ] ; then debian/rules debian/control ; fi ; echo 'y' | mk-build-deps -irt'apt-get -yV' debian/control ; \
+ done
+
+### For some reason this dep was not installed
+### This is necessary for the jenkins server to talk to the docker instance
+#RUN echo deb http://archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse >> /etc/apt/sources.list
+RUN apt-add-repository ppa:openjdk-r/ppa
+RUN apt-get update && apt-get install -y openjdk-8-jre-headless
+RUN apt-get install -y openssh-server
+RUN useradd -m jenkins
+RUN echo "jenkins:jenkins1" | chpasswd
+RUN echo "jenkins ALL=(ALL:ALL) NOPASSWD:ALL" > /etc/sudoers
+RUN mkdir /var/run/sshd
+# RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
+RUN sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd
+EXPOSE 22
+CMD ["/usr/sbin/sshd","-D"]