/setup-postgres-valgrind

An action for Postgres + Valgrind

Primary LanguageJavaScriptMIT LicenseMIT

setup-postgres-valgrind

An action for Postgres + Valgrind 🎉

  • Great for testing Postgres extensions
  • Works with regression and TAP tests

Build Status

Getting Started

Add it as a step to your workflow

      - uses: ankane/setup-postgres-valgrind@v1

Compile and install your extension

      - run: make
      - run: sudo --preserve-env=PG_CONFIG make install

And run your tests

      - run: make installcheck
      - run: make prove_installcheck

Errors are shown on the summary page and in the Post Run step

Versions

Specify a Postgres version

      - uses: ankane/setup-postgres-valgrind@v1
        with:
          postgres-version: 16

Currently supports 16 (default), 15, 14, 13, and 12

Test against multiple versions

    strategy:
      matrix:
        postgres-version: [16, 15, 14, 13, 12]
    steps:
      - uses: ankane/setup-postgres-valgrind@v1
        with:
          postgres-version: ${{ matrix.postgres-version }}

Options

Track the origin of uninitialized values (slower but useful for debugging)

      - uses: ankane/setup-postgres-valgrind@v1
        with:
          track-origins: yes

References

Credits

Thanks to Tom Lane for sharing how to use Valgrind with TAP tests.

Related Actions

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help: