Closed minyk closed 4 years ago
This broken link in package caused us to spend a couple of days to reach a state just to test the framework, check this discussion for the root cause of the "forbidden" issue: https://dcos-community.slackarchive.io/storage/page-25/ts-1504190894000515
We then had to spend good amount of time and effort to compile the framework due to several make and sbt issues until we are able to compile it ourselves.
@bergerx Should we host the file somewhere else? Can you share your changes so I can recompile?
Just for information, ceph-on-mesos
cannot deploy ceph luminous
version because luminous
needs ceph-mgr
daemon for cluster setup. But kraken
is deployable.
@joerg84 Hosting file in some other more reliable artifact store could be really helpful and just address this issue. It was Silvano from our team who compiled it for us you can find the compiled version here: https://github.com/Melozzola/ceph-on-mesos-0_2_11_tgz/raw/master/ceph-on-mesos-0.2.11.tgz
I'll try to find how he has compiled and share here.
But if I get it right the real issue about the framework is that it was written as a personal pet project and no longer maintained. There should be some kind of support/lifecycle management for packages.
Below you can find a copy paste of compilation notes from our internal wiki, it was @Melozzola who did the hard work putting these together.
The first step is to install sbt. For mac I used homebrew
brew install sbt@0.13
The second step is to install ensime. In your ~/.sbt/0.13/plugins/plugins.sbt add
addSbtPlugin("org.ensime" % "sbt-ensime" % "1.12.14")
If the file is not there, create it.
The third step is to clone the git repository
git clone https://github.com/vivint-smarthome/ceph-on-mesos.git
The git project uses git submodules, so you need to initialise those running
cd ceph-on-mesos
git submodules init
git submodules update
Change the ceph-on-mesos/build.sbt file (line 168) and replace the line
ProjectRef(uri("git://github.com/timcharper/scalajs-react-bridge.git"), "scalajs-react-bridge"))
with
ProjectRef(uri("https://github.com/timcharper/scalajs-react-bridge.git"), "scalajs-react-bridge"))
Modify the ceph-on-mesos/project/plugins.sbt adding a few more repositories and bumping the version of the dependencies. The file should look like the following:
resolvers += Resolver.url("bintray-sbt-plugins", url("https://dl.bintray.com/sbt/sbt-plugin-releases/"))(Resolver.ivyStylePatterns)
resolvers += Resolver.sonatypeRepo("snapshots")
resolvers += Resolver.sonatypeRepo("releases")
addSbtPlugin("io.spray" % "sbt-revolver" % "0.9.0")
addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.2.2")
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.20")
Make sure that you have the ceph-on-mesos/project/build.properties with
sbt.version=0.13.16
If not, just go ahead and create it. Finally you should be able to compile the project vit sbt. Launch the sbt console with
sbt
and then from the shell you can clean the project with
clean
you can compile running
compile
The projects uses submodules, and you need to generate the javascript ui with
ui/fullOptJS
To generate the distribution archive run
compile packageZipTarball
The package needs a file from https://dl.bintray.com/vivint-smarthome/ceph-on-mesos/ceph-on-mesos-0.2.11.tgz, but it's response is forbidden.