Skip to content

Interface structure viewer highlights interface and distinguish chains #83

Interface structure viewer highlights interface and distinguish chains

Interface structure viewer highlights interface and distinguish chains #83

Workflow file for this run

name: Build & upload binaries
on:
push:
branches:
- master
workflow_dispatch:
jobs:
build_ubuntu:
name: Build Ubuntu
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Install lipo
run: |
sudo apt-get update
sudo apt-get install -y llvm-18
- name: Build
run: |
mkdir -p mmseqs-server/bin
cp -f README.md LICENSE mmseqs-server
cd backend
GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -o mmseqs-server-amd64
GOOS=darwin GOARCH=arm64 CGO_ENABLED=0 go build -o mmseqs-server-arm64
/usr/lib/llvm-18/bin/llvm-lipo \
-create \
-arch x86_64 mmseqs-server-amd64 \
-arch arm64 mmseqs-server-arm64 \
-output "../mmseqs-server/bin/mmseqs-server"
rm -f mmseqs-server-amd64 mmseqs-server-arm64
cd ..
chmod +x mmseqs-server/bin/mmseqs-server
tar -czvf mmseqs-server-osx-universal.tar.gz mmseqs-server
rm -f mmseqs-server/bin/mmseqs-server
(cd backend/; GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o ../mmseqs-server/bin/mmseqs-server)
chmod +x mmseqs-server/bin/mmseqs-server
tar -czvf mmseqs-server-linux-x86_64.tar.gz mmseqs-server
rm -f mmseqs-server/bin/mmseqs-server
(cd backend/; GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -o ../mmseqs-server/bin/mmseqs-server)
chmod +x mmseqs-server/bin/mmseqs-server
tar -czvf mmseqs-server-linux-arm64.tar.gz mmseqs-server
rm -f mmseqs-server/bin/mmseqs-server
- name: Upload
if: github.event_name != 'pull_request'
run: |
mkdir -p $HOME/.ssh
echo "$PRIVATE_KEY" > $HOME/.ssh/id_rsa
chmod 700 $HOME/.ssh && chmod 600 $HOME/.ssh/id_rsa
ssh-keygen -f $HOME/.ssh/id_rsa -y > $HOME/.ssh/id_rsa.pub
ssh-keygen -Y sign -f $HOME/.ssh/id_rsa \
-n file mmseqs-server-osx-universal.tar.gz mmseqs-server-linux-x86_64.tar.gz mmseqs-server-linux-arm64.tar.gz
curl --retry 5 --retry-all-errors -X POST \
-F file[]=@mmseqs-server-osx-universal.tar.gz -F signature[]=@mmseqs-server-osx-universal.tar.gz.sig \
-F file[]=@mmseqs-server-linux-x86_64.tar.gz -F signature[]=@mmseqs-server-linux-x86_64.tar.gz.sig \
-F file[]=@mmseqs-server-linux-arm64.tar.gz -F signature[]=@mmseqs-server-linux-arm64.tar.gz.sig \
-F identifier="mmseqs-server" -F directory="${{ github.sha }}" \
https://mmseqs.com/upload
env:
PRIVATE_KEY : ${{ secrets.PRIVATE_KEY }}