Remove unnecessary exclusions from golangci-lint.yaml
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>

<!--
Please make sure you've read and understood our contributing guidelines;
https://github.com/moby/moby/blob/master/CONTRIBUTING.md

** Make sure all your commits include a signature generated with `git commit -s` **

For additional information on our contributing process, read our contributing
guide https://docs.docker.com/opensource/code/

If this is a bug fix, make sure your description includes "fixes #xxxx", or
"closes #xxxx"

Please provide the following information:
-->

**- What I did**

Address some TODOs and FIXMEs on golangci-lint.yaml

**- How I did it**

Just adjust them on the YAML file. I don't have to change the actual implementation.

**- How to verify it**

Relying on Jenkins

**- Description for the changelog**
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->

N/A

**- A picture of a cute animal (not mandatory but encouraged)**
![RS32470_2017_02_22-skunk--2-harry](https://user-images.githubusercontent.com/19111/147496912-ae4382a4-8fd4-4800-b70f-e91dcfb747c5.jpg)

(from https://www.zoo.org/ambassadoranimals/mammals)

hack/validate/golangci-lint.yml
linters:
  enable:
    - deadcode
    - depguard
    - goimports
    - golint
    - gosec
    - gosimple
    - govet
    - ineffassign
    - misspell
    - staticcheck
    - structcheck
    - typecheck
    - unconvert
    - unused
    - varcheck

  disable:
    - errcheck

  run:
    concurrency: 2
    modules-download-mode: vendor

    skip-dirs:
      - bundles
      - docs
      # TODO: This package should be completely removed
      - libnetwork/client/mflag

linters-settings:
  govet:
    check-shadowing: false
  depguard:
    list-type: blacklist
    include-go-root: true
    packages:
      # The io/ioutil package has been deprecated.
      # https://go.dev/doc/go1.16#ioutil
      - io/ioutil
issues:
  # The default exclusion rules are a bit too permissive, so copying the relevant ones below
  exclude-use-default: false

  exclude-rules:
    # These are copied from the default exclude rules, except for "ineffective break statement"
    # and GoDoc checks.
    # https://github.com/golangci/golangci-lint/blob/0cc87df732aaf1d5ad9ce9ca538d38d916918b36/pkg/config/config.go#L36
    - text: "Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*printf?|os\\.(Un)?Setenv). is not checked"
      linters:
        - errcheck
    - text: "func name will be used as test\\.Test.* by other packages, and that stutters; consider calling this"
      linters:
        - golint
    - text: "G103: Use of unsafe calls should be audited"
      linters:
        - gosec
    - text: "G104: Errors unhandled"
      linters:
        - gosec
    - text: "G204: Subprocess launch(ed with (variable|function call)|ing should be audited)"
      linters:
        - gosec
    - text: "(G301|G302): (Expect directory permissions to be 0750 or less|Expect file permissions to be 0600 or less)"
      linters:
        - gosec
    - text: "G304: Potential file inclusion via variable"
      linters:
        - gosec
    - text: "G306: Expect WriteFile permissions to be 0600 or less"
      linters:
        - gosec
    - text: 'G307: Deferring unsafe method "Close" on type "*os.File"'
      linters: gosec

    # Exclude some linters from running on tests files.
    - path: _test\.go
      linters:
        - errcheck
        - gosec

    # Suppress golint complaining about generated types in api/types/
    - text: "type name will be used as (container|volume)\\.(Container|Volume).* by other packages, and that stutters; consider calling this"
      path: "api/types/(volume|container)/"
      linters:
        - golint
    - text: "(G201|G202): SQL string (formatting|concatenation)"
      linters:
        - gosec
    # FIXME: evaluate these and fix where needed: G307: Deferring unsafe method "*os.File" on type "Close" (gosec)
    - text: "G307: Deferring unsafe method"
      linters:
        - gosec
    # FIXME temporarily suppress these. See #39924
    - text: "SA1019: .*\\.Xattrs is deprecated: Use PAXRecords instead"
      linters:
        - staticcheck
    # FIXME temporarily suppress these. See #39926
    - text: "SA1019: httputil.NewClientConn"
      linters:
        - staticcheck
    # FIXME temporarily suppress these (related to the ones above)
    - text: "SA1019: httputil.ErrPersistEOF"
      linters:
        - staticcheck
    # FIXME temporarily suppress these for false positives in tests (see https://github.com/dominikh/go-tools/issues/1022)
    - text: "SA5011"
      path: _test\.go
      linters:
        - staticcheck
    # This code is doing some fun stuff with reflect and it trips up the linter.
    - text: "field `foo` is unused"
      path: "libnetwork/options/options_test.go"
      linters:
        - structcheck
        - unused
    # This field is only used on windows but is defined in a platform agnostic file.
    # The linter doesn't understand that the field is used.
    - text: "`resolverOnce` is unused"
      path: libnetwork/network.go
      linters:
        - structcheck
        - unused

  # Maximum issues count per one linter. Set to 0 to disable. Default is 50.
  max-issues-per-linter: 0

  # Maximum count of issues with the same text. Set to 0 to disable. Default is 3.
  max-same-issues: 0

linters:
  enable:
    - deadcode
    - depguard
    - goimports
    - golint
    - gosec
    - gosimple
    - govet
    - ineffassign
    - misspell
    - staticcheck
    - structcheck
    - typecheck
    - unconvert
    - unused
    - varcheck

  disable:
    - errcheck

  run:
    concurrency: 2
    modules-download-mode: vendor

    skip-dirs:
      - docs

linters-settings:
  govet:
    check-shadowing: false
  depguard:
    list-type: blacklist
    include-go-root: true
    packages:
      # The io/ioutil package has been deprecated.
      # https://go.dev/doc/go1.16#ioutil
      - io/ioutil
issues:
  # The default exclusion rules are a bit too permissive, so copying the relevant ones below
  exclude-use-default: false

  exclude-rules:
    # These are copied from the default exclude rules, except for "ineffective break statement"
    # and GoDoc checks.
    # https://github.com/golangci/golangci-lint/blob/0cc87df732aaf1d5ad9ce9ca538d38d916918b36/pkg/config/config.go#L36
    - text: "Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*printf?|os\\.(Un)?Setenv). is not checked"
      linters:
        - errcheck
    - text: "func name will be used as test\\.Test.* by other packages, and that stutters; consider calling this"
      linters:
        - golint
    - text: "G103: Use of unsafe calls should be audited"
      linters:
        - gosec
    - text: "G104: Errors unhandled"
      linters:
        - gosec
    - text: "G204: Subprocess launch(ed with (variable|function call)|ing should be audited)"
      linters:
        - gosec
    - text: "(G301|G302): (Expect directory permissions to be 0750 or less|Expect file permissions to be 0600 or less)"
      linters:
        - gosec
    - text: "G304: Potential file inclusion via variable"
      linters:
        - gosec
    - text: "G306: Expect WriteFile permissions to be 0600 or less"
      linters:
        - gosec
    - text: 'G307: Deferring unsafe method "Close" on type "*os.File"'
      linters: gosec

    # Exclude some linters from running on tests files.
    - path: _test\.go
      linters:
        - errcheck
        - gosec

    # Suppress golint complaining about generated types in api/types/
    - text: "type name will be used as (container|volume)\\.(Container|Volume).* by other packages, and that stutters; consider calling this"
      path: "api/types/(volume|container)/"
      linters:
        - golint
    # FIXME: evaluate these and fix where needed: G307: Deferring unsafe method "*os.File" on type "Close" (gosec)
    - text: "G307: Deferring unsafe method"
      linters:
        - gosec
    # FIXME temporarily suppress these. See #39924
    - text: "SA1019: .*\\.Xattrs is deprecated: Use PAXRecords instead"
      linters:
        - staticcheck
    # FIXME temporarily suppress these. See #39926
    - text: "SA1019: httputil.NewClientConn"
      linters:
        - staticcheck
    # FIXME temporarily suppress these (related to the ones above)
    - text: "SA1019: httputil.ErrPersistEOF"
      linters:
        - staticcheck
    # This code is doing some fun stuff with reflect and it trips up the linter.
    - text: "field `foo` is unused"
      path: "libnetwork/options/options_test.go"
      linters:
        - structcheck
        - unused
    # This field is only used on windows but is defined in a platform agnostic file.
    # The linter doesn't understand that the field is used.
    - text: "`resolverOnce` is unused"
      path: libnetwork/network.go
      linters:
        - structcheck
        - unused

  # Maximum issues count per one linter. Set to 0 to disable. Default is 50.
  max-issues-per-linter: 0

  # Maximum count of issues with the same text. Set to 0 to disable. Default is 3.
  max-same-issues: 0

Ah! For some reason I missed that they fixed https://github.com/dominikh/go-tools/issues/1022 👍 