changed single expression plugin upload to validate responses (#36)

* changed single expression plugin upload to individual calls checking response.  fixes problems with no uploads on Ubuntu 16.04

* Updated error message as requested by @levb on #discussion_r275448965

* removed double PLUGIN_VERSION ref

* added  --post301 --location to curl invocation in ./build/bin/manifest apply
mkdir -p server/dist;
cd server && env GOOS=linux GOARCH=amd64 /usr/local/go/bin/go build -o dist/plugin-linux-amd64;
cd server && env GOOS=darwin GOARCH=amd64 /usr/local/go/bin/go build -o dist/plugin-darwin-amd64;
cd server && env GOOS=windows GOARCH=amd64 /usr/local/go/bin/go build -o dist/plugin-windows-amd64.exe;
cd webapp && /usr/local/bin/npm run build;

> webapp@0.0.1 build /home/skawtus/workspace/mattermost-plugin-sample/webapp
> webpack --mode=production

Hash: f6fcda45461a2f57b51b
Version: webpack 4.16.1
Time: 509ms
Built at: 2019-04-16 09:56:33
  Asset      Size  Chunks             Chunk Names
main.js  1.61 KiB       0  [emitted]  main
[0] multi ./src/index.js 28 bytes {0} [built]
[1] ./src/index.js 1.28 KiB {0} [built]
[2] ./src/manifest.js 174 bytes {0} [built]
rm -rf dist/
mkdir -p dist/com.mattermost.sample-plugin
cp plugin.json dist/com.mattermost.sample-plugin/
cp -r assets dist/com.mattermost.sample-plugin/
cp -r public/ dist/com.mattermost.sample-plugin/
mkdir -p dist/com.mattermost.sample-plugin/server/dist;
cp -r server/dist/* dist/com.mattermost.sample-plugin/server/dist/;
mkdir -p dist/com.mattermost.sample-plugin/webapp/dist;
cp -r webapp/dist/* dist/com.mattermost.sample-plugin/webapp/dist/;
cd dist && tar -cvzf com.mattermost.sample-plugin-0.1.0.tar.gz com.mattermost.sample-plugin
com.mattermost.sample-plugin/
com.mattermost.sample-plugin/webapp/
com.mattermost.sample-plugin/webapp/dist/
com.mattermost.sample-plugin/webapp/dist/main.js
com.mattermost.sample-plugin/assets/
com.mattermost.sample-plugin/assets/.gitkeep
com.mattermost.sample-plugin/plugin.json
com.mattermost.sample-plugin/server/
com.mattermost.sample-plugin/server/dist/
com.mattermost.sample-plugin/server/dist/plugin-darwin-amd64
com.mattermost.sample-plugin/server/dist/plugin-windows-amd64.exe
com.mattermost.sample-plugin/server/dist/plugin-linux-amd64
com.mattermost.sample-plugin/public/
com.mattermost.sample-plugin/public/hello.html
plugin built at: dist/com.mattermost.sample-plugin-0.1.0.tar.gz
Installing plugin via API
OK.

* reverted to original request sequence, combine with post301 & location flags to curl
This commit is contained in:
scott lee davis 2019-04-22 08:41:09 -07:00 committed by Jesse Hallam
parent fe3553d999
commit 0acb31f8a7

View file

@ -120,9 +120,9 @@ deploy: dist
## or copying the files directly to a sibling mattermost-server directory. ## or copying the files directly to a sibling mattermost-server directory.
ifneq ($(and $(MM_SERVICESETTINGS_SITEURL),$(MM_ADMIN_USERNAME),$(MM_ADMIN_PASSWORD),$(CURL)),) ifneq ($(and $(MM_SERVICESETTINGS_SITEURL),$(MM_ADMIN_USERNAME),$(MM_ADMIN_PASSWORD),$(CURL)),)
@echo "Installing plugin via API" @echo "Installing plugin via API"
$(eval TOKEN := $(shell curl -i -X POST $(MM_SERVICESETTINGS_SITEURL)/api/v4/users/login -d '{"login_id": "$(MM_ADMIN_USERNAME)", "password": "$(MM_ADMIN_PASSWORD)"}' | grep Token | cut -f2 -d' ' 2> /dev/null)) $(eval TOKEN := $(shell curl -i --post301 --location $(MM_SERVICESETTINGS_SITEURL) -X POST $(MM_SERVICESETTINGS_SITEURL)/api/v4/users/login -d '{"login_id": "$(MM_ADMIN_USERNAME)", "password": "$(MM_ADMIN_PASSWORD)"}' | grep Token | cut -f2 -d' ' 2> /dev/null))
@curl -s -H "Authorization: Bearer $(TOKEN)" -X POST $(MM_SERVICESETTINGS_SITEURL)/api/v4/plugins -F "plugin=@dist/$(BUNDLE_NAME)" -F "force=true" > /dev/null && \ @curl -s --post301 --location $(MM_SERVICESETTINGS_SITEURL) -H "Authorization: Bearer $(TOKEN)" -X POST $(MM_SERVICESETTINGS_SITEURL)/api/v4/plugins -F "plugin=@dist/$(BUNDLE_NAME)" -F "force=true" > /dev/null && \
curl -s -H "Authorization: Bearer $(TOKEN)" -X POST $(MM_SERVICESETTINGS_SITEURL)/api/v4/plugins/$(PLUGIN_ID)/enable > /dev/null && \ curl -s --post301 --location $(MM_SERVICESETTINGS_SITEURL) -H "Authorization: Bearer $(TOKEN)" -X POST $(MM_SERVICESETTINGS_SITEURL)/api/v4/plugins/$(PLUGIN_ID)/enable > /dev/null && \
echo "OK." || echo "Sorry, something went wrong." echo "OK." || echo "Sorry, something went wrong."
else ifneq ($(wildcard ../mattermost-server/.*),) else ifneq ($(wildcard ../mattermost-server/.*),)
@echo "Installing plugin via filesystem. Server restart and manual plugin enabling required" @echo "Installing plugin via filesystem. Server restart and manual plugin enabling required"