* Introducing unit (not integration) tests for the app layer
* Initial support for unit tests at the API
* Adding unit tests support to the store layer
* Add unit tests support in commands
* Adding last tests needed for run unit tests properly
* Fixing govet
* Removing some duplication
* Fixing tests
* Fixing tests
* Not compiling test helpers with the main module for api
* Revert "Not compiling test helpers with the main module for api"
This reverts commit 36a199bbe0.
* Fixing tests
* Fixing unit tests
* More consistency between api4/apiteslib.go and app/helper_test.go
* Renaming things to make more obvious the new Setup functions purpose
* Reverting change in go.sum
* Start with empty mock for app layer
* Start with empty mock for api layer
* Start with empty mock for web layer
* Renaming SetupWithStoreMockConfig to SetupConfigWithStoreMock
* Fixing tests on web package
* Removing unnecesary function
* Remove unnecessary struct2interface dependency
Running go mod tidy on the repo removes it.
This was also preventing 1.14beta from running the repo,
because now it verifies modules.txt with go.mod, which had a mismatch.
* fixing CI
* Fix test-server target
* Fix some discrepancies in vendor
* Removing the Makefile target for now
Co-authored-by: mattermod <mattermod@users.noreply.github.com>
* Updating build and release process to include externally built mmctl
* Missed last commit before reset
* rename script to align with purpose
* Moving get release script to scripts dir
* Streamlined script to find the correct latest version of an externally built binary from a GitHub Release
* Updated variable names to match
* Updating vars to match
* Updating parameters to named variables for clarity
* Update scripts/get_latest_release.sh
Co-Authored-By: Elisabeth Kulzer <elikul@elikul.de>
Co-authored-by: Elisabeth Kulzer <elikul@elikul.de>
* Updating build and release process to include externally built mmctl
* Missed last commit before reset
* rename script to align with purpose
* Moving get release script to scripts dir
* MM-21769 - Validate plugin bundle and signature files when packaging MM
* Renamed public key, using gpg exit code to verify success
* Update Makefile
Co-Authored-By: Jesse Hallam <jesse.hallam@gmail.com>
* Pulling platform specific prepackaged plugins
* Verify platform specific plugin binary exist when building each ARCH
Co-authored-by: Jesse Hallam <jesse.hallam@gmail.com>
* Remove fmt and vet checks from CI
- golangci-lint already does the vet and fmt checks. Remove those
as it is redundant now.
- Also start running golangci-lint as part of the CI pipeline now
just as an extra layer of reliability.
* Incorporate review comments
* Adding golangci install to Jenkinsfile.pr too
* dummy commit to test jenkins
* Trying after cd to directory
* Fix ineffective assign
* MM-19155 Change plugin helpers files to be golint complied
* add makefile target that checks if plugin/helpers files are golint
compliant
* MM-19155 - Change plugin helpers files to be golint complied
* added comment documentation to exported plugin/helpers methods
* changed variable names to be compliant with golint
* Address feedback
To start off with, we are using the new-from-rev=HEAD~ option which just checks the current
commit. This allows us to quickly integrate golangci-lint and not spend time in fixing all the
outstanding issues.
Things pending:
- Slowly fix the existing issues. To test them, just uncomment the "new-from-rev: HEAD~" line
from .golangci.yml and have at it.
- There are a number of unused functions and methods which are only invoked from enterprise code.
We are ignoring them for now because removing them will stop enterprise build from working.
The correct solution here is to use a build tag to separate TE and EE code. As a long term goal,
we would want to use that build tag throughout the EE codebase and remove the TE_PACKAGES and
EE_PACKAGES variables in the Makefile and just use the build tag. That makes things a lot cleaner
and avoids the need to spawn a "go list" every time to get the correct list of packages.
* Fix CI config
- -mod=vendor flag was not being passed during the build stage, forcing
it to download everything again.
- Optimize the git clone of webapp with --depth=1 and use GIT_SSH_COMMAND to clone.
- Add $(GOFLAGS) to some other places which got missed out.
* Remove GOFLAGS from go list command
It does not work for Go 1.12. Need to fix later.