Comments (3)
This isn't a problem with the js-pdk, so I'm closing this issue.
I found this issue: Kong/kong#6149 where someone said
Environment variables are cleared in the server worker processes by default — this means they are not visible either by Go or Lua plugins.
But you can enable them explicitly using Nginx's env directive. For example, to expose the PATH variable, you can start kong with the following environment variable KONG_NGINX_MAIN_ENV=PATH, and Kong will inject the env directive in Nginx's main configuration section with the value PATH, and that variable should be visible from both Go and Lua.
Exposing the env variables using KONG_NGINX_MAIN_ENV
made them visible to my js plugin.
In a lua plugin I wrote we were using environment variables, which is why I thought this was specific to the js pdk, but I was accessing them using the resty.env
package, which must have been doing something special under the hood.
from kong-js-pdk.
Exposing the env variables using
KONG_NGINX_MAIN_ENV
made them visible to my js plugin.
@oremut I tried same but not getting in process.env can you please share how to access
from kong-js-pdk.
@sinalkar We are using Helm to deploy Kong in Kubernetes. In my values.yaml
file I have NGINX_MAIN_ENV: KONG_REDIS_AUTH_PASSWORD
. This gives me access to the env var named KONG_REDIS_AUTH_PASSWORD
in my JS plugin. In the JS plugin I can access the env var with:
const process = require('process');
const password = process.env.KONG_REDIS_AUTH_PASSWORD;
If you need to expose more than one env variable you can do it like this in your values file:
NGINX_MAIN_ENV: KONG_REDIS_AUTH_PASSWORD; env ANOTHER_ENV_VAR; env YET_ANOTHER_ENV_VAR;
from kong-js-pdk.
Related Issues (20)
- How to convert the response obtained from getRawBody() to a readable format ? HOT 2
- package.json no longer includes files for plugin_test.js HOT 1
- Incorrect assignment of mocked log functions in plugin_test.js
- Server tries to load all files in the folder as a plugin and fails to start HOT 3
- Problem reading gzipped kong.service.response.get_raw_body() HOT 11
- Modifying response body (no body_filter phase?) HOT 3
- Question: How to wrote Unit tests using plugin_test.js HOT 1
- How to cache stuff? HOT 1
- Issues running tests HOT 4
- Question: How to see plugin error inside docker container logs HOT 2
- Missing plugin socket HOT 2
- Critical severity alert on msgpack dependency HOT 2
- Accessing Binary Files in plugin HOT 3
- How to add X-Kong-Upstream-Status header to response HOT 4
- Share Data between Plugins in Kong JS PDK HOT 2
- How to set no_consumer flag with kong-js-pdk Schema HOT 4
- Reference to a incorrect module functions HOT 3
- Kong unable to load js plugin HOT 10
- Simplify Module Loading HOT 7
- Plugin Test Case - Cannot use import statement outside a module error HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kong-js-pdk.