Something went wrong. Try again.
Mirror of https://git.jolheiser.com/jsonnetpecker
Something went wrong. Try again.
jsonnetpecker jsonnet.patch
3.4 kB · 88 lines
at main
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889From 6d284379349794ad8939842e4067828aaab86cb9 Mon Sep 17 00:00:00 2001From: jolheiser <git@jolheiser.com>Date: Wed, 13 May 2026 15:14:24 -0500Subject: [PATCH] feat: allow admins to extend default pipeline config paths
Signed-off-by: jolheiser <git@jolheiser.com>--- cmd/server/flags.go | 8 ++++++++ cmd/server/setup.go | 4 ++++ server/services/config/forge.go | 2 +- shared/constant/constant.go | 4 ++-- 4 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/cmd/server/flags.go b/cmd/server/flags.goindex 2638bf5f7..ecfdb5d5f 100644--- a/cmd/server/flags.go+++ b/cmd/server/flags.go@@ -289,6 +289,14 @@ var flags = append([]cli.Flag{ Name: "config-extension-netrc", Usage: "whether global configuration extension should receive netrc data", },+ &cli.StringSliceFlag{+ Sources: cli.EnvVars("WOODPECKER_EXTRA_DEFAULT_PIPELINE_CONFIGS"),+ Name: "extra-default-pipeline-configs",+ Usage: "extra default pipeline config paths to check",+ Config: cli.StringConfig{+ TrimSpace: true,+ },+ }, &cli.StringFlag{ Sources: cli.EnvVars("WOODPECKER_REGISTRY_EXTENSION_ENDPOINT"), Name: "registry-extension-endpoint",diff --git a/cmd/server/setup.go b/cmd/server/setup.goindex 6e8bb194c..5e74fbaf4 100644--- a/cmd/server/setup.go+++ b/cmd/server/setup.go@@ -45,6 +45,7 @@ import ( "go.woodpecker-ci.org/woodpecker/v3/server/store" "go.woodpecker-ci.org/woodpecker/v3/server/store/datastore" "go.woodpecker-ci.org/woodpecker/v3/server/store/types"+ "go.woodpecker-ci.org/woodpecker/v3/shared/constant" ) const (@@ -158,6 +159,9 @@ func setupJWTSecret(_store store.Store) (string, error) { } func setupEvilGlobals(ctx context.Context, c *cli.Command, s store.Store) (err error) {+ // default config paths+ constant.DefaultConfigOrder = append(constant.DefaultConfigOrder, c.StringSlice("extra-default-pipeline-configs")...)+ // services server.Config.Services.Logs = logging.New() server.Config.Services.Membership = setupMembershipService(ctx, s)diff --git a/server/services/config/forge.go b/server/services/config/forge.goindex 57bf040e8..aee3ad7c2 100644--- a/server/services/config/forge.go+++ b/server/services/config/forge.go@@ -97,7 +97,7 @@ func (f *forgeFetcherContext) fetch(c context.Context, config string) ([]*types. log.Trace().Msgf("configFetcher[%s]: user did not define own config, following default procedure", f.repo.FullName) // for the order see shared/constants/constants.go- fileMetas, err := f.getFirstAvailableConfig(ctx, constant.DefaultConfigOrder[:])+ fileMetas, err := f.getFirstAvailableConfig(ctx, constant.DefaultConfigOrder) if err == nil { return fileMetas, nil }diff --git a/shared/constant/constant.go b/shared/constant/constant.goindex e56957b82..9de20ca53 100644--- a/shared/constant/constant.go+++ b/shared/constant/constant.go@@ -16,9 +16,9 @@ package constant import "time" -// DefaultConfigOrder represent the priority in witch woodpecker search for a pipeline config by default+// DefaultConfigOrder represent the priority in which woodpecker searches for a pipeline config by default // folders are indicated by supplying a trailing slash.-var DefaultConfigOrder = [...]string{+var DefaultConfigOrder = []string{ ".woodpecker/", ".woodpecker.yaml", ".woodpecker.yml",
base-commit: 48e1ece20057e59de4e8e3fe25fc1f3a41e8a020-- 2.50.1