const path = require('path'); module.exports = { tags: async (tln) => [], options: async (tln) => [], env: async (tln, env) => { env.TERRAGRUNT_HOME = env.TLN_COMPONENT_HOME; env.PATH = [env.TLN_COMPONENT_HOME, env.PATH].join(path.delimiter); }, dotenvs: async (tln) => [], inherits: async (tln) => [], depends: async (tln) => [], steps: async (tln) => [ { id: 'install', filter: '', builder: async (tln, script) => { const id = script.env.TLN_COMPONENT_ID; const home = script.env.TLN_COMPONENT_HOME; const {name, version} = tln.unpackId(id); if (version && tln.canInstallComponent(tln, id, home)) { script.set(tln.selectScript(tln, { linux: [` wget https://github.com/gruntwork-io/terragrunt/releases/download/v${version}/terragrunt_linux_amd64 mv terragrunt_linux_amd64 terragrunt chmod +x ./terragrunt ` ], darwin: [` wget https://github.com/gruntwork-io/terragrunt/releases/download/v${version}/terragrunt_darwin_amd64 mv terragrunt_darwin_amd64 terragrunt chmod +x ./terragrunt ` ], win32: [` rem https://github.com/gruntwork-io/terragrunt/releases/download/v${version}/terragrunt_windows_amd64.exe ` ] } )); } } } ], components: async (tln) => require('./components.js') }