Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The docker-compose.yaml which you downloaded requires some environmental variables to function .

...

All containers marked in RED are mandatory, rest are optional and needed only if respective tools are in use.

KnowHOW Specific Variables

MongoDB service

NOTE: NO need to update if you are upgrading the Knowhow

  • MONGO_INITDB_ROOT_USERNAME=<DB ROOT USER> (used for DDL comands within the application.)

  • MONGO_INITDB_ROOT_PASSWORD=<DB ROOT PASSWORD>(password for admin user)

  • MONGODB_APPLICATION_USER=<DB READ/Write User>

  • MONGODB_APPLICATION_PASS=<DB READ/WRITE PASSWORD>

...

CustomAPI

i . If you are Upgrading KnowHOW update the bellow the env var only:

  • mongock.start-system-version = Your current version of knowhow installed.

  • mongock.end-system-version = The Version you want TO Upgrade to.

  • mongock.migration-scan-package=com.publicissapient.kpidashboard.apis.mongock.upgrade

  • versionnumber=<Version number you are Upgrading to>

ii. If you are installing for first time pass all the bellow values:

  • mongock.migration-scan-package=com.publicissapient.kpidashboard.apis.mongock.installation

  • mongock.end-system-version= <Knowhow version number which you want to install>

  • forgotPassword.uiHost=<DNS > (DNS of the Knowhow server without https://)

  • corsFilterValidOrigin=<DNS> (DNS of the Knowhow server without https://)

  • spring.data.mongodb.uri=<pass mongo db connection url in this format mongodb://<DB USER NAME>:<DB PASSWORD>@mongodb:27017/kpidashboard> Special char need to converted eg “@" is %40

  • aesEncryptionKey=<aesEncryptionKey>(this is the passphrase for generating AES key, this can not be changed during lifetime of application)
    (min lenght - 8, sample value - 7DLHllMii14pId0FSSwGWwtga5dckGHW)

  • auth.secret=<auth secret>(this the passphrase used to generate sign jwt token)
    (min length -4, sample value - C0GNAIDS8upDNnkE)

  • isRepoToolEnable= <true for repotool(developer tab) enable or false for repotool disable>

If you want to install Knowhow to authenticate and authorize users using SAML pass the bellow Vars:

  • auth.subDomainCookie= true

  • auth.domain= <auth service is on then added to parent domain>

  • auth.centralAuthBaseURL= https://<central Auth Backend DNS>

  • auth.resourceAPIKey= <resource api key for the Auth Service API used in Knowhow BE> You have to generate API Key - follow mention Steps Sample Value - BKQI07DExY6m0nblPSIYGCentral AUTH Service (required only when running central auth)

If you are installing knowhow along with SCM Processor pass this vars: i.e when isRepoToolEnable=true

  • exposed_api_key= < api key for the exposed kpi like repo tool, sample value:UvcP8HOTwcJVFR4DYVZZwwSh5p6dVue7DExY6m0nblPSIYGCl1K/c89oQMVD2nVqN1N443vkDofkROBFiHjDxw==> (required only when isRepoToolEnable=true)

  • repoToolAPIKey= follow this docs to generate Key RepoTool Setup

OPTIONAL CustomApi ENV VAR:

  • JAVA_OPTS= <set options for the Java Virtual Machine> This variable allows you to pass various parameters and configurations to the JVM, such as memory settings, system properties, garbage collection options, and more.

...

UI service

  • DNS_SSL=<Your IP/DNS address>

  • API_HOST=<customapi backed host>

  • API_PORT= <port of api>

  • AUTHENTICATION_SERVICE= <true for central authentication service or false local authentication>

  • CENTRAL_LOGIN_URL= < url of central authentication service (required only when AUTHENTICATION_SERVICE=true) >

...

Jira-Processor

  • spring.data.mongodb.uri=<pass mongo db connection url in this format “mongodb://<DB USER NAME>:<DB PASSWORD>@mongodb:27017/kpidashboard“>

  • aesEncryptionKey=<aesEncryptionKey>( same Key as defined in CustomAPI)

...

devops-processor

  • spring.data.mongodb.uri=<pass mongo db connection url in this format “mongodb://<DB USER NAME>:<DB PASSWORD>@mongodb:27017/kpidashboard“>

  • aesEncryptionKey=<aesEncryptionKey>(same Key as defined in CustomAPI)

...

azure-board-processor

  • spring.data.mongodb.uri=<pass mongo db connection url in this format “mongodb://<DB USER NAME>:<DB PASSWORD>@mongodb:27017/kpidashboard“>

  • aesEncryptionKey=<aesEncryptionKey>(same Key as defined in CustomAPI)

...

azure-pipeline-repo

  • spring.data.mongodb.uri=<pass mongo db connection url in this format “mongodb://<DB USER NAME>:<DB PASSWORD>@mongodb:27017/kpidashboard“>

  • aesEncryptionKey=<aesEncryptionKey>(same Key as defined in CustomAPI)

...

AuthnAuth Specific Variables: Use Only When Deploying Knowhow with Auth Application

Authdb:

  • POSTGRES_USER=<DB ROOT USER>(Specify the Postgres user name)

  • POSTGRES_PASSWORD=<DB ROOT PASSWORD>(Specify the Postgres user password)

  • POSTGRES_DB=authNauth

  • HOST=<Host IP> Pass the host IP when running as docker

...

authnauth:

  • auth.baseUrl=https://<Central auth UI DNS url>

  • auth.baseUiUrl=https://<Central auth UI DNS url>

  • auth.secret=<auth secret>(this should be same passphrase used to generate sign jwt token in customapi)

  • forgotPassword.uiHost=https://<Central auth UI DNS url>

  • auth.corsFilterValidOrigin=https://<Central auth UI DNS url>

  • spring.datasource.url=jdbc:postgresql://<Auth DB service/container name>:<Port>/authNauth

  • spring.datasource.username=authdb

  • spring.datasource.password= < postgres db passowrd>

  • spring.kafka.producer.bootstrap-servers= <kafka service/container name>

  • spring.kafka.consumer.bootstrap-servers= <kafka service/container name:port>

  • KAFKA_CFG_ZOOKEEPER_CONNECT= <zookeeper service/container name:port>

  • ZOO_SERVERS=<zookeeper service/container name:port>

  • flag.mailWithoutKafka= <true for the smtp or false for the kafka>

  • auth.domain= <Add to parent domain> example: tools.publicis.sapient.com

  • For SAML Integration SAML Integration Flow As per flow Update flow SAML details

  • auth.holdingEntityId= <SAML Entity ID>

  • auth.assertingEntityId = <SAML Url of the tenent ID>

  • auth.alias = <alias of the saml>

  • auth.samlLoginUrl= <login url saml>

...

authnauth-ui:

  • REACT_APP_DNS=https://<Central Auth UI Url>

  • DNS_SSL=https://<Central Auth UI Url>

  • REACT_APP_PSKnowHOW=https://< Knowhow UI Url>

...

SCM tool:

PostgreSQL config:

POSTGRES_USER=<Postgres user name>
POSTGRES_PASSWORD= <postgres db password>
POSTGRES_DB=debbie

Django config:

DEBUG=True
DEBUG_TOOLBAR=True
ALLOWED_HOSTS=*
DATABASE_URL= < postgres database url>
CORS_ORIGIN_WHITELIST=http://localhost < handling cors origin whitelist>

...