mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-10-22 00:24:58 +00:00
Add support for superseding runs (#831)
closes #11 Added support: 1. Environment variable `WOODPECKER_DELETE_MULTIPLE_RUNS_ON_EVENTS` (Default pull_request, push) 2. Builds will be marked as killed when they "override" another build
This commit is contained in:
@@ -97,6 +97,12 @@ var flags = []cli.Flag{
|
||||
Name: "authenticate-public-repos",
|
||||
Usage: "Always use authentication to clone repositories even if they are public. Needed if the SCM requires to always authenticate as used by many companies.",
|
||||
},
|
||||
&cli.StringSliceFlag{
|
||||
EnvVars: []string{"WOODPECKER_DEFAULT_CANCEL_PREVIOUS_PIPELINE_EVENTS"},
|
||||
Name: "default-cancel-previous-pipeline-events",
|
||||
Usage: "List of event names that will be canceled when a new pipeline for the same context (tag, branch) is created.",
|
||||
Value: cli.NewStringSlice("push", "pull_request"),
|
||||
},
|
||||
&cli.StringFlag{
|
||||
EnvVars: []string{"WOODPECKER_DEFAULT_CLONE_IMAGE"},
|
||||
Name: "default-clone-image",
|
||||
|
@@ -41,6 +41,7 @@ import (
|
||||
"github.com/woodpecker-ci/woodpecker/server"
|
||||
woodpeckerGrpcServer "github.com/woodpecker-ci/woodpecker/server/grpc"
|
||||
"github.com/woodpecker-ci/woodpecker/server/logging"
|
||||
"github.com/woodpecker-ci/woodpecker/server/model"
|
||||
"github.com/woodpecker-ci/woodpecker/server/plugins/configuration"
|
||||
"github.com/woodpecker-ci/woodpecker/server/plugins/sender"
|
||||
"github.com/woodpecker-ci/woodpecker/server/pubsub"
|
||||
@@ -287,6 +288,14 @@ func setupEvilGlobals(c *cli.Context, v store.Store, r remote.Remote) {
|
||||
// Cloning
|
||||
server.Config.Pipeline.DefaultCloneImage = c.String("default-clone-image")
|
||||
|
||||
// Execution
|
||||
_events := c.StringSlice("default-cancel-previous-pipeline-events")
|
||||
events := make([]model.WebhookEvent, len(_events))
|
||||
for _, v := range _events {
|
||||
events = append(events, model.WebhookEvent(v))
|
||||
}
|
||||
server.Config.Pipeline.DefaultCancelPreviousPipelineEvents = events
|
||||
|
||||
// limits
|
||||
server.Config.Pipeline.Limits.MemSwapLimit = c.Int64("limit-mem-swap")
|
||||
server.Config.Pipeline.Limits.MemLimit = c.Int64("limit-mem")
|
||||
|
Reference in New Issue
Block a user