fs

package
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2021 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ArchiveAndUploadFilesToS3

func ArchiveAndUploadFilesToS3(fileTree fs.FS, name, s3Base string, logger *zap.SugaredLogger) error

func DeleteArchivedFileFromS3

func DeleteArchivedFileFromS3(name, s3Base string, logger *zap.SugaredLogger) error

func DownloadAndExtractFilesFromS3

func DownloadAndExtractFilesFromS3(name, localBase, s3Base string, logger *zap.SugaredLogger) error

func DownloadFileFromSource added in v1.5.0

func DownloadFileFromSource(args *DownloadFromSourceArgs) ([]byte, error)

func DownloadFilesFromSource

func DownloadFilesFromSource(args *DownloadFromSourceArgs, rootNameGetter func(afero.Fs) (string, error)) (fs.FS, error)

func PreloadFiles

func PreloadFiles(name, localBase, s3Base string, logger *zap.SugaredLogger) error

PreloadFiles downloads a tarball from object storage and extracts it to a local path for further usage. It happens only if files do not exist in local disk.

func SaveAndUploadFiles

func SaveAndUploadFiles(fileTree fs.FS, name, localBase, s3Base string, logger *zap.SugaredLogger) error

SaveAndUploadFiles saves a tree of files to local disk, at the same time, archives them and uploads to object storage.

Types

type DownloadFromSourceArgs

type DownloadFromSourceArgs struct {
	CodehostID int    `json:"codeHostID"`
	Owner      string `json:"owner"`
	Repo       string `json:"repo"`
	Path       string `json:"path"`
	Branch     string `json:"branch"`
	RepoLink   string `json:"repoLink"`
}

type FileInfo

type FileInfo struct {
	Path  string `json:"path"`
	Name  string `json:"name"`
	Size  int64  `json:"size"`
	IsDir bool   `json:"is_dir"`
}

func GetFileInfos

func GetFileInfos(fileTree fs.FS) ([]*FileInfo, error)

type TreeGetter added in v1.5.0

type TreeGetter interface {
	GetTreeContents(owner, repo, path, branch string) (afero.Fs, error)
	GetFileContent(owner, repo, path, branch string) ([]byte, error)
	GetTree(owner, repo, path, branch string) ([]*git.TreeNode, error)
}

func GetPublicTreeGetter added in v1.5.0

func GetPublicTreeGetter(repoLink string) (TreeGetter, error)

func GetTreeGetter added in v1.5.0

func GetTreeGetter(codeHostID int) (TreeGetter, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL