mesos / storm

Storm on Mesos!
Apache License 2.0
139 stars 66 forks source link

improve handling of mesos version in the build #96

Open erikdw opened 8 years ago

erikdw commented 8 years ago

As noted in PR #91, we have a couple of manual modifications that are necessary when changing the mesos version:

  1. pom.xml's mesos.version property needs to be updated so that the package's included mesos dependency is correct.
  2. (only applicable when using Docker image) we need to update the version of mesos in the Dockerfile.

    Update pom.xml's mesos.version

We should consider some mechanism for updating the mesos.version property without resorting to something like sed. e.g., maybe one of these Maven plugins:

Ideally we would just use a vanilla ubuntu Docker image as the FROM, and then install the mesos package for the chosen mesos version. Unfortunately, the mesos packages published by Mesosphere have an unpredictable superfluous identifier in the names, which prevents simply doing something like this:

FROM ubuntu:14.04
...
RUN apt-get install -y mesos=0.26.0-0.2.145.ubuntu1404

So instead of this we can resort to using sed to update the base image in the Dockerfile, using a lookup-table from bin/build-release.sh to choose the appropriate base image for each supported mesos version.

erikdw commented 8 years ago

120 aims to fix the Dockerfile portion of this issue, along with adding support for onbuild Docker images.