Skip to content

Commit

Permalink
V4.0.3 Changes (#171)
Browse files Browse the repository at this point in the history
v4.0.3 Changes
  • Loading branch information
abhilash-aot authored Oct 22, 2021
1 parent 1735fde commit 5555c1b
Show file tree
Hide file tree
Showing 182 changed files with 5,093 additions and 1,118 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,7 @@ yarn-error.log*
# IntelliJ IDEA
.idea
*.iml

#Database
postgres/
mongodb/
52 changes: 52 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,58 @@
# Changelog for formsflow.ai
Mark items as `Added`, `Changed`, `Fixed`, `Removed`, `Untested Features`, `Upcoming Features`

## 4.0.3 - 2021-10-22

`Added`

**forms-flow-bpm**

* Added new postman collections for camunda API.
* Runtime logger level updation

**forms-flow-web**

* Added upload/download forms feature.
* Added a feature to search submissions in metrics based on created or modified date range.

**forms-flow-api**

* Better logging for Python API including coloured logs and API time details.
* Add pessimistic Database disconnection handling mechanism.

`Fixed`

**forms-flow-bpm**

* Fixed the issue of Oauth2 RestTemplate was recreating each time, so the session was getting created so many times.
* Exception handling & Retry for External form submission listener in ExternalFormSubmissionListener
* Usage issue fixed with ApplicationAuditListener.

**forms-flow-analytics**

* Resolve analytics component breaking due to [SIGSEV Memory issue](https://github.com/AOT-Technologies/forms-flow-ai/issues/149).

**forms-flow-web**

* Fixed server side pagination for `Task` page.
* Fixed Items per page dropdown in the form page for designer.

`Modified`

**forms-flow-bpm**

* Upgraded Camunda BPM Identity Keycloak to 2.2.1

**forms-flow-api**

* Add orderBy field to `metrics` API to display API based on created date and modified date.
* Changed default timezone to UTC time instead of being set as users local time.

**forms-flow-web**

* Footer was modified to display formsflow.ai with the version number.
* Optimized task list page by limiting the number of backend calls.

## 4.0.2 - 2021-07-23

`Added`
Expand Down
63 changes: 63 additions & 0 deletions DEPENDENCIES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Dependencies Details
In the following document, we’ll describe the details of dependencies of various components in the **formsflow.ai** solution.

## 1. forms-flow-analytics
To build interactive dashboards and gain insights.

| Component | Version|
| --- | ----- |
| Redash | V9(beta)|
<br>

## 2. forms-flow-api
REST API to formsflow.ai integration components

| Component | Version |
| --- | ----- |
| Python | 3.9 |
| Flask | 1.1.4 |
| Postgres | 11.0 |
<br>

## 3. forms-flow-bpm
For workflow and decision automation<br>

| Component | Version|
| --- | ----- |
| Camunda | 17.13.0|
| SpringBoot | 2.2.7 |
| Postgres | Latest |
<br>

## 4. forms-flow-forms
To build data management applications<br>

| Component | Version|
| --- | ----- |
| Formio | 2.0.0--rc.34 |
<br>

## 5. forms-flow-idm
Identity Management<br>

| Component | Version|
| --- | ----- |
| Keycloak | 7.0 and above |
<br>

#### NOTE:
* If you are using keycloak version **11.0 and above**, you can use the keycloak import script [mentioned here](https://github.com/AOT-Technologies/forms-flow-ai/blob/master/forms-flow-idm/keycloak/imports/formsflow-ai-realm.json) .
* If you are in keycloak version **7.0 and above**, refer our [guide](https://github.com/AOT-Technologies/forms-flow-ai/blob/master/forms-flow-idm/keycloak/README.md#create-realm) on how to manually setup keycloak roles/users .
<br>
## 6. forms-flow-web
Delivers progressive web application<br>

| Component | Version |
| --- | --- |
| React | 17.0.2 |
| Formio | 2.0.0-rc.34 |
<br>

8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
<p align="center"><img src=".images/logo.png"/><br/><img src="https://img.shields.io/badge/release-v4.0.2-blue"/></p>
<div align="center"><img src=".images/logo.png"/></div>
<hr/>

[![Join the chat at https://gitter.im/forms-flow-ai/community](https://badges.gitter.im/forms-flow-ai/community.svg)](https://gitter.im/forms-flow-ai/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Join the chat at https://gitter.im/forms-flow-ai/community](https://badges.gitter.im/forms-flow-ai/community.svg)](https://gitter.im/forms-flow-ai/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Join the chat at https://stackoverflow.com/questions/tagged/formsflow.ai](https://img.shields.io/badge/ask%20-on%20%20stackoverflow-F47F24)](https://stackoverflow.com/questions/tagged/formsflow.ai?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
<img src="https://img.shields.io/badge/release-v4.0.3-blue"/>
<img src="https://img.shields.io/badge/LICENSE-Apache%202-green"/>


**formsflow.ai** is an open source solution framework developed and maintained by [AOT Technologies](https://www.aot-technologies.com/). The framework combines selected open source Forms, Workflow, Analytics, and Security products with custom-built integration code to provide a seamless solution that provides a viable alternative to expensive, enterprise software products.

Expand Down
1 change: 1 addition & 0 deletions deployment/docker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@ Variable name | Meaning | Possible values | Default value |
--- | --- | --- | ---
`NODE_ENV`| Define project level configuration | `development, test, production` | `development`
`APPLICATION_NAME`| Application_Name | eg: formsflow.ai| `formsflow.ai`
`WEB_BASE_CUSTOM_URL`| Custom_URL | eg: https://formsflow.ai| `custom url`
`FORMSFLOW_API_CORS_ORIGINS`| formsflow.ai Rest API allowed origins, for allowing multiple origins you can separate host address using a comma seperated string or use * to allow all origins |eg:`host1, host2, host3`| `*`
`CAMUNDA_API_URL` :triangular_flag_on_post: |Camunda Rest API URL||`http://{your-ip-address}:8000/camunda`
`FORMSFLOW_API_URL`:triangular_flag_on_post:|formsflow.ai Rest API URL||`http://{your-ip-address}:5000`
Expand Down
25 changes: 2 additions & 23 deletions deployment/docker/docker-compose-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ services:
POSTGRES_USER: ${CAMUNDA_JDBC_USER:-admin}
POSTGRES_PASSWORD: ${CAMUNDA_JDBC_PASSWORD:-changeme}
POSTGRES_DB: ${CAMUNDA_JDBC_DB_NAME:-formsflow-bpm}
POSTGRES_HOST_AUTH_METHOD: 'trust'
volumes:
- ./postgres/camunda:/var/lib/postgresql/data
ports:
Expand Down Expand Up @@ -110,6 +109,7 @@ services:

forms-flow-web:
container_name: forms-flow-web
restart: always
build:
context: ./../../forms-flow-web/
dockerfile: Dockerfile
Expand All @@ -136,6 +136,7 @@ services:
- REACT_APP_KEYCLOAK_URL=${KEYCLOAK_URL}
- REACT_APP_APPLICATION_NAME=${APPLICATION_NAME:-formsflow.ai}
- REACT_APP_USER_ACCESS_PERMISSIONS=${USER_ACCESS_PERMISSIONS}
- REACT_APP_WEB_BASE_CUSTOM_URL=${WEB_BASE_CUSTOM_URL:-}
volumes:
- '.:/app'
- '/app/node_modules'
Expand All @@ -146,26 +147,6 @@ services:
networks:
- forms-flow-network

#Analytics DB - Comment below if mongo db setup is available

# forms-flow-webapi-analytics-db:
# container_name: forms-flow-analytics-db
# image: mongo
# restart: always
# hostname: forms-flow-webapi-analytics-db
# ports:
# - '27019:27017'
# environment:
# MONGO_INITDB_ROOT_USERNAME: ${FORMSFLOW_API_ANALYTICS_DB_USERNAME:-admin}
# MONGO_INITDB_ROOT_PASSWORD: ${FORMSFLOW_API_ANALYTICS_DB_PASSWORD:-changeme}
# MONGO_INITDB_DATABASE: ${FORMSFLOW_API_ANALYTICS_DB_NAME:-analytics}
# volumes:
# - ./mongo_entrypoint/001_user.js:/docker-entrypoint-initdb.d/001_user.js:ro
# - mdb-data:/data/analytics/db/
# - ./mongodb/data/log/:/var/log/mongodb/
# - ./mongodb/mongod.conf:/etc/mongod.conf
# networks:
# - forms-flow-network

forms-flow-webapi-db:
container_name: forms-flow-webapi-db
Expand All @@ -174,7 +155,6 @@ services:
POSTGRES_USER: ${FORMSFLOW_API_DB_USER:-postgres}
POSTGRES_PASSWORD: ${FORMSFLOW_API_DB_PASSWORD:-changeme}
POSTGRES_DB: ${FORMSFLOW_API_DB_NAME:-webapi}
POSTGRES_HOST_AUTH_METHOD: 'trust'
ports:
- '6432:5432'
restart: always
Expand All @@ -191,7 +171,6 @@ services:
restart: always
links:
- forms-flow-webapi-db
# - forms-flow-webapi-analytics-db
ports:
- '5000:5000'
volumes:
Expand Down
25 changes: 2 additions & 23 deletions deployment/docker/docker-compose-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ services:
POSTGRES_USER: ${CAMUNDA_JDBC_USER:-admin}
POSTGRES_PASSWORD: ${CAMUNDA_JDBC_PASSWORD:-changeme}
POSTGRES_DB: ${CAMUNDA_JDBC_DB_NAME:-formsflow-bpm}
POSTGRES_HOST_AUTH_METHOD: 'trust'
volumes:
- ./postgres/camunda:/data/postgres/data/postgres
ports:
Expand Down Expand Up @@ -111,6 +110,7 @@ services:

forms-flow-web:
container_name: forms-flow-web
restart: always
build:
context: ./../../forms-flow-web/
dockerfile: Dockerfile
Expand All @@ -137,6 +137,7 @@ services:
- REACT_APP_KEYCLOAK_URL=${KEYCLOAK_URL}
- REACT_APP_APPLICATION_NAME=${APPLICATION_NAME:-formsflow.ai}
- REACT_APP_USER_ACCESS_PERMISSIONS=${USER_ACCESS_PERMISSIONS}
- REACT_APP_WEB_BASE_CUSTOM_URL=${WEB_BASE_CUSTOM_URL:-}
volumes:
- '.:/app'
- '/app/node_modules'
Expand All @@ -147,34 +148,13 @@ services:
networks:
- forms-flow-network

#Analytics DB - Comment below if mongo db setup is available
# forms-flow-webapi-analytics-db:
# container_name: forms-flow-analytics-db
# image: mongo
# restart: always
# hostname: forms-flow-webapi-analytics-db
# ports:
# - '27019:27017'
# environment:
# MONGO_INITDB_ROOT_USERNAME: ${FORMSFLOW_API_ANALYTICS_DB_USERNAME:-admin}
# MONGO_INITDB_ROOT_PASSWORD: ${FORMSFLOW_API_ANALYTICS_DB_PASSWORD:-changeme}
# MONGO_INITDB_DATABASE: ${FORMSFLOW_API_ANALYTICS_DB_NAME:-analytics}
# volumes:
# - ./mongo_entrypoint/001_user.js:/docker-entrypoint-initdb.d/001_user.js:ro
# - mdb-data:/data/analytics/db/
# - ./mongodb/data/log/:/var/log/mongodb/
# - ./mongodb/mongod.conf:/etc/mongod.conf
# networks:
# - forms-flow-network

forms-flow-webapi-db:
container_name: forms-flow-webapi-db
image: postgres:11
environment:
POSTGRES_USER: ${FORMSFLOW_API_DB_USER:-postgres}
POSTGRES_PASSWORD: ${FORMSFLOW_API_DB_PASSWORD:-changeme}
POSTGRES_DB: ${FORMSFLOW_API_DB_NAME:-webapi}
POSTGRES_HOST_AUTH_METHOD: 'trust'
ports:
- '6432:5432'
restart: always
Expand All @@ -191,7 +171,6 @@ services:
restart: always
links:
- forms-flow-webapi-db
# - forms-flow-webapi-analytics-db
ports:
- '5000:5000'
volumes:
Expand Down
2 changes: 2 additions & 0 deletions deployment/docker/sample.env
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,8 @@ USER_RESOURCE_ID={User forms form-Id}
#NODE_ENV=development
#Application_Name
APPLICATION_NAME=formsflow.ai
#Custome_URL
#WEB_BASE_CUSTOM_URL=
#Role level permission defining
USER_ACCESS_PERMISSIONS={"accessAllowApplications":false,"accessAllowSubmissions":false}
##Camunda Rest API URI
Expand Down
9 changes: 6 additions & 3 deletions forms-flow-analytics/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Analytics Engine

![Redash](https://img.shields.io/badge/Redash-v9(master)-blue)
![Redash](https://img.shields.io/badge/Redash-v9(beta)-blue)

**formsflow.ai** leverages [Redash](https://github.com/getredash/redash) to build interactive
dashboards and gain insights. To create meaningful visualization for
Expand All @@ -15,6 +15,7 @@ your use case with formsflow.ai checkout [Redash Knowledge base](https://redash.
* [Step 4 : Health Check](#health-check)
* [Step 5 : Configuration of Keycloak SAML Setup](#configuration-of-keycloak-saml-setup)
3. [Get the Redash API key](#get-the-redash-api-key)
4. [Redash how to use guide](#redash-how-to-use-guide)

## Prerequisites

Expand Down Expand Up @@ -104,6 +105,8 @@ Variable name | Meaning | Possible values | Default value |
* Go to Account Section
* Copy API Key to Clipboard

### Redash how to use guide
## Redash how to use guide

Check our guide on [how to configure Redash and come up with awesome visualization using redash](./docs/README.md). Also [sample queries for default forms](./docs/sample_queries.md).
- Check our guide on [how to configure Redash and come up with awesome visualization using redash](./docs/README.md).

- If you want to visualize based on data in formsflow.ai, [a few sample queries for default forms are available](./docs/sample_queries.md).
6 changes: 6 additions & 0 deletions forms-flow-analytics/docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@ We can create interactive dashboards that can be embedded anywhere and shared wi

![image](https://user-images.githubusercontent.com/70306694/125466079-02a24f12-58ed-40e4-a669-b88dbb456645.png)

*5. Share Dashboad for public access*

After you have created the dashboard to view it inside formsflow.ai solution. Share the Dashboard and enable `Allow public access`.

![image](https://user-images.githubusercontent.com/70306694/135583411-a7e7ce1d-6792-4884-a133-b9dcd5446cb1.png)


## Sample Queries

Expand Down
2 changes: 1 addition & 1 deletion forms-flow-analytics/sample.env
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@



REDASH_HOST=http://{your-ip-address}:7000/redash
REDASH_HOST=http://{your-ip-address}:7000
PYTHONUNBUFFERED=0
REDASH_LOG_LEVEL=INFO
REDASH_REDIS_URL=redis://redis:6379/0
Expand Down
7 changes: 3 additions & 4 deletions forms-flow-api/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
#Author: Kurian Benoy
FROM python:3.8
FROM python:3.9-slim-buster

WORKDIR /forms-flow-api/app
COPY requirements/prod.txt .
COPY requirements.txt .
ENV PATH=/venv/bin:$PATH

RUN : \
&& python3 -m venv /venv \
&& pip install --upgrade pip \
&& pip install psycopg2 \
&& pip install -r prod.txt
&& pip install -r requirements.txt

ADD . /forms-flow-api/app
RUN pip install .
Expand Down
Loading

0 comments on commit 5555c1b

Please sign in to comment.