A planner front-end for Fabric8.

Usage no npm install needed!

<script type="module">
  import fabric8Planner from 'https://cdn.skypack.dev/fabric8-planner';


= Fabric8 Planner

image:https://jenkins.cd.test.fabric8.io/job/fabric8-ui/job/fabric8-planner/job/master/badge/icon[Jenkins, link="https://jenkins.cd.test.fabric8.io/job/fabric8-ui/job/fabric8-planner/job/master/"] image:https://img.shields.io/npm/v/fabric8-planner.svg[npm, link="https://npmjs.com/package/fabric8-planner"] image:https://codecov.io/gh/fabric8-ui/fabric8-planner/branch/master/graph/badge.svg[Codecov.io, link="https://codecov.io/gh/fabric8-ui/fabric8-planner"] image:https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic%20release-b4d455.svg[Semantic Release, link="https://github.com/semantic-release/semantic-release"]

:icons: :toc: macro :toc-title: :toclevels: 2


== Overview Fabric8 Planner is a task planner and the issue tracker front-end for link:https://openshift.io/[openshift.io]. It uses the link:https://github.com/fabric8-services/fabric8-wit[Fabric8 Work Item Tracker] as the back-end.

The Planner project provides a component library which is used by other applications to provide a task planning front-end.

The Planner is available as an npm package. It can not be run by itself as it is an Angular component library. However, for development and testing purpose, a minimal runtime environment is available in the link:runtime[runtime] directory.

You can run Planner either as a minimal Standalone component or as an Integrated component using an external webapp like the fabric8-ui. It is recommended to use the Integrated component to build and run Planner.

== Quickstart

The Planner can be quickly built using the link:scripts/run-planner.sh[launcher script].

You can use the launcher script to build the Planner either as an Integrated component using an external webapp like the fabric8-ui or as a Standalone component.

=== Integrated mode

NOTE: The Integrated mode is the default mode for building Planner using this script.


  • Ensure that Node.js (v8.3.0) and npm are installed in your system.

.Procedure . To build and run the Planner with an integrated environment such as fabric8-ui (or an external web app) use: +

$ scripts/run-planner.sh

This script supports the following flags:

  • Use -r - to re-install everything
  • Use -s - to start Planner in standalone mode using the runtime
  • Use -f - to set the path to Fabric8 UI directory (This requires path argument)
  • Use -p - to set the path to the Planner directory (This requires the path argument)

For example:

  • Use scripts/run-planner.sh -r -s to re-install planner and run it in standalone mode.
  • Use scripts/run-planner.sh -r -f /home/User/fabric8-ui if you wish to set the platform path. By default, the Fabric8 UI path is assumed to be Planner_Path/..

. Access the service on: http://localhost:3000

=== Standalone mode The Standalone Mode uses prod-preview backend by default.

. To build and run a standalone, minimal runtime implementation of the Planner using the prod-preview database use: +

$ scripts/run-planner.sh --standalone

Or +

$ scripts/run-planner.sh -s

. Access the service on http://localhost:8080 . Get an auth token: .. Navigate to http://api.prod-preview.openshift.io/api/login/authorize?redirect=https://api.openshift.io/api/status .. Log in with your OSIO user name (for example, +preview@redhat.com). The part after "?token_json" in the resulting url is the token. Copy this token. . Use the token to log in as: localhost:8080/?<the token>

. Navigate to prod-preview and get a space ID you want to use from the url. . Use that spaceId to get to a space on your local instance: http://localhost:8080/plan/list?q=(space:%20$AND%20typegroup.name:Scenarios)&showTree=true

Optionally, you can change the default prod-preview backend and use external web apps by setting the environment variables for the services, for example:

  • To use Fabric8 wit as the backend use the environment variable: FABRIC8_WIT_API_URL
  • To use Fabric8 Auth as the backend use the environment variable: FABRIC8_AUTH_API_URL

== Documentation The following documentation is available in the docs directory:

  • link:docs/technology_stack.adoc[Technology Stack]: Lists the the technology stack used by Planner.
  • link:docs/testing.adoc[Testing]: Covers the tests you can run on Planner.
  • link:docs/alternate_ways_to_run_planner.adoc[Alternate ways to run Planner]: Provides information about alternate methods to run Planner.
  • link:docs/useful_scripts_and_tasks.adoc[Useful scripts and tasks]: Provides a list of useful npm scripts managed by gulp tasks.

== Contributing

All contributions are welcome, if you want to contribute to this project, ensure you follow the link:CONTRIBUTING.adoc[Contribution Guidelines].