Last active
December 11, 2018 10:09
-
-
Save sgnn7/bbff6d895d9dd420cff6aa976cb920bf to your computer and use it in GitHub Desktop.
Mesos deb build on Ubuntu 18.04 for Ubuntu 18.04 deployment
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM ubuntu:18.04 | |
LABEL version="0.1" | |
ENV OUTPUT_DIR="/opt/artifacts" | |
RUN mkdir $OUTPUT_DIR | |
VOLUME $OUTPUT_DIR | |
# Packaging requirements | |
# https://github.com/endlessm/mesos-deb-packaging/blob/master/README.md | |
RUN apt-get update && apt-get -y install git \ | |
build-essential \ | |
ruby \ | |
ruby-dev | |
RUN gem install fpm | |
# Mesos build requirements | |
# XXX: JDK may leave /etc/ssl/certs/java/cacerts empty so we install JDK8 as | |
# well so that our cacerts store isn't empty. | |
# https://bugs.java.com/view_bug.do?bug_id=8189131 | |
# https://bugs.openjdk.java.net/browse/JDK-8193890 | |
RUN apt-get -y install git \ | |
autoconf \ | |
build-essential \ | |
libapr1-dev \ | |
libcurl4-openssl-dev \ | |
libtool \ | |
libsasl2-dev \ | |
libsvn-dev \ | |
maven \ | |
openjdk-11-jdk \ | |
openjdk-8-jdk \ | |
python-dev \ | |
zlib1g-dev | |
ENV MAKEFLAGS=-j6 \ | |
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 | |
# XXX: Upstream packaging does not have our Ubuntu 18.04 patches yet | |
# https://github.com/mesosphere/mesos-deb-packaging/pull/113 | |
# XXX: Upstream Mesos does not have our JDK9+ patches yet (nor our logging framework patches) | |
# https://github.com/endlessm/mesos/tree/master | |
CMD git clone https://github.com/endlessm/mesos-deb-packaging.git \ | |
--branch ubuntu1804 \ | |
--single-branch && \ | |
cd mesos-deb-packaging && \ | |
./build_mesos --rename --repo git://github.com/endlessm/mesos.git && \ | |
cp mesos_*.deb $OUTPUT_DIR |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash -e | |
trap popd EXIT | |
pushd "$(dirname "$0")" | |
rm -rf dist | |
mkdir -m 1777 dist | |
sudo docker build -t mesos-builder-1804 . | |
sudo docker run -it -v $(pwd)/dist:/opt/artifacts --rm=true mesos-builder-1804 | |
mesos_deb=$(ls dist/) | |
cp dist/$mesos_deb . | |
echo "Package built: $mesos_deb" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment