postgres-mcp 0.3.2

A PostgreSQL MCP (Model Context Protocol) server implementation for building AI agents
Documentation
name: build

on:
  push:
    branches:
      - master
    tags:
      - v*
  pull_request:
    branches:
      - master

permissions:
  contents: write

jobs:
  build-rust:
    strategy:
      matrix:
        platform: [ubuntu-latest]
    runs-on: ${{ matrix.platform }}
    services:
      postgres:
        image: postgres:14.5
        env:
          POSTGRES_PASSWORD: postgres
        ports:
          - 5432:5432
        # Set health checks to wait until postgres has started
        options: >-
          --health-cmd pg_isready
          --health-interval 10s
          --health-timeout 5s
          --health-retries 5
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
          submodules: recursive
      - name: Install Rust
        run: rustup toolchain install stable --component llvm-tools-preview
      - name: Install cargo-llvm-cov
        uses: taiki-e/install-action@cargo-llvm-cov
      - name: install nextest
        uses: taiki-e/install-action@nextest
      - uses: Swatinem/rust-cache@v2
      - name: Check code format
        run: cargo fmt --all -- --check
      - name: Check the package for errors
        run: cargo check --all
      - name: Lint rust sources
        run: cargo clippy --all-targets --all-features --tests --benches -- -D warnings
      - name: install postgres-mcp
        run: cargo install --path . --debug
      - name: Execute rust tests
        run: cargo nextest run --all-features
      - name: Generate a changelog
        uses: orhun/git-cliff-action@v2
        id: git-cliff
        if: startsWith(github.ref, 'refs/tags/')
        with:
          config: cliff.toml
          args: -vv --latest --strip header
        env:
          OUTPUT: CHANGES.md
      - name: Release
        uses: softprops/action-gh-release@v1
        if: startsWith(github.ref, 'refs/tags/')
        with:
          body: ${{ steps.git-cliff.outputs.content }}