Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make the default PID file compile-time settable #12485

Merged
merged 7 commits into from
Aug 15, 2020
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions cmd/web.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ and it takes care of all the other things for you`,
},
cli.StringFlag{
Name: "pid, P",
Value: "/var/run/gitea.pid",
techknowlogick marked this conversation as resolved.
Show resolved Hide resolved
Value: setting.PIDFile,
Usage: "Custom pid file path",
},
},
Expand Down Expand Up @@ -110,7 +110,8 @@ func runWeb(ctx *cli.Context) error {

// Set pid file setting
if ctx.IsSet("pid") {
setting.CustomPID = ctx.String("pid")
setting.PIDFile = ctx.String("pid")
setting.WritePIDFile = true
}

// Perform global initialization
Expand Down
2 changes: 1 addition & 1 deletion contrib/init/debian/gitea
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
DESC="Gitea - Git with a cup of tea"
NAME=gitea
SERVICEVERBOSE=yes
PIDFILE=/var/run/$NAME.pid
PIDFILE=/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
WORKINGDIR=/var/lib/$NAME
DAEMON=/usr/local/bin/$NAME
Expand Down
2 changes: 1 addition & 1 deletion contrib/init/gentoo/gitea
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ start_stop_daemon_args="--user ${USER} --chdir ${DIR}"
command="/usr/local/bin/gitea"
command_args="web -c /etc/gitea/app.ini"
command_background=yes
pidfile=/var/run/gitea.pid
pidfile=/run/gitea.pid

depend()
{
Expand Down
2 changes: 1 addition & 1 deletion contrib/init/suse/gitea
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ case "$1" in

# Return value is slightly different for the status command:
# 0 - service up and running
# 1 - service dead, but /var/run/ pid file exists
# 1 - service dead, but /run/ pid file exists
# 2 - service dead, but /var/lock/ lock file exists
# 3 - service not running (unused)
# 4 - service status unknown :-(
Expand Down
1 change: 1 addition & 0 deletions docs/content/doc/installation/from-source.en-us.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,7 @@ using the `LDFLAGS` environment variable for `make`. The appropriate settings ar
* For `CustomConf` you should use `-X \"code.gitea.io/gitea/modules/setting.CustomConf=conf.ini\"`
* For `AppWorkPath` you should use `-X \"code.gitea.io/gitea/modules/setting.AppWorkPath=working-path\"`
* For `StaticRootPath` you should use `-X \"code.gitea.io/gitea/modules/setting.StaticRootPath=static-root-path\"`
* To change the default PID file location use `-X \"code.gitea.io/gitea/modules/setting.PIDFile=/run/gitea.pid\"`

Add as many of the strings with their preceding `-X` to the `LDFLAGS` variable and run `make build`
with the appropriate `TAGS` as above.
Expand Down
2 changes: 1 addition & 1 deletion docs/content/doc/usage/command-line.en-us.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Starts the server:
- Examples:
- `gitea web`
- `gitea web --port 80`
- `gitea web --config /etc/gitea.ini --pid /var/run/gitea.pid`
- `gitea web --config /etc/gitea.ini --pid /some/custom/gitea.pid`
- Notes:
- Gitea should not be run as root. To bind to a port below 1024, you can use setcap on
Linux: `sudo setcap 'cap_net_bind_service=+ep' /path/to/gitea`. This will need to be
Expand Down
7 changes: 4 additions & 3 deletions modules/setting/setting.go
Original file line number Diff line number Diff line change
Expand Up @@ -382,7 +382,8 @@ var (
Cfg *ini.File
CustomPath string // Custom directory path
CustomConf string
CustomPID string
PIDFile = "/var/run/gitea.pid"
WritePIDFile bool
ProdMode bool
RunUser string
IsWindows bool
Expand Down Expand Up @@ -535,8 +536,8 @@ func SetCustomPathAndConf(providedCustom, providedConf, providedWorkPath string)
func NewContext() {
Cfg = ini.Empty()

if len(CustomPID) > 0 {
createPIDFile(CustomPID)
if WritePIDFile && len(PIDFile) > 0 {
createPIDFile(PIDFile)
}

if com.IsFile(CustomConf) {
Expand Down