diff --git a/.travis.yml b/.travis.yml index ce72734..b0d2671 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,23 +15,24 @@ env: global: - GOV=1.9.2 - GOSHA="de874549d9a8d8d8062be05808509c09a88a248e77ec14eb77453530829ac02b go${GOV}.linux-amd64.tar.gz" - - GOPATH=$HOME/go - - GOROOT=$HOME/$GOV/go - - PATH=$GOROOT/bin:$PATH:$GOPATH/bin + - GOPATH="${HOME}/go" + - GOROOT="${HOME}/${GOV}/go" + - PATH="${GOROOT}/bin:${PATH}:${GOPATH}/bin" + - GOARM=7 matrix: - - V=4.5.0 + - V=4.5.1 before_install: - - install -d $GOPATH $GOROOT - - wget https://storage.googleapis.com/golang/go$GOV.linux-amd64.tar.gz + - install -d "${GOPATH}" "${GOROOT}" + - wget "https://storage.googleapis.com/golang/go${GOV}.linux-amd64.tar.gz" - echo "${GOSHA}" > .gosha - sha256sum --check .gosha - - tar -C $HOME/$GOV -xzf go$GOV.linux-amd64.tar.gz + - tar -C "${HOME}/${GOV}" -xzf "go${GOV}.linux-amd64.tar.gz" - node --version - yarn versions - go version - ulimit -n 8096 - - install -d ~/go/src/github.com/mattermost - - cd ~/go/src/github.com/mattermost + - install -d "${HOME}/go/src/github.com/mattermost" + - cd "${HOME}/go/src/github.com/mattermost" - wget "https://github.com/mattermost/mattermost-server/archive/v${V}.tar.gz" - tar xf "v${V}.tar.gz" - mv "mattermost-server-${V}" mattermost-server @@ -41,17 +42,17 @@ before_install: - mv "mattermost-webapp-${V}" mattermost-webapp - rm "v${V}.tar.gz" script: - - make build -C ~/go/src/github.com/mattermost/mattermost-webapp - - cd ~/go/src/github.com/mattermost/mattermost-server - - patch -p1 < $TRAVIS_BUILD_DIR/make.patch + - make build -C "${HOME}/go/src/github.com/mattermost/mattermost-webapp" + - cd "${HOME}/go/src/github.com/mattermost/mattermost-server" + - patch -p1 < "${TRAVIS_BUILD_DIR}/make.patch" - go get -d ./... - - make build-linux package BUILD_NUMBER="dev-arm-tag${V}" - - mv -v ~/go/src/github.com/mattermost/mattermost-server/dist/mattermost-*-linux-arm.tar.gz $TRAVIS_BUILD_DIR/mattermost-$V-arm.tar.gz - - sha512sum $TRAVIS_BUILD_DIR/mattermost-$V-arm.tar.gz | tee $TRAVIS_BUILD_DIR/mattermost-$V-arm.tar.gz.sha512sum + - make config-reset build-linux package-linux GO="GOARCH=arm $(which go)" BUILD_NUMBER="dev-arm-tag${V}" + - mv dist/mattermost-team-linux-arm.tar.gz "${TRAVIS_BUILD_DIR}/mattermost-${V}-arm.tar.gz" + - sha512sum "${TRAVIS_BUILD_DIR}/mattermost-${V}-arm.tar.gz" | tee "${TRAVIS_BUILD_DIR}/mattermost-${V}-arm.tar.gz.sha512sum" deploy: provider: releases api_key: "${GITHUB_OAUTH_TOKEN}" file: - - "$TRAVIS_BUILD_DIR/mattermost-$V-arm.tar.gz" - - "$TRAVIS_BUILD_DIR/mattermost-$V-arm.tar.gz.sha512sum" + - "${TRAVIS_BUILD_DIR}/mattermost-${V}-arm.tar.gz" + - "${TRAVIS_BUILD_DIR}/mattermost-${V}-arm.tar.gz.sha512sum" skip_cleanup: true diff --git a/make.patch b/make.patch index fffb680..36c5bfd 100644 --- a/make.patch +++ b/make.patch @@ -2,55 +2,22 @@ diff --git a/build/release.mk b/build/release.mk index 5eaee80..e0e13bf 100644 --- a/build/release.mk +++ b/build/release.mk -@@ -3,7 +3,7 @@ dist: | check-style test package - - build-linux: - @echo Build Linux amd64 -- env GOOS=linux GOARCH=amd64 $(GO) install $(GOFLAGS) $(GO_LINKER_FLAGS) ./cmd/platform -+ env GOOS=linux GOARCH=arm GOARM=7 $(GO) install $(GOFLAGS) $(GO_LINKER_FLAGS) ./cmd/platform - - build-osx: - @echo Build OSX amd64 -@@ -32,6 +32,7 @@ package: - - @# Resource directories - cp -RL config $(DIST_PATH) -+ mv $(DIST_PATH)/config/default.json $(DIST_PATH)/config/config.json - cp -RL fonts $(DIST_PATH) - cp -RL templates $(DIST_PATH) - cp -RL i18n $(DIST_PATH) -@@ -61,38 +62,14 @@ endif +@@ -59,6 +59,7 @@ endif + cp NOTICE.txt $(DIST_PATH) + cp README.md $(DIST_PATH) ++_: @# ----- PLATFORM SPECIFIC ----- -- @# Make osx package -- @# Copy binary --ifeq ($(BUILDER_GOOS_GOARCH),"darwin_amd64") -- cp $(GOPATH)/bin/platform $(DIST_PATH)/bin # from native bin dir, not cross-compiled --else -- cp $(GOPATH)/bin/darwin_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir --endif -- @# Package -- tar -C dist -czf $(DIST_PATH)-$(BUILD_TYPE_NAME)-osx-amd64.tar.gz mattermost -- @# Cleanup -- rm -f $(DIST_PATH)/bin/platform -- -- @# Make windows package -- @# Copy binary --ifeq ($(BUILDER_GOOS_GOARCH),"windows_amd64") -- cp $(GOPATH)/bin/platform.exe $(DIST_PATH)/bin # from native bin dir, not cross-compiled --else -- cp $(GOPATH)/bin/windows_amd64/platform.exe $(DIST_PATH)/bin # from cross-compiled bin dir --endif -- @# Package -- cd $(DIST_ROOT) && zip -9 -r -q -l mattermost-$(BUILD_TYPE_NAME)-windows-amd64.zip mattermost && cd .. -- @# Cleanup -- rm -f $(DIST_PATH)/bin/platform.exe -- + @# Make osx package +@@ -85,14 +86,15 @@ endif + @# Cleanup + rm -f $(DIST_PATH)/bin/platform.exe + ++package-linux: package @# Make linux package @# Copy binary --ifeq ($(BUILDER_GOOS_GOARCH),"linux_amd64") -+ifeq ($(BUILDER_GOOS_GOARCH),"linux_arm") + ifeq ($(BUILDER_GOOS_GOARCH),"linux_amd64") cp $(GOPATH)/bin/platform $(DIST_PATH)/bin # from native bin dir, not cross-compiled else - cp $(GOPATH)/bin/linux_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir