@@ -5,28 +5,10 @@ const { readdirSync, readFileSync } = require('fs');
55const { sentryWebpackPlugin } = require ( '@sentry/webpack-plugin' ) ;
66module . exports = ( env , params = { } ) => {
77 nsWebpack . init ( env ) ;
8- nsWebpack . chainWebpack ( config => {
9- config . entry ( 'bundle' ) . prepend ( '@nativescript-community/sentry/process' ) ;
10- } ) ;
11- const config = nsWebpack . resolveConfig ( ) ;
12- // Object.assign(config, {
13- // snapshot: {
14- // // detect changes in "node_modules"
15- // managedPaths: [],
16- // }
17- // });
18- const definitions = config . plugins . find ( ( p ) => p . constructor . name === 'DefinePlugin' ) . definitions ;
19- delete definitions [ 'process' ] ;
20- const SENTRY_PREFIX = 'app:///' ;
21- Object . assign ( definitions , {
22- 'SENTRY_DSN' : '"https://3e5220672ff5463f9a0c5bb18bcac1fd@bugs.akylas.fr/2"' ,
23- 'SENTRY_PREFIX' : `"${ SENTRY_PREFIX } "` ,
24- } ) ;
25-
268 const nconfig = require ( './nativescript.config' ) ;
9+
2710 const platform = env && ( ( env . android && 'android' ) || ( env . ios && 'ios' ) ) ;
2811 const dist = nsWebpack . Utils . platform . getDistPath ( ) ;
29- const SOURCEMAP_REL_DIR = '../../sourcemaps' ;
3012 const projectRoot = params . projectRoot || __dirname ;
3113 const appResourcesPath = nconfig . appResourcesPath ;
3214 let appVersion ;
@@ -42,28 +24,39 @@ module.exports = (env, params = {}) => {
4224 appVersion = plistData . match ( / < k e y > C F B u n d l e S h o r t V e r s i o n S t r i n g < \/ k e y > [ \s \n ] * < s t r i n g > ( .* ?) < \/ s t r i n g > / ) [ 1 ] ;
4325 buildNumber = plistData . match ( / < k e y > C F B u n d l e V e r s i o n < \/ k e y > [ \s \n ] * < s t r i n g > ( [ 0 - 9 ] * ) < \/ s t r i n g > / ) [ 1 ] ;
4426 }
27+ // nsWebpack.chainWebpack(config=>{
28+ // config.entry('bundle').prepend('@nativescript-community/sentry/process');
29+ // });
30+ const config = nsWebpack . resolveConfig ( ) ;
31+ const definitions = config . plugins . find ( ( p ) => p . constructor . name === 'DefinePlugin' ) . definitions ;
32+ delete definitions [ 'process' ] ;
33+ Object . assign ( definitions , {
34+ SENTRY_DSN : `"${ process . env . SENTRY_DSN } "` ,
35+ SENTRY_PREFIX : `"${ process . env . SENTRY_PREFIX } "` ,
36+ __APP_ID__ : `"${ config . id } "` ,
37+ __APP_VERSION__ : `"${ appVersion } "` ,
38+ __APP_BUILD_NUMBER__ : `"${ buildNumber } "`
39+ } ) ;
40+
4541 config . resolve . symlinks = false ;
46- config . devtool = false ;
42+ config . devtool = 'source-map' ;
4743 config . plugins . push (
48- new webpack . SourceMapDevToolPlugin ( {
49- append : `\n//# sourceMappingURL=${ SENTRY_PREFIX } [file].map` ,
50- filename : join ( SOURCEMAP_REL_DIR , '[file].map' )
44+ sentryWebpackPlugin ( {
45+ org : process . env . SENTRY_ORG ,
46+ url : process . env . SENTRY_URL ,
47+ project : process . env . SENTRY_PROJECT ,
48+ authToken : process . env . SENTRY_AUTH_TOKEN ,
49+ release : {
50+ create : true ,
51+ cleanArtifacts : true ,
52+ name : `${ nconfig . id } @${ appVersion } +${ buildNumber } ` ,
53+ dist : `${ buildNumber } .${ platform } ` ,
54+ } ,
55+ sourcemaps : {
56+ ignore : [ 'tns-java-classes' , 'hot-update' ] ,
57+ assets : [ dist + '/**/*.js' , join ( dist , process . env . SOURCEMAP_REL_DIR ) + '/*.map' ]
58+ }
5159 } )
5260 ) ;
53- // config.plugins.push(
54- // sentryWebpackPlugin({
55- // release: appVersion,
56- // urlPrefix: SENTRY_PREFIX,
57- // rewrite: true,
58- // release: {
59- // name: `${nconfig.id}@${appVersion}+${buildNumber}`,
60- // dist: `${buildNumber}.${platform}`,
61- // uploadLegacySourcemaps: {
62- // ignoreFile: '.sentrycliignore',
63- // paths: [dist, join(dist, SOURCEMAP_REL_DIR)]
64- // },
65- // },
66- // })
67- // );
6861 return config ;
6962} ;
0 commit comments