Skip to content
KeystoneJS LogoKeystoneJS

App version plugin

View changelog

This package provides support for including a version string both as an HTTP response header and as a graphQL query.

The function appVersionMiddleware(version) will return a piece of middleware which will set the X-Keystone-App-Version response header to version on all HTTP requests.

The graphQL provider AppVersionProvider will add an { appVersion } query to your graphQL API which returns version as a string.

Usage

Indirectly

This package is designed to be used indirectly via the conveniance API on the Keystone class:

const keystone = new Keystone({
  appVersion: {
    version: '1.0.0',
    addVersionToHttpHeaders: true,
    access: true,
  },
});

Directly

It can also be used directly if you would like to manually manage your middleware stack of graphQL providers.

const { AppVersionProvider, appVersionMiddleware } = require('@keystonejs/app-version');

const version = '1.0.0';

app.use(appVersionMiddleware(version));

keystone._providers.push(
  new AppVersionProvider({
    version,
    access: true,
    schemaNames: ['public'],
  })
);

On this page

  • Usage
  • Indirectly
  • Directly
Edit on GitHub