@byu-oit/dottfvars

Loads environment variables from a .tfvars or .tfvars.json file into process.env

Usage no npm install needed!

<script type="module">
  import byuOitDottfvars from 'https://cdn.skypack.dev/@byu-oit/dottfvars';
</script>

README

dottfvars

Parses a .tfvars or .tfvars.json file and adds the key value pairs to the node environment variables (process.env). This module is intended to be used in conjunction with the env-var module.

Install

Published on GPR and NPM.

npm i @byu-oit/dottfvars

Usage

from

Add contents of a tfvars file to process.env. The contents of process.env will not be overwritten by the contents of your tfvars.

import {resolve} from 'path'
import * as dottfvars from '@byu-oit/dottfvars'
import env from 'env-var'

dottfvars.from(resolve(__dirname, 'iac/development.tfvars'))
const imageId = env.from(process.env).get('image_id').asString()

Alternatively, you may define your tfvars as JSON and pass in a .tfvars.json file path instead.

parse

Sometimes you may just want the JSON representation of the tfvars file without merging it with process.env

import {resolve} from 'path'
import * as dottfvars from '@byu-oit/dottfvars'
import env from 'env-var'

const container = dottfvars.parse(resolve(__dirname, 'local.tfvars'))
const imageId = env.from(container).get('image_id').asString()

Related Packages: