This repository has been archived by the owner on Sep 2, 2024. It is now read-only.
chore: final phoenix install and docker compose scripts #8
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Linux-amd64 build executable | |
on: | |
push: | |
workflow_call: | |
release: | |
types: [published] | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
name: Check out code | |
with: | |
submodules: recursive | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y patchelf gcc | |
- name: Setup GoLang | |
uses: actions/setup-go@v5 | |
with: | |
check-latest: true | |
go-version: 1.21 | |
- name: Get dependencies | |
run: go get -v -t -d ./... | |
- name: Setup NodeJS | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20.x" | |
- name: Run tests | |
run: mkdir frontend/dist && touch frontend/dist/tmp && go test ./... | |
- name: Build frontend | |
run: | | |
cd frontend | |
yarn install | |
yarn build:http | |
shell: bash | |
- name: Create build directory | |
run: | | |
mkdir -p ./build/bin/albyhub-${{runner.os}}-x86_64/lib | |
- name: Build Binary for linux amd64 | |
run: CGO_ENABLED=1 go build -o build/bin/albyhub-${{runner.os}}-x86_64/bin/albyhub-x86_64 cmd/http/main.go | |
- name: Copy shared libraries to the output directory | |
run: | | |
mkdir -p ./build/bin/albyhub-${{runner.os}}-x86_64/lib | |
cp `go list -m -f "{{.Dir}}" github.com/breez/breez-sdk-go`/breez_sdk/lib/linux-amd64/libbreez_sdk_bindings.so ./build/bin/albyhub-${{runner.os}}-x86_64/lib/ | |
cp `go list -m -f "{{.Dir}}" github.com/getAlby/glalby-go`/glalby/x86_64-unknown-linux-gnu/libglalby_bindings.so ./build/bin/albyhub-${{runner.os}}-x86_64/lib/ | |
cp `go list -m -f "{{.Dir}}" github.com/getAlby/ldk-node-go`/ldk_node/x86_64-unknown-linux-gnu/libldk_node.so ./build/bin/albyhub-${{runner.os}}-x86_64/lib/ | |
shell: bash | |
- name: Patch executable RPATH | |
run: | | |
patchelf --force-rpath --set-rpath '$ORIGIN/../lib' ./build/bin/albyhub-${{runner.os}}-x86_64/bin/albyhub-x86_64 | |
- name: Add Linux perms | |
run: | | |
chmod +x build/bin/albyhub-${{runner.os}}-x86_64/bin/albyhub-x86_64 | |
shell: bash | |
- name: Make output tar archive to keep file permissions | |
run: | | |
mkdir -p ./build/out | |
tar czf ./build/out/albyhub-${{runner.os}}-x86_64.tar.gz -C ./build/bin/albyhub-${{runner.os}}-x86_64 . | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: albyhub-${{runner.os}}-x86_64.tar.gz | |
path: | | |
./build/out/albyhub-${{runner.os}}-x86_64.tar.gz | |
if-no-files-found: error |