System Management Application for multiple Pega Infinity nodes based on Pega API
Currently application in its early alpha stage. In the future it will cover all Pega API system management capabilities
Available features:
- Requestor management: interrupt and stop
- Agent management: start, stop and restart
git clone https://github.com/mishankov/pega-infinity-sma.git
cd pega-infinity-sma
scripts/init.sh
Then follow instructions to create super user
For Windows use init.bat
To run SMA do
scripts/runserver.sh
and then go to http://0.0.0.0:8888/ in your browser
For Windows use runserver.bat
To add new node:
- Go to http://0.0.0.0:8888/admin
- Log in with your super user account
- Under PISMA application go to "Pega nodes" and click "Add Pega node" button
- Fill the form: displayed name, url in format
http://{host}:{port}
, select production level and enter login and password to access Pega API on your node - Click "Save"
Then you can access you node on home page http://0.0.0.0:8888/
To access node with not super user you should add permission with name Can access {PegaNode.name}
to this user or to one of his groups
All project wide settings should be done through environment variables
PISMA_PEGAAPI_TIMEOUT
- timeout for PegaAPI services. Default is5
PISMA_DJANGO_DEBUG
- debug mode for Django. Default isFalse
PISMA_DJANGO_SECRET_KEY
- Django secret key. Default isSECRET_KEY
. You must change it, if you use PISMA with production environmentsPISMA_DJANGO_SELF_SERVE_STATIC_FILES
- use WhiteNoise to serve static files. Default isTrue
PISMA_HOST
- host to run application server. Default is::
PISMA_PORT
- port to run application server. Default is8888
PISMA_DJANGO_SQL_ENGINE
- SQL engine for Django. Default isdjango.db.backends.sqlite3
.django.db.backends.postgresql
also supportedPISMA_DATABASE_URL
- URL to connect to database in format{database vendor}://{login}:{password}@{host}:{port}/{databse name}
. Required ifPISMA_DJANGO_SQL_ENGINE
is not set todjango.db.backends.sqlite3
. Default is empty string
PISMA_DJANGO_ROOT_LOGGING_LEVEL
- root logging level setting. Default isERROR
. Sends logs tologs/errors.log
and consolePISMA_DJANGO_PISMA_LOGGING_LEVEL
- PISMA logging level setting. Default isINFO
. Sends logs tologs/pisma.log
and consolePISMA_DJANGO_CONSOLE_LOGGING_LEVEL
- console logging level setting. Default isWARNING
. Doesn't print messages with logging level lower then itsPISMA_DJANGO_FILE_LOGGING_LEVEL
-logs/pisma.log
logging level setting. Default isINFO
. Doesn't print messages with logging level lower then its
You can use Docker to deploy Pega Infinity SMA
You need to create docker-compose.yml
in the project root directory. There are a couple examples of content for docker-compose.yml
file in docker-compose-examples/
directory:
docker-compose-sqlite.yml
- creates container with PISMA and SQLite as your database. Great for small projects and development environmentdocker-compose-with-postgresql.yml
- creates two containers: one with PISMA and one with PostgreSQL. Connects PISMA to this PostgreSQL databasedocker-compose-external-database.yml
- if you already have a database that you want to use this option is for you
After you created docker-compose.yml
you can run scripts/init_docker.sh
to deploy Pega Infinity SMA
- Web framework: Django https://www.djangoproject.com/
- CSS, JS: Bootstrap 4 https://getbootstrap.com/
- Tables on UI: DataTables https://datatables.net/
- Icons: Feather https://feathericons.com/