golangci-lint update, ci cleanup, group dependabot updates (#11071)
* bump golangci-lint to v1.56.x Signed-off-by: cpanato <ctadeu@gmail.com> * cleanup empty lines Signed-off-by: cpanato <ctadeu@gmail.com> * group dependabot updates Signed-off-by: cpanato <ctadeu@gmail.com> * run on job changes as well Signed-off-by: cpanato <ctadeu@gmail.com> * remove deprecated checks Signed-off-by: cpanato <ctadeu@gmail.com> * fix lints and format Signed-off-by: cpanato <ctadeu@gmail.com> --------- Signed-off-by: cpanato <ctadeu@gmail.com>
This commit is contained in:
parent
0e11470ef3
commit
12fbe9b163
45 changed files with 96 additions and 100 deletions
14
.github/dependabot.yml
vendored
14
.github/dependabot.yml
vendored
|
@ -9,6 +9,10 @@ updates:
|
||||||
- "area/dependency"
|
- "area/dependency"
|
||||||
- "release-note-none"
|
- "release-note-none"
|
||||||
- "ok-to-test"
|
- "ok-to-test"
|
||||||
|
groups:
|
||||||
|
all:
|
||||||
|
update-types:
|
||||||
|
- "patch"
|
||||||
- package-ecosystem: "github-actions"
|
- package-ecosystem: "github-actions"
|
||||||
directory: "/"
|
directory: "/"
|
||||||
schedule:
|
schedule:
|
||||||
|
@ -17,6 +21,11 @@ updates:
|
||||||
- "area/dependency"
|
- "area/dependency"
|
||||||
- "release-note-none"
|
- "release-note-none"
|
||||||
- "ok-to-test"
|
- "ok-to-test"
|
||||||
|
groups:
|
||||||
|
all:
|
||||||
|
update-types:
|
||||||
|
- "minor"
|
||||||
|
- "patch"
|
||||||
- package-ecosystem: "docker"
|
- package-ecosystem: "docker"
|
||||||
directory: "/images"
|
directory: "/images"
|
||||||
schedule:
|
schedule:
|
||||||
|
@ -25,3 +34,8 @@ updates:
|
||||||
- "area/dependency"
|
- "area/dependency"
|
||||||
- "release-note-none"
|
- "release-note-none"
|
||||||
- "ok-to-test"
|
- "ok-to-test"
|
||||||
|
groups:
|
||||||
|
actions:
|
||||||
|
update-types:
|
||||||
|
- "minor"
|
||||||
|
- "patch"
|
||||||
|
|
5
.github/workflows/golangci-lint.yml
vendored
5
.github/workflows/golangci-lint.yml
vendored
|
@ -2,10 +2,9 @@ name: golangci-lint
|
||||||
|
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
|
||||||
- "*"
|
|
||||||
paths:
|
paths:
|
||||||
- '**/*.go'
|
- '**/*.go'
|
||||||
|
- '.github/workflows/golangci-lint.yml'
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
@ -31,4 +30,4 @@ jobs:
|
||||||
- name: golangci-lint
|
- name: golangci-lint
|
||||||
uses: golangci/golangci-lint-action@3cfe3a4abbb849e10058ce4af15d205b6da42804 # v4.0.0
|
uses: golangci/golangci-lint-action@3cfe3a4abbb849e10058ce4af15d205b6da42804 # v4.0.0
|
||||||
with:
|
with:
|
||||||
version: v1.55.2
|
version: v1.56
|
||||||
|
|
3
.github/workflows/images.yaml
vendored
3
.github/workflows/images.yaml
vendored
|
@ -89,7 +89,6 @@ jobs:
|
||||||
name: custom-error-pages
|
name: custom-error-pages
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
|
|
||||||
|
|
||||||
e2e-test-echo:
|
e2e-test-echo:
|
||||||
needs: changes
|
needs: changes
|
||||||
if: |
|
if: |
|
||||||
|
@ -214,5 +213,3 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
export TAG=$(cat images/nginx-1.25/TAG)
|
export TAG=$(cat images/nginx-1.25/TAG)
|
||||||
cd images/nginx-1.25/rootfs && docker buildx build --platform=${{ env.PLATFORMS }} --push -t ingressnginx/nginx-1.25:${TAG} .
|
cd images/nginx-1.25/rootfs && docker buildx build --platform=${{ env.PLATFORMS }} --push -t ingressnginx/nginx-1.25:${TAG} .
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -200,9 +200,7 @@ linters-settings:
|
||||||
- stringConcatSimplify
|
- stringConcatSimplify
|
||||||
- stringsCompare
|
- stringsCompare
|
||||||
- switchTrue
|
- switchTrue
|
||||||
- timeCmpSimplify
|
|
||||||
- timeExprSimplify
|
- timeExprSimplify
|
||||||
- todoCommentWithoutDetail
|
|
||||||
- tooManyResultsChecker
|
- tooManyResultsChecker
|
||||||
- typeAssertChain
|
- typeAssertChain
|
||||||
- typeDefFirst
|
- typeDefFirst
|
||||||
|
|
|
@ -47,7 +47,7 @@ func main() {
|
||||||
backendsAllCmd := &cobra.Command{
|
backendsAllCmd := &cobra.Command{
|
||||||
Use: "all",
|
Use: "all",
|
||||||
Short: "Output the all dynamic backend information as a JSON array",
|
Short: "Output the all dynamic backend information as a JSON array",
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(_ *cobra.Command, _ []string) {
|
||||||
backendsAll()
|
backendsAll()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -56,7 +56,7 @@ func main() {
|
||||||
backendsListCmd := &cobra.Command{
|
backendsListCmd := &cobra.Command{
|
||||||
Use: "list",
|
Use: "list",
|
||||||
Short: "Output a newline-separated list of the backend names",
|
Short: "Output a newline-separated list of the backend names",
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(_ *cobra.Command, _ []string) {
|
||||||
backendsList()
|
backendsList()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,7 @@ func main() {
|
||||||
Use: "get [backend name]",
|
Use: "get [backend name]",
|
||||||
Short: "Output the backend information only for the backend that has this name",
|
Short: "Output the backend information only for the backend that has this name",
|
||||||
Args: cobra.ExactArgs(1),
|
Args: cobra.ExactArgs(1),
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(_ *cobra.Command, args []string) {
|
||||||
backendsGet(args[0])
|
backendsGet(args[0])
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@ func main() {
|
||||||
Use: "get [hostname]",
|
Use: "get [hostname]",
|
||||||
Short: "Get the dynamically-loaded certificate information for the given hostname",
|
Short: "Get the dynamically-loaded certificate information for the given hostname",
|
||||||
Args: cobra.ExactArgs(1),
|
Args: cobra.ExactArgs(1),
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, args []string) error {
|
||||||
certGet(args[0])
|
certGet(args[0])
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
@ -93,7 +93,7 @@ func main() {
|
||||||
generalCmd := &cobra.Command{
|
generalCmd := &cobra.Command{
|
||||||
Use: "general",
|
Use: "general",
|
||||||
Short: "Output the general dynamic lua state",
|
Short: "Output the general dynamic lua state",
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(_ *cobra.Command, _ []string) {
|
||||||
general()
|
general()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -102,7 +102,7 @@ func main() {
|
||||||
confCmd := &cobra.Command{
|
confCmd := &cobra.Command{
|
||||||
Use: "conf",
|
Use: "conf",
|
||||||
Short: "Dump the contents of /etc/nginx/nginx.conf",
|
Short: "Dump the contents of /etc/nginx/nginx.conf",
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(_ *cobra.Command, _ []string) {
|
||||||
readNginxConf()
|
readNginxConf()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,7 +74,7 @@ func main() {
|
||||||
handleFatalInitError(err)
|
handleFatalInitError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(conf.DefaultService) > 0 {
|
if conf.DefaultService != "" {
|
||||||
err := checkService(conf.DefaultService, kubeClient)
|
err := checkService(conf.DefaultService, kubeClient)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.Fatal(err)
|
klog.Fatal(err)
|
||||||
|
@ -83,7 +83,7 @@ func main() {
|
||||||
klog.InfoS("Valid default backend", "service", conf.DefaultService)
|
klog.InfoS("Valid default backend", "service", conf.DefaultService)
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(conf.PublishService) > 0 {
|
if conf.PublishService != "" {
|
||||||
err := checkService(conf.PublishService, kubeClient)
|
err := checkService(conf.PublishService, kubeClient)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.Fatal(err)
|
klog.Fatal(err)
|
||||||
|
@ -235,7 +235,6 @@ func createApiserverClient(apiserverHost, rootCAFile, kubeConfig string) (*kuber
|
||||||
retries++
|
retries++
|
||||||
return false, nil
|
return false, nil
|
||||||
})
|
})
|
||||||
|
|
||||||
// err is returned in case of timeout in the exponential backoff (ErrWaitTimeout)
|
// err is returned in case of timeout in the exponential backoff (ErrWaitTimeout)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, lastErr
|
return nil, lastErr
|
||||||
|
|
|
@ -34,7 +34,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "backends",
|
Use: "backends",
|
||||||
Short: "Inspect the dynamic backend information of an ingress-nginx instance",
|
Short: "Inspect the dynamic backend information of an ingress-nginx instance",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, _ []string) error {
|
||||||
backend, err := cmd.Flags().GetString("backend")
|
backend, err := cmd.Flags().GetString("backend")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -35,7 +35,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "certs",
|
Use: "certs",
|
||||||
Short: "Output the certificate data stored in an ingress-nginx pod",
|
Short: "Output the certificate data stored in an ingress-nginx pod",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, _ []string) error {
|
||||||
host, err := cmd.Flags().GetString("host")
|
host, err := cmd.Flags().GetString("host")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -36,7 +36,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "conf",
|
Use: "conf",
|
||||||
Short: "Inspect the generated nginx.conf",
|
Short: "Inspect the generated nginx.conf",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, _ []string) error {
|
||||||
host, err := cmd.Flags().GetString("host")
|
host, err := cmd.Flags().GetString("host")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -34,7 +34,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "exec",
|
Use: "exec",
|
||||||
Short: "Execute a command inside an ingress-nginx pod",
|
Short: "Execute a command inside an ingress-nginx pod",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, args []string) error {
|
||||||
util.PrintError(exec(flags, *pod, *deployment, *selector, *container, args, opts))
|
util.PrintError(exec(flags, *pod, *deployment, *selector, *container, args, opts))
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
|
|
@ -34,7 +34,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "general",
|
Use: "general",
|
||||||
Short: "Inspect the other dynamic ingress-nginx information",
|
Short: "Inspect the other dynamic ingress-nginx information",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, _ []string) error {
|
||||||
util.PrintError(general(flags, *pod, *deployment, *selector, *container))
|
util.PrintError(general(flags, *pod, *deployment, *selector, *container))
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
|
|
@ -32,7 +32,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "info",
|
Use: "info",
|
||||||
Short: "Show information about the ingress-nginx service",
|
Short: "Show information about the ingress-nginx service",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, _ []string) error {
|
||||||
service, err := cmd.Flags().GetString("service")
|
service, err := cmd.Flags().GetString("service")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -36,7 +36,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
Use: "ingresses",
|
Use: "ingresses",
|
||||||
Aliases: []string{"ingress", "ing"},
|
Aliases: []string{"ingress", "ing"},
|
||||||
Short: "Provide a short summary of all of the ingress definitions",
|
Short: "Provide a short summary of all of the ingress definitions",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, _ []string) error {
|
||||||
host, err := cmd.Flags().GetString("host")
|
host, err := cmd.Flags().GetString("host")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -139,14 +139,14 @@ func getIngressRows(ingresses *[]networking.Ingress) []ingressRow {
|
||||||
ing := &(*ingresses)[i]
|
ing := &(*ingresses)[i]
|
||||||
address := ""
|
address := ""
|
||||||
for _, lbIng := range ing.Status.LoadBalancer.Ingress {
|
for _, lbIng := range ing.Status.LoadBalancer.Ingress {
|
||||||
if len(lbIng.IP) > 0 {
|
if lbIng.IP != "" {
|
||||||
address = address + lbIng.IP + ","
|
address = address + lbIng.IP + ","
|
||||||
}
|
}
|
||||||
if len(lbIng.Hostname) > 0 {
|
if lbIng.Hostname != "" {
|
||||||
address = address + lbIng.Hostname + ","
|
address = address + lbIng.Hostname + ","
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if len(address) > 0 {
|
if address != "" {
|
||||||
address = address[:len(address)-1]
|
address = address[:len(address)-1]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -166,7 +166,7 @@ func getIngressRows(ingresses *[]networking.Ingress) []ingressRow {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handle catch-all ingress
|
// Handle catch-all ingress
|
||||||
if len(ing.Spec.Rules) == 0 && len(defaultBackendService) > 0 {
|
if len(ing.Spec.Rules) == 0 && defaultBackendService != "" {
|
||||||
row := ingressRow{
|
row := ingressRow{
|
||||||
Namespace: ing.Namespace,
|
Namespace: ing.Namespace,
|
||||||
IngressName: ing.Name,
|
IngressName: ing.Name,
|
||||||
|
|
|
@ -38,7 +38,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "lint",
|
Use: "lint",
|
||||||
Short: "Inspect kubernetes resources for possible issues",
|
Short: "Inspect kubernetes resources for possible issues",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, _ []string) error {
|
||||||
err := opts.Validate()
|
err := opts.Validate()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -73,7 +73,7 @@ func createSubcommand(flags *genericclioptions.ConfigFlags, names []string, shor
|
||||||
Use: names[0],
|
Use: names[0],
|
||||||
Aliases: names[1:],
|
Aliases: names[1:],
|
||||||
Short: short,
|
Short: short,
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, _ []string) error {
|
||||||
err := opts.Validate()
|
err := opts.Validate()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -36,7 +36,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "logs",
|
Use: "logs",
|
||||||
Short: "Get the kubernetes logs for an ingress-nginx pod",
|
Short: "Get the kubernetes logs for an ingress-nginx pod",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, _ []string) error {
|
||||||
util.PrintError(logs(flags, *pod, *deployment, *selector, *container, o))
|
util.PrintError(logs(flags, *pod, *deployment, *selector, *container, o))
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
|
|
@ -32,7 +32,7 @@ func CreateCommand(flags *genericclioptions.ConfigFlags) *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "ssh",
|
Use: "ssh",
|
||||||
Short: "ssh into a running ingress-nginx pod",
|
Short: "ssh into a running ingress-nginx pod",
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, _ []string) error {
|
||||||
util.PrintError(ssh(flags, *pod, *deployment, *selector, *container))
|
util.PrintError(ssh(flags, *pod, *deployment, *selector, *container))
|
||||||
return nil
|
return nil
|
||||||
},
|
},
|
||||||
|
|
|
@ -74,7 +74,6 @@ func run() error {
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("failed to copy files: %w", err)
|
return fmt.Errorf("failed to copy files: %w", err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -416,7 +416,7 @@ func (a authReq) Parse(ing *networking.Ingress) (interface{}, error) {
|
||||||
harr := strings.Split(hstr, ",")
|
harr := strings.Split(hstr, ",")
|
||||||
for _, header := range harr {
|
for _, header := range harr {
|
||||||
header = strings.TrimSpace(header)
|
header = strings.TrimSpace(header)
|
||||||
if len(header) > 0 {
|
if header != "" {
|
||||||
if !ValidHeader(header) {
|
if !ValidHeader(header) {
|
||||||
return nil, ing_errors.NewLocationDenied("invalid headers list")
|
return nil, ing_errors.NewLocationDenied("invalid headers list")
|
||||||
}
|
}
|
||||||
|
@ -505,7 +505,7 @@ func ParseStringToCacheDurations(input string) ([]string, error) {
|
||||||
arr := strings.Split(input, ",")
|
arr := strings.Split(input, ",")
|
||||||
for _, duration := range arr {
|
for _, duration := range arr {
|
||||||
duration = strings.TrimSpace(duration)
|
duration = strings.TrimSpace(duration)
|
||||||
if len(duration) > 0 {
|
if duration != "" {
|
||||||
if !ValidCacheDuration(duration) {
|
if !ValidCacheDuration(duration) {
|
||||||
authCacheDuration = []string{DefaultCacheDuration}
|
authCacheDuration = []string{DefaultCacheDuration}
|
||||||
return authCacheDuration, ing_errors.NewLocationDenied(fmt.Sprintf("invalid cache duration: %s", duration))
|
return authCacheDuration, ing_errors.NewLocationDenied(fmt.Sprintf("invalid cache duration: %s", duration))
|
||||||
|
|
|
@ -177,8 +177,8 @@ func (c canary) Parse(ing *networking.Ingress) (interface{}, error) {
|
||||||
config.Cookie = ""
|
config.Cookie = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
if !config.Enabled && (config.Weight > 0 || len(config.Header) > 0 || len(config.HeaderValue) > 0 || len(config.Cookie) > 0 ||
|
if !config.Enabled && (config.Weight > 0 || config.Header != "" || config.HeaderValue != "" || config.Cookie != "" ||
|
||||||
len(config.HeaderPattern) > 0) {
|
config.HeaderPattern != "") {
|
||||||
return nil, errors.NewInvalidAnnotationConfiguration(canaryAnnotation, "configured but not enabled")
|
return nil, errors.NewInvalidAnnotationConfiguration(canaryAnnotation, "configured but not enabled")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -104,7 +104,7 @@ func Test_checkAnnotation(t *testing.T) {
|
||||||
},
|
},
|
||||||
fields: AnnotationFields{
|
fields: AnnotationFields{
|
||||||
"otherannotation": AnnotationConfig{
|
"otherannotation": AnnotationConfig{
|
||||||
Validator: func(value string) error { return nil },
|
Validator: func(_ string) error { return nil },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -53,7 +53,7 @@ func TestNginxCheck(t *testing.T) {
|
||||||
server := &httptest.Server{
|
server := &httptest.Server{
|
||||||
Listener: listener,
|
Listener: listener,
|
||||||
Config: &http.Server{
|
Config: &http.Server{
|
||||||
Handler: http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
Handler: http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
|
||||||
w.WriteHeader(http.StatusOK)
|
w.WriteHeader(http.StatusOK)
|
||||||
fmt.Fprintf(w, "ok")
|
fmt.Fprintf(w, "ok")
|
||||||
}),
|
}),
|
||||||
|
|
|
@ -170,7 +170,7 @@ func (fakeTemplate) Write(conf *ngx_config.TemplateConfig) ([]byte, error) {
|
||||||
|
|
||||||
func TestCheckIngress(t *testing.T) {
|
func TestCheckIngress(t *testing.T) {
|
||||||
defer func() {
|
defer func() {
|
||||||
err := filepath.Walk(os.TempDir(), func(path string, info os.FileInfo, err error) error {
|
err := filepath.Walk(os.TempDir(), func(path string, info os.FileInfo, _ error) error {
|
||||||
if info.IsDir() && os.TempDir() != path {
|
if info.IsDir() && os.TempDir() != path {
|
||||||
return filepath.SkipDir
|
return filepath.SkipDir
|
||||||
}
|
}
|
||||||
|
@ -1573,7 +1573,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 1 {
|
if len(servers) != 1 {
|
||||||
t.Errorf("servers count should be 1, got %d", len(servers))
|
t.Errorf("servers count should be 1, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -1640,7 +1640,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 1 {
|
if len(servers) != 1 {
|
||||||
t.Errorf("servers count should be 1, got %d", len(servers))
|
t.Errorf("servers count should be 1, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -1700,7 +1700,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 1 {
|
if len(servers) != 1 {
|
||||||
t.Errorf("servers count should be 1, got %d", len(servers))
|
t.Errorf("servers count should be 1, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -1799,7 +1799,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 2 {
|
if len(servers) != 2 {
|
||||||
t.Errorf("servers count should be 2, got %d", len(servers))
|
t.Errorf("servers count should be 2, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -2059,7 +2059,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 2 {
|
if len(servers) != 2 {
|
||||||
t.Errorf("servers count should be 2, got %d", len(servers))
|
t.Errorf("servers count should be 2, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -2190,7 +2190,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(ingresses []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 2 {
|
if len(servers) != 2 {
|
||||||
t.Errorf("servers count should be 2, got %d", len(servers))
|
t.Errorf("servers count should be 2, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -2298,7 +2298,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(ingresses []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 2 {
|
if len(servers) != 2 {
|
||||||
t.Errorf("servers count should be 2, got %d", len(servers))
|
t.Errorf("servers count should be 2, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -2367,7 +2367,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 2 {
|
if len(servers) != 2 {
|
||||||
t.Errorf("servers count should be 1, got %d", len(servers))
|
t.Errorf("servers count should be 1, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
@ -2437,7 +2437,7 @@ func TestGetBackendServers(t *testing.T) {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Validate: func(ingresses []*ingress.Ingress, upstreams []*ingress.Backend, servers []*ingress.Server) {
|
Validate: func(_ []*ingress.Ingress, _ []*ingress.Backend, servers []*ingress.Server) {
|
||||||
if len(servers) != 2 {
|
if len(servers) != 2 {
|
||||||
t.Errorf("servers count should be 2, got %d", len(servers))
|
t.Errorf("servers count should be 2, got %d", len(servers))
|
||||||
return
|
return
|
||||||
|
|
|
@ -100,7 +100,7 @@ func normalizePrefixPath(path string) string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func needsRewrite(location *ingress.Location) bool {
|
func needsRewrite(location *ingress.Location) bool {
|
||||||
if len(location.Rewrite.Target) > 0 && location.Rewrite.Target != location.Path {
|
if location.Rewrite.Target != "" && location.Rewrite.Target != location.Path {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -197,7 +197,6 @@ func NewNGINXController(config *Configuration, mc metric.Collector) *NGINXContro
|
||||||
filesToWatch = append(filesToWatch, path)
|
filesToWatch = append(filesToWatch, path)
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.Fatalf("Error creating file watchers: %v", err)
|
klog.Fatalf("Error creating file watchers: %v", err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -391,7 +391,7 @@ func TestCleanTempNginxCfg(t *testing.T) {
|
||||||
|
|
||||||
var files []string
|
var files []string
|
||||||
|
|
||||||
err = filepath.Walk(os.TempDir(), func(path string, info os.FileInfo, err error) error {
|
err = filepath.Walk(os.TempDir(), func(path string, info os.FileInfo, _ error) error {
|
||||||
if info.IsDir() && os.TempDir() != path {
|
if info.IsDir() && os.TempDir() != path {
|
||||||
return filepath.SkipDir
|
return filepath.SkipDir
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,7 @@ func setupLeaderElection(config *leaderElectionConfig) {
|
||||||
|
|
||||||
var stopCh chan struct{}
|
var stopCh chan struct{}
|
||||||
callbacks := leaderelection.LeaderCallbacks{
|
callbacks := leaderelection.LeaderCallbacks{
|
||||||
OnStartedLeading: func(ctx context.Context) {
|
OnStartedLeading: func(_ context.Context) {
|
||||||
klog.V(2).InfoS("I am the new leader")
|
klog.V(2).InfoS("I am the new leader")
|
||||||
stopCh = make(chan struct{})
|
stopCh = make(chan struct{})
|
||||||
|
|
||||||
|
|
|
@ -292,7 +292,7 @@ func New(
|
||||||
// the memory consumption of nginx-ingress-controller explode.
|
// the memory consumption of nginx-ingress-controller explode.
|
||||||
// In order to avoid that we filter out labels OWNER=TILLER.
|
// In order to avoid that we filter out labels OWNER=TILLER.
|
||||||
labelsTweakListOptionsFunc := func(options *metav1.ListOptions) {
|
labelsTweakListOptionsFunc := func(options *metav1.ListOptions) {
|
||||||
if len(options.LabelSelector) > 0 {
|
if options.LabelSelector != "" {
|
||||||
options.LabelSelector += ",OWNER!=TILLER"
|
options.LabelSelector += ",OWNER!=TILLER"
|
||||||
} else {
|
} else {
|
||||||
options.LabelSelector = "OWNER!=TILLER"
|
options.LabelSelector = "OWNER!=TILLER"
|
||||||
|
|
|
@ -497,7 +497,7 @@ func buildResolvers(res, disableIpv6 interface{}) string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func needsRewrite(location *ingress.Location) bool {
|
func needsRewrite(location *ingress.Location) bool {
|
||||||
if len(location.Rewrite.Target) > 0 && location.Rewrite.Target != location.Path {
|
if location.Rewrite.Target != "" && location.Rewrite.Target != location.Path {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
|
@ -771,10 +771,10 @@ func buildProxyPass(_ string, b, loc interface{}) string {
|
||||||
return defProxyPass
|
return defProxyPass
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(location.Rewrite.Target) > 0 {
|
if location.Rewrite.Target != "" {
|
||||||
var xForwardedPrefix string
|
var xForwardedPrefix string
|
||||||
|
|
||||||
if len(location.XForwardedPrefix) > 0 {
|
if location.XForwardedPrefix != "" {
|
||||||
xForwardedPrefix = fmt.Sprintf("%s X-Forwarded-Prefix %q;\n", proxySetHeader(location), location.XForwardedPrefix)
|
xForwardedPrefix = fmt.Sprintf("%s X-Forwarded-Prefix %q;\n", proxySetHeader(location), location.XForwardedPrefix)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1738,7 +1738,7 @@ func buildCorsOriginRegex(corsOrigins []string) string {
|
||||||
originsRegex := "if ($http_origin ~* ("
|
originsRegex := "if ($http_origin ~* ("
|
||||||
for i, origin := range corsOrigins {
|
for i, origin := range corsOrigins {
|
||||||
originTrimmed := strings.TrimSpace(origin)
|
originTrimmed := strings.TrimSpace(origin)
|
||||||
if len(originTrimmed) > 0 {
|
if originTrimmed != "" {
|
||||||
builtOrigin := buildOriginRegex(originTrimmed)
|
builtOrigin := buildOriginRegex(originTrimmed)
|
||||||
originsRegex += builtOrigin
|
originsRegex += builtOrigin
|
||||||
if i != len(corsOrigins)-1 {
|
if i != len(corsOrigins)-1 {
|
||||||
|
|
|
@ -59,7 +59,7 @@ func TestAdmissionCounters(t *testing.T) {
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
name: "should return 0 as values on a fresh initiated collector",
|
name: "should return 0 as values on a fresh initiated collector",
|
||||||
test: func(am *AdmissionCollector) {
|
test: func(_ *AdmissionCollector) {
|
||||||
},
|
},
|
||||||
want: metadataFirst + `
|
want: metadataFirst + `
|
||||||
nginx_ingress_controller_admission_config_size{controller_class="nginx",controller_namespace="default",controller_pod="pod"} 0
|
nginx_ingress_controller_admission_config_size{controller_class="nginx",controller_namespace="default",controller_pod="pod"} 0
|
||||||
|
|
|
@ -42,7 +42,7 @@ func TestControllerCounters(t *testing.T) {
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
name: "should return not increment in metrics if no operations are invoked",
|
name: "should return not increment in metrics if no operations are invoked",
|
||||||
test: func(cm *Controller) {
|
test: func(_ *Controller) {
|
||||||
},
|
},
|
||||||
want: metadata + `
|
want: metadata + `
|
||||||
nginx_ingress_controller_config_last_reload_successful{controller_class="nginx",controller_namespace="default",controller_pod="pod"} 0
|
nginx_ingress_controller_config_last_reload_successful{controller_class="nginx",controller_namespace="default",controller_pod="pod"} 0
|
||||||
|
|
|
@ -329,7 +329,7 @@ func (sc *SocketCollector) handleMessage(msg []byte) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
if sc.reportStatusClasses && len(stats.Status) > 0 {
|
if sc.reportStatusClasses && stats.Status != "" {
|
||||||
stats.Status = fmt.Sprintf("%cxx", stats.Status[0])
|
stats.Status = fmt.Sprintf("%cxx", stats.Status[0])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,8 +30,7 @@ import (
|
||||||
func TestNewUDPLogListener(t *testing.T) {
|
func TestNewUDPLogListener(t *testing.T) {
|
||||||
var count uint64
|
var count uint64
|
||||||
|
|
||||||
//nolint:unparam // Unused `message` param is required by the handleMessages function
|
fn := func(message []byte) { //nolint:unparam,revive // Unused `message` param is required by the handleMessages function
|
||||||
fn := func(message []byte) {
|
|
||||||
atomic.AddUint64(&count, 1)
|
atomic.AddUint64(&count, 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -109,7 +109,7 @@ func removeUnusedWhitespace(s string) string {
|
||||||
for _, l := range lines {
|
for _, l := range lines {
|
||||||
trimmedLine = strings.TrimSpace(l)
|
trimmedLine = strings.TrimSpace(l)
|
||||||
|
|
||||||
if len(trimmedLine) > 0 {
|
if trimmedLine != "" {
|
||||||
trimmedLines = append(trimmedLines, trimmedLine)
|
trimmedLines = append(trimmedLines, trimmedLine)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -400,7 +400,6 @@ func getFakeHostSSLCert(host string) (cert, key []byte) {
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
priv, err = rsa.GenerateKey(rand.Reader, 2048)
|
priv, err = rsa.GenerateKey(rand.Reader, 2048)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.Fatalf("failed to generate fake private key: %v", err)
|
klog.Fatalf("failed to generate fake private key: %v", err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -446,7 +446,7 @@ func TestTLSKeyReloader(t *testing.T) {
|
||||||
}
|
}
|
||||||
watcher.load()
|
watcher.load()
|
||||||
|
|
||||||
s := httptest.NewUnstartedServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {}))
|
s := httptest.NewUnstartedServer(http.HandlerFunc(func(_ http.ResponseWriter, _ *http.Request) {}))
|
||||||
s.Config.TLSConfig = watcher.TLSConfig()
|
s.Config.TLSConfig = watcher.TLSConfig()
|
||||||
s.Listener = tls.NewListener(s.Listener, s.Config.TLSConfig)
|
s.Listener = tls.NewListener(s.Listener, s.Config.TLSConfig)
|
||||||
go s.Start()
|
go s.Start()
|
||||||
|
|
|
@ -132,7 +132,7 @@ func DownloadGeoLite2DB(attempts int, period time.Duration) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func createURL(mirror, licenseKey, dbName string) string {
|
func createURL(mirror, licenseKey, dbName string) string {
|
||||||
if len(mirror) > 0 {
|
if mirror != "" {
|
||||||
return fmt.Sprintf("%s/%s.tar.gz", mirror, dbName)
|
return fmt.Sprintf("%s/%s.tar.gz", mirror, dbName)
|
||||||
}
|
}
|
||||||
return fmt.Sprintf(maxmindURL, licenseKey, dbName)
|
return fmt.Sprintf(maxmindURL, licenseKey, dbName)
|
||||||
|
|
|
@ -215,7 +215,6 @@ func (Release) LatestCommitLogs() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func commitsBetweenTags(newversion, oldversion string) []string {
|
func commitsBetweenTags(newversion, oldversion string) []string {
|
||||||
|
|
||||||
var newTag, oldTag string
|
var newTag, oldTag string
|
||||||
tags := getAllControllerTags()
|
tags := getAllControllerTags()
|
||||||
newTag, oldTag = tags[0], tags[1]
|
newTag, oldTag = tags[0], tags[1]
|
||||||
|
|
|
@ -25,22 +25,19 @@ import (
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"regexp"
|
"regexp"
|
||||||
|
"slices"
|
||||||
"strings"
|
"strings"
|
||||||
"text/template"
|
"text/template"
|
||||||
|
|
||||||
"slices"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
//go:embed templates/e2edocs.tpl
|
//go:embed templates/e2edocs.tpl
|
||||||
var tplContent embed.FS
|
var tplContent embed.FS
|
||||||
|
|
||||||
var (
|
var skipFiles = []string{
|
||||||
skipFiles = []string{
|
|
||||||
"test/e2e/framework/framework.go",
|
"test/e2e/framework/framework.go",
|
||||||
"test/e2e/e2e.go",
|
"test/e2e/e2e.go",
|
||||||
"test/e2e/e2e_test.go",
|
"test/e2e/e2e_test.go",
|
||||||
}
|
}
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
const (
|
||||||
testDir = "test/e2e"
|
testDir = "test/e2e"
|
||||||
|
@ -48,9 +45,7 @@ const (
|
||||||
URL = "https://github.com/kubernetes/ingress-nginx/tree/main/"
|
URL = "https://github.com/kubernetes/ingress-nginx/tree/main/"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var betweenquotes = regexp.MustCompile(`("|\')(?P<TestDescription>.*)("|\')`)
|
||||||
betweenquotes = regexp.MustCompile(`("|\')(?P<TestDescription>.*)("|\')`)
|
|
||||||
)
|
|
||||||
|
|
||||||
type E2ETemplate struct {
|
type E2ETemplate struct {
|
||||||
URL string
|
URL string
|
||||||
|
@ -102,7 +97,7 @@ func (t *E2ETemplate) walkE2eDir(path string, d fs.DirEntry, errAggregated error
|
||||||
fileScanner.Split(bufio.ScanLines)
|
fileScanner.Split(bufio.ScanLines)
|
||||||
|
|
||||||
tests := make([]string, 0)
|
tests := make([]string, 0)
|
||||||
var lineN = 0
|
lineN := 0
|
||||||
for fileScanner.Scan() {
|
for fileScanner.Scan() {
|
||||||
lineN = lineN + 1
|
lineN = lineN + 1
|
||||||
if !containsGinkgoTest(fileScanner.Text()) {
|
if !containsGinkgoTest(fileScanner.Text()) {
|
||||||
|
@ -136,5 +131,4 @@ func GenerateE2EDocs() (string, error) {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
return tplBuff.String(), nil
|
return tplBuff.String(), nil
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -102,7 +102,7 @@ func (f *Framework) NamespaceContent() (string, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
eout := strings.TrimSpace(execErr.String())
|
eout := strings.TrimSpace(execErr.String())
|
||||||
if len(eout) > 0 {
|
if eout != "" {
|
||||||
return "", fmt.Errorf("stderr: %v", eout)
|
return "", fmt.Errorf("stderr: %v", eout)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -313,7 +313,7 @@ func (f *Framework) matchNginxConditions(name string, matcher func(cfg string) b
|
||||||
return false, nil
|
return false, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if klog.V(10).Enabled() && len(o) > 0 {
|
if klog.V(10).Enabled() && o != "" {
|
||||||
klog.InfoS("NGINX", "configuration", o)
|
klog.InfoS("NGINX", "configuration", o)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -335,7 +335,7 @@ func (f *Framework) matchNginxCustomConditions(from, to string, matcher func(cfg
|
||||||
return false, nil
|
return false, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if klog.V(10).Enabled() && len(o) > 0 {
|
if klog.V(10).Enabled() && o != "" {
|
||||||
klog.InfoS("NGINX", "configuration", o)
|
klog.InfoS("NGINX", "configuration", o)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -501,7 +501,7 @@ func (f *Framework) newHTTPTestClient(config *tls.Config, setIngressURL bool) *h
|
||||||
Transport: &http.Transport{
|
Transport: &http.Transport{
|
||||||
TLSClientConfig: config,
|
TLSClientConfig: config,
|
||||||
},
|
},
|
||||||
CheckRedirect: func(req *http.Request, via []*http.Request) error {
|
CheckRedirect: func(_ *http.Request, _ []*http.Request) error {
|
||||||
return http.ErrUseLastResponse
|
return http.ErrUseLastResponse
|
||||||
},
|
},
|
||||||
}, httpexpect.NewAssertReporter())
|
}, httpexpect.NewAssertReporter())
|
||||||
|
|
|
@ -93,7 +93,7 @@ func (h *HTTPRequest) ForceResolve(ip string, port uint16) *HTTPRequest {
|
||||||
return h
|
return h
|
||||||
}
|
}
|
||||||
newTransport := oldTransport.Clone()
|
newTransport := oldTransport.Clone()
|
||||||
newTransport.DialContext = func(ctx context.Context, network, addr string) (net.Conn, error) {
|
newTransport.DialContext = func(ctx context.Context, network, _ string) (net.Conn, error) {
|
||||||
return dialer.DialContext(ctx, network, resolveAddr)
|
return dialer.DialContext(ctx, network, resolveAddr)
|
||||||
}
|
}
|
||||||
h.client.Transport = newTransport
|
h.client.Transport = newTransport
|
||||||
|
|
|
@ -133,7 +133,7 @@ var _ = framework.IngressNginxDescribe("[TCP] tcp-services", func() {
|
||||||
// Execute the test. Use the `external name` service to resolve a domain name.
|
// Execute the test. Use the `external name` service to resolve a domain name.
|
||||||
resolver := net.Resolver{
|
resolver := net.Resolver{
|
||||||
PreferGo: true,
|
PreferGo: true,
|
||||||
Dial: func(ctx context.Context, network, address string) (net.Conn, error) {
|
Dial: func(ctx context.Context, _, _ string) (net.Conn, error) {
|
||||||
d := net.Dialer{}
|
d := net.Dialer{}
|
||||||
return d.DialContext(ctx, "tcp", fmt.Sprintf("%v:5353", ip))
|
return d.DialContext(ctx, "tcp", fmt.Sprintf("%v:5353", ip))
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue