You've already forked woodpecker
mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-11-29 21:48:14 +02:00
Make sure we dont have hidden options for backend and pipeline compiler (#2123)
move options based on **os.Getenv** into flags --------- *Sponsored by Kithara Software GmbH*
This commit is contained in:
@@ -16,7 +16,6 @@ package compiler
|
||||
|
||||
import (
|
||||
"net/url"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
@@ -174,22 +173,6 @@ func WithS3Cacher(access, secret, region, bucket string) Option {
|
||||
}
|
||||
}
|
||||
|
||||
// WithProxy configures the compiler with HTTP_PROXY, HTTPS_PROXY,
|
||||
// and NO_PROXY environment variables added by default to every
|
||||
// container in the pipeline.
|
||||
func WithProxy() Option {
|
||||
return WithEnviron(
|
||||
map[string]string{
|
||||
"no_proxy": noProxy,
|
||||
"NO_PROXY": noProxy,
|
||||
"http_proxy": httpProxy,
|
||||
"HTTP_PROXY": httpProxy,
|
||||
"HTTPS_PROXY": httpsProxy,
|
||||
"https_proxy": httpsProxy,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
// WithNetworks configures the compiler with additional networks
|
||||
// to be connected to pipeline containers
|
||||
func WithNetworks(networks ...string) Option {
|
||||
@@ -233,38 +216,24 @@ func WithNetrcOnlyTrusted(only bool) Option {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO(bradrydzewski) consider an alternate approach to
|
||||
// WithProxy where the proxy strings are passed directly
|
||||
// to the function as named parameters.
|
||||
|
||||
// func WithProxy2(http, https, none string) Option {
|
||||
// return WithEnviron(
|
||||
// map[string]string{
|
||||
// "no_proxy": none,
|
||||
// "NO_PROXY": none,
|
||||
// "http_proxy": http,
|
||||
// "HTTP_PROXY": http,
|
||||
// "HTTPS_PROXY": https,
|
||||
// "https_proxy": https,
|
||||
// },
|
||||
// )
|
||||
// }
|
||||
|
||||
var (
|
||||
noProxy = getenv("no_proxy")
|
||||
httpProxy = getenv("https_proxy")
|
||||
httpsProxy = getenv("https_proxy")
|
||||
)
|
||||
|
||||
// getenv returns the named environment variable.
|
||||
func getenv(name string) (value string) {
|
||||
name = strings.ToUpper(name)
|
||||
if value := os.Getenv(name); value != "" {
|
||||
return value
|
||||
}
|
||||
name = strings.ToLower(name)
|
||||
if value := os.Getenv(name); value != "" {
|
||||
return value
|
||||
}
|
||||
return
|
||||
type ProxyOptions struct {
|
||||
NoProxy string
|
||||
HTTPProxy string
|
||||
HTTPSProxy string
|
||||
}
|
||||
|
||||
// WithProxy configures the compiler with HTTP_PROXY, HTTPS_PROXY,
|
||||
// and NO_PROXY environment variables added by default to every
|
||||
// container in the pipeline.
|
||||
func WithProxy(opt ProxyOptions) Option {
|
||||
return WithEnviron(
|
||||
map[string]string{
|
||||
"no_proxy": opt.NoProxy,
|
||||
"NO_PROXY": opt.NoProxy,
|
||||
"http_proxy": opt.HTTPProxy,
|
||||
"HTTP_PROXY": opt.HTTPProxy,
|
||||
"HTTPS_PROXY": opt.HTTPSProxy,
|
||||
"https_proxy": opt.HTTPSProxy,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user