You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+30-28Lines changed: 30 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,25 +1,25 @@
1
1
# APIM Environmentalization
2
2
3
-
Axway APIM supports environmentalization through Configuration Studio and envSettings.props file, it does partially support environment variables.
3
+
Axway APIM supports environmentalization through Configuration Studio and envSettings.props file, it does partially support environment variables.
4
4
5
-
Main objective of the project is to support environmentalization for EMT ( externally managed topology ) to reuse the container in upstream environments ( QA, Production, etc..). The same approach could be used for classic deployment as well.
5
+
Main objective of the project is to support environmentalization for EMT ( externally managed topology ) to reuse the container in upstream environments ( QA, Production, etc..). The same approach could be used for classic deployment as well.
6
6
7
7
List of supported environment listed in EMT ( externally managed topology ) - [APIM Runtime Parameters](https://docs.axway.com/bundle/axway-open-docs/page/docs/apim_installation/apigw_containers/container_env_variables/index.html)
8
8
9
-
Environment variables should be prefixed with **environment** for APIM. The **environment** prefix could be used in most of the filters and connections, [ Refer database connection environment prefix Usage](#database-environmentalization-example-with-environment-prefix).
9
+
Environment variables should be prefixed with **environment** for APIM. The **environment** prefix could be used in most of the filters and connections, [ Refer database connection environment prefix Usage](#database-environmentalization-example-with-environment-prefix).
10
10
11
11
## Advantages of using environment variables
12
12
13
-
- Securly store credentilas (password and certificate) using Kubernetes secrets.
13
+
- Securly store credentilas (password and certificate) using Kubernetes secrets.
14
14
- Adhere to The Twelve-Factor App rule **Store config in the environment** - https://12factor.net/config
15
15
16
16
17
-
## Database Environmentalization example with **environment** prefix.
17
+
## Database Environmentalization example with **environment** prefix.
18
18
- Database connection URL is environmentalized with environment variable db_url
19
19
20
20

21
21
22
-
- Database password should use the option Wildcard Password for environmentalization
22
+
- Database password should use the option Wildcard Password for environmentalization
23
23
24
24
#### Environmentalization Classic APIM example
25
25
**Remove "environment" prefix when referening environment variable**
@@ -65,9 +65,11 @@ environment:
65
65
|smtp_manager_password|SMTP Server|Enables environmentalization of API manager SMTP and Alert Email **Password** field|
66
66
|smtp_manager_username|SMTP Server|Enables environmentalization of API manager SMTP and Alert Email **Username** field|
67
67
|smtp_manager_url|SMTP Server|Enables environmentalization of API manager SMTP and Alert Email **SMTP Server Hostname** field|
68
+
|smtp_manager_connectionType|SMTP Server|Enables environmentalization of API manager SMTP and Alert Email **SMTP Connection Connection Security** field, possible values ** NONE, SSL, TLS**, default value **NONE**|
68
69
|smtp_servername_password|SMTP Server|Enables environmentalization of **Password** field|
69
70
|smtp_servername_username|SMTP Server|Enables environmentalization of **Username** field|
70
71
|smtp_servername_url|SMTP Server|Enables environmentalization of **SMTP Server Hostname** field|
72
+
|smtp_servername_connectionType|SMTP Server|Enables environmentalization of **SMTP Server Connection Security** field, possible values ** NONE, SSL, TLS**, default value **NONE**|
71
73
|httpbasic_profilename_password|Client Authentication - Http Basic|Enables environmentalization of **Password** field|
72
74
|disablehttps_portname|Client Authentication - Http Basic|Disables HTTPS Listener Interface, possible values true and false|
73
75
|disablehttp_portname|Client Authentication - Http Basic|Disables HTTP Listener Interface, possible values true and false|
@@ -81,7 +83,7 @@ environment:
81
83
82
84
### Example
83
85
84
-
LDAP Connections, JMS, SMTP does not support environment variables.
86
+
LDAP Connections, JMS, SMTP does not support environment variables.
85
87
86
88
For example LDAP environment variable follows a format **ldap_axway_username**
This project uses **Loadable module** feature to support environmentalization [Refer Java interfaces for extending API Gateway for more information](https://docs.axway.com/bundle/axway-open-docs/page/docs/apigtw_devguide/java_extend_gateway/index.html).
295
+
This project uses **Loadable module** feature to support environmentalization [Refer Java interfaces for extending API Gateway for more information](https://docs.axway.com/bundle/axway-open-docs/page/docs/apigtw_devguide/java_extend_gateway/index.html).
294
296
295
297
296
298
### Build the project
@@ -320,21 +322,21 @@ $mvn clean install
320
322
### Add Loadable Module to EMT Container
321
323
322
324
- Import Loadable Module
323
-
Open Policystudio, Navigate to menu File -> Import -> Import Custom filters, select apim-policy-password-cert-env/src/main/resources/typeSet.xml. It will add Loadable module to entity store.
324
-
325
+
Open Policystudio, Navigate to menu File -> Import -> Import Custom filters, select apim-policy-password-cert-env/src/main/resources/typeSet.xml. It will add Loadable module to entity store.
326
+
325
327
- Export fed file ( e.g container_env.fed) to build container
326
-
327
-
- Build a container merge directory ( **--merge-dir** ) option
328
328
329
-
- The merge directory must be called apigateway and must have the same directory structure as in an API Gateway installation.
330
-
- Copy the JAR file to a new directory /Users/axway/APIM/apigw-emt-scripts-2.1.0-SNAPSHOT/apigateway/ext/lib/ and specify /Users/axway/APIM/apigw-emt-scripts-2.1.0-SNAPSHOT/apigateway to the --merge-dir option.
331
-
329
+
- Build a container merge directory ( **--merge-dir** ) option
330
+
331
+
- The merge directory must be called apigateway and must have the same directory structure as in an API Gateway installation.
332
+
- Copy the JAR file to a new directory /Users/axway/APIM/apigw-emt-scripts-2.1.0-SNAPSHOT/apigateway/ext/lib/ and specify /Users/axway/APIM/apigw-emt-scripts-2.1.0-SNAPSHOT/apigateway to the --merge-dir option.
Please read [Contributing.md](https://github.com/Axway-API-Management-Plus/Common/blob/master/Contributing.md) for details on our code of conduct, and the process for submitting pull requests to us.
356
358
Also please read this page on [how to contribute](https://github.com/Axway-API-Management-Plus/apimanager-swagger-promote/wiki/7.1-Contribute-to-this-project) to this project.
0 commit comments