add env file resolver

This commit is contained in:
2025-05-02 12:24:46 +01:00
parent 8cf969c906
commit 30fabe8cfc
5 changed files with 39 additions and 11 deletions

11
main.go
View File

@@ -7,11 +7,13 @@ import (
"fmt"
"io"
"os"
"path/filepath"
"time"
"github.com/alecthomas/kong"
mangokong "github.com/alecthomas/mango-kong"
"github.com/andreykaipov/goobs"
kongdotenv "github.com/titusjaka/kong-dotenv-go"
)
// ObsConfig holds the configuration for connecting to the OBS WebSocket server.
@@ -49,11 +51,18 @@ type context struct {
}
func main() {
cli := cli{}
userConfigDir, err := os.UserConfigDir()
if err != nil {
fmt.Fprintf(os.Stderr, "Error getting user config directory: %v\n", err)
os.Exit(1)
}
var cli cli
ctx := kong.Parse(
&cli,
kong.Name("GOBS-CLI"),
kong.Description("A command line tool to interact with OBS Websocket."),
kong.Configuration(kongdotenv.ENVFileReader, ".env", filepath.Join(userConfigDir, "gobs-cli", "config.env")),
)
client, err := connectObs(cli.ObsConfig)