mark/main.go

48 lines
1.2 KiB
Go
Raw Normal View History

2015-09-19 23:51:49 +06:00
package main
import (
"os"
"github.com/kovetskiy/mark/util"
2020-11-03 17:12:51 +03:00
"github.com/reconquest/pkg/log"
"github.com/urfave/cli/v2"
"github.com/urfave/cli/v2/altsrc"
2015-09-19 23:51:49 +06:00
)
const (
2025-04-13 00:23:10 +02:00
version = "12.2.0"
usage = "A tool for updating Atlassian Confluence pages from markdown."
description = `Mark is a tool to update Atlassian Confluence pages from markdown. Documentation is available here: https://github.com/kovetskiy/mark`
2015-09-19 23:51:49 +06:00
)
func main() {
app := &cli.App{
Name: "mark",
Usage: usage,
Description: description,
Version: version,
Flags: util.Flags,
Before: altsrc.InitInputSourceWithContext(util.Flags,
func(context *cli.Context) (altsrc.InputSourceContext, error) {
if context.IsSet("config") {
filePath := context.String("config")
return altsrc.NewTomlSourceFromFile(filePath)
} else {
// Fall back to default if config is unset and path exists
_, err := os.Stat(util.ConfigFilePath())
if os.IsNotExist(err) {
return &altsrc.MapInputSource{}, nil
}
return altsrc.NewTomlSourceFromFile(util.ConfigFilePath())
}
}),
EnableBashCompletion: true,
HideHelpCommand: true,
Action: util.RunMark,
2015-09-19 23:51:49 +06:00
}
if err := app.Run(os.Args); err != nil {
log.Fatal(err)
2021-04-02 13:15:54 -04:00
}
}