Merge branch 'sentry-clientside-releases' into 'master'
Read HEAD commit and use as sentry releases value Closes #32535 See merge request !11565
This commit is contained in:
commit
e07c75513d
5 changed files with 37 additions and 32 deletions
|
@ -6,6 +6,10 @@ const index = function index() {
|
|||
currentUserId: gon.current_user_id,
|
||||
whitelistUrls: [gon.gitlab_url],
|
||||
isProduction: process.env.NODE_ENV,
|
||||
release: gon.revision,
|
||||
tags: {
|
||||
revision: gon.revision,
|
||||
},
|
||||
});
|
||||
|
||||
return RavenConfig;
|
||||
|
|
|
@ -57,6 +57,8 @@ const RavenConfig = {
|
|||
|
||||
configure() {
|
||||
Raven.config(this.options.sentryDsn, {
|
||||
release: this.options.release,
|
||||
tags: this.options.tags,
|
||||
whitelistUrls: this.options.whitelistUrls,
|
||||
environment: this.options.isProduction ? 'production' : 'development',
|
||||
ignoreErrors: this.IGNORE_ERRORS,
|
||||
|
|
|
@ -12,6 +12,7 @@ module Gitlab
|
|||
gon.katex_js_url = ActionController::Base.helpers.asset_path('katex.js')
|
||||
gon.sentry_dsn = current_application_settings.clientside_sentry_dsn if current_application_settings.clientside_sentry_enabled
|
||||
gon.gitlab_url = Gitlab.config.gitlab.url
|
||||
gon.revision = Gitlab::REVISION
|
||||
|
||||
if current_user
|
||||
gon.current_user_id = current_user.id
|
||||
|
|
|
@ -2,25 +2,23 @@ import RavenConfig from '~/raven/raven_config';
|
|||
import index from '~/raven/index';
|
||||
|
||||
describe('RavenConfig options', () => {
|
||||
let sentryDsn;
|
||||
let currentUserId;
|
||||
let gitlabUrl;
|
||||
let isProduction;
|
||||
const sentryDsn = 'sentryDsn';
|
||||
const currentUserId = 'currentUserId';
|
||||
const gitlabUrl = 'gitlabUrl';
|
||||
const isProduction = 'isProduction';
|
||||
const revision = 'revision';
|
||||
let indexReturnValue;
|
||||
|
||||
beforeEach(() => {
|
||||
sentryDsn = 'sentryDsn';
|
||||
currentUserId = 'currentUserId';
|
||||
gitlabUrl = 'gitlabUrl';
|
||||
isProduction = 'isProduction';
|
||||
|
||||
window.gon = {
|
||||
sentry_dsn: sentryDsn,
|
||||
current_user_id: currentUserId,
|
||||
gitlab_url: gitlabUrl,
|
||||
revision,
|
||||
};
|
||||
|
||||
process.env.NODE_ENV = isProduction;
|
||||
process.env.HEAD_COMMIT_SHA = revision;
|
||||
|
||||
spyOn(RavenConfig, 'init');
|
||||
|
||||
|
@ -33,6 +31,10 @@ describe('RavenConfig options', () => {
|
|||
currentUserId,
|
||||
whitelistUrls: [gitlabUrl],
|
||||
isProduction,
|
||||
release: revision,
|
||||
tags: {
|
||||
revision,
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
@ -25,17 +25,11 @@ describe('RavenConfig', () => {
|
|||
});
|
||||
|
||||
describe('init', () => {
|
||||
let options;
|
||||
|
||||
beforeEach(() => {
|
||||
options = {
|
||||
sentryDsn: '//sentryDsn',
|
||||
ravenAssetUrl: '//ravenAssetUrl',
|
||||
const options = {
|
||||
currentUserId: 1,
|
||||
whitelistUrls: ['//gitlabUrl'],
|
||||
isProduction: true,
|
||||
};
|
||||
|
||||
beforeEach(() => {
|
||||
spyOn(RavenConfig, 'configure');
|
||||
spyOn(RavenConfig, 'bindRavenErrors');
|
||||
spyOn(RavenConfig, 'setUser');
|
||||
|
@ -62,30 +56,28 @@ describe('RavenConfig', () => {
|
|||
it('should not call setUser if there is no current user ID', () => {
|
||||
RavenConfig.setUser.calls.reset();
|
||||
|
||||
RavenConfig.init({
|
||||
sentryDsn: '//sentryDsn',
|
||||
ravenAssetUrl: '//ravenAssetUrl',
|
||||
currentUserId: undefined,
|
||||
whitelistUrls: ['//gitlabUrl'],
|
||||
isProduction: true,
|
||||
});
|
||||
options.currentUserId = undefined;
|
||||
|
||||
RavenConfig.init(options);
|
||||
|
||||
expect(RavenConfig.setUser).not.toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
describe('configure', () => {
|
||||
let options;
|
||||
let raven;
|
||||
let ravenConfig;
|
||||
|
||||
beforeEach(() => {
|
||||
options = {
|
||||
const options = {
|
||||
sentryDsn: '//sentryDsn',
|
||||
whitelistUrls: ['//gitlabUrl'],
|
||||
isProduction: true,
|
||||
release: 'revision',
|
||||
tags: {
|
||||
revision: 'revision',
|
||||
},
|
||||
};
|
||||
|
||||
beforeEach(() => {
|
||||
ravenConfig = jasmine.createSpyObj('ravenConfig', ['shouldSendSample']);
|
||||
raven = jasmine.createSpyObj('raven', ['install']);
|
||||
|
||||
|
@ -100,6 +92,8 @@ describe('RavenConfig', () => {
|
|||
|
||||
it('should call Raven.config', () => {
|
||||
expect(Raven.config).toHaveBeenCalledWith(options.sentryDsn, {
|
||||
release: options.release,
|
||||
tags: options.tags,
|
||||
whitelistUrls: options.whitelistUrls,
|
||||
environment: 'production',
|
||||
ignoreErrors: ravenConfig.IGNORE_ERRORS,
|
||||
|
@ -118,6 +112,8 @@ describe('RavenConfig', () => {
|
|||
RavenConfig.configure.call(ravenConfig);
|
||||
|
||||
expect(Raven.config).toHaveBeenCalledWith(options.sentryDsn, {
|
||||
release: options.release,
|
||||
tags: options.tags,
|
||||
whitelistUrls: options.whitelistUrls,
|
||||
environment: 'development',
|
||||
ignoreErrors: ravenConfig.IGNORE_ERRORS,
|
||||
|
|
Loading…
Reference in a new issue