package cli import ( "github.com/urfave/cli/v2" ) var ( ServerFlags = []cli.Flag{ // ############# // ### Forge ### // ############# // ForgeRoot specifies the root URL of the Forge instance, without a trailing slash. &cli.StringFlag{ Name: "forge-root", Aliases: []string{"gitea-root"}, Usage: "specifies the root URL of the Forgejo/Gitea instance, without a trailing slash.", EnvVars: []string{"FORGE_ROOT", "GITEA_ROOT"}, }, // ForgeApiToken specifies an api token for the Forge instance &cli.StringFlag{ Name: "forge-api-token", Aliases: []string{"gitea-api-token"}, Usage: "specifies an api token for the Forgejo/Gitea instance", EnvVars: []string{"FORGE_API_TOKEN", "GITEA_API_TOKEN"}, }, &cli.BoolFlag{ Name: "enable-lfs-support", Usage: "enable lfs support, gitea must be version v1.17.0 or higher", EnvVars: []string{"ENABLE_LFS_SUPPORT"}, Value: false, }, &cli.BoolFlag{ Name: "enable-symlink-support", Usage: "follow symlinks if enabled, gitea must be version v1.18.0 or higher", EnvVars: []string{"ENABLE_SYMLINK_SUPPORT"}, Value: false, }, &cli.StringFlag{ Name: "default-mime-type", Usage: "specifies the default mime type for files that don't have a specific mime type.", EnvVars: []string{"DEFAULT_MIME_TYPE"}, Value: "application/octet-stream", }, &cli.StringSliceFlag{ Name: "forbidden-mime-types", Usage: "specifies the forbidden mime types. Use this flag multiple times for multiple mime types.", EnvVars: []string{"FORBIDDEN_MIME_TYPES"}, }, // ########################### // ### Page Server Domains ### // ########################### // MainDomainSuffix specifies the main domain (starting with a dot) for which subdomains shall be served as static // pages, or used for comparison in CNAME lookups. Static pages can be accessed through // http://{owner}.{MainDomain}[/{repo}], with repo defaulting to "pages". &cli.StringFlag{ Name: "pages-domain", Usage: "specifies the main domain (starting with a dot) for which subdomains shall be served as static pages", EnvVars: []string{"PAGES_DOMAIN"}, }, // RawDomain specifies the domain from which raw repository content shall be served in the following format: // http://{RawDomain}/{owner}/{repo}[/{branch|tag|commit}/{version}]/{filepath...} // (set to []byte(nil) to disable raw content hosting) &cli.StringFlag{ Name: "raw-domain", Usage: "specifies the domain from which raw repository content shall be served, not set disable raw content hosting", EnvVars: []string{"RAW_DOMAIN"}, }, // ######################### // ### Page Server Setup ### // ######################### &cli.StringFlag{ Name: "host", Usage: "specifies host of listening address", EnvVars: []string{"HOST"}, Value: "[::]", }, &cli.UintFlag{ Name: "port", Usage: "specifies the http port to listen to ssl requests", EnvVars: []string{"PORT", "HTTP_PORT"}, Value: 8080, }, // Default branches to fetch assets from &cli.StringSliceFlag{ Name: "pages-branch", Usage: "define a branch to fetch assets from. Use this flag multiple times for multiple branches.", EnvVars: []string{"PAGES_BRANCHES"}, Value: cli.NewStringSlice("pages"), }, &cli.StringSliceFlag{ Name: "allowed-cors-domains", Usage: "specify allowed CORS domains. Use this flag multiple times for multiple domains.", EnvVars: []string{"ALLOWED_CORS_DOMAINS"}, }, &cli.StringSliceFlag{ Name: "blacklisted-paths", Usage: "return an error on these url paths.Use this flag multiple times for multiple paths.", EnvVars: []string{"BLACKLISTED_PATHS"}, }, &cli.StringFlag{ Name: "log-level", Value: "warn", Usage: "specify at which log level should be logged. Possible options: info, warn, error, fatal", EnvVars: []string{"LOG_LEVEL"}, }, &cli.StringFlag{ Name: "config-file", Usage: "specify the location of the config file", Aliases: []string{"config"}, EnvVars: []string{"CONFIG_FILE"}, }, &cli.BoolFlag{ Name: "enable-profiling", Usage: "enables the go http profiling endpoints", EnvVars: []string{"ENABLE_PROFILING"}, }, &cli.StringFlag{ Name: "profiling-address", Usage: "specify ip address and port the profiling server should listen on", EnvVars: []string{"PROFILING_ADDRESS"}, Value: "localhost:9999", }, } )