HCL Visitor is a library for traversing HashiCorp Configuration Language (HCL) ASTs.
- parseHCL: Parse HCL string to AST
- generateHCL: Generate HCL string from AST
- traverse: Traverse AST nodes
npm install hcl-visitor
import { parseHCL, traverse } from "hcl-visitor";
const hcl = `
variable "region" {
type = string
default = "us-west-1"
}
`;
const ast = await parseHCL(hcl);
const node = ast.walk().currentNode;
traverse(node, {
attribute: (node) => {
console.log(node);
},
});
- GitHub Actions
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup HCL Visitor
run: npm i hcl-visitor
shell: bash
- name: Run Script
uses: actions/github-script@v7
with:
script: |
const { parseHCL, traverse } = require("hcl-visitor");
# Your script here
v1.1.0
https://github.com/tree-sitter-grammars/tree-sitter-hcl
HCL VisitorはHashiCorp Configuration Language (HCL) ASTをトラバースするためのライブラリです。
- parseHCL: HCL文字列をASTにパース
- generateHCL: ASTからHCL文字列を生成
- traverse: ASTノードをトラバース
npm install hcl-visitor
import { parseHCL, traverse } from "hcl-visitor";
const hcl = `
variable "region" {
type = string
default = "us-west-1"
}
`;
const ast = await parseHCL(hcl);
const node = ast.walk().currentNode;
traverse(node, {
attribute: (node) => {
console.log(node);
},
});
- GitHub Actions
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup HCL Visitor
run: npm i hcl-visitor
shell: bash
- name: Run Script
uses: actions/github-script@v7
with:
script: |
const { parseHCL, traverse } = require("hcl-visitor");
# ここにスクリプトを記述