Prepare release v0.1.1.

This commit is contained in:
Sebastian Jeltsch
2024-11-06 12:39:10 +01:00
parent 17d5fdc4b2
commit 7fd0c2e16f
4 changed files with 135 additions and 7 deletions

125
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,125 @@
name: release
on:
push:
tags:
- "v*.*.*"
jobs:
changelog:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Get release notes from changelog
id: release_notes
run: |
export VERSION=$(echo ${{ github.ref_name }} | sed 's/^v//')
echo "VERSION = ${VERSION}"
awk "/## v${VERSION}.*/{include=1; next} /## v.*/{include=0} include && NF" CHANGELOG.md > ./CHANGELOG-release.md
cat ./CHANGELOG-release.md
- name: Release Change log
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
body_path: ./CHANGELOG-release.md
release-linux:
needs: changelog
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: 'true'
- name: Install Dependencies
run: |
sudo apt-get update && \
sudo apt-get install -y --no-install-recommends curl libssl-dev pkg-config libclang-dev protobuf-compiler libprotobuf-dev libsqlite3-dev zip
- uses: pnpm/action-setup@v4
with:
version: 9
- name: PNPM install
run: |
pnpm i
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: x86_64-unknown-linux-gnu
default: true
- name: Rust Build
run: |
RUSTFLAGS="-C target-feature=+crt-static" cargo build --target x86_64-unknown-linux-gnu --release --bin trail && \
zip -r -j trailbase_${{ github.ref_name }}_x86_64_linux.zip target/x86_64-unknown-linux-gnu/release/trail CHANGELOG.md LICENSE
- name: Release binaries
uses: softprops/action-gh-release@v2
with:
fail_on_unmatched_files: true
files: trailbase_${{ github.ref_name }}_x86_64_linux.zip
release-aarch64-apple-darwin:
needs: changelog
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
with:
submodules: 'true'
- name: Install Dependencies
run: |
brew update && brew install pkg-config protobuf sqlite
- uses: pnpm/action-setup@v4
with:
version: 9
- name: PNPM install
run: |
pnpm i
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: aarch64-apple-darwin
default: true
- name: Rust Build
run: |
cargo build --target aarch64-apple-darwin --release --bin trail && \
zip -r -j trailbase_${{ github.ref_name }}_arm64_apple_darwin.zip target/aarch64-apple-darwin/release/trail CHANGELOG.md LICENSE
- name: Release binaries
uses: softprops/action-gh-release@v2
with:
fail_on_unmatched_files: true
files: trailbase_${{ github.ref_name }}_arm64_apple_darwin.zip
release-x86_64-apple-darwin:
needs: changelog
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
with:
submodules: 'true'
- name: Install Dependencies
run: |
brew update && brew install pkg-config protobuf sqlite
- uses: pnpm/action-setup@v4
with:
version: 9
- name: PNPM install
run: |
pnpm i
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: x86_64-apple-darwin
default: true
- name: Rust Build
run: |
cargo build --target x86_64-apple-darwin --release --bin trail && \
zip -r -j trailbase_${{ github.ref_name }}_x86_64_apple_darwin.zip target/x86_64-apple-darwin/release/trail CHANGELOG.md LICENSE
- name: Release binaries
uses: softprops/action-gh-release@v2
with:
fail_on_unmatched_files: true
files: trailbase_${{ github.ref_name }}_x86_64_apple_darwin.zip

View File

@@ -34,6 +34,3 @@ jobs:
default: true
- uses: actions/setup-python@v3
- uses: pre-commit/action@v3.0.1
# - name: Rust tests
# run: |
# cargo test -p trailbase-core -p trailbase-extension -p trailbase-sqlite -p trailbase-cli

10
CHANGELOG.md Normal file
View File

@@ -0,0 +1,10 @@
## v0.1.1
* Changed license to OSI-approved weak-copyleft OSL-3.0.
* Add GitHub action workflow to automatically build and publish binary releases
for Linux adm64 as well as MacOS intel and apple arm silicone.
* Add support for geoip database to map client-ips to countries and draw a world map.
## v0.1.0
* Initial release.

View File

@@ -25,10 +25,6 @@ Packages and pre-built binaries are available via:
Pre-built static binaries are also available as
[GitHub releases](https://github.com/trailbaseio/trailbase/releases/).
At the moment that is builds for `Linux x86_64` only until we get our
cross-platform build infrastructure set up.
In the meantime, you can use docker or try building it yourself. We have built
TrailBase successfully on Mac and Apple silicone, see instructions below.
## Building