diff --git a/docs/8.0/ayanova/docs/ops-config-backup-pgdump-path.md b/docs/8.0/ayanova/docs/ops-config-backup-pgdump-path.md index e0bdf002..329f2ec1 100644 --- a/docs/8.0/ayanova/docs/ops-config-backup-pgdump-path.md +++ b/docs/8.0/ayanova/docs/ops-config-backup-pgdump-path.md @@ -10,12 +10,21 @@ If no override is specified AyaNova will assume the utility is on the environmen ## Overriding -AyaNova expects the pg_dump utility path to be provided by an environment variable or command line parameter named +AyaNova expects the pg_dump utility path to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_BACKUP_PG_DUMP_PATH` The value specified should be a string containing a fully qualified file path to the pg_dump utility. +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_BACKUP_PG_DUMP_PATH": "/usr/lib/postgresql/14.1/bin/" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_BACKUP_PG_DUMP_PATH="/usr/lib/postgresql/14.1/bin/"` (not real) @@ -29,5 +38,3 @@ Windows Linux / MAC `export AYANOVA_BACKUP_PG_DUMP_PATH="/usr/lib/postgresql/14.1/bin/"` (not real) - - diff --git a/docs/8.0/ayanova/docs/ops-config-data-path.md b/docs/8.0/ayanova/docs/ops-config-data-path.md index e3fd503a..801005cc 100644 --- a/docs/8.0/ayanova/docs/ops-config-data-path.md +++ b/docs/8.0/ayanova/docs/ops-config-data-path.md @@ -9,24 +9,32 @@ All data path configurations default to a location under the location specified - AYANOVA_TEMP_FILES_PATH defaults to 'temp' folder inside AYANOVA_DATA_PATH - AYANOVA_LOG_PATH defaults to 'logs' folder inside AYANOVA_DATA_PATH - ## Override individual locations Each of the path related configuration settings can also be specified individually, any that are left out will default to the above settings. ## Default -On Windows computers that use the installer, the default location for this setting is set by the installer the 'ProgramData' folder. There is no default for other operating systems or manual installations. +On Windows computers that use the installer, the default location for this setting is set by the installer the 'ProgramData' folder. There is no default for other operating systems or manual installations. ## Overriding -AyaNova expects the data path to be provided by an environment variable or command line parameter named +AyaNova expects the data path to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_DATA_PATH` The value specified should be a string containing a fully qualified file path for the platform, for example: `c:\ProgramData\ayanova` +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_DATA_PATH": "c:\ProgramData\ayanova" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_DATA_PATH="/var/lib/ayanova"` @@ -40,5 +48,3 @@ Windows Linux / MAC `export AYANOVA_DATA_PATH="/var/lib/ayanova"` - - diff --git a/docs/8.0/ayanova/docs/ops-config-db.md b/docs/8.0/ayanova/docs/ops-config-db.md index 4c1f24b1..0e239932 100644 --- a/docs/8.0/ayanova/docs/ops-config-db.md +++ b/docs/8.0/ayanova/docs/ops-config-db.md @@ -8,10 +8,19 @@ If no connection string is specified AyaNova will use a default value: "Server=l ## Setting the connection string -AyaNova expects the connection string to be provided by an environment variable or command line parameter named: +AyaNova expects the connection string to be provided by a config.json property, environment variable or command line parameter named: `AYANOVA_DB_CONNECTION` +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_DB_CONNECTION": "Server=192.168.1.56;Database=MyAyaNovaDB;" +} +``` + Example command line parameter: `ayanova.exe --AYANOVA_DB_CONNECTION="Server=localhost;Database=MyAyaNovaDB;"` @@ -26,7 +35,6 @@ Linux: `export AYANOVA_DB_CONNECTION="Server=localhost;Database=MyAyaNovaDB;"` - ## Default database If no default database is specified AyaNova will use the default value: "AyaNova". @@ -35,4 +43,4 @@ If no default database is specified AyaNova will use the default value: "AyaNova There are optional connection string parameters available for use with PostgreSQL to control many aspects of the PostgreSQL connection including timeouts, the type of security protocols used etc. -Available connection string parameters to be used with AyaNova are documented on the Npgsql [Connection String Parameters](https://www.npgsql.org/doc/connection-string-parameters.html) page. (Npgsql is the data provider programming library AyaNova uses to communicate with PostgreSQL) \ No newline at end of file +Available connection string parameters to be used with AyaNova are documented on the Npgsql [Connection String Parameters](https://www.npgsql.org/doc/connection-string-parameters.html) page. (Npgsql is the data provider programming library AyaNova uses to communicate with PostgreSQL) diff --git a/docs/8.0/ayanova/docs/ops-config-default-translation.md b/docs/8.0/ayanova/docs/ops-config-default-translation.md index 2005ce0e..50d969d1 100644 --- a/docs/8.0/ayanova/docs/ops-config-default-translation.md +++ b/docs/8.0/ayanova/docs/ops-config-default-translation.md @@ -17,12 +17,12 @@ You can use the ISO two letter country code or the English name of the language Valid settings: -| TRANSLATION | VALID SETTINGS | -| ----- | ------------------------------ | -| English | "en", "English" | -| French | "fr", "French", "Français" | -| German | "de", "German", "Deutsch" | -| Spanish | "es", "Spanish", "Español" | +| TRANSLATION | VALID SETTINGS | +| ----------- | -------------------------- | +| English | "en", "English" | +| French | "fr", "French", "Français" | +| German | "de", "German", "Deutsch" | +| Spanish | "es", "Spanish", "Español" | ## Custom language values @@ -30,7 +30,7 @@ AyaNova allows for customized languages and this setting should be the exact nam ## Setting -AyaNova expects the language setting to be provided by an environment variable or command line parameter named +AyaNova expects the language setting to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_DEFAULT_TRANSLATION` @@ -39,6 +39,15 @@ The value specified should be a string containing one of the stock valid setting or `AcmeWidgetsCustomTranslation` +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_DEFAULT_TRANSLATION": "en" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_DEFAULT_TRANSLATION="ES"` @@ -52,5 +61,3 @@ Windows Linux / MAC `export AYANOVA_DEFAULT_TRANSLATION="MyCustomTranslation"` - - diff --git a/docs/8.0/ayanova/docs/ops-config-folder-backup-files.md b/docs/8.0/ayanova/docs/ops-config-folder-backup-files.md index efc185b2..14d6d7c6 100644 --- a/docs/8.0/ayanova/docs/ops-config-folder-backup-files.md +++ b/docs/8.0/ayanova/docs/ops-config-folder-backup-files.md @@ -10,13 +10,22 @@ If no override is specified AyaNova will store backup files in a `backup` folder ## Overriding -AyaNova expects the backup files folder path to be provided by an environment variable or command line parameter named +AyaNova expects the backup files folder path to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_BACKUP_FILES_PATH` The value specified should be a string containing a fully qualified file path for the platform, for example: `c:\ProgramData\ayanova\backupfiles` +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_BACKUP_FILES_PATH": "c:\ProgramData\ayanova\backupfiles" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_BACKUP_FILES_PATH="/var/lib/ayanova/backupfiles"` @@ -30,5 +39,3 @@ Windows Linux / MAC `export AYANOVA_BACKUP_FILES_PATH="/var/lib/ayanova/backupfiles"` - - diff --git a/docs/8.0/ayanova/docs/ops-config-folder-temporary-files.md b/docs/8.0/ayanova/docs/ops-config-folder-temporary-files.md index 902d0580..430c652c 100644 --- a/docs/8.0/ayanova/docs/ops-config-folder-temporary-files.md +++ b/docs/8.0/ayanova/docs/ops-config-folder-temporary-files.md @@ -10,13 +10,22 @@ If no override is specified AyaNova will store temporary files in a `tempfiles` ## Overriding -AyaNova expects the temporary files folder path to be provided by an environment variable or command line parameter named +AyaNova expects the temporary files folder path to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_TEMP_FILES_PATH` The value specified should be a string containing a fully qualified file path for the platform, for example: `c:\ProgramData\ayanova\tempfiles` +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_TEMP_FILES_PATH": "c:\ProgramData\ayanova\tempfiles" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_TEMP_FILES_PATH="/var/lib/ayanova/tempfiles"` @@ -30,5 +39,3 @@ Windows Linux / MAC `export AYANOVA_TEMP_FILES_PATH="/var/lib/ayanova/tempfiles"` - - diff --git a/docs/8.0/ayanova/docs/ops-config-folder-user-files.md b/docs/8.0/ayanova/docs/ops-config-folder-user-files.md index 8fafa6c2..c993a925 100644 --- a/docs/8.0/ayanova/docs/ops-config-folder-user-files.md +++ b/docs/8.0/ayanova/docs/ops-config-folder-user-files.md @@ -3,7 +3,7 @@ This setting controls where AyaNova stores user uploaded files used by features that allow file attachment or uploads. AyaNova stores these files with random names in the folder specified. -Warning: this folder MUST NOT be the same location set for [AYANOVA_BACKUP_FILES_PATH](ops-config-folder-backup-files.md) or [AYANOVA_TEMP_FILES_PATH](ops-config-folder-temporary-files.md) or AyaNova will not start. +Warning: this folder MUST NOT be the same location set for [AYANOVA_BACKUP_FILES_PATH](ops-config-folder-backup-files.md) or [AYANOVA_TEMP_FILES_PATH](ops-config-folder-temporary-files.md) or AyaNova will not start. ## Default @@ -11,13 +11,22 @@ If no override is specified AyaNova will store user files in a `attachments` fol ## Overriding -AyaNova expects the user files folder path to be provided by an environment variable or command line parameter named +AyaNova expects the user files folder path to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_ATTACHMENT_FILES_PATH` The value specified should be a string containing a fully qualified file path for the platform, for example: `c:\ProgramData\ayanova\attachments` +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_ATTACHMENT_FILES_PATH": "c:\ProgramData\ayanova\attachments" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_ATTACHMENT_FILES_PATH="/var/lib/ayanova/attachments"` @@ -31,5 +40,3 @@ Windows Linux / MAC `export AYANOVA_ATTACHMENT_FILES_PATH="/var/lib/ayanova/attachments"` - - diff --git a/docs/8.0/ayanova/docs/ops-config-jwt-secret.md b/docs/8.0/ayanova/docs/ops-config-jwt-secret.md index f82f5d42..9369b596 100644 --- a/docs/8.0/ayanova/docs/ops-config-jwt-secret.md +++ b/docs/8.0/ayanova/docs/ops-config-jwt-secret.md @@ -2,7 +2,8 @@ AyaNova uses JSON Web Tokens (JWT) for authentication. -These time limited tokens are signed by the server using a secret key and issued to users when they log in to the AyaNova server. +These time limited tokens are signed by the server using a JWT secret key combined with a site specific identifier and issued to users when they log in to the AyaNova server. + Every time the user makes a request to the server the JWT is sent along as well and verified to be valid. Tokens have a built in expiry mechanism of 5 days from issue. @@ -19,7 +20,7 @@ If you would like to ensure that a server reboot does not affect remote users cr ## Overriding -AyaNova expects the JWT secret to be provided by an environment variable or command line parameter named +AyaNova expects the JWT secret to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_JWT_SECRET` @@ -29,6 +30,15 @@ If fewer than 32 characters are provided they secret will be padded out to 32 ch You should use the same precautions as for choosing any other password and ensure the secret is not well known or easily looked up in a dictionary. 32 random characters would be sufficient. +Example config.json entry + +```json +{ + ...other properties... + "AYANOVA_JWT_SECRET": "My32CharacterSecretKey0123456789" +} +``` + Example command line parameter `ayanova.exe --AYANOVA_JWT_SECRET="02847This_is_my_secret_key456576"` diff --git a/docs/8.0/ayanova/docs/ops-config-report-render-browser-path.md b/docs/8.0/ayanova/docs/ops-config-report-render-browser-path.md index 58a647e2..9197c00a 100644 --- a/docs/8.0/ayanova/docs/ops-config-report-render-browser-path.md +++ b/docs/8.0/ayanova/docs/ops-config-report-render-browser-path.md @@ -12,7 +12,7 @@ Default is empty / not set. ## Overriding -AyaNova expects the report rendering browser path to be provided by an environment variable or command line parameter named +AyaNova expects the report rendering browser path to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_REPORT_RENDER_BROWSER_PATH` diff --git a/docs/8.0/ayanova/docs/ops-config-report-rendering-max-instances.md b/docs/8.0/ayanova/docs/ops-config-report-rendering-max-instances.md index 96166eb4..4751cf87 100644 --- a/docs/8.0/ayanova/docs/ops-config-report-rendering-max-instances.md +++ b/docs/8.0/ayanova/docs/ops-config-report-rendering-max-instances.md @@ -31,7 +31,7 @@ Specifying a value less than 1 will be automatically changed to 1 as the minimum ## Overriding -AyaNova expects this value to be provided by an environment variable or command line parameter named +AyaNova expects this value to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_REPORT_RENDERING_MAX_INSTANCES` diff --git a/docs/8.0/ayanova/docs/ops-config-report-rendering-timeout.md b/docs/8.0/ayanova/docs/ops-config-report-rendering-timeout.md index c7e140dd..58238456 100644 --- a/docs/8.0/ayanova/docs/ops-config-report-rendering-timeout.md +++ b/docs/8.0/ayanova/docs/ops-config-report-rendering-timeout.md @@ -32,7 +32,7 @@ Specifying a value less than 1 second (1000) will be automatically changed to 10 ## Overriding -AyaNova expects this value to be provided by an environment variable or command line parameter named +AyaNova expects this value to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_REPORT_RENDERING_TIMEOUT` diff --git a/docs/8.0/ayanova/docs/ops-config-set-superuser-pw.md b/docs/8.0/ayanova/docs/ops-config-set-superuser-pw.md index 9b8d59dc..6e6ace75 100644 --- a/docs/8.0/ayanova/docs/ops-config-set-superuser-pw.md +++ b/docs/8.0/ayanova/docs/ops-config-set-superuser-pw.md @@ -10,7 +10,7 @@ This setting is not used by default. ## Overriding -AyaNova expects the override password to be provided by an environment variable or command line parameter named: +AyaNova expects the override password to be provided by a config.json property, environment variable or command line parameter named: `AYANOVA_SET_SUPERUSER_PW` diff --git a/docs/8.0/ayanova/docs/ops-config-use-urls.md b/docs/8.0/ayanova/docs/ops-config-use-urls.md index b8afbc9e..90ce0075 100644 --- a/docs/8.0/ayanova/docs/ops-config-use-urls.md +++ b/docs/8.0/ayanova/docs/ops-config-use-urls.md @@ -12,7 +12,7 @@ This means AyaNova will listen on port 7575 ## Overriding -AyaNova expects the PORT and URL to be provided by an environment variable or command line parameter named +AyaNova expects the PORT and URL to be provided by a config.json property, environment variable or command line parameter named `AYANOVA_USE_URLS` diff --git a/docs/8.0/ayanova/docs/ops-install-linux-server.md b/docs/8.0/ayanova/docs/ops-install-linux-server.md index 50feebc6..4b20d49d 100644 --- a/docs/8.0/ayanova/docs/ops-install-linux-server.md +++ b/docs/8.0/ayanova/docs/ops-install-linux-server.md @@ -163,11 +163,21 @@ The AyaNova bin folder has a `config.json` file which is AyaNova's initial sourc } ``` -The `AYANOVA_DB_CONNECTION` property must be edited and where it has "YOUR_PASSWORD_HERE" substitute the actual PostgreSQL password to be used that was previously set. If the database server is located on a different computer then the `Server=` connection string property must be set to the address of that computer. +The [AYANOVA_DB_CONNECTION](ops-config-db.md) property must be edited and where it has "YOUR_PASSWORD_HERE" substitute the actual PostgreSQL password to be used that was previously set. If the database server is located on a different computer then the `Server=` connection string property must be set to the address of that computer. -The `AYANOVA_USE_URLS` property specifies which TCP / IP Port that AyaNova server should listen on for connections from web browsers. The default value is port 7575 which should be free in most cases, however if you need to use an alternate port due to conflict it must be set here. We recommend using the default 7575 to avoid current or future confusion or conflict with other servers that may be installed or present elsewhere on the network. +The [AYANOVA_USE_URLS](ops-config-use-urls.md) property specifies which TCP / IP Port that AyaNova server should listen on for connections from web browsers. The default value is port 7575 which should be free in most cases, however if you need to use an alternate port due to conflict it must be set here. We recommend using the default 7575 to avoid current or future confusion or conflict with other servers that may be installed or present elsewhere on the network. -The `AYANOVA_REPORT_RENDER_BROWSER_PATH` property specifies the path to the Chromium browser previously installed. The default path _may_ need to be changed if reports do not render and Chromium can not be found at the default location. +The [AYANOVA_REPORT_RENDER_BROWSER_PATH](ops-config-report-render-browser-path.md) property specifies the path to the Chromium browser previously installed. The default path _may_ need to be changed if reports do not render and Chromium can not be found at the default location. + +Optional but recommended: Add a 32 character [AYANOVA_JWT_SECRET](ops-config-jwt-secret.md) property to the configuration if you want to ensure that logged in User's session can survive a restart of the AyaNova server. If this is not set AyaNova will invalidate all login tokens when the server restarts. + +```json +{ + ...existing properties, don't forget the comma... + "AYANOVA_LOG_LEVEL": "Info", + "AYANOVA_JWT_SECRET": "1111111MyRandom32CharacterSecret" +} +``` Edit the config.json file in your favorite editor, here we'll use Nano: