
Security News
Feross on TBPN: How North Korea Hijacked Axios
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.
@ppwcode/terraform-ppwcode-modules
Advanced tools
This repository contains a number of general Terraform modules.
The Terraform documentation describes how to use modules. You import the modules from Github, as described in the documentation. Use the format for public Github repositories, using the "double-slash" to refer to the correct subdirectory.
module "MODULE_INSTANCE_NAME" {
source = "github.com/peopleware/terraform-ppwcode-modules//MODULE_NAME"
}
On the other hand, …
The module domain_version/ directly, and thus the module subdomain/ that depends on it,
uses a Node.js JavaScript script (though a Terraform external data source provider) to get information
about the SOA serial and the state of the git repository of the Terraform configuration it is used in.
Node.js JavaScript code depends on other npm packages, that need to be installed for the script to be able to
work. This repository is therefor, apart from being a collection of Terraform modules, also a Node.js package, with dependencies described in package.json. The dependencies need to be available in a
node_modules/ folder next to the script, or in one of its ancestor folders, before Terraform can use the
modules in > terraform plan or > terraform apply.
This is done by running > npm install in the project that uses these modules.
For this to work, this collection of Terraform modules / npm package must itself be loaded in the
Terraform configuration in which it is used via > npm install. These commands
work recursively.
This is done by making the configuration in which these modules are used an npm package itself, with this
collection of Terraform modules defined as a development dependency in its package.json. Once
> npm install is executed, these modules will be available in
node_modules/terraform-ppwcode-modules/. To create an instance of a module MODULE_NAME then, the Terraform
configuration has to refer to it via a relative path, like this:
module "MODULE_INSTANCE_NAME" {
source = "./node_modules/terraform-ppwcode-modules/MODULE_NAME"
}
Note to the Terraform maintainers: go with the flow, and promote npm as the primary method to distribute modules.
This library is intended to be compatible with Node 6, 8, and 10.
Development is done in Node 10, via nvm.
The code does not use async / await, which was introduced in Node 8.
Also, we use Q as Promise library, instead of native Promises, since Node 6 does not yet support util.promisify().
We use Q.nfcall instead.
This code uses Standard coding style.
Move to ppwcode team. Request access from Travis.
Create parallel builds for Node 6, 8 10, and back tag.
FAQs
A number of general Terraform modules
We found that @ppwcode/terraform-ppwcode-modules demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.

Security News
OpenSSF has issued a high-severity advisory warning open source developers of an active Slack-based campaign using impersonation to deliver malware.

Research
/Security News
Malicious packages published to npm, PyPI, Go Modules, crates.io, and Packagist impersonate developer tooling to fetch staged malware, steal credentials and wallets, and enable remote access.