Generic and Standalone Frameworks (DEPRECATED)

The Generic and Standalone frameworks are for applications that might not fit any of the other frameworks available in Helion Stackato.

  • The generic framework is for web applications.
  • The standalone framework is for background applications without an HTTP interface.

These two frameworks make no assumptions about the application type, and can be customized to run a wide variety of non-standard applications.

Any language runtime available on the server can be specified in the config file. If a runtime is not specified, Python 2.7 is made available by default.

Generic

The Generic framework requires a custom processes: web: setting in manifest.yml specifying a command to start the web process (for example, a custom web server).

The example below shows a web process that serves static files from the application directory using Python's SimpleHTTPServer:

framework:
  type: generic
processes:
  web: python -m SimpleHTTPServer $PORT

If you wish to run an application without a web interface (as a background "worker" process), set 'processes: web:' to Null or use the Standalone framework instead.

Standalone

The Standalone framework uses a custom command specified in the command: key to start a background worker process.

The example below shows the manifest.yml configuration for an application running a simple Python worker script.

name: worker
  framework:
    type: standalone
    runtime: python27
  command: python main.py

The command must start a long-running child process. If this process exits for any reason, the Health Manager will restart the application instance.

Helion Stackato will not assign URLs to apps deployed with the standalone framework, because it is intended for background worker processes. The stackato client includes a heuristic that will automatically suppress URL mapping for applications using this framework.

Note

If the application does not serve web requests, it may appear in the Management Console or stackato apps command as not running. To verify a non-web application is actually running, use stackato logs or stackato ssh.

See the stackato-worker sample for a simple working example.