diff --git a/cli/exec/flags.go b/cli/exec/flags.go index 10518d32b..b3368a923 100644 --- a/cli/exec/flags.go +++ b/cli/exec/flags.go @@ -193,22 +193,22 @@ var flags = []cli.Flag{ Name: "repo-trusted-security", Usage: "Set the metadata environment variable \"CI_REPO_TRUSTED_SECURITY\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PIPELINE_NUMBER"), Name: "pipeline-number", Usage: "Set the metadata environment variable \"CI_PIPELINE_NUMBER\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PIPELINE_PARENT"), Name: "pipeline-parent", Usage: "Set the metadata environment variable \"CI_PIPELINE_PARENT\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PIPELINE_CREATED"), Name: "pipeline-created", Usage: "Set the metadata environment variable \"CI_PIPELINE_CREATED\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PIPELINE_STARTED"), Name: "pipeline-started", Usage: "Set the metadata environment variable \"CI_PIPELINE_STARTED\".", @@ -290,22 +290,22 @@ var flags = []cli.Flag{ Name: "commit-release-is-pre", Usage: "Set the metadata environment variable \"CI_COMMIT_PRERELEASE\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PREV_PIPELINE_NUMBER"), Name: "prev-pipeline-number", Usage: "Set the metadata environment variable \"CI_PREV_PIPELINE_NUMBER\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PREV_PIPELINE_CREATED"), Name: "prev-pipeline-created", Usage: "Set the metadata environment variable \"CI_PREV_PIPELINE_CREATED\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PREV_PIPELINE_STARTED"), Name: "prev-pipeline-started", Usage: "Set the metadata environment variable \"CI_PREV_PIPELINE_STARTED\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_PREV_PIPELINE_FINISHED"), Name: "prev-pipeline-finished", Usage: "Set the metadata environment variable \"CI_PREV_PIPELINE_FINISHED\".", @@ -380,7 +380,7 @@ var flags = []cli.Flag{ Name: "workflow-name", Usage: "Set the metadata environment variable \"CI_WORKFLOW_NAME\".", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("CI_WORKFLOW_NUMBER"), Name: "workflow-number", Usage: "Set the metadata environment variable \"CI_WORKFLOW_NUMBER\".", diff --git a/cli/exec/metadata.go b/cli/exec/metadata.go index 8664ec2c4..b757ae803 100644 --- a/cli/exec/metadata.go +++ b/cli/exec/metadata.go @@ -87,11 +87,11 @@ func metadataFromContext(_ context.Context, c *cli.Command, axis matrix.Axis, w metadataFileAndOverrideOrDefault(c, "repo-trusted-volumes", func(b bool) { m.Repo.Trusted.Volumes = b }, c.Bool) // Current Pipeline - metadataFileAndOverrideOrDefault(c, "pipeline-number", func(i int64) { m.Curr.Number = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "pipeline-parent", func(i int64) { m.Curr.Parent = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "pipeline-created", func(i int64) { m.Curr.Created = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "pipeline-started", func(i int64) { m.Curr.Started = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "pipeline-finished", func(i int64) { m.Curr.Finished = i }, c.Int) + metadataFileAndOverrideOrDefault(c, "pipeline-number", func(i int64) { m.Curr.Number = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "pipeline-parent", func(i int64) { m.Curr.Parent = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "pipeline-created", func(i int64) { m.Curr.Created = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "pipeline-started", func(i int64) { m.Curr.Started = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "pipeline-finished", func(i int64) { m.Curr.Finished = i }, c.Int64) metadataFileAndOverrideOrDefault(c, "pipeline-status", func(s string) { m.Curr.Status = s }, c.String) metadataFileAndOverrideOrDefault(c, "pipeline-event", func(s string) { m.Curr.Event = s }, c.String) metadataFileAndOverrideOrDefault(c, "pipeline-url", func(s string) { m.Curr.ForgeURL = s }, c.String) @@ -112,10 +112,10 @@ func metadataFromContext(_ context.Context, c *cli.Command, axis matrix.Axis, w metadataFileAndOverrideOrDefault(c, "commit-release-is-pre", func(b bool) { m.Curr.Commit.IsPrerelease = b }, c.Bool) // Previous Pipeline - metadataFileAndOverrideOrDefault(c, "prev-pipeline-number", func(i int64) { m.Prev.Number = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "prev-pipeline-created", func(i int64) { m.Prev.Created = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "prev-pipeline-started", func(i int64) { m.Prev.Started = i }, c.Int) - metadataFileAndOverrideOrDefault(c, "prev-pipeline-finished", func(i int64) { m.Prev.Finished = i }, c.Int) + metadataFileAndOverrideOrDefault(c, "prev-pipeline-number", func(i int64) { m.Prev.Number = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "prev-pipeline-created", func(i int64) { m.Prev.Created = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "prev-pipeline-started", func(i int64) { m.Prev.Started = i }, c.Int64) + metadataFileAndOverrideOrDefault(c, "prev-pipeline-finished", func(i int64) { m.Prev.Finished = i }, c.Int64) metadataFileAndOverrideOrDefault(c, "prev-pipeline-status", func(s string) { m.Prev.Status = s }, c.String) metadataFileAndOverrideOrDefault(c, "prev-pipeline-event", func(s string) { m.Prev.Event = s }, c.String) metadataFileAndOverrideOrDefault(c, "prev-pipeline-url", func(s string) { m.Prev.ForgeURL = s }, c.String) @@ -132,7 +132,7 @@ func metadataFromContext(_ context.Context, c *cli.Command, axis matrix.Axis, w // Workflow metadataFileAndOverrideOrDefault(c, "workflow-name", func(s string) { m.Workflow.Name = s }, c.String) - metadataFileAndOverrideOrDefault(c, "workflow-number", func(i int64) { m.Workflow.Number = int(i) }, c.Int) + metadataFileAndOverrideOrDefault(c, "workflow-number", func(i int64) { m.Workflow.Number = int(i) }, c.Int64) m.Workflow.Matrix = axis // System diff --git a/cli/exec/metadata_test.go b/cli/exec/metadata_test.go index 0999bc504..481f0105f 100644 --- a/cli/exec/metadata_test.go +++ b/cli/exec/metadata_test.go @@ -68,7 +68,7 @@ func TestMetadataFromContext(t *testing.T) { flags := []cli.Flag{ &cli.StringFlag{Name: "metadata-file"}, &cli.StringFlag{Name: "repo-name"}, - &cli.IntFlag{Name: "pipeline-number"}, + &cli.Int64Flag{Name: "pipeline-number"}, } runCommand(flags, func(c *cli.Command) { @@ -106,7 +106,7 @@ func TestMetadataFromContext(t *testing.T) { t.Run("DefaultValues", func(t *testing.T) { flags := []cli.Flag{ &cli.StringFlag{Name: "repo-name", Value: "test/default-repo"}, - &cli.IntFlag{Name: "pipeline-number", Value: 1}, + &cli.Int64Flag{Name: "pipeline-number", Value: 1}, } runCommand(flags, func(c *cli.Command) { diff --git a/cli/pipeline/list.go b/cli/pipeline/list.go index 312456a7a..a23c46365 100644 --- a/cli/pipeline/list.go +++ b/cli/pipeline/list.go @@ -104,7 +104,7 @@ func pipelineList(c *cli.Command, client woodpecker.Client) ([]*woodpecker.Pipel branch := c.String("branch") event := c.String("event") status := c.String("status") - limit := int(c.Int("limit")) + limit := c.Int("limit") pipelines, err := shared_utils.Paginate(func(page int) ([]*woodpecker.Pipeline, error) { return client.PipelineList(repoID, diff --git a/cli/pipeline/purge.go b/cli/pipeline/purge.go index 0e22537f3..6fff2e07a 100644 --- a/cli/pipeline/purge.go +++ b/cli/pipeline/purge.go @@ -41,7 +41,7 @@ var pipelinePurgeCmd = &cli.Command{ Usage: "remove pipelines older than the specified time limit", Required: true, }, - &cli.IntFlag{ + &cli.Int64Flag{ Name: "keep-min", Usage: "minimum number of pipelines to keep", Value: 10, @@ -73,7 +73,7 @@ func pipelinePurge(c *cli.Command, client woodpecker.Client) (err error) { } olderThan := c.String("older-than") - keepMin := c.Int("keep-min") + keepMin := c.Int64("keep-min") dryRun := c.Bool("dry-run") duration, err := time.ParseDuration(olderThan) diff --git a/cli/repo/cron/cron_rm.go b/cli/repo/cron/cron_rm.go index 89a6fcb7b..b7cd852c0 100644 --- a/cli/repo/cron/cron_rm.go +++ b/cli/repo/cron/cron_rm.go @@ -41,7 +41,7 @@ var cronDeleteCmd = &cli.Command{ func cronDelete(ctx context.Context, c *cli.Command) error { var ( - cronID = c.Int("id") + cronID = c.Int64("id") repoIDOrFullName = c.String("repository") ) if repoIDOrFullName == "" { diff --git a/cli/repo/cron/cron_show.go b/cli/repo/cron/cron_show.go index c2bc9c36b..8bf09ab39 100644 --- a/cli/repo/cron/cron_show.go +++ b/cli/repo/cron/cron_show.go @@ -43,7 +43,7 @@ var cronShowCmd = &cli.Command{ func cronShow(ctx context.Context, c *cli.Command) error { var ( - cronID = c.Int("id") + cronID = c.Int64("id") repoIDOrFullName = c.String("repository") format = c.String("format") + "\n" ) diff --git a/cli/repo/cron/cron_update.go b/cli/repo/cron/cron_update.go index 987505b84..323893027 100644 --- a/cli/repo/cron/cron_update.go +++ b/cli/repo/cron/cron_update.go @@ -57,7 +57,7 @@ var cronUpdateCmd = &cli.Command{ func cronUpdate(ctx context.Context, c *cli.Command) error { var ( repoIDOrFullName = c.String("repository") - cronID = c.Int("id") + cronID = c.Int64("id") jobName = c.String("name") branch = c.String("branch") schedule = c.String("schedule") diff --git a/cli/repo/repo_update.go b/cli/repo/repo_update.go index dd28e3d28..2babd8cc2 100644 --- a/cli/repo/repo_update.go +++ b/cli/repo/repo_update.go @@ -83,7 +83,7 @@ func repoUpdate(ctx context.Context, c *cli.Command) error { timeout = c.Duration("timeout") trusted = c.Bool("trusted") requireApproval = c.String("require-approval") - pipelineCounter = int(c.Int("pipeline-counter")) + pipelineCounter = c.Int("pipeline-counter") unsafe = c.Bool("unsafe") ) diff --git a/cmd/agent/core/agent.go b/cmd/agent/core/agent.go index fc751a788..93f057024 100644 --- a/cmd/agent/core/agent.go +++ b/cmd/agent/core/agent.go @@ -88,7 +88,7 @@ func run(ctx context.Context, c *cli.Command, backends []types.Backend) error { hostname, _ = os.Hostname() } - counter.Polling = int(c.Int("max-workflows")) + counter.Polling = c.Int("max-workflows") counter.Running = 0 if c.Bool("healthcheck") { @@ -199,7 +199,7 @@ func run(ctx context.Context, c *cli.Command, backends []types.Backend) error { } log.Debug().Msgf("loaded %s backend engine", backendEngine.Name()) - maxWorkflows := int(c.Int("max-workflows")) + maxWorkflows := c.Int("max-workflows") customLabels := make(map[string]string) if err := stringSliceAddToMap(c.StringSlice("labels"), customLabels); err != nil { @@ -313,7 +313,7 @@ func runWithRetry(backendEngines []types.Backend) func(ctx context.Context, c *c initHealth() - retryCount := int(c.Int("connect-retry-count")) + retryCount := c.Int("connect-retry-count") retryDelay := c.Duration("connect-retry-delay") var err error for i := 0; i < retryCount; i++ { diff --git a/cmd/server/flags.go b/cmd/server/flags.go index e03c9e630..abd24024c 100644 --- a/cmd/server/flags.go +++ b/cmd/server/flags.go @@ -166,13 +166,13 @@ var flags = append([]cli.Flag{ Usage: "The default docker image to be used when cloning the repo", Value: constant.DefaultClonePlugin, }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_DEFAULT_PIPELINE_TIMEOUT"), Name: "default-pipeline-timeout", Usage: "The default time in minutes for a repo in minutes before a pipeline gets killed", Value: 60, }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_MAX_PIPELINE_TIMEOUT"), Name: "max-pipeline-timeout", Usage: "The maximum time in minutes you can set in the repo settings before a pipeline gets killed", diff --git a/cmd/server/server.go b/cmd/server/server.go index 064ba8b08..75fe27fec 100644 --- a/cmd/server/server.go +++ b/cmd/server/server.go @@ -98,7 +98,7 @@ func run(ctx context.Context, c *cli.Command) error { return setupStore(ctx, c) }, backoff.WithBackOff(backoff.NewExponentialBackOff()), - backoff.WithMaxTries(uint(c.Uint("db-max-retries"))), + backoff.WithMaxTries(c.Uint("db-max-retries")), backoff.WithNotify(func(err error, delay time.Duration) { log.Error().Msgf("failed to setup store: %v: retry in %v", err, delay) })) diff --git a/cmd/server/setup.go b/cmd/server/setup.go index 6481714bd..fc7e9563e 100644 --- a/cmd/server/setup.go +++ b/cmd/server/setup.go @@ -56,8 +56,8 @@ func setupStore(ctx context.Context, c *cli.Command) (store.Store, error) { xorm := store.XORM{ Log: c.Bool("db-log"), ShowSQL: c.Bool("db-log-sql"), - MaxOpenConns: int(c.Int("db-max-open-connections")), - MaxIdleConns: int(c.Int("db-max-idle-connections")), + MaxOpenConns: c.Int("db-max-open-connections"), + MaxIdleConns: c.Int("db-max-idle-connections"), ConnMaxLifetime: c.Duration("db-max-connection-timeout"), } @@ -192,8 +192,8 @@ func setupEvilGlobals(ctx context.Context, c *cli.Command, s store.Store) (err e events = append(events, model.WebhookEvent(v)) } server.Config.Pipeline.DefaultCancelPreviousPipelineEvents = events - server.Config.Pipeline.DefaultTimeout = c.Int("default-pipeline-timeout") - server.Config.Pipeline.MaxTimeout = c.Int("max-pipeline-timeout") + server.Config.Pipeline.DefaultTimeout = c.Int64("default-pipeline-timeout") + server.Config.Pipeline.MaxTimeout = c.Int64("max-pipeline-timeout") _labels := c.StringSlice("default-workflow-labels") labels := make(map[string]string, len(_labels)) diff --git a/go.mod b/go.mod index b4cb9c044..8193dd545 100644 --- a/go.mod +++ b/go.mod @@ -52,7 +52,7 @@ require ( github.com/swaggo/gin-swagger v1.6.0 github.com/swaggo/swag v1.16.4 github.com/urfave/cli-docs/v3 v3.0.0-alpha6 - github.com/urfave/cli/v3 v3.1.1 + github.com/urfave/cli/v3 v3.2.0 github.com/xeipuuv/gojsonschema v1.2.0 github.com/yaronf/httpsign v0.3.2 github.com/zalando/go-keyring v0.2.6 @@ -64,7 +64,7 @@ require ( golang.org/x/sync v0.13.0 golang.org/x/term v0.31.0 golang.org/x/text v0.24.0 - google.golang.org/grpc v1.71.1 + google.golang.org/grpc v1.72.0 google.golang.org/protobuf v1.36.6 gopkg.in/yaml.v3 v3.0.1 k8s.io/api v0.32.3 @@ -201,8 +201,8 @@ require ( golang.org/x/sys v0.32.0 // indirect golang.org/x/time v0.10.0 // indirect golang.org/x/tools v0.27.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20250106144421-5f5ef82da422 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a // indirect gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gotest.tools/v3 v3.4.0 // indirect diff --git a/go.sum b/go.sum index 6f9121323..7f33e72b7 100644 --- a/go.sum +++ b/go.sum @@ -551,8 +551,8 @@ github.com/urfave/cli-docs/v3 v3.0.0-alpha6 h1:w/l/N0xw1rO/aHRIGXJ0lDwwYFOzilup1 github.com/urfave/cli-docs/v3 v3.0.0-alpha6/go.mod h1:p7Z4lg8FSTrPB9GTaNyTrK3ygffHZcK3w0cU2VE+mzU= github.com/urfave/cli/v2 v2.3.0 h1:qph92Y649prgesehzOrQjdWyxFOp/QVM+6imKHad91M= github.com/urfave/cli/v2 v2.3.0/go.mod h1:LJmUH05zAU44vOAcrfzZQKsZbVcdbOG8rtL3/XcUArI= -github.com/urfave/cli/v3 v3.1.1 h1:bNnl8pFI5dxPOjeONvFCDFoECLQsceDG4ejahs4Jtxk= -github.com/urfave/cli/v3 v3.1.1/go.mod h1:FJSKtM/9AiiTOJL4fJ6TbMUkxBXn7GO9guZqoZtpYpo= +github.com/urfave/cli/v3 v3.2.0 h1:m8WIXY0U9LCuUl5r+0fqLWDhNYWt6qvlW+GcF4EoXf8= +github.com/urfave/cli/v3 v3.2.0/go.mod h1:FJSKtM/9AiiTOJL4fJ6TbMUkxBXn7GO9guZqoZtpYpo= github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= @@ -740,12 +740,12 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20250106144421-5f5ef82da422 h1:GVIKPyP/kLIyVOgOnTwFOrvQaQUzOzGMCxgFUOEmm24= -google.golang.org/genproto/googleapis/api v0.0.0-20250106144421-5f5ef82da422/go.mod h1:b6h1vNKhxaSoEI+5jc3PJUCustfli/mRab7295pY7rw= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f h1:OxYkA3wjPsZyBylwymxSHa7ViiW1Sml4ToBrncvFehI= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250115164207-1a7da9e5054f/go.mod h1:+2Yz8+CLJbIfL9z73EW45avw8Lmge3xVElCP9zEKi50= -google.golang.org/grpc v1.71.1 h1:ffsFWr7ygTUscGPI0KKK6TLrGz0476KUvvsbqWK0rPI= -google.golang.org/grpc v1.71.1/go.mod h1:H0GRtasmQOh9LkFoCPDu3ZrwUtD1YGE+b2vYBYd/8Ec= +google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a h1:nwKuGPlUAt+aR+pcrkfFRrTU1BVrSmYyYMxYbUIVHr0= +google.golang.org/genproto/googleapis/api v0.0.0-20250218202821-56aae31c358a/go.mod h1:3kWAYMk1I75K4vykHtKt2ycnOgpA6974V7bREqbsenU= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a h1:51aaUVRocpvUOSQKM6Q7VuoaktNIaMCLuhZB6DKksq4= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a/go.mod h1:uRxBH1mhmO8PGhU89cMcHaXKZqO+OfakD8QQO0oYwlQ= +google.golang.org/grpc v1.72.0 h1:S7UkcVa60b5AAQTaO6ZKamFp1zMZSU0fGDK2WZLbBnM= +google.golang.org/grpc v1.72.0/go.mod h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= diff --git a/pipeline/backend/docker/config.go b/pipeline/backend/docker/config.go index 299ce31b8..78347c6e3 100644 --- a/pipeline/backend/docker/config.go +++ b/pipeline/backend/docker/config.go @@ -43,11 +43,11 @@ func configFromCli(c *cli.Command) (config, error) { enableIPv6: c.Bool("backend-docker-ipv6"), network: c.String("backend-docker-network"), resourceLimit: resourceLimit{ - MemSwapLimit: c.Int("backend-docker-limit-mem-swap"), - MemLimit: c.Int("backend-docker-limit-mem"), - ShmSize: c.Int("backend-docker-limit-shm-size"), - CPUQuota: c.Int("backend-docker-limit-cpu-quota"), - CPUShares: c.Int("backend-docker-limit-cpu-shares"), + MemSwapLimit: c.Int64("backend-docker-limit-mem-swap"), + MemLimit: c.Int64("backend-docker-limit-mem"), + ShmSize: c.Int64("backend-docker-limit-shm-size"), + CPUQuota: c.Int64("backend-docker-limit-cpu-quota"), + CPUShares: c.Int64("backend-docker-limit-cpu-shares"), CPUSet: c.String("backend-docker-limit-cpu-set"), }, } diff --git a/pipeline/backend/docker/flags.go b/pipeline/backend/docker/flags.go index e1ac036e2..e6918274e 100644 --- a/pipeline/backend/docker/flags.go +++ b/pipeline/backend/docker/flags.go @@ -59,27 +59,27 @@ var Flags = []cli.Flag{ // // resource limit parameters // - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_BACKEND_DOCKER_LIMIT_MEM_SWAP", "WOODPECKER_LIMIT_MEM_SWAP"), Name: "backend-docker-limit-mem-swap", Usage: "maximum memory used for swap in bytes", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_BACKEND_DOCKER_LIMIT_MEM", "WOODPECKER_LIMIT_MEM"), Name: "backend-docker-limit-mem", Usage: "maximum memory allowed in bytes", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_BACKEND_DOCKER_LIMIT_SHM_SIZE", "WOODPECKER_LIMIT_SHM_SIZE"), Name: "backend-docker-limit-shm-size", Usage: "docker /dev/shm allowed in bytes", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_QUOTA", "WOODPECKER_LIMIT_CPU_QUOTA"), Name: "backend-docker-limit-cpu-quota", Usage: "impose a cpu quota", }, - &cli.IntFlag{ + &cli.Int64Flag{ Sources: cli.EnvVars("WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_SHARES", "WOODPECKER_LIMIT_CPU_SHARES"), Name: "backend-docker-limit-cpu-shares", Usage: "change the cpu shares", diff --git a/server/services/setup.go b/server/services/setup.go index dca0c4195..9c4493716 100644 --- a/server/services/setup.go +++ b/server/services/setup.go @@ -63,7 +63,7 @@ func setupConfigService(c *cli.Command, privateSignatureKey ed25519.PrivateKey) if retries == 0 { return nil, fmt.Errorf("WOODPECKER_FORGE_RETRY can not be 0") } - configFetcher := config.NewForge(timeout, uint(retries)) + configFetcher := config.NewForge(timeout, retries) if endpoint := c.String("config-service-endpoint"); endpoint != "" { httpFetcher := config.NewHTTP(endpoint, privateSignatureKey)