Skip to content
A linter for config files with a customizable rule set
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.chglog
.github
.hugo Add/update more documents Feb 15, 2019
_examples add(func): Add exist built-in function Jan 31, 2019
docs Add/update more documents Feb 15, 2019
lint fix(core): Fix bug related to the file name cache parsed as HCL (to s… Feb 7, 2019
pkg/logging
.gitignore Add release set Jan 21, 2019
.goreleaser.yml Update Feb 6, 2019
CHANGELOG.md Bump version 0.2.4 and update changelog Feb 7, 2019
Gopkg.lock Initial commit Jan 7, 2019
Gopkg.toml
LICENSE Add release set Jan 21, 2019
Makefile Use git.io/release-go for release binary Feb 13, 2019
README.md
apply.go
fmt.go
main.go Bump version 0.2.4 and update changelog Feb 7, 2019

README.md

stein

Stein is a linter for config files with a customizable rule set. Supported config file types are JSON, YAML and HCL for now.

The basic design of this tool are heavily inspired by HashiCorp Sentinel and its lots of implementations come from Terraform.

Motivation

As the motivation of this tool, the factor which accounts for the most of them is the Policy as Code.

Thanks to Infrastructure as Code, the number of cases that the configurations of its infrastructure are described as code is increasing day by day. Then, it became necessary to set the lint or policy for the config files. As an example: the namespace of Kubernetes to be deployed, the number of replicas of Pods, the naming convention of a namespace, etc.

This tool makes it possible to describe those requests as code (called as the rules).

Try to use!

After installing stein, run make run to quick start!

$ stein apply _examples/spinnaker/*/*/*
_examples/spinnaker/x-echo-jp/development/deploy-to-dev-v2.yaml (Block 1)
  No violated rules

_examples/spinnaker/x-echo-jp/development/deploy-to-dev-v2.yaml (Block 2)
  [ERROR]  rule.namespace_name            Namespace name "x-echo-jp-prod" is invalid

=====================
1 error(s), 0 warn(s)

Documentations

Stein Documentations

License

MIT

Author

b4b4r07

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.