mirror of
				https://github.com/SmartHoneybee/ubiquitous-memory
				synced 2025-10-25 15:53:48 +02:00 
			
		
		
		
	Compare commits
	
		
			29 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | ca9c6e47c5 | ||
|  | 89f37ddd12 | ||
|  | a5c6a921e2 | ||
|  | 02f1846b2b | ||
|  | 362f5cf97f | ||
|  | 4b09124333 | ||
|  | 7332922733 | ||
|  | 605dd4992e | ||
|  | f58b2018c4 | ||
|  | f1204f044c | ||
|  | 43a100f30c | ||
|  | 65f66300ea | ||
|  | 896ca40562 | ||
|  | a3ed63c840 | ||
|  | c3bf7a5e6e | ||
|  | 8bfcbc152c | ||
|  | ea209b1cb4 | ||
|  | a4963df160 | ||
|  | 2c62ab2b0e | ||
|  | 85cb4319c0 | ||
|  | da7d3b0da6 | ||
|  | d9d94c2ee9 | ||
|  | 8e4b90726c | ||
|  | 0fc1ecee72 | ||
|  | 4f364878e5 | ||
|  | a84d8e49ab | ||
|  | 81b4106fc7 | ||
|  | f92e152276 | ||
|  | df047ff1c3 | 
							
								
								
									
										9
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| version: 2 | ||||
| updates: | ||||
| - package-ecosystem: gomod | ||||
|   directory: "/dependabot" | ||||
|   schedule: | ||||
|     interval: daily | ||||
|     time: "00:15" | ||||
|   open-pull-requests-limit: 99 | ||||
|   target-branch: master | ||||
							
								
								
									
										94
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,94 @@ | ||||
| name: Package and release | ||||
| on: | ||||
|   push: | ||||
|     branches: [ master ] | ||||
|   pull_request: | ||||
|     branches: [ master ] | ||||
|  | ||||
| env: | ||||
|   DEBIAN_RELEASE: buster | ||||
|   DOCKER_PWD: /root | ||||
|   DOCKER_IMAGE: debian:${DEBIAN_RELEASE} | ||||
|   GO_VERSION: 1.16.7 | ||||
|  | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       matrix: | ||||
|         include: | ||||
|           - os: dragonfly | ||||
|             arch: amd64 | ||||
|           - os: freebsd | ||||
|             arch: amd64 | ||||
|           - os: freebsd | ||||
|             arch: arm | ||||
|           - os: linux | ||||
|             arch: arm | ||||
|           - os: linux | ||||
|             arch: arm64 | ||||
|           - os: linux | ||||
|             arch: mips | ||||
|           - os: linux | ||||
|             arch: mips64 | ||||
|           - os: linux | ||||
|             arch: mips64le | ||||
|           - os: linux | ||||
|             arch: mipsle | ||||
|           - os: linux | ||||
|             arch: ppc64 | ||||
|           - os: linux | ||||
|             arch: ppc64le | ||||
|           - os: linux | ||||
|             arch: s390x | ||||
|           - os: netbsd | ||||
|             arch: amd64 | ||||
|           - os: netbsd | ||||
|             arch: arm | ||||
|           - os: openbsd | ||||
|             arch: amd64 | ||||
|           - os: openbsd | ||||
|             arch: arm | ||||
|  | ||||
|     steps: | ||||
|       - name: Clone repository | ||||
|         uses: actions/checkout@v2 | ||||
|  | ||||
|       - name: Set environment from runtime properties | ||||
|         run: echo "MATTERMOST_RELEASE=$(grep 'mattermost' dependabot/go.mod | cut -d' ' -f3)" >> $GITHUB_ENV | ||||
|  | ||||
|       - name: Pull docker image | ||||
|         run: 'docker pull "${{ env.DOCKER_IMAGE }}"' | ||||
|  | ||||
|       - name: Build | ||||
|         env: | ||||
|           GOOS: ${{ matrix.os }} | ||||
|           GOARCH: ${{ matrix.arch }} | ||||
|         run: docker run --mount="type=bind,source=$PWD,destination=${{ env.DOCKER_PWD }}" --rm=true --tty=true --workdir="${{ env.DOCKER_PWD }}" -e DEBIAN_RELEASE -e MATTERMOST_RELEASE -e GOOS -e GOARCH "${{ env.DOCKER_IMAGE }}" ./build.sh | ||||
|  | ||||
|       - name: Tag release | ||||
|         if: github.ref == 'refs/heads/master' | ||||
|         uses: actions/github-script@v3 | ||||
|         # this throws an error if the tag already exists. can't find a way around that without writing our own Github REST client or forking github's scripts repo. | ||||
|         # would prefer to do this before any of these jobs run, but we need to know the mattermost version which only happens after a clone. could potentially | ||||
|         # setup a separate job which does clone + tag, but felt like this was "good enough" for now. | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           script: | | ||||
|             github.git.createRef({ | ||||
|               owner: context.repo.owner, | ||||
|               repo: context.repo.repo, | ||||
|               ref: 'refs/tags/${{ env.MATTERMOST_RELEASE }}', | ||||
|               sha: context.sha | ||||
|             }) | ||||
|  | ||||
|       - name: Create Github release | ||||
|         if: github.ref == 'refs/heads/master' | ||||
|         uses: softprops/action-gh-release@v1 | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.MATTERMOST_RELEASE }} | ||||
|           files: | | ||||
|             mattermost-${{ env.MATTERMOST_RELEASE }}-${{ matrix.os }}-${{ matrix.arch }}.tar.gz | ||||
|             mattermost-${{ env.MATTERMOST_RELEASE }}-${{ matrix.os }}-${{ matrix.arch }}.tar.gz.sha512sum | ||||
							
								
								
									
										44
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										44
									
								
								.travis.yml
									
									
									
									
									
								
							| @@ -1,44 +0,0 @@ | ||||
