Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to v7.7.1 #162

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

Update to v7.7.1 #162

wants to merge 2 commits into from

Conversation

moeenio
Copy link

@moeenio moeenio commented Jan 28, 2023

Supersedes @earlmedina 's #161

@parnic-sks
Copy link
Collaborator

We will need to investigate more, but for some reason the build is trying to pull an old version of the golang libc package that doesn't support some of our targets, such as freebsd/arm. The actual error is

imports modernc.org/libc/uuid: build constraints exclude all Go files in /build/go/pkg/mod/modernc.org/[email protected]/uuid

but I'm not sure yet where the @1.16.7 is coming from since Mattermost's go.mod is referencing [email protected] which does have freebsd/arm support (1.16.7 didn't).

I see v1.16.7 in the go.sum, so maybe it's a transitive dependency problem that we could potentially fix with a redirect in a patched version of go.mod or similar.

@parnic-sks
Copy link
Collaborator

Then again, even the current version of libc lacks support for dragonfly or linux/mips*, so we may need to either open an issue with Mattermost asking them to remove this dependency (which has worked in the past for similar problems), patch around it ourselves, or drop support for those configurations.

@moeenio
Copy link
Author

moeenio commented Mar 13, 2023

Also build for linux/arm64 failed on my side : https://github.com/locness3/ubiquitous-memory/actions/runs/4032134173/jobs/6931836737

@parnic-sks
Copy link
Collaborator

Also build for linux/arm64 failed on my side : https://github.com/locness3/ubiquitous-memory/actions/runs/4032134173/jobs/6931836737

This looks like they re-introduced the Boards build step, which is going to require more work like we had to do to accommodate mmctl. My employer no longer uses an arm64 build of Mattermost, so if someone else can pick this up, that would be helpful.

@moeenio
Copy link
Author

moeenio commented Mar 14, 2023

I would assume that this isn't solely an issue with arm64

@parnic-sks
Copy link
Collaborator

You are correct. What I meant to say was that we're using an x86 build of Mattermost which means we can take official drops rather than relying on builds produced by this repo which means I no longer have the time to contribute here the way I have been. :)

@chendian2023
Copy link

Hello, I have some machines with other architectures, and I want to deploy Mattermost and Focalboard on MIPS or LoongArch. However, I only have binaries compiled for AMD, and I want to compile plugins for MIPS or LoongArch myself to experiment with. Do you have any suggestions, or do you have any plans to support LoongArch architecture on GitHub or focalboard in mips ? I am new to compiling with Go. Could you please help me ,thank you !

@parnic-sks
Copy link
Collaborator

Either someone needs to help out with the comments I've made above, or you need to petition the official Mattermost team to ask for support for your desired architecture. This is a volunteer-run project that has no volunteers available at the moment.

The steps you need for compiling are in the build scripts in this repo. The Github action is as much a walkthrough as you'll be able to find.

@parnic-sks
Copy link
Collaborator

This is in Mattermost 7.10's release notes:

In the next release, v7.11, the following repositories will be merged into one: mattermost-server, mattermost-webapp, focalboard and mattermost-plugin-playbooks. Developers should read the updated Developer Guide for details. Playbooks and Boards will be core parts of the product that cannot be disabled.

I don't know if this will be good or bad for this project. :)

@chendian2023
Copy link

chendian2023 commented Apr 18, 2023

Sorry to disturb you again , I had built mmctl and webapp ,but stuck in server . Shortly , libc is not support mipsel ,and my new arch - loongarch ,how did you build it in mips64el and succeed (I saw libc not support mips64el), I just forked your repo use the scripts - build.sh and stuck in libc when I build server , The following are concrete messages , I will be very grateful if you answer my question .

make --directory=/build/go/src/github.com/mattermost/mattermost-server build-linux package-linux BUILD_NUM[263/1936]
nux-loong64-v7.9.0 'GO=GOARCH=loong64 GOOS=linux /usr/local/go/bin/go' PLUGIN_PACKAGES=
make: 进入目录“/build/go/src/github.com/mattermost/mattermost-server”
Build Linux amd64
mkdir -p /build/go/src/github.com/mattermost/mattermost-server/bin/linux_amd64
env GOOS=linux GOARCH=amd64 GOARCH=loong64 GOOS=linux /usr/local/go/bin/go build -o /build/go/src/github.com/mattermos
t/mattermost-server/bin/linux_amd64 -trimpath -ldflags '-X "github.com/mattermost/mattermost-server/v6/model.BuildNum
ber=dev-linux-loong64-v7.9.0" -X "github.com/mattermost/mattermost-server/v6/model.BuildDate=2023年 04月 17日 星期一 1
8:18:34 UTC" -X "github.com/mattermost/mattermost-server/v6/model.BuildHash=f1384db8bc741ff14d4e9887fac0366650e94144"
-X "github.com/mattermost/mattermost-server/v6/model.BuildHashEnterprise=none" -X "github.com/mattermost/mattermost-se
rver/v6/model.BuildEnterpriseReady=false" -X "github.com/mattermost/mattermost-server/v6/model.BuildHashBoards=none" -
X "github.com/mattermost/mattermost-server/v6/model.BuildBoards=false" -X "github.com/mattermost/mattermost-server/v6/
model.BuildHashPlaybooks=none" -X "github.com/mattermost/mattermost-server/v6/model.MockCWS=false"' ./...

package github.com/mattermost/mattermost-server/v6/api4
imports github.com/mattermost/mattermost-server/v6/app
imports github.com/mattermost/mattermost-server/v6/app/platform
imports github.com/mattermost/mattermost-server/v6/config
imports github.com/mattermost/mattermost-server/v6/store/sqlstore
imports github.com/mattermost/morph
imports github.com/mattermost/morph/drivers/sqlite
imports modernc.org/sqlite
imports modernc.org/libc
imports modernc.org/libc/errno: build constraints exclude all Go files in /build/go/pkg/mod/modernc.org/libc@v
1.22.2/errno

@chendian2023
Copy link

This is in Mattermost 7.10's release notes:

In the next release, v7.11, the following repositories will be merged into one: mattermost-server, mattermost-webapp, focalboard and mattermost-plugin-playbooks. Developers should read the updated Developer Guide for details. Playbooks and Boards will be core parts of the product that cannot be disabled.

I don't know if this will be good or bad for this project. :)

I will try to build v7.10 and v7.11 in my architecture ,thanks for your information .

@parnic-sks
Copy link
Collaborator

Sorry to disturb you again , I had built mmctl and webapp ,but stuck in server . Shortly , libc is not support mipsel ,and my new arch - loongarch ,how did you build it in mips64el and succeed (I saw libc not support mips64el), I just forked your repo use the scripts - build.sh and stuck in libc when I build server , The following are concrete messages , I will be very grateful if you answer my question .

I didn't build it in mips64el - the libc problems are described earlier in this thread: #162 (comment)

@remiheens
Copy link

Hello, I've just cloned your build script and update to run arm/v7 & arm64. All is ok.
You can refer to my script. I've push directly docker image on hub.

https://github.com/remiheens/mattermost-docker-arm
https://hub.docker.com/r/rheens/mattermost-app
https://hub.docker.com/r/rheens/mattermost-db

@tier940 tier940 mentioned this pull request May 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

5 participants