Restructure go project (#2356)

* Move main to cmd
* Move api to internal
* Move logger and manager to internal
* Move shell hiding code to separate package
* Decouple job from desktop and utils
* Decouple session from config
* Move static into internal
* Decouple config from dlna
* Move desktop to internal
* Move dlna to internal
* Decouple remaining packages from config
* Move config into internal
* Move jsonschema and paths to models
* Make ffmpeg functions private
* Move file utility methods into fsutil package
* Move symwalk into fsutil
* Move single-use util functions into client package
* Move slice functions to separate packages
* Add env var to suppress windowsgui arg
* Move hash functions into separate package
* Move identify to internal
* Move autotag to internal
* Touch UI when generating backend
This commit is contained in:
WithoutPants
2022-03-17 11:33:59 +11:00
committed by GitHub
parent dcee874f59
commit f69bd8a94f
334 changed files with 1845 additions and 1525 deletions

View File

@@ -13,9 +13,9 @@ import (
"runtime"
"strings"
"github.com/stashapp/stash/pkg/desktop"
stashExec "github.com/stashapp/stash/pkg/exec"
"github.com/stashapp/stash/pkg/fsutil"
"github.com/stashapp/stash/pkg/logger"
"github.com/stashapp/stash/pkg/utils"
)
func GetPaths(paths []string) (string, string) {
@@ -29,10 +29,10 @@ func GetPaths(paths []string) (string, string) {
// Check if ffmpeg exists in the config directory
if ffmpegPath == "" {
ffmpegPath = utils.FindInPaths(paths, getFFMPEGFilename())
ffmpegPath = fsutil.FindInPaths(paths, getFFMPEGFilename())
}
if ffprobePath == "" {
ffprobePath = utils.FindInPaths(paths, getFFProbeFilename())
ffprobePath = fsutil.FindInPaths(paths, getFFProbeFilename())
}
return ffmpegPath, ffprobePath
@@ -40,7 +40,7 @@ func GetPaths(paths []string) (string, string) {
func Download(ctx context.Context, configDirectory string) error {
for _, url := range getFFMPEGURL() {
err := DownloadSingle(ctx, configDirectory, url)
err := downloadSingle(ctx, configDirectory, url)
if err != nil {
return err
}
@@ -80,7 +80,7 @@ func (r *progressReader) Read(p []byte) (int, error) {
return read, err
}
func DownloadSingle(ctx context.Context, configDirectory, url string) error {
func downloadSingle(ctx context.Context, configDirectory, url string) error {
if url == "" {
return fmt.Errorf("no ffmpeg url for this platform")
}
@@ -203,8 +203,7 @@ func pathBinaryHasCorrectFlags() bool {
if err != nil {
return false
}
cmd := exec.Command(ffmpegPath)
desktop.HideExecShell(cmd)
cmd := stashExec.Command(ffmpegPath)
bytes, _ := cmd.CombinedOutput()
output := string(bytes)
hasOpus := strings.Contains(output, "--enable-libopus")