Sybren A. Stüvel 161a7f7cb3 Less dramatic logging when Blender cannot be found
Avoid the word "error" in logging when Blender cannot be found. Typically
these are warnings, and having the word "error" there makes people think
otherwise.
2022-09-22 12:37:46 +02:00

47 lines
1.5 KiB
Go

package main
import (
"context"
"errors"
"io/fs"
"os/exec"
"time"
"github.com/rs/zerolog/log"
"git.blender.org/flamenco/internal/find_blender"
"git.blender.org/flamenco/internal/find_ffmpeg"
)
// findFFmpeg tries to find FFmpeg, in order to show its version (if found) or a warning (if not).
func findFFmpeg() {
result, err := find_ffmpeg.Find()
switch {
case errors.Is(err, fs.ErrNotExist):
log.Warn().Msg("FFmpeg could not be found on this system, render jobs may not run correctly")
case err != nil:
log.Warn().Err(err).Msg("there was an unexpected error finding FFmpeg on this system, render jobs may not run correctly")
default:
log.Info().Str("path", result.Path).Str("version", result.Version).Msg("FFmpeg found on this system")
}
}
// findBlender tries to find Blender, in order to show its version (if found) or a message (if not).
func findBlender() {
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
result, err := find_blender.Find(ctx)
switch {
case errors.Is(err, fs.ErrNotExist):
log.Warn().Msg("Blender could not be found, Flamenco Manager will have to supply a full path")
case err != nil:
log.Warn().AnErr("cause", err).Msg("there was an issue finding Blender on this system, Flamenco Manager will have to supply a full path")
default:
log.Info().
Str("path", result.FoundLocation).
Str("version", result.BlenderVersion).
Msg("Blender found on this system, it will be used unless Flamenco Manager specifies a path to a different Blender")
}
}