* removed packer.Cache and references since packer.Cache is never used except in the download step. The download step now uses the new func packer.CachePath(targetPath) for this, the behavior is the same. * removed download code from packer that was reimplemented into the go-getter library: progress bar, http download restart, checksuming from file, skip already downloaded files, symlinking, make a download cancellable by context. * on windows if packer is running without symlinking rights and we are getting a local file, the file will be copied instead to avoid errors. * added unit tests for step_download that are now CI tested on windows, mac & linux. * files are now downloaded under cache dir `sha1(filename + "?checksum=" + checksum) + file_extension` * since the output dir is based on the source url and the checksum, when the checksum fails, the file is auto deleted. * a download file is protected and locked by a file lock, * updated docs * updated go modules and vendors
51 lines
1.1 KiB
Markdown
51 lines
1.1 KiB
Markdown
# go-isatty
|
|
|
|
[](http://godoc.org/github.com/mattn/go-isatty)
|
|
[](https://travis-ci.org/mattn/go-isatty)
|
|
[](https://coveralls.io/github/mattn/go-isatty?branch=master)
|
|
[](https://goreportcard.com/report/mattn/go-isatty)
|
|
|
|
isatty for golang
|
|
|
|
## Usage
|
|
|
|
```go
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/mattn/go-isatty"
|
|
"os"
|
|
)
|
|
|
|
func main() {
|
|
if isatty.IsTerminal(os.Stdout.Fd()) {
|
|
fmt.Println("Is Terminal")
|
|
} else if isatty.IsCygwinTerminal(os.Stdout.Fd()) {
|
|
fmt.Println("Is Cygwin/MSYS2 Terminal")
|
|
} else {
|
|
fmt.Println("Is Not Terminal")
|
|
}
|
|
}
|
|
```
|
|
|
|
## Installation
|
|
|
|
```
|
|
$ go get github.com/mattn/go-isatty
|
|
```
|
|
|
|
## License
|
|
|
|
MIT
|
|
|
|
## Author
|
|
|
|
Yasuhiro Matsumoto (a.k.a mattn)
|
|
|
|
## Thanks
|
|
|
|
* k-takata: base idea for IsCygwinTerminal
|
|
|
|
https://github.com/k-takata/go-iscygpty
|