This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
PermissionGacha/modules/commands/version.go

42 lines
1005 B
Go

package commands
import (
"fmt"
"os/exec"
"strings"
"github.com/bwmarrin/discordgo"
"PermissionGacha/modules/log"
)
var versionString string
func handleVersionCommand(s *discordgo.Session, args []string, m *discordgo.MessageCreate) error {
if versionString == "" {
out, err := exec.Command("git", "describe", "--tags").Output()
if err != nil {
log.Error(
s,
fmt.Errorf("modules/commands: error while requesting version information from git: %v", err),
)
versionString = "Error while generating version string."
} else {
info := strings.Split(strings.TrimSpace(string(out)), "-")
if len(info) == 1 {
versionString = fmt.Sprintf(
"**VERSION > **Current running version: __%s.0__ (Internal ID: unknown)",
info[0],
)
} else {
versionString = fmt.Sprintf(
"**VERSION > **Current running version: __%s.%s__ (Internal ID: %s)",
info[0], info[1], info[2],
)
}
}
}
s.ChannelMessageSend(m.ChannelID, versionString)
return nil
}