Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-2962

Docker Thrift env for development and testing

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.9.3
    • None
    • None

    Description

      Create a dockerfile for testing all components of Apache Thrift in Ubuntu and Centos containers

      Attachments

        1. THRIFT-2962.patch
          15 kB
          Jake Farrell

        Activity

          jfarrell Jake Farrell added a comment -

          Adds Dockerfiles for Ubuntu 14.04 and Centos 6.6

          jfarrell Jake Farrell added a comment - Adds Dockerfiles for Ubuntu 14.04 and Centos 6.6

          Hey Jake,

          Just checked this out. I tried it on Windows with the vagrant file and on an Ubuntu 14.04 box.

          Results:

          • 6 white space errors in the patch
          • make
          • Neither would make with Haxe enabled
          • Without Haxe both make
          • make check
          • The Windows box runs out of RAM (the vagrantfile sets the Ubuntu host to 1GB)
          • The Ubuntu box (8GB RAM) seg faults during the TNonblockingServerTest (this is probably broken anyway)

          This is related to Ervin Varga's THRIFT-2623 patch. Noticed there are several thrift containers on docker hub. Ervin's has been up there for a while. Also ahawkins/docker-thrift has a docker hub "official repo" thrift container for just running a pre built compiler on thrift files (pretty cool and current). Roger's make cross container is up there as well.

          Anyway, awesome stuff. I would really be supportive of any singular reference environment we could all use to ensure that tests are passing and CI is building clean.

          -Randy

          codesf Randy Abernethy added a comment - Hey Jake, Just checked this out. I tried it on Windows with the vagrant file and on an Ubuntu 14.04 box. Results: 6 white space errors in the patch make Neither would make with Haxe enabled Without Haxe both make make check The Windows box runs out of RAM (the vagrantfile sets the Ubuntu host to 1GB) The Ubuntu box (8GB RAM) seg faults during the TNonblockingServerTest (this is probably broken anyway) This is related to Ervin Varga's THRIFT-2623 patch. Noticed there are several thrift containers on docker hub. Ervin's has been up there for a while. Also ahawkins/docker-thrift has a docker hub "official repo" thrift container for just running a pre built compiler on thrift files (pretty cool and current). Roger's make cross container is up there as well. Anyway, awesome stuff. I would really be supportive of any singular reference environment we could all use to ensure that tests are passing and CI is building clean. -Randy
          jfarrell Jake Farrell added a comment -

          Hey codesf, I had been talking with jensg about the haxe build dependencies and have a couple patches that take care of it. Our jenkins infra can run docker containers now and I plan to make this the default setup that way anyone can run and test out of the same environment. I'm hoping that travis will start supporting docker containers soon as well so we can ensure that env is also maintained in the same fashion, having multiple scripts that all do the same activity is a pain to manage and also leads to missed updates. i'll post my updates to this patch shortly

          jfarrell Jake Farrell added a comment - Hey codesf , I had been talking with jensg about the haxe build dependencies and have a couple patches that take care of it. Our jenkins infra can run docker containers now and I plan to make this the default setup that way anyone can run and test out of the same environment. I'm hoping that travis will start supporting docker containers soon as well so we can ensure that env is also maintained in the same fashion, having multiple scripts that all do the same activity is a pain to manage and also leads to missed updates. i'll post my updates to this patch shortly
          hudson Hudson added a comment -

          SUCCESS: Integrated in Thrift #1460 (See https://builds.apache.org/job/Thrift/1460/)
          THRIFT-2962:Docker Thrift env for development and testing (jfarrell: rev e03f7e8e75f4ecb41b5f82a5fb9ae3712959e74c)

          • cmake/DefineOptions.cmake
          • build/cmake/CPackConfig.cmake
          • contrib/installDependencies.sh
          • build/docker/Vagrantfile
          • cmake/DefinePlatformSpecifc.cmake
          • contrib/installCXXDependencies.sh
          • cmake/DefineCMakeDefaults.cmake
          • build/cmake/FindAnt.cmake
          • cmake/DefineInstallationPaths.cmake
          • cmake/ThriftMacros.cmake
          • build/cmake/ConfigureChecks.cmake
          • build/cmake/DefinePlatformSpecifc.cmake
          • build/travis/installDependencies.sh
          • cmake/FindAnt.cmake
          • build/cmake/config.h.in
          • build/docker/centos/Dockerfile
          • build/docker/ubuntu/Dockerfile
          • cmake/CPackConfig.cmake
          • cmake/FindGLIB.cmake
          • build/cmake/DefineCMakeDefaults.cmake
          • cmake/ConfigureChecks.cmake
          • build/cmake/DefineOptions.cmake
          • .travis.yml
          • build/cmake/DefineInstallationPaths.cmake
          • build/cmake/FindGLIB.cmake
          • CMakeLists.txt
          • build/cmake/README.md
          • build/cmake/ThriftMacros.cmake
          • cmake/README.md
          • build/travis/installCXXDependencies.sh
          • cmake/config.h.in
          • build/docker/README.md
          hudson Hudson added a comment - SUCCESS: Integrated in Thrift #1460 (See https://builds.apache.org/job/Thrift/1460/ ) THRIFT-2962 :Docker Thrift env for development and testing (jfarrell: rev e03f7e8e75f4ecb41b5f82a5fb9ae3712959e74c) cmake/DefineOptions.cmake build/cmake/CPackConfig.cmake contrib/installDependencies.sh build/docker/Vagrantfile cmake/DefinePlatformSpecifc.cmake contrib/installCXXDependencies.sh cmake/DefineCMakeDefaults.cmake build/cmake/FindAnt.cmake cmake/DefineInstallationPaths.cmake cmake/ThriftMacros.cmake build/cmake/ConfigureChecks.cmake build/cmake/DefinePlatformSpecifc.cmake build/travis/installDependencies.sh cmake/FindAnt.cmake build/cmake/config.h.in build/docker/centos/Dockerfile build/docker/ubuntu/Dockerfile cmake/CPackConfig.cmake cmake/FindGLIB.cmake build/cmake/DefineCMakeDefaults.cmake cmake/ConfigureChecks.cmake build/cmake/DefineOptions.cmake .travis.yml build/cmake/DefineInstallationPaths.cmake build/cmake/FindGLIB.cmake CMakeLists.txt build/cmake/README.md build/cmake/ThriftMacros.cmake cmake/README.md build/travis/installCXXDependencies.sh cmake/config.h.in build/docker/README.md

          People

            jfarrell Jake Farrell
            jfarrell Jake Farrell
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: