refactory the code and add CreateTargetTarfile in fs_util.go

This commit is contained in:
yangtaokm 2019-10-22 16:44:51 +08:00
parent 616eb83d92
commit 45c43a2c89
2 changed files with 18 additions and 7 deletions

View File

@ -54,18 +54,15 @@ func (b *AzureBlob) UnpackTarFromBuildContext() (string, error) {
return parts.Host, err
}
//Create directory and file for downloading context file
// Create directory and target file for downloading the context file
directory := constants.BuildContextDir
tarPath := filepath.Join(directory, constants.ContextTar)
if err := os.MkdirAll(directory, 0750); err != nil {
return directory, err
}
file, err := os.Create(tarPath)
file, err := util.CreateTargetTarfile(tarPath)
if err != nil {
return directory, err
return tarPath, err
}
//Downloading contextfile from Azure Blob Storage
// Downloading contextfile from Azure Blob Storage
p := azblob.NewPipeline(credential, azblob.PipelineOptions{})
blobURL := azblob.NewBlobURL(*u, p)
ctx := context.Background()

View File

@ -640,3 +640,17 @@ func setFilePermissions(path string, mode os.FileMode, uid, gid int) error {
// Must chmod after chown because chown resets the file mode.
return os.Chmod(path, mode)
}
// CreateTargetTarfile creates target tar file for downloading the context file.
// Make directory if directory does not exist
func CreateTargetTarfile(tarpath string) (*os.File, error) {
baseDir := filepath.Dir(tarpath)
if _, err := os.Lstat(baseDir); os.IsNotExist(err) {
logrus.Debugf("baseDir %s for file %s does not exist. Creating.", baseDir, tarpath)
if err := os.MkdirAll(baseDir, 0755); err != nil {
return nil, err
}
}
return os.Create(tarpath)
}