Access a system defined environment variable in angular js (grunt) - javascript

I am new to angular js . I am using grunt file . So, Here, In java we set environment variables and the use it like System.getEnv("") . Now , I have defined a system environment variable and I want to have that in the angular application code for some operation . How can I access that variable in the angular application code ? Or in the grunt file and then how to use it in the controller? thanks for the help.

Grunt uses Node so you can access environment vars with process.env.[your var name].
Since Angular runs in the client there are no system vars.

Related

Is it possible to get project name via global variable in node.js?

Currently I use two global variables (__filename, __dirname) of node.js. Now in my code I need to get the name of the project. Is it possible to get via node.js global variable? Note: I can't directly import package.json as this is a browser application with webpack.

Read environment variables outside of next js

I am using next js as the basis for my application. My environment variables work as long as they are read within the scope of next js but I need to use them inside a script that does not use next js.
With dotenv we can do the following:
require('dotenv').config();
Which parses the environment config files and allows you to get the variables from process.env.
Because I am using next js I would prefer to use their environment variable implementation instead of adding a second way to store environment variables.
Is there an equivalent of require('dotenv').config(); for next js or another way to load the environment variables outside the scope of next js?
Ok I went into the git repo of next js and found a way to do it.
You have to install #next/env and then run require('#next/env').loadEnvConfig('./');

Setting global variables based on Node.js CLI arguments

I created a CLI in node.js. For each command the user passes in command line arguments such as environment and tenant. I want to set variables that can be accessed by any other file in the application.
I am using yargs so each one of my CLI commands takes in arguments and calls a function. Before calling the function I would like to set some global variables that the rest of the js files will use.
I realized I can use environment variables for this since you can set them in the code as well.

Use env variables with BitBucket

Stuck with Bitbucket pipelines.
In my code i have some secret info
apiKey: process.env.apiKey,
authDomain: process.env.authDomain
But bitbucket pipeline during build can't access them.
Have set up variables via Bitbucket Env variables UI
In yml file i can access variables via $Variable, but how to do this with code?
Thanks
You can set up environment variables in Bitbucket, and access them via $variableName in the YAML build file.
Bitbucket uses the environment variables recorded in Bitbucket when running your build pipeline. But it only does this inside your YAML build file. It won't do anything with environment variables referenced in the rest of your code.
For the rest of your codebase, environment variables are worked out on the hosting server at runtime. So if you use environment variables elsewhere in your code (e.g. in your app.js), you need to configure these in your hosting environment.
This should provide more context for your use case - bitbucket docummentation
Create the environment variable in your env file
use $ENV_NAME to access your specified variable

Hiding Google API Key in Heroku using Rails

I am a newbie in Heroku. How do you hide your API key in the Heroku? I know from the documentation I can use config vars
https://devcenter.heroku.com/articles/config-vars
But how do I load the config from JavaScript?
What I want to do is something like this
https://developers.google.com/maps/documentation/javascript/tutorial
I'm using Ruby on Rails for my application.
A great way to use API keys without committing them into your code is to use environment variables. These are variables set in the shell of the system you're using to serve your Rails app that can be referenced in the code. On Heroku, you will set an environment variable differently than on a standard Linux server.
First, in your Rails app, you would insert the value of an environment variable like this: ENV["MY_API_KEY"]
Stick that wherever you're needing to put your API key in the Rails app, then set the environment variable with your API key in this Heroku command: heroku config:set MY_API_KEY=some_long_example_api_key_09823098270098
Now in your Rails app when you use ENV["MY_API_KEY"] it will insert in place the value some_long_example_api_key_09823098270098 when your app is running on Heroku.
If you're trying to reference the environment variable within a .js.erb file you would need to write it as <%= ENV["MY_API_KEY"] %>
Heroku documentation

Categories