LISA, the lovely interface for sysadmins, is an opinionated UI for Foreman. While the Foreman UI was made for infrastructure teams, LISA was made for users who want to create hosts without needing to know how that is done in detail. This README outlines the details of collaborating on this React.js application.
Foreman Version |
---|
>= 1.24 |
LISA is known to work with Node version >= 14 and <= 18.
Make sure you use the latest version of npm:
$ npm install -g npm@latest
Download and install packages:
$ npm install
$ cp .env.example .env.local
To start using LISA you have to define:
- default attributes for new hosts
- default values for the hosts creation form
- at least one location
- at least one operatingsystem
- at least one app tier
You can also define preset resources that can be used to easily set predefined attributes for a new host.
You can use example.json
to build the settings file, copy the file and replace the settings with your own.
$ cp src/settings/example.json src/settings/development.json
Use global IDs as a reference to Foreman resources. To get the global ID, start rails console and use the following command:
irb(main):001:0> Foreman::GlobalId.for(Location.find_by(name: 'My-Location'))
=> "MDE6TG9jYXRpb24tMg=="
Run the following command to validate your settings:
$ npx ajv -d src/settings/development.json -s src/settings/settings.schema.json
Please also update the app tiers locales file. (src/locales/appTiers.en.json
)
$ npm test
$ npm start
$ npm run build
$ npm run preview
Create src/settings/production.json file. (See above) Then build the docker image.
$ docker build -t my-lisa-image .
This multi-stage docker build will install all dependencies, build the production bundle and copy it to a ngninx container.
Then you can run it.
$ docker run -p 8080:8080 my-lisa-image
LISA will be accessible on localhost:8080
.
Copyright (c) 2018-present dmTECH GmbH, dmtech.de
This project is licensed under the MIT License - see the LICENSE file for details