A webpack plugin acting as an interface to Sentry CLI.
Using npm:
$ npm install @sentry/webpack-plugin --only=dev
Using yarn:
$ yarn add @sentry/webpack-plugin --dev
You can use either .sentryclirc
file or ENV variables described here
https://docs.sentry.io/learn/cli/configuration/
const SentryCliPlugin = require('@sentry/webpack-plugin');
const config = {
plugins: [
new SentryCliPlugin({
include: '.',
ignoreFile: '.sentrycliignore',
ignore: ['node_modules', 'webpack.config.js'],
configFile: 'sentry.properties',
}),
],
};
Also, check the example directory.
release [optional]
- unique name of a release, must be astring
, should uniquely identify your release, defaults tosentry-cli releases propose-version
command which should always return the correct version (requires access togit
CLI and root directory to be a valid repository).include [required]
-string
orarray
, one or more paths that Sentry CLI should scan recursively for sources. It will upload all.map
files and match associated.js
filesentries [optional]
-array
orRegExp
orfunction(key: string): bool
, a filter for entry points that should be processed. By default, the release will be injected into all entry points.ignoreFile [optional]
-string
, path to a file containing list of files/directories to ignore. Can point to.gitignore
or anything with same formatignore [optional]
-string
orarray
, one or more paths to ignore during upload. Overrides entries inignoreFile
file. If neitherignoreFile
orignore
are present, defaults to['node_modules']
configFile [optional]
-string
, path to Sentry CLI config properties, as described in https://docs.sentry.io/learn/cli/configuration/#properties-files. By default, the config file is looked for upwards from the current path and defaults from~/.sentryclirc
are always loadedext [optional]
-array
, this sets the file extensions to be considered. By default the following file extensions are processed: js, map, jsbundle and bundle.urlPrefix [optional]
-string
, this sets an URL prefix at the beginning of all files. This defaults to~/
but you might want to set this to the full URL. This is also useful if your files are stored in a sub folder. eg:url-prefix '~/static/js'
urlSuffix [optional]
-string
, this sets an URL suffix at the end of all files. Useful for appending query parameters.validate [optional]
-boolean
, this attempts sourcemap validation before upload when rewriting is not enabled. It will spot a variety of issues with source maps and cancel the upload if any are found. This is not the default as this can cause false positives.stripPrefix [optional]
-array
, when paired withrewrite
this will chop-off a prefix from uploaded files. For instance you can use this to remove a path that is build machine specific.stripCommonPrefix [optional]
-boolean
, when paired withrewrite
this will add~
to thestripPrefix
array.sourceMapReference [optional]
-boolean
, this prevents the automatic detection of sourcemap references.rewrite [optional]
-boolean
, enables rewriting of matching sourcemaps so that indexed maps are flattened and missing sources are inlined if possible., defaults totrue
dryRun [optional]
-boolean
, attempts a dry run (useful for dev environments)debug [optional]
-boolean
, print some useful debug informationsilent [optional]
-boolean
, iftrue
, all logs are suppressed (useful for--json
option)errorHandler [optional]
-function(err: Error, invokeErr: function(): void): void
, when Cli error occurs, plugin calls this function. webpack compilation failure can be chosen by callinginvokeErr
callback or not. default(err, invokeErr) => { invokeErr() }
You can find more information about these options in our official docs: https://docs.sentry.io/cli/releases/#sentry-cli-sourcemaps