yamll: support reading from stdin.
This commit is contained in:
parent
c8cdd70a08
commit
4720196aaa
|
@ -1,3 +1,15 @@
|
||||||
yamll: yaml linter
|
yamll: yaml linter
|
||||||
|
|
||||||
Run this over YAML files to determine if they are well-formed or not.
|
Run this over YAML files to determine if they are well-formed or not.
|
||||||
|
|
||||||
|
Usage: yamll [-hq] files...
|
||||||
|
|
||||||
|
For each file, yamll will make sure it is a well-formatted YAML
|
||||||
|
file. Unless the -q option is passed, yamll will print the names
|
||||||
|
of each file and whether it was well-formed. With the -q option,
|
||||||
|
only malformed files are printed.
|
||||||
|
|
||||||
|
If the only command line argument is "-", yamll will read from
|
||||||
|
standard input. It is assumed the entirety of standard input is
|
||||||
|
a single file.
|
||||||
|
|
||||||
|
|
|
@ -42,6 +42,28 @@ func main() {
|
||||||
os.Exit(0)
|
os.Exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if flag.NArg() == 1 && flag.Arg(0) == "-" {
|
||||||
|
path := "stdin"
|
||||||
|
in, err := ioutil.ReadAll(os.Stdin)
|
||||||
|
if err != nil {
|
||||||
|
errorf("%s FAILED: %s", path, err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
var e empty
|
||||||
|
err = yaml.Unmarshal(in, &e)
|
||||||
|
if err != nil {
|
||||||
|
errorf("%s FAILED: %s", path, err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
if !*quiet {
|
||||||
|
fmt.Printf("%s: OK\n", path)
|
||||||
|
}
|
||||||
|
|
||||||
|
os.Exit(0)
|
||||||
|
}
|
||||||
|
|
||||||
for _, path := range flag.Args() {
|
for _, path := range flag.Args() {
|
||||||
in, err := ioutil.ReadFile(path)
|
in, err := ioutil.ReadFile(path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue