Skip to content

Latest commit

 

History

History
131 lines (94 loc) · 4.92 KB

README.md

File metadata and controls

131 lines (94 loc) · 4.92 KB

ember-cli-deploy-bugsnag

NPM release Build Ember Observer

An Ember CLI Deploy plugin for uploading sourcemaps to Bugsnag.

To send errors to Bugsnag, see ember-cli-bugsnag.

Compatibility

  • Ember.js v3.24 or above
  • Ember CLI v3.24 or above
  • Node.js v12 or above

Installation

ember install ember-cli-deploy-bugsnag

Usage

Enable sourcemaps for all environments in ember-cli-build.js:

/* jshint node:true */
/* global require, module */
var EmberApp = require('ember-cli/lib/broccoli/ember-app');

module.exports = function(defaults) {
  var app = new EmberApp(defaults, {
    // …
    sourcemaps: {
      enabled: true, // This allows sourcemaps to be generated in all environments
      extensions: ['js']
    }
  });

Set Bugsnag options in your config/deploy.js. The following example assumes the values for the options will be set as environment variables on your server.

  /* jshint node: true */

  module.exports = function(deployTarget) {
    // …

    ENV['bugsnag'] = {
      apiKey: process.env.BUGSNAG_KEY,
      publicUrl: process.env.BUGSNAG_PUBLIC_URL,
    };

    // …

    return ENV;
  };

Config Options

ember-cli-deploy-bugsnag options

Set in config/deploy.js:

Name Type Required Default Description
apiKey string Yes <none> Your Bugsnag Notifier API key.
distFiles array of strings No context.distFiles The array of built project files. This option should be relative to distDir. By default, this option will use the distFiles property of the deployment context.
overwrite string No true If set to false, existing sourcemaps for the same version of your app will not be overwritten. Options are true or false.
publicUrl string Yes <none> The fully qualified domain name for your application e.g., https://app.fancy-app.com
includeAppVersion boolean No true Whether to tag the uploaded sourcemaps as belonging to a particular app version.

Related plugin options

Set by other Ember CLI Deploy plugins:

Name Type Default Description Plugin
distDir string tmp/deploy-dist The path to your app's distribution directory. ember-cli-build
revisionKey string <none> The unique identifier of a build based on its git tag. ember-cli-deploy-revision-data
gzippedFiles array <none> A list of files that have been gzipped in the build. ember-cli-deploy-gzip

Deploying to Heroku

Add Heroku's Ember buildpack:

  heroku buildpacks:set https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/emberjs.tgz

Heroku strips away git information, so this addon grabs the revision info from the SOURCE_VERSION environment variable Heroku provides. Then you need to add the following to config/environment.js:

  /* jshint node: true */
  module.exports = function(environment) {
    // …
    if (environment === 'production') {
      // …
      ENV.currentRevision = process.env.SOURCE_VERSION;
      // …
    }
    // …
    return ENV;
  };

Contributing

See the Contributing guide for details.

License

This project is licensed under the MIT License.