app.yaml

[engineDir]/configuration/reference/app.yaml

  1# yaml-language-server: $schema=https://json-schema.axonivy.com/app/11.3.1/app.json
  2#
  3# -------------------------------------------
  4# Axon Ivy Application Configuration
  5# -------------------------------------------
  6# 
  7# This file shows configurations of an Axon Ivy Engine application.
  8# https://developer.axonivy.com/doc/11.3/engine-guide/configuration/files/app-yaml.html
  9#
 10# By default applications are pre-configured to run without any dependencies.
 11# However in productive environments applications often interact with many 
 12# external system such a Mail Servers (SMTP) or Directory services (LDAP). 
 13# 
 14# Each application has its own '<APPNAME>/app.yaml' in the configuration directory.
 15# e.g. the corresponding file for the application 'MyApp' is 
 16# '[engineDir]/configuration/applications/MyApp/app.yaml'.
 17#
 18# Furthermore 'app.yaml' can be deployed as part of application zip in a 'config' folder.
 19# The deployed 'app.yaml' is installed in the application directory and has a lower
 20# priority than the '<APPNAME>/app.yaml' in the configuration directory.
 21# https://developer.axonivy.com/doc/11.3/engine-guide/deployment
 22#
 23# SECRETS / PASSWORDS:
 24# Any configuration value can be encrypted just by enclosing it with "${encrypt:}".
 25# * to encrypt the string myPassword write "${encrypt:myPassword}"
 26#   https://developer.axonivy.com/doc/11.3/engine-guide/configuration/advanced-configuration.html#passwords
 27#
 28# OVERRIDING:
 29# Any configuration value provided here can be set in alternative sources. 
 30# * environment variables: of the operating system can set app config entries. 
 31#    Their key must be prefixed with 'IVY_APPLICATIONS_MYAPP_'. 
 32#    E.g. use 'IVY_APPLICATIONS_MYAPP_SECURITYSYSTEM' to override the security system.
 33#    https://developer.axonivy.com/doc/11.3/engine-guide/configuration/advanced-configuration.html#overriding-configuration
 34#
 35
 36# The security system manages users and roles and must be referred by name.
 37# This setting is only evaluated at deployment time when the application not already exists!
 38# You can not change the security system of an application later on.
 39SecuritySystem: default
 40# Defines a project containing overriding SubProcesses, HtmlDialogs or CMS entries for a dependent project.
 41# This allows you to customize generic solutions with minimal effort.
 42# The overriding project must be declared in the format <group-id>:<project-id> (e.g. ch.ivyteam.ivy:overrideProject).
 43# These identifiers can be copied from the ivy project deployment definition (pom.xml).
 44# https://developer.axonivy.com/doc/11.3/designer-guide/how-to/overrides.html
 45OverrideProject: ""
 46Data:
 47  # Application folder where application files are stored. It overrides the root file folder setting.
 48  # A change in this setting will NOT automatically move existing application files to the new location, so you need to move files manually.
 49  # Absolute and relative (to the engine root directory) paths are supported.
 50  # If not set the files will be stored in an application specific directory underneath the root file folder.
 51  # [restart required] for existing apps
 52  FilesDirectory: ""
 53
 54StandardProcess:
 55  # Standard processes are a set of predefined processes, which you can customize in your ivy project.
 56  # To enable these custom processes, the library id of the ivy project must be specified here.
 57  # The library id is <group-id>:<project-id> from the ivy project deployment definition.
 58  # e.g the library id of the portal template is "ch.ivyteam.ivy.project.portal:portalTemplate"
 59  # The default is 'auto' which means auto detection of standard process in your application
 60  # https://developer.axonivy.com/doc/11.3/designer-guide/user-interface/default-pages
 61  DefaultPages: auto
 62
 63Jsf:
 64  # JSF Primefaces Theme that is used by HTML Dialogs
 65  # Standard themes:
 66  # vela, saga, arya
 67  # Freya themes:
 68  # freya-ivy-light, freya-ivy-dark
 69  # Deprecated themes:
 70  # serenity-ivy, serenity-amber, serenity-blue, serenity-bluegrey, serenity-brown, serenity-cyan, serenity-deeporange, serenity-deeppurple,
 71  # serenity-green, serenity-grey, serenity-indigo, serenity-lightblue, serenity-lightgreen, serenity-lime, serenity-orange,
 72  # serenity-pink, serenity-purple, serenity-teal, serenity-yellow,
 73  # luna-amber, luna-blue, luna-green, luna-pink, nova-colored, nova-dark, nova-light
 74  # This configuration has no effect if theme is specified in the xhtml template.
 75  # https://developer.axonivy.com/doc/11.3/designer-guide/user-interface/user-dialogs/html-dialog-themes.html
 76  primefaces.theme: freya-ivy-light
 77
 78# Databases are defined in ivy projects with a name.
 79# Connection details from those databases can be overridden by addressing the database by name.
 80Databases:
 81#  # example Database
 82#  exampleDatabase:
 83#    # JDBC Url to use for connections. E.g. 'jdbc:{vendor}://{host}:{port}/{dbName}'
 84#    Url: ""
 85#    # JDBC driver Name: e.g. 'org.postgresql.Driver'
 86#    Driver: ""
 87#    # Reference to a custom image. E.g. 'res:/webContent/myIcon.png'
 88#    Icon: ""
 89#    UserName: ""
 90#    # Secret password, should be stored encrypted. Encrypted values have a ${decrypt:} prefix
 91#    # [password]
 92#    Password: ""
 93#    MaxConnections:
 94#    # Driver specific custom properties
 95#    Properties:
 96#  
 97
 98# Rest Clients are defined in ivy projects with a name.
 99# Any configuration from those clients can be overridden by addressing the client by name.
