Building without Docker


#1

I’d like to build Mattermost on FreeBSD in order to test it on this platform and in the end, if found working without issues, create a port to include it in FreeBSD Ports Tree. I’ve seen in the comments, that simple ‘make run’ should regardless the platform, but that’s not the case here. First issue was that it is meant to be ‘gmake’ instead of ‘make’, but then I am getting issues with docker not being available. Now, despite FreeBSD having containers available for almost a decade, these containers are not a Docker ones and even if one day Docker will be supported on FreeBSD, it is not the case today. So, the question is, is it possible to build Mattermost without Docker, and if it is, then how?


#2

Thanks @randomuser for the feedback,

We have an existing feature request to add support for FreeBSD, would you like to upvote it and participate in the discussions?

Each user in the Feature Idea forum receives 10 votes, each one influencing the future of the software.


#3

I have voted for that, but that’s not a solution nor real answer. Most likely it will take you quite a while to add the ‘support for FreeBSD’ and if I’d only have instructions, I could just do it, becuase there isn’t anything magical in Mattermost that FreeBSD can’t do or that would require ‘adding support’. It is just a piece of software that’s bundled using quite unfortunate technology, instead of standard thing like Makefile… I guess I’ll have to rip out the dockerfile and reverse engineer the solution myself!


#4

in bin/build.sh

comment Docker out any of the gradlew test invocations

add
./gradlew --stacktrace es54x:ror ‘-PesVersion=5.6.2’
above the similar line for 5.6.1, then comment out the other version builds

run bin/build.sh - and it works! i have readonlyrest-1.16.12-pre3_es5.6.2.zip and readonlyrest-1.16.12-pre3_es5.6.2.zip.sha1 in es54x/build/distributions/ directory

still need to test, just because it builds doesn’t mean it will work…


#5

Hi @randomuser, following up here - you mentioned in your last post that you would just need some instructions to get started on the feature - have you received any assistance elsewhere or do you still need assistance? If you still need assistance I will ask one of our engineers to give you guidance on this.