@@ -5,28 +5,10 @@ const { readdirSync, readFileSync } = require('fs');
5
5
const { sentryWebpackPlugin } = require ( '@sentry/webpack-plugin' ) ;
6
6
module . exports = ( env , params = { } ) => {
7
7
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://[email protected] /2"' ,
23
- 'SENTRY_PREFIX' : `"${ SENTRY_PREFIX } "` ,
24
- } ) ;
25
-
26
8
const nconfig = require ( './nativescript.config' ) ;
9
+
27
10
const platform = env && ( ( env . android && 'android' ) || ( env . ios && 'ios' ) ) ;
28
11
const dist = nsWebpack . Utils . platform . getDistPath ( ) ;
29
- const SOURCEMAP_REL_DIR = '../../sourcemaps' ;
30
12
const projectRoot = params . projectRoot || __dirname ;
31
13
const appResourcesPath = nconfig . appResourcesPath ;
32
14
let appVersion ;
@@ -42,28 +24,39 @@ module.exports = (env, params = {}) => {
42
24
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 ] ;
43
25
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 ] ;
44
26
}
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
+
45
41
config . resolve . symlinks = false ;
46
- config . devtool = false ;
42
+ config . devtool = 'source-map' ;
47
43
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
+ }
51
59
} )
52
60
) ;
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
- // );
68
61
return config ;
69
62
} ;
0 commit comments