marklogic-samplestack icon indicating copy to clipboard operation
marklogic-samplestack copied to clipboard

Live hosted instance

Open popzip opened this issue 10 years ago • 5 comments

Deploy a hosted instance of Samplestack so people can play with it without having to build it themselves. There should be links to the demo and probably a "Fork me on GitHub" banner.

Things to think about:

  • Node? Java? Both? Shouldn't matter (though internally would be interesting comparison). Java ready so that would be going in assumption if we do this now.
  • Vanguard owns the demo machines (*.demo.marklogic.com). Can we assign them maintenance of this? Internal process to get servers, then support/maintenance plan
  • Does this go afoul of the terms we're allowed to use the content? (re-check SO license)

Would be useful for:

  • MLU participants to have a play instance
  • SEs for demo-ing to customers
  • Visitors to have something to play with before deploying to local machine

(migration of https://github.com/marklogic/samplestack-internal/issues/81)

popzip avatar Feb 20 '15 21:02 popzip

This would be awesome! I've always wanted to see the samplestack in action.

seongbae-ml avatar Feb 23 '15 14:02 seongbae-ml

Value justification for hosting online somewhere:

  1. During MLU training, students could look at how the app runs before looking at/modifying/replicating the code
  2. SEs could use during live demos
  3. For public facing audience to get interested before diving into the code / downloading locally

There may be additional requirements and performance aspects that haven’t necessarily been taken into account for the local developer version (1.0/1.1), though being scalable has been important from the beginning.

TODOs:

  1. Kasey to define additional requirements (# concurrent users, SE usage)
  2. Determine performance characteristics / # nodes etc (email performance?)
  3. Request to IT for demo system
  4. Plan for maintenance
  5. Available stats/reports/monitoring?

popzip avatar Feb 27 '15 22:02 popzip

Just a note that the Sample Stack 3 tier install is very straight forward when using Eclipse and Gradle.

Since this is a Spring Beans model-driven architecture, most of the modeling effort (real advancement) is in the application tier, not the browser tier. A staging or "demo" environment would have to include access to all tiers to be useful. Just allowing devs to do angular tweaking in their own browser tier against a staged demo app tier is not very useful.

Having worked with this architecture over the past year, I would like to suggest the following:

  • Automated nightly CI (eg. Jenkins) build of the SS repo.
  • Automated deployment of the nightly build to a browser tier, application tier and database tier staging environment running securely against the latest nightly build of ML8 itself.
  • This would make this "demo" staging environment the absolute bleeding edge of development and available to testers. ML is moving foward very quickly and devs need (and some even want) to be exposed to this.
  • The real value is that the versions of everything deployed in the demo staging (browser, app and database tiers) are the very latest.
  • devs can run their own browser and/or DB and/or app tiers if they so choose, connected to the demo staging tiers when required.
  • would also like to suggest smoke tests (browser level unit testing -eg. Create user) to be run immediately after nightly deployment.
  • Full unit testing is out of scope for this issue, but definitely a dependency for actually publishing any demo staging tiers.
  • The tiers should be auto-bounced if the system stops responding. Perhaps a CI hook could do this.

dcerisano avatar Mar 03 '15 00:03 dcerisano

Thanks for the ideas @dcerisano. This task is meant more for the non-developer audience to just browse and see the app in action - so it is meant to be focused on an exposed browser to end users only, not for live development. I'll look through your comments in more detail though to figure out if there are other ways we might support different dev environments/situations.

popzip avatar Mar 12 '15 15:03 popzip

Perhaps a dedicated ML staging cloud that runs stable nightly builds for devs that would like to participate in testing reviewing next gen functionality. A CI cycle.

dcerisano avatar Apr 28 '15 10:04 dcerisano