100RestClients:
101#  # example ConfigurableRestClient
102#  exampleConfigurableRestClient:
103#    Url: ""
104#    # Full qualified class names, that contribute REST-client features, such as authentication.
105#    # [examples: ch.ivyteam.ivy.rest.client.mapper.JsonFeature, ch.ivyteam.ivy.rest.client.authentication.HttpBasicAuthenticationFeature]
106#    Features:
107#    # Properties that supply dynamic values for REST-client features.
108#    Properties:
109#  
110
111# Web Service Clients are defined in ivy projects with a name.
112# Any configuration from those clients can be overridden by addressing the client with its name.
113WebServiceClients:
114#  # example ConfigurableWsClient
115#  exampleConfigurableWsClient:
116#    # Full qualified class names, that contribute WS-client call features, such as authentication.
117#    Features:
118#    # Properties that supply dynamic values for WS-client features.
119#    Properties:
120#    # Endpoint names, to URIs
121#    # [examples: myPort: - https://myCustomProdHost/hr/employee/soap]
122#    Endpoints:
123#  
124
125# Currently active business calendar for this application.
126BusinessCalendar: ""
127# Business calendars are organized as trees, with one root / default calendar and an arbitrary number of child calendars.
128# Child business calendars inherit the values of their parent. A parent can be the root calendar or any child calendar.
129# 
130# At least one root calendar needs to be defined. If non is configured, a root / default calendar will be created automatically
131# with following default values:
132# - Parent is empty
133# - First day of week is: Monday
134# - Working times are: 'morning: 8:00 - 12:00' and 'afternoon: 13:00 - 17:00'
135# 
136# You can reference a business calendars in a ivy projects by its name. E.g ivy.cal.get("myRootBusinessCalendar")
137# https://developer.axonivy.com/doc/11.3/engine-guide/configuration/advanced-configuration.html#business-calendar
138BusinessCalendars:
139#  # example BusinessCalendar
140#  exampleBusinessCalendar:
141#    # First day of the week.
142#    # If empty or not existing the parent calendar's value is inherited.
143#    # If not defined by any parent the value is retrieved from the current locale settings
144#    # [enum: monday, tuesday, wednesday, thursday, friday, saturday, sunday]
145#    FirstDayOfWeek: ""
146#    # Name-value pairs of non-working days.
147#    # 
148#    # Yearly days:
149#    # Recurring non-working days during a year, falling on the same date, e.g. Jan. 1 or Christmas.
150#    # Format: MM-dd, e.g. 01-01 (New Year), 12-25 (Christmas Day)
151#    # 
152#    # Relative Easter Days:
153#    # Recurring non-working days relative to Easter Sunday, e.g. Good Friday or Pentecost.
154#    # Format (case insensitive): easter +/- Number, e.g. 'easter - 2' (Good Friday), 'easter + 50' (Pentecost Monday)
155#    # 
156#    # Fixed Dates:
157#    # Once-off non-working days, e.g. a company celebration day or a special local public holiday.
158#    # Format: YYYY-MM-dd
159#    # [examples: "New Year": 01-01, "Christmas Day": 12-25, "Good Friday": easter - 2, "Easter Monday": easter + 1, "Pentecost Monday": easter + 50, "50 Years Ivyteam": 2043-04-07]
160#    FreeDays:
161#      # End of days that are always off
162#      # [enum: monday, tuesday, wednesday, thursday, friday, saturday, sunday]
163#      # [examples: sunday]
164#      WeekendEnd: ""
165#      # Start of days that are always off
166#      # [enum: monday, tuesday, wednesday, thursday, friday, saturday, sunday]
167#      # [examples: saturday]
168#      WeekendStart: ""
169#    
170#    # Name of the parent business calendar.
171#    # If empty or not existing this business calendar will be the root calendar for this application.
172#    # Only one root calendar is allowed.
173#    Parent:
174#    # Name-value pairs of working times during a business day.
175#    # At least one working time needs to be defined here or in any of the parents for business calendar calculations to work.
176#    # 
177#    # Warning: Ensure that your working times in your calendar tree do not overlap.
178#    # Otherwise the business calendar calculations may not work correctly!
179#    # 
180#    # Value format is : HH:mm-HH:mm
181#    # [examples: myMorning: 8:00-12:00, myAfternoon: 13:00-17:00]
182#    WorkingTimes:
183#  
184
185# Variables are defined in ivy projects.
186# All of them can be overridden.
187# [examples: myVar: myValue]
188Variables: