From 0884f89431cd26bcc9674b3b7ab628b090f5881e Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Tue, 7 Dec 2021 13:31:39 +0100 Subject: Implement Cobra CLI tooling, Viper config tooling (#336) * start pulling out + replacing urfave and config * replace many many instances of config * move more stuff => viper * properly remove urfave * move some flags to root command * add testrig commands to root * alias config file keys * start adding cli parsing tests * reorder viper init * remove config path alias * fmt * change config file keys to non-nested * we're more or less in business now * tidy up the common func * go fmt * get tests passing again * add note about the cliparsing tests * reorganize * update docs with changes * structure cmd dir better * rename + move some files around * fix dangling comma --- cmd/gotosocial/statusesflags.go | 59 ----------------------------------------- 1 file changed, 59 deletions(-) delete mode 100644 cmd/gotosocial/statusesflags.go (limited to 'cmd/gotosocial/statusesflags.go') diff --git a/cmd/gotosocial/statusesflags.go b/cmd/gotosocial/statusesflags.go deleted file mode 100644 index af52dc0ae..000000000 --- a/cmd/gotosocial/statusesflags.go +++ /dev/null @@ -1,59 +0,0 @@ -/* - GoToSocial - Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ - -package main - -import ( - "github.com/superseriousbusiness/gotosocial/internal/config" - "github.com/urfave/cli/v2" -) - -func statusesFlags(flagNames, envNames config.Flags, defaults config.Defaults) []cli.Flag { - return []cli.Flag{ - &cli.IntFlag{ - Name: flagNames.StatusesMaxChars, - Usage: "Max permitted characters for posted statuses", - Value: defaults.StatusesMaxChars, - EnvVars: []string{envNames.StatusesMaxChars}, - }, - &cli.IntFlag{ - Name: flagNames.StatusesCWMaxChars, - Usage: "Max permitted characters for content/spoiler warnings on statuses", - Value: defaults.StatusesCWMaxChars, - EnvVars: []string{envNames.StatusesCWMaxChars}, - }, - &cli.IntFlag{ - Name: flagNames.StatusesPollMaxOptions, - Usage: "Max amount of options permitted on a poll", - Value: defaults.StatusesPollMaxOptions, - EnvVars: []string{envNames.StatusesPollMaxOptions}, - }, - &cli.IntFlag{ - Name: flagNames.StatusesPollOptionMaxChars, - Usage: "Max amount of characters for a poll option", - Value: defaults.StatusesPollOptionMaxChars, - EnvVars: []string{envNames.StatusesPollOptionMaxChars}, - }, - &cli.IntFlag{ - Name: flagNames.StatusesMaxMediaFiles, - Usage: "Maximum number of media files/attachments per status", - Value: defaults.StatusesMaxMediaFiles, - EnvVars: []string{envNames.StatusesMaxMediaFiles}, - }, - } -} -- cgit v1.2.3