mirror of
https://github.com/mudler/luet.git
synced 2025-09-03 00:06:36 +00:00
update vendor/
This commit is contained in:
3
vendor/github.com/otiai10/copy/.gitignore
generated
vendored
Normal file
3
vendor/github.com/otiai10/copy/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
testdata.copy
|
||||
coverage.txt
|
||||
vendor
|
11
vendor/github.com/otiai10/copy/.travis.yml
generated
vendored
Normal file
11
vendor/github.com/otiai10/copy/.travis.yml
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
language: go
|
||||
go:
|
||||
- 1.9
|
||||
- tip
|
||||
before_script:
|
||||
- go get -t ./...
|
||||
script:
|
||||
- go test ./... -v
|
||||
- go test -race -coverprofile=coverage.txt -covermode=atomic
|
||||
after_success:
|
||||
- bash <(curl -s https://codecov.io/bash)
|
21
vendor/github.com/otiai10/copy/LICENSE
generated
vendored
Normal file
21
vendor/github.com/otiai10/copy/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018 otiai10
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
14
vendor/github.com/otiai10/copy/README.md
generated
vendored
Normal file
14
vendor/github.com/otiai10/copy/README.md
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
# copy
|
||||
|
||||
[](https://travis-ci.org/otiai10/copy)
|
||||
[](https://codecov.io/gh/otiai10/copy)
|
||||
[](https://godoc.org/github.com/otiai10/copy)
|
||||
[](https://goreportcard.com/report/github.com/otiai10/copy)
|
||||
|
||||
`copy` copies directories recursively.
|
||||
|
||||
Example:
|
||||
|
||||
```go
|
||||
err := Copy("your/directory", "your/directory.copy")
|
||||
```
|
106
vendor/github.com/otiai10/copy/copy.go
generated
vendored
Normal file
106
vendor/github.com/otiai10/copy/copy.go
generated
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
package copy
|
||||
|
||||
import (
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
const (
|
||||
// tmpPermissionForDirectory makes the destination directory writable,
|
||||
// so that stuff can be copied recursively even if any original directory is NOT writable.
|
||||
// See https://github.com/otiai10/copy/pull/9 for more information.
|
||||
tmpPermissionForDirectory = os.FileMode(0755)
|
||||
)
|
||||
|
||||
// Copy copies src to dest, doesn't matter if src is a directory or a file
|
||||
func Copy(src, dest string) error {
|
||||
info, err := os.Lstat(src)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return copy(src, dest, info)
|
||||
}
|
||||
|
||||
// copy dispatches copy-funcs according to the mode.
|
||||
// Because this "copy" could be called recursively,
|
||||
// "info" MUST be given here, NOT nil.
|
||||
func copy(src, dest string, info os.FileInfo) error {
|
||||
if info.Mode()&os.ModeSymlink != 0 {
|
||||
return lcopy(src, dest, info)
|
||||
}
|
||||
if info.IsDir() {
|
||||
return dcopy(src, dest, info)
|
||||
}
|
||||
return fcopy(src, dest, info)
|
||||
}
|
||||
|
||||
// fcopy is for just a file,
|
||||
// with considering existence of parent directory
|
||||
// and file permission.
|
||||
func fcopy(src, dest string, info os.FileInfo) error {
|
||||
|
||||
if err := os.MkdirAll(filepath.Dir(dest), os.ModePerm); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
f, err := os.Create(dest)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
if err = os.Chmod(f.Name(), info.Mode()); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
s, err := os.Open(src)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer s.Close()
|
||||
|
||||
_, err = io.Copy(f, s)
|
||||
return err
|
||||
}
|
||||
|
||||
// dcopy is for a directory,
|
||||
// with scanning contents inside the directory
|
||||
// and pass everything to "copy" recursively.
|
||||
func dcopy(srcdir, destdir string, info os.FileInfo) error {
|
||||
|
||||
originalMode := info.Mode()
|
||||
|
||||
// Make dest dir with 0755 so that everything writable.
|
||||
if err := os.MkdirAll(destdir, tmpPermissionForDirectory); err != nil {
|
||||
return err
|
||||
}
|
||||
// Recover dir mode with original one.
|
||||
defer os.Chmod(destdir, originalMode)
|
||||
|
||||
contents, err := ioutil.ReadDir(srcdir)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for _, content := range contents {
|
||||
cs, cd := filepath.Join(srcdir, content.Name()), filepath.Join(destdir, content.Name())
|
||||
if err := copy(cs, cd, content); err != nil {
|
||||
// If any error, exit immediately
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// lcopy is for a symlink,
|
||||
// with just creating a new symlink by replicating src symlink.
|
||||
func lcopy(src, dest string, info os.FileInfo) error {
|
||||
src, err := os.Readlink(src)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return os.Symlink(src, dest)
|
||||
}
|
5
vendor/github.com/otiai10/copy/go.mod
generated
vendored
Normal file
5
vendor/github.com/otiai10/copy/go.mod
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
module github.com/otiai10/copy
|
||||
|
||||
go 1.12
|
||||
|
||||
require github.com/otiai10/mint v1.3.0
|
3
vendor/github.com/otiai10/copy/go.sum
generated
vendored
Normal file
3
vendor/github.com/otiai10/copy/go.sum
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE=
|
||||
github.com/otiai10/mint v1.3.0 h1:Ady6MKVezQwHBkGzLFbrsywyp09Ah7rkmfjV3Bcr5uc=
|
||||
github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo=
|
Reference in New Issue
Block a user