diff options
author | Daniel Baumann <daniel@debian.org> | 2024-10-18 20:33:49 +0200 |
---|---|---|
committer | Daniel Baumann <daniel@debian.org> | 2024-12-12 23:57:56 +0100 |
commit | e68b9d00a6e05b3a941f63ffb696f91e554ac5ec (patch) | |
tree | 97775d6c13b0f416af55314eb6a89ef792474615 /main.go | |
parent | Initial commit. (diff) | |
download | forgejo-e68b9d00a6e05b3a941f63ffb696f91e554ac5ec.tar.xz forgejo-e68b9d00a6e05b3a941f63ffb696f91e554ac5ec.zip |
Adding upstream version 9.0.3.
Signed-off-by: Daniel Baumann <daniel@debian.org>
Diffstat (limited to '')
-rw-r--r-- | main.go | 81 |
1 files changed, 81 insertions, 0 deletions
@@ -0,0 +1,81 @@ +// Copyright 2014 The Gogs Authors. All rights reserved. +// Copyright 2016 The Gitea Authors. All rights reserved. +// SPDX-License-Identifier: MIT + +package main + +import ( + "os" + "runtime" + "strings" + "time" + + "code.gitea.io/gitea/cmd" + "code.gitea.io/gitea/modules/log" + "code.gitea.io/gitea/modules/setting" + + // register supported doc types + _ "code.gitea.io/gitea/modules/markup/asciicast" + _ "code.gitea.io/gitea/modules/markup/console" + _ "code.gitea.io/gitea/modules/markup/csv" + _ "code.gitea.io/gitea/modules/markup/markdown" + _ "code.gitea.io/gitea/modules/markup/orgmode" + + "github.com/urfave/cli/v2" +) + +// these flags will be set by the build flags +var ( + Version = "development" // program version for this build + Tags = "" // the Golang build tags + MakeVersion = "" // "make" program version if built with make + + ReleaseVersion = "" +) + +var ForgejoVersion = "1.0.0" + +func init() { + setting.AppVer = Version + setting.ForgejoVersion = ForgejoVersion + setting.AppBuiltWith = formatBuiltWith() + setting.AppStartTime = time.Now().UTC() +} + +func forgejoEnv() { + for _, k := range []string{"CUSTOM", "WORK_DIR"} { + if v, ok := os.LookupEnv("FORGEJO_" + k); ok { + os.Setenv("GITEA_"+k, v) + } + } +} + +func main() { + forgejoEnv() + cli.OsExiter = func(code int) { + log.GetManager().Close() + os.Exit(code) + } + app := cmd.NewMainApp(Version, formatReleaseVersion()+formatBuiltWith()) + _ = cmd.RunMainApp(app, os.Args...) // all errors should have been handled by the RunMainApp + log.GetManager().Close() +} + +func formatReleaseVersion() string { + if len(ReleaseVersion) > 0 { + return " (release name " + ReleaseVersion + ")" + } + return "" +} + +func formatBuiltWith() string { + version := runtime.Version() + if len(MakeVersion) > 0 { + version = MakeVersion + ", " + runtime.Version() + } + if len(Tags) == 0 { + return " built with " + version + } + + return " built with " + version + " : " + strings.ReplaceAll(Tags, " ", ", ") +} |