github.com/kubeshop/testkube@v1.17.23/pkg/tmp/files.go (about)

     1  package tmp
     2  
     3  import (
     4  	"io"
     5  	"os"
     6  )
     7  
     8  // ReaderToTmpfile converts io.Reader to tmp file returns saved file path
     9  func ReaderToTmpfile(input io.Reader) (path string, err error) {
    10  	tmpfile, err := os.CreateTemp("", "testkube-tmp")
    11  	path = tmpfile.Name()
    12  	if _, err := io.Copy(tmpfile, input); err != nil {
    13  		return path, err
    14  	}
    15  
    16  	if err := tmpfile.Close(); err != nil {
    17  		return path, err
    18  	}
    19  
    20  	return
    21  }
    22  
    23  // Name generate new temp file and returns file path
    24  func Name() string {
    25  	tmpfile, _ := os.CreateTemp("", "testkube-tmp")
    26  	return tmpfile.Name()
    27  }