You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
1.7 KiB

10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
  1. // Copyright 2014 The Gogs Authors. All rights reserved.
  2. // Copyright 2016 The Gitea Authors. All rights reserved.
  3. // Use of this source code is governed by a MIT-style
  4. // license that can be found in the LICENSE file.
  5. // Gitea (git with a cup of tea) is a painless self-hosted Git Service.
  6. package main // import "code.gitea.io/gitea"
  7. import (
  8. "os"
  9. "runtime"
  10. "strings"
  11. "code.gitea.io/gitea/cmd"
  12. "code.gitea.io/gitea/modules/log"
  13. "code.gitea.io/gitea/modules/setting"
  14. // register supported doc types
  15. _ "code.gitea.io/gitea/modules/markup/csv"
  16. _ "code.gitea.io/gitea/modules/markup/markdown"
  17. _ "code.gitea.io/gitea/modules/markup/orgmode"
  18. "github.com/urfave/cli"
  19. )
  20. // Version holds the current Gitea version
  21. var Version = "1.5.0-dev"
  22. // Tags holds the build tags used
  23. var Tags = ""
  24. func init() {
  25. setting.AppVer = Version
  26. setting.AppBuiltWith = formatBuiltWith(Tags)
  27. }
  28. func main() {
  29. app := cli.NewApp()
  30. app.Name = "Gitea"
  31. app.Usage = "A painless self-hosted Git service"
  32. app.Description = `By default, gitea will start serving using the webserver with no
  33. arguments - which can alternatively be run by running the subcommand web.`
  34. app.Version = Version + formatBuiltWith(Tags)
  35. app.Commands = []cli.Command{
  36. cmd.CmdWeb,
  37. cmd.CmdServ,
  38. cmd.CmdHook,
  39. cmd.CmdDump,
  40. cmd.CmdCert,
  41. cmd.CmdAdmin,
  42. cmd.CmdGenerate,
  43. cmd.CmdMigrate,
  44. cmd.CmdKeys,
  45. }
  46. app.Flags = append(app.Flags, cmd.CmdWeb.Flags...)
  47. app.Action = cmd.CmdWeb.Action
  48. err := app.Run(os.Args)
  49. if err != nil {
  50. log.Fatal(4, "Failed to run app with %s: %v", os.Args, err)
  51. }
  52. }
  53. func formatBuiltWith(Tags string) string {
  54. if len(Tags) == 0 {
  55. return " built with " + runtime.Version()
  56. }
  57. return " built with " + runtime.Version() + " : " + strings.Replace(Tags, " ", ", ", -1)
  58. }