* Add linter to Makefile and build image * Also make it part of verify step Signed-off-by: Tony Batard <tbatard@pivotal.io> * clean up of Makefile and permissions for .go/golangci-lint Signed-off-by: Duffie Cooley <cooleyd@vmware.com> * changed verify-lint.sh to lint.sh to avoid breaking ci Signed-off-by: mtritabaugh <mtritabaugh@vmware.com> * Add changelog Signed-off-by: Tony Batard <tbatard@pivotal.io> * Add LINTERS option to run only specific linters * e.g. make lint LINTERS=unused,deadcode Signed-off-by: Tony Batard <tbatard@pivotal.io> * adding timeout to golangci-lint, and checking cache Signed-off-by: Matyas Danter <mdanter@vmware.com> * Fixed some formatting and added comments Signed-off-by: Matyas Danter <mdanter@vmware.com> * modifying lint script to use golangci.yaml Signed-off-by: Matyas Danter <mdanter@vmware.com> * update to move default linters to Makefile Signed-off-by: mtritabaugh <mtritabaugh@vmware.com> * Adding documentation for lint make targets. Signed-off-by: Matyas Danter <mdanter@vmware.com> * Update Copyright with current year Signed-off-by: Tony Batard <tbatard@pivotal.io> * initial git workflow commit Signed-off-by: mtritabaugh <mtritabaugh@vmware.com> * Added lint-all target and implemented -n as default * Added a local-lint-all and lint-all target that will show lint errors for all of the codebase * changed the default of lint and local-lint to only show new lint errors Signed-off-by: Duffie Cooley <cooleyd@vmware.com> * updated docs to reflect new target Signed-off-by: mtritabaugh <mtritabaugh@vmware.com> Co-authored-by: Duffie Cooley <cooleyd@vmware.com> Co-authored-by: mtritabaugh <mtritabaugh@vmware.com> Co-authored-by: Matyas Danter <mdanter@vmware.com>
1.2 KiB
Development
Update generated files
Run make update to regenerate files if you make the following changes:
- Add/edit/remove command line flags and/or their help text
- Add/edit/remove commands or subcommands
- Add new API types
- Add/edit/remove plugin protobuf message or service definitions
The following files are automatically generated from the source code:
- The clientset
- Listers
- Shared informers
- Documentation
- Protobuf/gRPC types
You can run make verify to ensure that all generated files (clientset, listers, shared informers, docs) are up to date.
Linting
You can run make lint which executes golangci-lint inside the build image, or make local-lint which executes outside of the build image.
Both make lint and make local-lint will only run the linter against changes.
Use lint-all to run the linter against the entire code base.
The default linters are defined in the Makefile via the LINTERS variable.
You can also override the default list of linters by running the command
$ make lint LINTERS=gosec
Test
To run unit tests, use make test.
Vendor dependencies
If you need to add or update the vendored dependencies, see Vendoring dependencies.