Skip to content

Merge pull request #26 from VictoriaMetrics/ui-improvements #30

Merge pull request #26 from VictoriaMetrics/ui-improvements

Merge pull request #26 from VictoriaMetrics/ui-improvements #30

Workflow file for this run

name: build
on:
push:
tags:
- 'v*'
permissions:
contents: write
packages: write
id-token: write
jobs:
release-sql-to-logsql:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
with:
fetch-depth: '0'
fetch-tags: 'true'
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version: 1.25.5
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: 24
- name: Check licenses and vulnerabilities
run: make check
- name: Fetch tags
run: |
if [[ "${{ github.ref_type }}" != "tag" ]]; then
git fetch --tags
else
echo "Skipping tag fetch - already on tag ${{ github.ref_name }}"
fi
- name: Run ui build
run: |
if [[ "${{ github.ref_type }}" == "tag" ]]; then
TAG_VERSION=$(echo "${{ github.ref_name }}" | sed 's/^v//')
else
LATEST_TAG=$(git tag --sort=-version:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+(-.*)?$' | head -n 1)
[ -z "$LATEST_TAG" ] && { echo "No release tag found"; exit 1; }
TAG_VERSION=$(echo "$LATEST_TAG" | sed 's/^v//')
echo "Using latest tag: $LATEST_TAG"
fi
cp cmd/sql-to-logsql/web/ui/package.json cmd/sql-to-logsql/web/ui/package.json.backup
cp cmd/sql-to-logsql/web/ui/package-lock.json cmd/sql-to-logsql/web/ui/package-lock.json.backup
sed -i "s/\${VERSION}/$TAG_VERSION/g" cmd/sql-to-logsql/web/ui/package.json
echo "Version: $TAG_VERSION"
make ui-build
cat cmd/sql-to-logsql/web/ui/package.json.backup > cmd/sql-to-logsql/web/ui/package.json
cat cmd/sql-to-logsql/web/ui/package-lock.json.backup > cmd/sql-to-logsql/web/ui/package-lock.json
rm cmd/sql-to-logsql/web/ui/package.json.backup
rm cmd/sql-to-logsql/web/ui/package-lock.json.backup
- name: golangci-lint
uses: golangci/golangci-lint-action@v9
with:
version: v2.4
- name: Tests
run: make test
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Docker Login
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and release
uses: goreleaser/goreleaser-action@v6
if: success() && startsWith(github.ref, 'refs/tags/')
with:
args: release --clean --verbose --timeout 60m -f .goreleaser.yaml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
release-logsql-jdbc:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
with:
fetch-depth: '0'
fetch-tags: 'true'
- name: Install JDK and Maven
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '11'
cache: 'maven'
- name: Fetch tags
run: |
if [[ "${{ github.ref_type }}" != "tag" ]]; then
git fetch --tags
else
echo "Skipping tag fetch - already on tag ${{ github.ref_name }}"
fi
- name: Update Configuration
working-directory: logsql-jdbc
run: |
if [[ "${{ github.ref_type }}" == "tag" ]]; then
TAG_VERSION=$(echo "${{ github.ref_name }}" | sed 's/^v//')
else
LATEST_TAG=$(git tag --sort=-version:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+(-.*)?$' | head -n 1)
[ -z "$LATEST_TAG" ] && { echo "No release tag found"; exit 1; }
TAG_VERSION=$(echo "$LATEST_TAG" | sed 's/^v//')
echo "Using latest tag: $LATEST_TAG"
fi
mvn versions:set versions:commit -DnewVersion="${TAG_VERSION}";
- name: Publish package
working-directory: logsql-jdbc
run: |
mvn -s ${{ github.workspace }}/.github/workflows/settings.xml -DskipTests --batch-mode deploy
rm -rf */target/logsql-jdbc-*.jar
env:
USERNAME: ${{ secrets.USERNAME }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}