diff options
Diffstat (limited to 'src/jaegertracing/thrift/build/docker/old')
6 files changed, 1208 insertions, 0 deletions
diff --git a/src/jaegertracing/thrift/build/docker/old/Vagrantfile b/src/jaegertracing/thrift/build/docker/old/Vagrantfile new file mode 100644 index 000000000..5eac6e686 --- /dev/null +++ b/src/jaegertracing/thrift/build/docker/old/Vagrantfile @@ -0,0 +1,59 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Base system bootstrap script +$bootstrap_script = <<__BOOTSTRAP__ +echo "Provisioning defaults" + +sudo apt-get update -y +sudo apt-get upgrade -y + +# Install default packages +sudo apt-get install -y build-essential curl git + +# Install latest Docker version +sudo curl -sSL https://get.docker.io/gpg | sudo apt-key add - +sudo echo "deb http://get.docker.io/ubuntu docker main" > /etc/apt/sources.list.d/docker.list +sudo apt-get update -y +sudo apt-get install -y linux-image-extra-`uname -r` aufs-tools +sudo apt-get install -y lxc-docker + +echo "Finished provisioning defaults" +__BOOTSTRAP__ + +Vagrant.configure("2") do |config| + config.vm.box = "trusty64" + config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box" + config.ssh.forward_agent = true + + config.vm.provider :virtualbox do |vbox| + vbox.customize ["modifyvm", :id, "--memory", "1024"] + vbox.customize ["modifyvm", :id, "--cpus", "2"] + end + + # Setup the default bootstrap script for our ubuntu base box image + config.vm.provision "shell", inline: $bootstrap_script + + # Setup the custom docker image from our Ubuntu Dockerfile + config.vm.provision "docker" do |d| + d.build_image "/vagrant/ubuntu", args: "-t thrift" + end + + # Setup the custom docker image from our Centos Dockerfile + #config.vm.provision "docker" do |d| + # d.build_image "/vagrant/centos", args: "-t thrift-centos" + #end + +end diff --git a/src/jaegertracing/thrift/build/docker/old/centos-7.3/Dockerfile b/src/jaegertracing/thrift/build/docker/old/centos-7.3/Dockerfile new file mode 100644 index 000000000..096bbaa45 --- /dev/null +++ b/src/jaegertracing/thrift/build/docker/old/centos-7.3/Dockerfile @@ -0,0 +1,199 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Apache Thrift Docker build environment for CentOS +# +# Known missing client libraries: +# - dotnet (will update to 2.0.0 separately) +# - haxe (not in centos) + +FROM centos:7.3.1611 +MAINTAINER Apache Thrift <dev@thrift.apache.org> + +RUN yum install -y epel-release + +# General dependencies +RUN yum install -y \ + autoconf \ + bison \ + bison-devel \ + clang \ + clang-analyzer \ + cmake3 \ + curl \ + flex \ + gcc \ + gcc-c++ \ + gdb \ + git \ + libtool \ + m4 \ + make \ + tar \ + unzip \ + valgrind \ + wget && \ + ln -s /usr/bin/cmake3 /usr/bin/cmake && \ + ln -s /usr/bin/cpack3 /usr/bin/cpack && \ + ln -s /usr/bin/ctest3 /usr/bin/ctest + +# C++ dependencies +RUN yum install -y \ + boost-devel-static \ + zlib-devel \ + openssl-devel \ + libevent-devel && \ + cd /usr/lib64 && \ + ln -s libboost_thread-mt.a libboost_thread.a + +# C# Dependencies +RUN yum install -y \ + mono-core \ + mono-devel \ + mono-web-devel \ + mono-extras + +# D Dependencies +RUN yum install -y http://downloads.dlang.org/releases/2.x/2.076.0/dmd-2.076.0-0.fedora.x86_64.rpm xdg-utils +RUN curl -sSL https://github.com/D-Programming-Deimos/openssl/archive/master.tar.gz| tar xz && \ + curl -sSL https://github.com/D-Programming-Deimos/libevent/archive/master.tar.gz| tar xz && \ + mkdir -p /usr/include/dmd/druntime/import/deimos /usr/include/dmd/druntime/import/C && \ + mv libevent-master/deimos/* openssl-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ + mv libevent-master/C/* openssl-master/C/* /usr/include/dmd/druntime/import/C/ && \ + rm -rf libevent-master openssl-master + +# Dart +RUN cd /usr/local && \ + wget -q https://storage.googleapis.com/dart-archive/channels/stable/release/1.24.2/sdk/dartsdk-linux-x64-release.zip && \ + unzip -q dartsdk-linux-x64-release.zip && \ + rm dartsdk-linux-x64-release.zip +ENV PATH /usr/local/dart-sdk/bin:$PATH + +# Erlang Dependencies +RUN curl -sSL http://packages.erlang-solutions.com/rpm/centos/erlang_solutions.repo -o /etc/yum.repos.d/erlang_solutions.repo && \ + yum install -y \ + erlang-kernel \ + erlang-erts \ + erlang-stdlib \ + erlang-eunit \ + erlang-rebar \ + erlang-tools + +# GLibC Dependencies +RUN yum install -y glib2-devel + +# Go Dependencies +RUN curl -sSL https://storage.googleapis.com/golang/go1.9.linux-amd64.tar.gz | tar -C /usr/local/ -xz +ENV PATH /usr/local/go/bin:$PATH + +# Haskell Dependencies +RUN yum -y install haskell-platform + +# Haxe Dependencies +# Not in debian/stretch + +# Java Dependencies +RUN yum install -y \ + ant \ + junit \ + ant-junit \ + java-1.8.0-openjdk-devel + +# Lua Dependencies +# Lua in epel is too old (5.1.4, need 5.2) so we get the latest +RUN yum install -y readline-devel && \ + wget -q http://www.lua.org/ftp/lua-5.3.4.tar.gz && \ + tar xzf lua-5.3.4.tar.gz && \ + cd lua-5.3.4 && \ + sed -i 's/CFLAGS= /CFLAGS= -fPIC /g' src/Makefile && \ + make linux && \ + make install && \ + cd .. && \ + rm -rf lua-5* + +# MinGW Dependencies +RUN yum install -y \ + mingw32-binutils \ + mingw32-crt \ + mingw32-nsis + +# Node.js Dependencies +# Work around epel issue where they removed http-parser that nodejs depends on! +RUN yum -y install https://opensource.enda.eu/packages/http-parser-2.7.1-3.el7.x86_64.rpm +RUN yum install -y \ + nodejs \ + npm + +# Ocaml Dependencies +RUN yum install -y \ + ocaml \ + ocaml-ocamldoc && \ + wget -q https://raw.github.com/ocaml/opam/master/shell/opam_installer.sh -O - | sh -s /usr/local/bin && \ + opam init --yes && \ + opam install --yes oasis && \ + echo '. /root/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true' >> ~/.bashrc + +# Perl Dependencies +RUN yum install -y \ + perl \ + perl-version \ + perl-Bit-Vector \ + perl-Class-Accessor \ + perl-ExtUtils-MakeMaker \ + perl-Test-Simple \ + perl-IO-Socket-SSL \ + perl-Net-SSLeay \ + perl-Crypt-SSLeay + +# PHP Dependencies +RUN yum install -y \ + php \ + php-devel \ + php-pear \ + re2c \ + php-phpunit-PHPUnit \ + bzip2 + +# Python Dependencies +RUN yum install -y \ + python \ + python-devel \ + python-pip \ + python-setuptools \ + python34 \ + python34-devel \ + python34-pip \ + python34-setuptools +RUN pip2 install --upgrade pip +RUN pip2 install --upgrade backports.ssl_match_hostname ipaddress setuptools six tornado tornado-testing twisted virtualenv zope-interface +RUN pip3 install --upgrade pip +RUN pip3 install --upgrade backports.ssl_match_hostname ipaddress setuptools six tornado tornado-testing twisted virtualenv zope-interface + +# Ruby Dependencies +RUN yum install -y \ + ruby \ + ruby-devel \ + rubygems && \ + gem install bundler rake + +# Rust +RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain 1.17.0 +ENV PATH /root/.cargo/bin:$PATH + +# Clean up +RUN rm -rf /tmp/* && \ + yum clean all + +ENV THRIFT_ROOT /thrift +RUN mkdir -p $THRIFT_ROOT/src +COPY Dockerfile $THRIFT_ROOT/ +WORKDIR $THRIFT_ROOT/src diff --git a/src/jaegertracing/thrift/build/docker/old/debian-jessie/Dockerfile b/src/jaegertracing/thrift/build/docker/old/debian-jessie/Dockerfile new file mode 100644 index 000000000..941b4bb42 --- /dev/null +++ b/src/jaegertracing/thrift/build/docker/old/debian-jessie/Dockerfile @@ -0,0 +1,205 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Apache Thrift Docker build environment for Debian +# +# Known missing client libraries: +# - dotnetcore +# - rust + +FROM buildpack-deps:jessie-scm +MAINTAINER Apache Thrift <dev@thrift.apache.org> + +ENV DEBIAN_FRONTEND noninteractive + +# Add apt sources +# jessie-backports for cmake and some ruby bits +RUN echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/jessie-backports.list + +# Dart +RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ + curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list && \ + sed -i /etc/apt/sources.list.d/dart_stable.list -e 's/https:/http:/g' + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# General dependencies` \ + bison \ + build-essential \ + clang \ + debhelper \ + flex \ + pkg-config && \ + apt-get -t jessie-backports install -y --no-install-recommends cmake + +RUN apt-get install -y --no-install-recommends \ +`# C++ dependencies` \ + libboost-dev \ + libboost-filesystem-dev \ + libboost-program-options-dev \ + libboost-system-dev \ + libboost-test-dev \ + libboost-thread-dev \ + libevent-dev \ + libssl-dev \ + qt5-default \ + qtbase5-dev \ + qtbase5-dev-tools + +RUN apt-get install -y --no-install-recommends \ +`# Java dependencies` \ + ant \ + ant-optional \ + openjdk-7-jdk \ + maven + +RUN apt-get install -y --no-install-recommends \ +`# Python dependencies` \ + python-all \ + python-all-dbg \ + python-all-dev \ + python-pip \ + python-setuptools \ + python-twisted \ + python-zope.interface \ + python3-all \ + python3-all-dbg \ + python3-all-dev \ + python3-setuptools \ + python3-pip + +RUN apt-get install -y --no-install-recommends \ +`# Ruby dependencies` \ + ruby \ + ruby-bundler \ + ruby-dev \ +`# Perl dependencies` \ + libbit-vector-perl \ + libclass-accessor-class-perl \ + libcrypt-ssleay-perl \ + libio-socket-ssl-perl \ + libnet-ssleay-perl + +RUN apt-get -t jessie-backports install -y ruby-bundler +RUN apt-get install -y --no-install-recommends \ +`# Php dependencies` \ + php5 \ + php5-dev \ + php5-cli \ + php-pear \ + re2c \ + phpunit \ +`# GlibC dependencies` \ + libglib2.0-dev + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# Erlang dependencies` \ + erlang-base \ + erlang-eunit \ + erlang-dev \ + erlang-tools \ + rebar + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# Haskell dependencies` \ + ghc \ + cabal-install \ +`# Haxe dependencies` \ + neko \ + neko-dev \ + libneko0 + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# Node.js dependencies` \ + nodejs \ + nodejs-dev \ + nodejs-legacy \ + npm + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# CSharp dependencies` \ + libmono-system-web2.0-cil \ + mono-devel + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# D dependencies` \ + xdg-utils \ +`# Dart dependencies` \ + dart \ +`# Lua dependencies` \ + lua5.2 \ + lua5.2-dev \ +`# MinGW dependencies` \ + mingw32 \ + mingw32-binutils \ +`# mingw32-runtime` \ + nsis \ +`# Clean up` \ + && rm -rf /var/cache/apt/* && \ + rm -rf /var/lib/apt/lists/* && \ + rm -rf /tmp/* && \ + rm -rf /var/tmp/* + +# Ruby +RUN gem install bundler --no-ri --no-rdoc + +# Python optional dependencies +RUN pip2 install -U ipaddress backports.ssl_match_hostname tornado +RUN pip3 install -U backports.ssl_match_hostname tornado + +# Go +RUN curl -sSL https://storage.googleapis.com/golang/go1.4.3.linux-amd64.tar.gz | tar -C /usr/local/ -xz +ENV PATH /usr/local/go/bin:$PATH + +# Haxe +RUN mkdir -p /usr/lib/haxe && \ + wget -O - https://github.com/HaxeFoundation/haxe/releases/download/3.2.1/haxe-3.2.1-linux64.tar.gz | \ + tar -C /usr/lib/haxe --strip-components=1 -xz && \ + ln -s /usr/lib/haxe/haxe /usr/bin/haxe && \ + ln -s /usr/lib/haxe/haxelib /usr/bin/haxelib && \ + mkdir -p /usr/lib/haxe/lib && \ + chmod -R 777 /usr/lib/haxe/lib && \ + haxelib setup /usr/lib/haxe/lib && \ + haxelib install hxcpp + +# D +RUN curl -sSL http://downloads.dlang.org/releases/2.x/2.070.0/dmd_2.070.0-0_amd64.deb -o /tmp/dmd_2.070.0-0_amd64.deb && \ + dpkg -i /tmp/dmd_2.070.0-0_amd64.deb && \ + rm /tmp/dmd_2.070.0-0_amd64.deb && \ + curl -sSL https://github.com/D-Programming-Deimos/openssl/archive/master.tar.gz| tar xz && \ + curl -sSL https://github.com/D-Programming-Deimos/libevent/archive/master.tar.gz| tar xz && \ + mkdir -p /usr/include/dmd/druntime/import/deimos /usr/include/dmd/druntime/import/C && \ + mv libevent-master/deimos/* openssl-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ + mv libevent-master/C/* openssl-master/C/* /usr/include/dmd/druntime/import/C/ && \ + rm -rf libevent-master openssl-master && \ + echo 'gcc -Wl,--no-as-needed $*' > /usr/local/bin/gcc-dmd && \ + chmod 755 /usr/local/bin/gcc-dmd && \ + echo 'CC=/usr/local/bin/gcc-dmd' >> /etc/dmd.conf + +# Dart +ENV PATH /usr/lib/dart/bin:$PATH + +# OCaml +RUN echo 'deb http://ppa.launchpad.net/avsm/ppa/ubuntu trusty main' > /etc/apt/sources.list.d/avsm-official-ocaml.list && \ + gpg --keyserver keyserver.ubuntu.com --recv 61707B09 && \ + gpg --export --armor 61707B09 | apt-key add - && \ + apt-get update && \ + apt-get install -y ocaml opam && \ + opam init && \ + opam install oasis + +# Force utf8 locale to successfully build Haskell tf-random +ENV LC_ALL C.UTF-8 + +ENV THRIFT_ROOT /thrift +RUN mkdir -p $THRIFT_ROOT/src +COPY Dockerfile $THRIFT_ROOT/ +WORKDIR $THRIFT_ROOT/src diff --git a/src/jaegertracing/thrift/build/docker/old/debian-stretch/Dockerfile b/src/jaegertracing/thrift/build/docker/old/debian-stretch/Dockerfile new file mode 100644 index 000000000..503eecd42 --- /dev/null +++ b/src/jaegertracing/thrift/build/docker/old/debian-stretch/Dockerfile @@ -0,0 +1,231 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Apache Thrift Docker build environment for Debian Stretch +# +# Known issues: +# - d: deimos for libevent and openssl disabled - build errors +# - dotnetcore, because netcore is for 1.0.0-preview and 2.0.0 is out +# - rust: cargo not in debian repo - perhaps not needed? + +FROM buildpack-deps:stretch-scm +MAINTAINER Apache Thrift <dev@thrift.apache.org> + +ENV DEBIAN_FRONTEND noninteractive + +### Add apt repos + +RUN apt-get update && apt-get install -y --no-install-recommends apt apt-transport-https curl wget apt-utils + +# D +RUN wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list && \ + apt-get update && apt-get -y --allow-unauthenticated install --reinstall d-apt-keyring + +# Dart +RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ + curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list && \ + sed -i /etc/apt/sources.list.d/dart_stable.list -e 's/https:/http:/g' + +# dotnet (core) 2.0.0 - project isn't ready for this yet: +# RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg && \ +# echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list + +# node.js (this step runs apt-get update internally) +RUN curl -sL https://deb.nodesource.com/setup_8.x | bash + + +### install general dependencies +RUN apt-get install -y --no-install-recommends \ +`# General dependencies` \ + bash-completion \ + bison \ + build-essential \ + clang \ + cmake \ + debhelper \ + flex \ + gdb \ + ninja-build \ + pkg-config \ + valgrind \ + vim + + +### languages + +RUN apt-get install -y --no-install-recommends \ +`# C++ dependencies` \ + libboost-dev \ + libboost-filesystem-dev \ + libboost-program-options-dev \ + libboost-system-dev \ + libboost-test-dev \ + libboost-thread-dev \ + libevent-dev \ + libssl-dev \ + qt5-default \ + qtbase5-dev \ + qtbase5-dev-tools + +RUN apt-get install -y --no-install-recommends \ +`# csharp (mono) dependencies` \ + mono-devel + +RUN apt-get install -y --no-install-recommends \ +`# D dependencies` \ + dmd-bin \ + libevent-dev \ + libssl-dev \ + xdg-utils +# libevent deimos disabled - build errors +# RUN mkdir -p /usr/include/dmd/druntime/import/deimos /usr/include/dmd/druntime/import/C && \ +# curl -sSL https://github.com/D-Programming-Deimos/libevent/archive/master.tar.gz| tar xz && \ +# mv libevent-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ +# mv libevent-master/C/* /usr/include/dmd/druntime/import/C/ && \ +# rm -rf libevent-master +# openssl deimos doesn't work with openssl-1.1.0 - disabling it for now: +# RUN curl -sSL https://github.com/D-Programming-Deimos/openssl/archive/master.tar.gz| tar xz && \ +# mv openssl-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ +# mv openssl-master/C/* /usr/include/dmd/druntime/import/C/ && \ +# rm -rf openssl-master + +RUN apt-get install -y --no-install-recommends \ +`# Dart dependencies` \ + dart +ENV PATH /usr/lib/dart/bin:$PATH + +# project isn't ready for this quite yet: +# RUN apt-get install -y --no-install-recommends \ +# `# dotnet core dependencies` \ +# dotnet-sdk-2.0.0 + +RUN apt-get install -y --no-install-recommends \ +`# Erlang dependencies` \ + erlang-base \ + erlang-eunit \ + erlang-dev \ + erlang-tools \ + rebar + +RUN apt-get install -y --no-install-recommends \ +`# GlibC dependencies` \ + libglib2.0-dev + +RUN apt-get install -y --no-install-recommends \ +`# golang (go) dependencies` \ + golang-go + +RUN apt-get install -y --no-install-recommends \ +`# Haskell dependencies` \ + ghc \ + cabal-install + +RUN apt-get install -y --no-install-recommends \ +`# Haxe dependencies` \ + haxe \ + neko \ + neko-dev +RUN haxelib setup --always /usr/share/haxe/lib && \ + haxelib install --always hxcpp + +RUN apt-get install -y --no-install-recommends \ +`# Java dependencies` \ + ant \ + ant-optional \ + openjdk-8-jdk \ + maven + +RUN apt-get install -y --no-install-recommends \ +`# Lua dependencies` \ + lua5.2 \ + lua5.2-dev +# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212 +# same for debian stretch +# lua5.3 does not install alternatives so stick with 5.2 here + +RUN apt-get install -y --no-install-recommends \ +`# Node.js dependencies` \ + nodejs + +RUN apt-get install -y --no-install-recommends \ +`# OCaml dependencies` \ + ocaml \ + opam && \ + opam init --yes && \ + opam install --yes oasis + +RUN apt-get install -y --no-install-recommends \ +`# Perl dependencies` \ + libbit-vector-perl \ + libclass-accessor-class-perl \ + libcrypt-ssleay-perl \ + libio-socket-ssl-perl \ + libnet-ssleay-perl + +RUN apt-get install -y --no-install-recommends \ +`# Php dependencies` \ + php7.0 \ + php7.0-cli \ + php7.0-dev \ + php-pear \ + re2c \ + phpunit + +RUN apt-get install -y --no-install-recommends \ +`# Python dependencies` \ + python-all \ + python-all-dbg \ + python-all-dev \ + python-backports.ssl-match-hostname \ + python-ipaddress \ + python-pip \ + python-setuptools \ + python-six \ + python-tornado \ + python-twisted \ + python-wheel \ + python-zope.interface \ + python3-all \ + python3-all-dbg \ + python3-all-dev \ + python3-setuptools \ + python3-six \ + python3-tornado \ + python3-twisted \ + python3-wheel \ + python3-zope.interface && \ + pip install --upgrade backports.ssl_match_hostname + +RUN apt-get install -y --no-install-recommends \ +`# Ruby dependencies` \ + ruby \ + ruby-dev \ + ruby-bundler +RUN gem install bundler --no-ri --no-rdoc + +RUN apt-get install -y --no-install-recommends \ +`# Rust dependencies` \ + rustc + +# Update anything else left hanging +RUN apt-get dist-upgrade -y + +# Clean up +RUN rm -rf /var/cache/apt/* && \ + rm -rf /var/lib/apt/lists/* && \ + rm -rf /tmp/* && \ + rm -rf /var/tmp/* + +ENV THRIFT_ROOT /thrift +RUN mkdir -p $THRIFT_ROOT/src +COPY Dockerfile $THRIFT_ROOT/ +WORKDIR $THRIFT_ROOT/src diff --git a/src/jaegertracing/thrift/build/docker/old/ubuntu-artful/Dockerfile b/src/jaegertracing/thrift/build/docker/old/ubuntu-artful/Dockerfile new file mode 100644 index 000000000..abe84d11c --- /dev/null +++ b/src/jaegertracing/thrift/build/docker/old/ubuntu-artful/Dockerfile @@ -0,0 +1,270 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Apache Thrift Docker build environment for Ubuntu Artful +# Using all stock Ubuntu Artful packaging except for: +# - cpp: stock boost 1.62 in artful has a nasty bug so we use stock boost 1.63 +# - d: dmd does not come with Ubuntu +# - dart: does not come with Ubuntu. Pinned to last 1.x release +# - dotnet: does not come with Ubuntu +# - haxe: version 3.4.2 that comes with Ubuntu cores in our CI build +# - go: artful comes with 1.9, we want the latest (supported) +# - nodejs: want v8, artful comes with v6 +# + +FROM buildpack-deps:artful-scm +MAINTAINER Apache Thrift <dev@thrift.apache.org> +ENV DEBIAN_FRONTEND noninteractive + +### Add apt repos + +RUN apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install -y --no-install-recommends \ + apt \ + apt-transport-https \ + apt-utils \ + curl \ + dirmngr \ + software-properties-common \ + wget + +# csharp (mono) - if we ever want a later version +# RUN echo "deb http://download.mono-project.com/repo/debian xenial main" | tee /etc/apt/sources.list.d/mono.list && \ +# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A6A19B38D3D831EF + +# Dart +RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ + curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > \ + /etc/apt/sources.list.d/dart_stable.list +ENV DART_VERSION 1.24.3-1 + +# dotnet (netcore) +RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg && \ + echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-artful-prod artful main" > \ + /etc/apt/sources.list.d/dotnetdev.list + +# haxe (https://haxe.org/download/linux/) +RUN add-apt-repository ppa:haxe/releases -y + +# node.js +RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ + echo "deb https://deb.nodesource.com/node_8.x artful main" | tee /etc/apt/sources.list.d/nodesource.list + +### install general dependencies +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# General dependencies` \ + bash-completion \ + bison \ + build-essential \ + clang \ + cmake \ + debhelper \ + flex \ + gdb \ + llvm \ + ninja-build \ + pkg-config \ + valgrind \ + vim +ENV PATH /usr/lib/llvm-3.8/bin:$PATH + +# boost-1.62 has a terrible bug in boost::test, see https://svn.boost.org/trac10/ticket/12507 +RUN apt-get install -y --no-install-recommends \ +`# C++ dependencies` \ + libboost1.63-all-dev \ + libevent-dev \ + libssl-dev \ + qt5-default \ + qtbase5-dev \ + qtbase5-dev-tools + +RUN apt-get install -y --no-install-recommends \ +`# csharp (mono) dependencies` \ + mono-devel + +ENV SBCL_VERSION 1.4.5 +RUN \ +`# Common Lisp (sbcl) dependencies` \ + curl --version && \ + curl -O -J -L https://kent.dl.sourceforge.net/project/sbcl/sbcl/${SBCL_VERSION}/sbcl-${SBCL_VERSION}-x86-64-linux-binary.tar.bz2 && \ + tar xjf sbcl-${SBCL_VERSION}-x86-64-linux-binary.tar.bz2 && \ + cd sbcl-${SBCL_VERSION}-x86-64-linux && \ + ./install.sh && \ + sbcl --version && \ + rm -rf sbcl* + +ENV D_VERSION 2.080.0 +ENV DMD_DEB dmd_2.080.0-0_amd64.deb +RUN \ +`# D dependencies` \ + wget -q http://downloads.dlang.org/releases/2.x/${D_VERSION}/${DMD_DEB} && \ + dpkg --install ${DMD_DEB} && \ + rm -f ${DMD_DEB} && \ + mkdir -p /usr/include/dmd/druntime/import/deimos /usr/include/dmd/druntime/import/C && \ + curl -sSL https://github.com/D-Programming-Deimos/libevent/archive/master.tar.gz| tar xz && \ + mv libevent-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ + mv libevent-master/C/* /usr/include/dmd/druntime/import/C/ && \ + rm -rf libevent-master && \ + curl -sSL https://github.com/D-Programming-Deimos/openssl/archive/master.tar.gz| tar xz && \ + mv openssl-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ + mv openssl-master/C/* /usr/include/dmd/druntime/import/C/ && \ + rm -rf openssl-master + +RUN apt-get install -y --no-install-recommends \ + `# Dart dependencies` \ + dart=$DART_VERSION +ENV PATH /usr/lib/dart/bin:$PATH + +RUN apt-get install -y --no-install-recommends \ +`# dotnet core dependencies` \ + dotnet-sdk-2.1.4 + +RUN apt-get install -y --no-install-recommends \ +`# Erlang dependencies` \ + erlang-base \ + erlang-eunit \ + erlang-dev \ + erlang-tools \ + rebar + +RUN apt-get install -y --no-install-recommends \ +`# GlibC dependencies` \ + libglib2.0-dev + +# golang +ENV GOLANG_VERSION 1.10 +ENV GOLANG_DOWNLOAD_URL https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz +ENV GOLANG_DOWNLOAD_SHA256 b5a64335f1490277b585832d1f6c7f8c6c11206cba5cd3f771dcb87b98ad1a33 +RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \ + echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \ + tar -C /usr/local -xzf golang.tar.gz && \ + ln -s /usr/local/go/bin/go /usr/local/bin && \ + rm golang.tar.gz + +RUN apt-get install -y --no-install-recommends \ +`# Haskell dependencies` \ + ghc \ + cabal-install + +RUN apt-get install -y --no-install-recommends \ +`# Haxe dependencies` \ + haxe \ + neko \ + neko-dev && \ + haxelib setup --always /usr/share/haxe/lib && \ + haxelib install --always hxcpp 2>&1 > /dev/null + +RUN apt-get install -y --no-install-recommends \ +`# Java dependencies` \ + ant \ + ant-optional \ + openjdk-8-jdk \ + maven + +RUN apt-get install -y --no-install-recommends \ +`# Lua dependencies` \ + lua5.2 \ + lua5.2-dev +# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212 +# lua5.3 does not install alternatives! +# need to update our luasocket code, lua doesn't have luaL_openlib any more + +RUN apt-get install -y --no-install-recommends \ +`# Node.js dependencies` \ + nodejs + +# Test dependencies for running puppeteer +RUN apt-get install -y --no-install-recommends \ +`# JS dependencies` \ + libxss1 + +RUN apt-get install -y --no-install-recommends \ +`# OCaml dependencies` \ + ocaml \ + opam && \ + opam init --yes && \ + opam install --yes oasis + +RUN apt-get install -y --no-install-recommends \ +`# Perl dependencies` \ + libbit-vector-perl \ + libclass-accessor-class-perl \ + libcrypt-ssleay-perl \ + libio-socket-ssl-perl \ + libnet-ssleay-perl + +RUN apt-get install -y --no-install-recommends \ +`# Php dependencies` \ + php \ + php-cli \ + php-dev \ + php-pear \ + re2c \ + composer + +RUN apt-get install -y --no-install-recommends \ +`# Python dependencies` \ + python-all \ + python-all-dbg \ + python-all-dev \ + python-ipaddress \ + python-pip \ + python-setuptools \ + python-six \ + python-tornado \ + python-twisted \ + python-wheel \ + python-zope.interface && \ + pip install --upgrade backports.ssl_match_hostname + +RUN apt-get install -y --no-install-recommends \ +`# Python3 dependencies` \ + python3-all \ + python3-all-dbg \ + python3-all-dev \ + python3-pip \ + python3-setuptools \ + python3-six \ + python3-tornado \ + python3-twisted \ + python3-wheel \ + python3-zope.interface + +RUN apt-get install -y --no-install-recommends \ +`# Ruby dependencies` \ + ruby \ + ruby-dev \ + ruby-bundler + +RUN apt-get install -y --no-install-recommends \ +`# Rust dependencies` \ + cargo \ + rustc + +RUN apt-get install -y --no-install-recommends \ +`# Static Code Analysis dependencies` \ + cppcheck \ + sloccount && \ + pip install flake8 + +# Clean up +RUN rm -rf /var/cache/apt/* && \ + rm -rf /var/lib/apt/lists/* && \ + rm -rf /tmp/* && \ + rm -rf /var/tmp/* + +ENV THRIFT_ROOT /thrift +RUN mkdir -p $THRIFT_ROOT/src +COPY Dockerfile $THRIFT_ROOT/ +WORKDIR $THRIFT_ROOT/src diff --git a/src/jaegertracing/thrift/build/docker/old/ubuntu-trusty/Dockerfile b/src/jaegertracing/thrift/build/docker/old/ubuntu-trusty/Dockerfile new file mode 100644 index 000000000..a8e4d3baa --- /dev/null +++ b/src/jaegertracing/thrift/build/docker/old/ubuntu-trusty/Dockerfile @@ -0,0 +1,244 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Apache Thrift Docker build environment for Ubuntu Trusty +# Using all stock Ubuntu Trusty packaging except for: +# - d: does not come with Ubuntu so we're installing 2.070.0 +# - dart: does not come with Ubuntu so we're installing 1.20.1 +# - dotnetcore, disabled because netcore is for 1.0.0-preview and 2.0.0 is out +# - haxe, disabled because the distro comes with 3.0.0 and it cores while installing +# - node.js, disabled because it is at 0.10.0 in the distro which is too old (need 4+) +# - ocaml, disabled because it fails to install properly +# + +FROM buildpack-deps:trusty-scm +MAINTAINER Apache Thrift <dev@thrift.apache.org> +ENV DEBIAN_FRONTEND noninteractive + +### Add apt repos + +RUN apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install -y --no-install-recommends \ + apt \ + apt-transport-https \ + apt-utils \ + curl \ + dirmngr \ + software-properties-common \ + wget + +# D +RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EBCF975E5BA24D5E && \ + wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list && \ + wget -qO - https://dlang.org/d-keyring.gpg | apt-key add - + +# Dart +RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ + curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > \ + /etc/apt/sources.list.d/dart_stable.list + +RUN apt-get update && apt-get install -y --no-install-recommends \ +`# General dependencies` \ + bash-completion \ + bison \ + build-essential \ + clang \ + cmake \ + debhelper \ + flex \ + gdb \ + llvm \ + ninja-build \ + pkg-config \ + valgrind \ + vim +ENV PATH /usr/lib/llvm-3.8/bin:$PATH + +RUN apt-get install -y --no-install-recommends \ +`# C++ dependencies` \ + libboost-all-dev \ + libevent-dev \ + libssl-dev \ + qt5-default \ + qtbase5-dev \ + qtbase5-dev-tools + +RUN apt-get install -y --no-install-recommends \ +`# csharp (mono) dependencies` \ + mono-devel + +RUN apt-get install -y --no-install-recommends \ +`# D dependencies` \ + dmd-bin=2.070.2-0 \ + libphobos2-dev=2.070.2-0 \ + dub \ + dfmt \ + dscanner \ + xdg-utils +RUN mkdir -p /usr/include/dmd/druntime/import/deimos /usr/include/dmd/druntime/import/C && \ + curl -sSL https://github.com/D-Programming-Deimos/libevent/archive/master.tar.gz| tar xz && \ + mv libevent-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ + mv libevent-master/C/* /usr/include/dmd/druntime/import/C/ && \ + rm -rf libevent-master +RUN curl -sSL https://github.com/D-Programming-Deimos/openssl/archive/master.tar.gz| tar xz && \ + mv openssl-master/deimos/* /usr/include/dmd/druntime/import/deimos/ && \ + mv openssl-master/C/* /usr/include/dmd/druntime/import/C/ && \ + rm -rf openssl-master + +RUN apt-get install -y --no-install-recommends \ +`# Dart dependencies` \ + dart=1.20.1-1 +ENV PATH /usr/lib/dart/bin:$PATH + +RUN apt-get install -y --no-install-recommends \ +`# Erlang dependencies` \ + erlang-base \ + erlang-eunit \ + erlang-dev \ + erlang-tools \ + rebar + +RUN apt-get install -y --no-install-recommends \ +`# GlibC dependencies` \ + libglib2.0-dev + +# golang +ENV GOLANG_VERSION 1.7.6 +ENV GOLANG_DOWNLOAD_URL https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz +ENV GOLANG_DOWNLOAD_SHA256 ad5808bf42b014c22dd7646458f631385003049ded0bb6af2efc7f1f79fa29ea +RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \ + echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \ + tar -C /usr/local -xzf golang.tar.gz && \ + ln -s /usr/local/go/bin/go /usr/local/bin && \ + rm golang.tar.gz + +RUN apt-get install -y --no-install-recommends \ +`# Haskell dependencies` \ + ghc \ + cabal-install + +# disabled because it cores while installing +# RUN apt-get install -y --no-install-recommends \ +# `# Haxe dependencies` \ +# haxe \ +# neko \ +# neko-dev && \ +# haxelib setup /usr/share/haxe/lib && \ +# haxelib install hxcpp 3.2.102 + +RUN apt-get install -y --no-install-recommends \ +`# Java dependencies` \ + ant \ + ant-optional \ + openjdk-7-jdk \ + maven + +RUN apt-get install -y --no-install-recommends \ +`# Lua dependencies` \ + lua5.1 \ + lua5.1-dev + +# disabled because it is too old +# RUN apt-get install -y --no-install-recommends \ +# `# Node.js dependencies` \ +# nodejs \ +# npm + +# disabled because it fails to install properly +# RUN apt-get install -y --no-install-recommends \ +# `# OCaml dependencies` \ +# ocaml \ +# opam && \ +# opam init --yes && \ +# opam install --yes oasis + +RUN apt-get install -y --no-install-recommends \ +`# Perl dependencies` \ + libbit-vector-perl \ + libclass-accessor-class-perl \ + libcrypt-ssleay-perl \ + libio-socket-ssl-perl \ + libnet-ssleay-perl + +RUN apt-get install -y --no-install-recommends \ +`# Php dependencies` \ + php5 \ + php5-cli \ + php5-dev \ + php-pear \ + re2c && \ + wget https://getcomposer.org/installer -O - -q | php -- --quiet --install-dir=/usr/local/bin/ --filename=composer + +RUN apt-get install -y --no-install-recommends \ +`# Python dependencies` \ + python-all \ + python-all-dbg \ + python-all-dev \ + python-pip \ + python-setuptools \ + python-six \ + python-twisted \ + python-wheel \ + python-zope.interface \ + python3-all \ + python3-all-dbg \ + python3-all-dev \ + python3-pip \ + python3-setuptools \ + python3-six \ + python3-wheel \ + python3-zope.interface && \ + pip install -U ipaddress backports.ssl_match_hostname tornado && \ + pip3 install -U backports.ssl_match_hostname tornado +# installing tornado by pip/pip3 instead of debian package +# if we install the debian package, the build fails in py2 + +RUN apt-get install -y --no-install-recommends \ +`# Ruby dependencies` \ + ruby \ + ruby-dev \ + ruby-bundler +RUN gem install bundler --no-ri --no-rdoc + +RUN apt-get install -y --no-install-recommends \ +`# Rust dependencies` \ + cargo \ + rustc + +RUN apt-get install -y --no-install-recommends \ +`# Static Code Analysis dependencies` \ + cppcheck \ + sloccount && \ + pip install flake8 + +# Install BouncyCastle provider to fix Java builds issues with JDK 7 +# Builds accessing repote repositories fail as seen here: https://github.com/travis-ci/travis-ci/issues/8503 +RUN apt-get install -y --no-install-recommends \ +`# BouncyCastle JCE Provider dependencies` \ + libbcprov-java && \ + ln -s /usr/share/java/bcprov.jar /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext/bcprov.jar && \ + awk -F . -v OFS=. 'BEGIN{n=2}/^security\.provider/ {split($3, posAndEquals, "=");$3=n++"="posAndEquals[2];print;next} 1' /etc/java-7-openjdk/security/java.security > /tmp/java.security && \ + echo "security.provider.1=org.bouncycastle.jce.provider.BouncyCastleProvider" >> /tmp/java.security && \ + mv /tmp/java.security /etc/java-7-openjdk/security/java.security + +# Clean up +RUN rm -rf /var/cache/apt/* && \ + rm -rf /var/lib/apt/lists/* && \ + rm -rf /tmp/* && \ + rm -rf /var/tmp/* + +ENV THRIFT_ROOT /thrift +RUN mkdir -p $THRIFT_ROOT/src +COPY Dockerfile $THRIFT_ROOT/ +WORKDIR $THRIFT_ROOT/src |