diff --git a/.github/scripts/get-rocksdb-version.sh b/.github/scripts/get-rocksdb-version.sh new file mode 100755 index 000000000000..7f72b9691137 --- /dev/null +++ b/.github/scripts/get-rocksdb-version.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash +set -Eeuo pipefail + +# Search for rocksdb_version in makefile +rocksdb_version=$(grep "rocksdb_version" ./scripts/build/build.mk | cut -d'=' -f2) + +if [[ -z "${rocksdb_version}" ]]; then + echo "Error: rocksdb_version not found in ./scripts/build/build.mk" >&2 + exit 1 +else + echo "ROCKSDB_VERSION=${rocksdb_version}" >> "${GITHUB_ENV}" +fi \ No newline at end of file diff --git a/.github/scripts/install-rocksdb.sh b/.github/scripts/install-rocksdb.sh index 8579431bfc2a..00829abeefa8 100755 --- a/.github/scripts/install-rocksdb.sh +++ b/.github/scripts/install-rocksdb.sh @@ -12,7 +12,7 @@ sudo apt update && sudo apt-get install -y libsnappy-dev zlib1g-dev libbz2-dev l # Clone RocksDB repository git clone https://github.com/facebook/rocksdb.git /home/runner/rocksdb cd /home/runner/rocksdb || exit 1 -git checkout "v${ROCKSDB_VERSION}" +git checkout "${ROCKSDB_VERSION}" # Build shared library sudo make -j "$(nproc --all)" shared_lib diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index aedc723996c6..36c712f5f23c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,9 +13,6 @@ concurrency: group: ci-${{ github.ref }}-build cancel-in-progress: true -env: - ROCKSDB_VERSION: 9.6.1 - jobs: build: runs-on: ubuntu-latest @@ -28,6 +25,8 @@ jobs: with: go-version: "1.23" check-latest: true + - name: Get rocksdb version + run: ./.github/scripts/get-rocksdb-version.sh - name: Fix permissions for cache run: sudo chown $(whoami) /usr/local/lib /usr/local/include - name: Restore rocksdb libraries cache diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index d82c04450298..4e70115e1e3b 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -9,9 +9,6 @@ on: permissions: contents: read -env: - ROCKSDB_VERSION: 9.6.1 - jobs: golangci: name: golangci-lint @@ -30,6 +27,8 @@ jobs: Makefile **/Makefile .golangci.yml + - name: Get rocksdb version + run: ./.github/scripts/get-rocksdb-version.sh - name: Fix permissions for cache run: sudo chown $(whoami) /usr/local/lib /usr/local/include - name: Restore rocksdb libraries cache diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a9269d876f0a..389775f718d7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,9 +13,6 @@ concurrency: group: ci-${{ github.ref }}-tests cancel-in-progress: true -env: - ROCKSDB_VERSION: 9.6.1 - jobs: split-test-files: runs-on: ubuntu-latest @@ -790,6 +787,8 @@ jobs: store/**/*.go store/go.mod store/go.sum + - name: Get rocksdb version + run: ./.github/scripts/get-rocksdb-version.sh - name: Fix permissions for cache run: sudo chown $(whoami) /usr/local/lib /usr/local/include - name: Restore rocksdb libraries cache @@ -845,6 +844,8 @@ jobs: store/v2/**/*.go store/v2/go.mod store/v2/go.sum + - name: Get rocksdb version + run: ./.github/scripts/get-rocksdb-version.sh - name: Fix permissions for cache run: sudo chown $(whoami) /usr/local/lib /usr/local/include - name: Restore rocksdb libraries cache diff --git a/scripts/build/build.mk b/scripts/build/build.mk index 1fb1908d7531..9bb6e5789171 100644 --- a/scripts/build/build.mk +++ b/scripts/build/build.mk @@ -12,6 +12,8 @@ HTTPS_GIT := https://github.com/cosmos/cosmos-sdk.git DOCKER := $(shell which docker) PROJECT_NAME = $(shell git remote get-url origin | xargs basename -s .git) +rocksdb_version=v9.6.1 + ifeq ($(findstring .,$(VERSION)),) VERSION := 0.0.0 endif