| language: c | ||||
| os: linux | ||||
| dist: bionic | ||||
| services: | ||||
|   - docker | ||||
| env: | ||||
|   global: | ||||
|     - DEBIAN_RELEASE='buster' | ||||
|     - DOCKER_PWD='/root' | ||||
|     - DOCKER_IMAGE="debian:${DEBIAN_RELEASE}" | ||||
|   matrix: | ||||
|     - GOOS='dragonfly' GOARCH='amd64' | ||||
|     - GOOS='freebsd' GOARCH='amd64' | ||||
|     - GOOS='freebsd' GOARCH='arm' | ||||
|     - GOOS='linux' GOARCH='arm' | ||||
|     - GOOS='linux' GOARCH='arm64' | ||||
|     - GOOS='linux' GOARCH='mips' | ||||
|     - GOOS='linux' GOARCH='mips64' | ||||
|     - GOOS='linux' GOARCH='mips64le' | ||||
|     - GOOS='linux' GOARCH='mipsle' | ||||
|     - GOOS='linux' GOARCH='ppc64' | ||||
|     - GOOS='linux' GOARCH='ppc64le' | ||||
|     - GOOS='linux' GOARCH='s390x' | ||||
|     - GOOS='netbsd' GOARCH='amd64' | ||||
|     - GOOS='netbsd' GOARCH='arm' | ||||
|     - GOOS='openbsd' GOARCH='amd64' | ||||
|     - GOOS='openbsd' GOARCH='arm' | ||||
| before_install: | ||||
|   - export MATTERMOST_RELEASE="$(grep 'mattermost' dependabot/go.mod | cut -d' ' -f3)" | ||||
|   - docker pull "${DOCKER_IMAGE}" | ||||
|   - chmod +x build.sh | ||||
| script: | ||||
|   - docker run --interactive=true --mount="type=bind,source=${PWD},destination=${DOCKER_PWD}" --rm=true --tty=true --workdir="${DOCKER_PWD}" -e DEBIAN_RELEASE -e MATTERMOST_RELEASE -e GOOS -e GOARCH "${DOCKER_IMAGE}" ./build.sh | ||||
| before_deploy: | ||||
|   - git config --local user.name 'Travis CI' | ||||
|   - git config --local user.email 'travis@travis-ci.org' | ||||
|   - git tag "${MATTERMOST_RELEASE}" || true | ||||
| deploy: | ||||
|   provider: releases | ||||
|   api_key: "${GITHUB_OAUTH_TOKEN}" | ||||
|   file: | ||||
|     - "${TRAVIS_BUILD_DIR}/mattermost-${MATTERMOST_RELEASE}-${GOOS}-${GOARCH}.tar.gz" | ||||
|     - "${TRAVIS_BUILD_DIR}/mattermost-${MATTERMOST_RELEASE}-${GOOS}-${GOARCH}.tar.gz.sha512sum" | ||||
|   skip_cleanup: true | ||||
| @@ -1,9 +1,9 @@ | ||||
| # ubiquitous-memory: [Here be dragons][2] | ||||
|  | ||||
| [](https://travis-ci.org/SmartHoneybee/ubiquitous-memory) | ||||
| [](https://github.com/SmartHoneybee/ubiquitous-memory/actions/workflows/release.yml) | ||||
|  | ||||
| [Travis CI][0] recipe that builds [Mattermost][1] for various operating systems and architectures. | ||||
| [Github Actions][0] script that builds [Mattermost][1] for various operating systems and architectures. | ||||
|  | ||||
| [0]: https://travis-ci.org/SmartHoneybee/ubiquitous-memory | ||||
| [0]: https://github.com/SmartHoneybee/ubiquitous-memory/actions | ||||
| [1]: https://mattermost.com/ | ||||
| [2]: https://en.wikipedia.org/wiki/Here_be_dragons | ||||
|   | ||||
| @@ -1,8 +1,26 @@ | ||||
| diff --git a/build/release.mk b/build/release.mk | ||||
| index 1172509..219db00 100644 | ||||
| index 1530e75c6..befe5c9b7 100644 | ||||
| --- a/build/release.mk | ||||
| +++ b/build/release.mk | ||||
| @@ -123,7 +123,7 @@ endif | ||||
| @@ -76,7 +76,7 @@ package: | ||||
|  	@# Resource directories | ||||
|  	mkdir -p $(DIST_PATH)/config | ||||
|  	cp -L config/README.md $(DIST_PATH)/config | ||||
| -	OUTPUT_CONFIG=$(PWD)/$(DIST_PATH)/config/config.json go run ./scripts/config_generator | ||||
| +	OUTPUT_CONFIG=$(PWD)/$(DIST_PATH)/config/config.json GOOS= GOARCH= go run ./scripts/config_generator | ||||
|  	cp -RL fonts $(DIST_PATH) | ||||
|  	cp -RL templates $(DIST_PATH) | ||||
|  	rm -rf $(DIST_PATH)/templates/*.mjml $(DIST_PATH)/templates/partials/ | ||||
| @@ -98,7 +98,7 @@ package: | ||||
|  	cp -RL $(BUILD_WEBAPP_DIR)/dist/* $(DIST_PATH)/client | ||||
|   | ||||
|  	@#Download MMCTL | ||||
| -	scripts/download_mmctl_release.sh "" $(DIST_PATH)/bin | ||||
| +	#scripts/download_mmctl_release.sh "" $(DIST_PATH)/bin | ||||
|   | ||||
|  	@# Help files | ||||
|  ifeq ($(BUILD_ENTERPRISE_READY),true) | ||||
| @@ -127,7 +127,7 @@ endif | ||||
|   | ||||
|   | ||||
|  	@# ----- PLATFORM SPECIFIC ----- | ||||
| @@ -11,7 +29,7 @@ index 1172509..219db00 100644 | ||||
|  	@# Make osx package | ||||
|  	@# Copy binary | ||||
|  ifeq ($(BUILDER_GOOS_GOARCH),"darwin_amd64") | ||||
| @@ -191,7 +191,7 @@ endif | ||||
| @@ -197,7 +197,7 @@ endif | ||||
|  	rm -f $(DIST_PATH)/bin/platform.exe | ||||
|  	rm -f $(DIST_PATH)/bin/mmctl.exe | ||||
|  	rm -f $(DIST_PATH)/prepackaged_plugins/* | ||||
| @@ -20,11 +38,12 @@ index 1172509..219db00 100644 | ||||
|  	@# Make linux package | ||||
|  	@# Copy binary | ||||
|  ifeq ($(BUILDER_GOOS_GOARCH),"linux_amd64") | ||||
| @@ -201,7 +201,6 @@ else | ||||
|  	cp $(GOBIN)/linux_amd64/mattermost $(DIST_PATH)/bin # from cross-compiled bin dir | ||||
| @@ -208,7 +208,7 @@ else | ||||
|  	cp $(GOBIN)/linux_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir | ||||
|  endif | ||||
| -	MMCTL_FILE="linux_amd64.tar" && curl -f -O -L https://releases.mattermost.com/mmctl/v5.28.0/$$MMCTL_FILE && tar -xvf $$MMCTL_FILE -C $(DIST_PATH)/bin && rm $$MMCTL_FILE | ||||
|  	#Download MMCTL for Linux | ||||
| -	scripts/download_mmctl_release.sh "Linux" $(DIST_PATH)/bin | ||||
| +	#scripts/download_mmctl_release.sh "Linux" $(DIST_PATH)/bin | ||||
|  	@# Prepackage plugins | ||||
|  	@for plugin_package in $(PLUGIN_PACKAGES) ; do \ | ||||
|  		ARCH="linux-amd64"; \ | ||||
|   | ||||
							
								
								
									
										26
									
								
								build.sh
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										26
									
								
								build.sh
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							| @@ -10,6 +10,8 @@ MATTERMOST_RELEASE="${MATTERMOST_RELEASE:-v5.4.0}" | ||||
| # node key id and release | ||||
| NODE_KEY="${NODE_KEY:-9FD3B784BC1C6FC31A8A0A1C1655A0AB68576280}" | ||||
| NODE_RELEASE="${NODE_RELEASE:-10}" | ||||
| # golang version | ||||
| GO_VERSION="${GO_VERSION:-1.16.7}" | ||||
|  | ||||
| if [ "$(id -u)" -eq 0 ]; then # as root user | ||||
| 	# create build user, if needed | ||||
| @@ -31,9 +33,9 @@ if [ "$(id -u)" -eq 0 ]; then # as root user | ||||
| 	apt-get update | ||||
| 	# dependencies to setup repositories | ||||
| 	apt-get install --quiet \ | ||||
| 		gnupg2 dirmngr apt-transport-https ca-certificates parallel | ||||
| 	# receive missing key (retry on failure) | ||||
| 	parallel --verbose --delay=30 --retries=5 "apt-key adv --keyserver 'ipv4.pool.sks-keyservers.net' --recv-keys '{}'" ::: "${NODE_KEY}" | ||||
| 		gnupg2 dirmngr apt-transport-https ca-certificates curl | ||||
| 	# receive missing key | ||||
| 	curl -fsSL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - | ||||
| 	# add required additional repositories | ||||
| 	printf 'deb-src http://deb.debian.org/debian %s main' "${DEBIAN_RELEASE}" \ | ||||
| 		> "/etc/apt/sources.list.d/${DEBIAN_RELEASE}-source.list" | ||||
| @@ -43,15 +45,18 @@ if [ "$(id -u)" -eq 0 ]; then # as root user | ||||
| 		> '/etc/apt/sources.list.d/nodesource.list' | ||||
| 	# update repositories | ||||
| 	apt-get update | ||||
| 	# install go from Debian backports | ||||
| 	apt-get install --quiet --target-release "${DEBIAN_RELEASE}-backports" \ | ||||
| 		golang-go | ||||
| 	# install dependencies | ||||
| 	apt-get install --quiet \ | ||||
| 		wget build-essential patch git nodejs | ||||
| 	# install 'pngquant' build dependencies (required by node module) | ||||
| 	apt-get build-dep --quiet \ | ||||
| 		pngquant | ||||
| 	# install go from golang.org | ||||
| 	wget https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz | ||||
| 	tar -xvf go${GO_VERSION}.linux-amd64.tar.gz | ||||
| 	mv go /usr/local | ||||
| 	export GOROOT=/usr/local/go | ||||
| 	export PATH=$GOROOT/bin:$PATH | ||||
| 	# FIXME go (executed by build user) writes to GOROOT | ||||
| 	install --directory --owner="${BUILD_USER_NAME}" \ | ||||
| 		"$(go env GOROOT)/pkg/$(go env GOOS)_$(go env GOARCH)" | ||||
| @@ -65,6 +70,8 @@ if [ "$(id -u)" -eq 0 ]; then # as root user | ||||
| 	exit 0 | ||||
| fi | ||||
| # as non-root user | ||||
| export GOROOT=/usr/local/go | ||||
| export PATH=$GOROOT/bin:$PATH | ||||
| cd "${HOME}" | ||||
| # download and extract Mattermost sources | ||||
| for COMPONENT in server webapp; do | ||||
| @@ -96,7 +103,12 @@ sed -i \ | ||||
| 	"${HOME}/go/src/github.com/mattermost/mattermost-server/Makefile" \ | ||||
| 	"${HOME}/go/src/github.com/mattermost/mattermost-server/build/release.mk" | ||||
| make --directory="${HOME}/go/src/github.com/mattermost/mattermost-server" \ | ||||
| 	config-reset build-linux package-linux \ | ||||
| 	config-reset \ | ||||
| 	BUILD_NUMBER="dev-$(go env GOOS)-$(go env GOARCH)-${MATTERMOST_RELEASE}" \ | ||||
| 	GO="GOARCH= GOOS= $(command -v go)" \ | ||||
| 	PLUGIN_PACKAGES='' | ||||
| make --directory="${HOME}/go/src/github.com/mattermost/mattermost-server" \ | ||||
| 	build-linux package-linux \ | ||||
| 	BUILD_NUMBER="dev-$(go env GOOS)-$(go env GOARCH)-${MATTERMOST_RELEASE}" \ | ||||
| 	GO="GOARCH=$(go env GOARCH) GOOS=$(go env GOOS) $(command -v go)" \ | ||||
| 	PLUGIN_PACKAGES='' | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| package main | ||||
| import _ "github.com/mattermost/mattermost-server/model" | ||||
| import _ "github.com/mattermost/mattermost-server/v5/model" | ||||
| func main() {/* dummy file */} | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| module github.com/SmartHoneybee/ubiquitous-memory/dependabot | ||||
|  | ||||
| require github.com/mattermost/mattermost-server/v5 v5.28.1 | ||||
| require github.com/mattermost/mattermost-server/v5 v5.38.2 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user