@@ -47,7 +47,8 @@ Class.Define('BaseBuild', {
47
47
dirFullPath : subFolder . path ,
48
48
dirName : subFolder . name ,
49
49
asmInfo : asmInfo ,
50
- nugetCfg : this . _tryToFindNugetConfigFile ( subFolder . path )
50
+ nugetCfg : this . _tryToFindNugetConfigFile ( subFolder . path ) ,
51
+ readme : this . _tryToFindReadmeFile ( subFolder . path )
51
52
} ) ;
52
53
}
53
54
}
@@ -56,6 +57,7 @@ Class.Define('BaseBuild', {
56
57
_tryToFindNugetConfigFile : function ( dirFullPath ) {
57
58
var folder = Wsh . Fso . GetFolder ( dirFullPath ) ,
58
59
filesEnum = new Enumerator ( folder . files ) ,
60
+ file = { } ,
59
61
fileExt = '' ,
60
62
result = '' ;
61
63
for ( ; ! filesEnum . atEnd ( ) ; filesEnum . moveNext ( ) ) {
@@ -68,6 +70,22 @@ Class.Define('BaseBuild', {
68
70
}
69
71
return result ;
70
72
} ,
73
+ _tryToFindReadmeFile : function ( dirFullPath ) {
74
+ var folder = Wsh . Fso . GetFolder ( dirFullPath ) ,
75
+ filesEnum = new Enumerator ( folder . files ) ,
76
+ file = { } ,
77
+ fileName = '' ,
78
+ result = '' ;
79
+ for ( ; ! filesEnum . atEnd ( ) ; filesEnum . moveNext ( ) ) {
80
+ file = Wsh . Fso . GetFile ( String ( filesEnum . item ( ) ) ) ;
81
+ fileName = String ( file . Name ) . toUpperCase ( ) ;
82
+ if ( fileName == 'README.MD' ) {
83
+ result = file . Path ;
84
+ break ;
85
+ }
86
+ }
87
+ return result ;
88
+ } ,
71
89
cleanAllBinDirectoriesForNupkgs : function ( ) {
72
90
var dirFullPath = '' ;
73
91
for ( var i = 0 , l = this . modulesInfo . length ; i < l ; i += 1 ) {
@@ -164,6 +182,34 @@ Class.Define('BaseBuild', {
164
182
}
165
183
return nugetCfgContent ;
166
184
} ,
185
+ setUpVersionToReadmes : function ( ) {
186
+ var readStream = null ,
187
+ writeStream = null ,
188
+ readmeFullPath = '' ,
189
+ readmeContent = '' ;
190
+ for ( var i = 0 , l = this . modulesInfo . length ; i < l ; i += 1 ) {
191
+ readmeFullPath = this . modulesInfo [ i ] . readme ;
192
+ if ( ! readmeFullPath ) continue ;
193
+ // open for reading, if file doesn't exists, do not create new
194
+ readStream = Wsh . Fso . OpenTextFile ( readmeFullPath , 1 , false ) ;
195
+ readmeContent = readStream . ReadAll ( ) ;
196
+ readStream . Close ( ) ;
197
+ readmeContent = this . _setUpVersionToReadmeContent ( readmeContent ) ;
198
+ // for overwriting, not as Unicode
199
+ writeStream = Wsh . Fso . CreateTextFile ( readmeFullPath , true , false ) ;
200
+ writeStream . Write ( readmeContent ) ;
201
+ writeStream . Close ( ) ;
202
+ }
203
+ } ,
204
+ _setUpVersionToReadmeContent : function ( nugetCfgContent ) {
205
+ nugetCfgContent = nugetCfgContent . replace ( / \/ S t a b l e \- v ( [ \d ] * ) \. ( [ \d ] * ) \. ( [ \d ] * ) \- b r i g h t g r e e n \. s v g / g, function ( ) {
206
+ var args = [ ] . slice . apply ( arguments ) ;
207
+ args [ 0 ] = '/Stable-v' + this . versions [ 0 ] + '.' + this . versions [ 1 ] + '.' + this . versions [ 2 ] + '-brightgreen.svg' ;
208
+ return args [ 0 ] ;
209
+ } . bind ( this ) ) ;
210
+ //log(nugetCfgContent);
211
+ return nugetCfgContent ;
212
+ } ,
167
213
cleanDirectory : function ( relativeOrAbsolutePath , allFiles ) {
168
214
var folder = Wsh . Fso . GetFolder ( relativeOrAbsolutePath ) ,
169
215
filesEnum = new Enumerator ( folder . files ) ,
0 commit comments