ember-cli-deploy-bugsnag
v0.2.0
Published
An ember-cli-deploy plugin to upload sourcemaps to Bugsnag.
Downloads
985
Readme
ember-cli-deploy-bugsnag
An Ember CLI Deploy plugin for uploading sourcemaps to Bugsnag.
To send errors to Bugsnag, see ember-cli-bugsnag.
Installation
ember install ember-cli-deploy ember-cli-deploy-build ember-cli-deploy-bugsnag
Quick start
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.tgzHeroku 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;
};Developing
Running
ember serve- Visit your app at http://localhost:4200.
Running Tests
npm test(Runsember try:eachto test your addon against multiple Ember versions)ember testember test --server
