This repository has been archived by the owner on Jan 4, 2023. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 98
/
release.js
executable file
·99 lines (67 loc) · 2.18 KB
/
release.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
const gulp = require('gulp');
const del = require('del');
const fs = require('fs');
const zip = require('gulp-zip');
const { Console } = require('console');
var sources = {
"osx-x64" : ["osx-x64", "unix", "shared"],
"win-x64" : ["win-x64", "shared"],
"linux-x64" : ["linux-x64", "unix", "shared"],
"linux-arm64" : ["linux-arm64"]
}
gulp.task('release-clean', function () {
return del(
[process.env.FINAL + process.env.CURRENT_PLATFORM, zipName( process.env.FINAL + process.env.CURRENT_PLATFORM)],
{force: true}
);
});
gulp.task('release-platform', function(cb) {
// Parse the paths
var paths = sources[process.env.CURRENT_PLATFORM];
var fileList = [];
paths.forEach(path => {
fileList.push(process.env.STAGING + 'Runner/' + path + "/**/*");
});
var dest = process.env.FINAL + process.env.CURRENT_PLATFORM;
if(process.env.CURRENT_PLATFORM == "osx-x64")
{
dest += "/" + process.env.APP_NAME + ".app/Contents/MacOS/"
}
return gulp.src(fileList)
.pipe(gulp.dest(dest));
}
);
gulp.task('release-runner', function(){
var src = process.env.STAGING + "Runner";
var dest = process.env.FINAL + process.env.CURRENT_PLATFORM;
if(process.env.CURRENT_PLATFORM == "osx-x64")
{
dest += "/" + process.env.APP_NAME + ".app/Contents/MacOS/"
}
return gulp.src(src + "/**/*", {ignore: process.env.STAGING + "/shared/Content/**/*"})
.pipe(gulp.dest(dest + "/Content/PixelVisionOS/Runners/"));
})
function zipName(platform)
{
var nameSplit = platform.split("-")[0];
if(platform == 'osx-x64')
{
nameSplit = "macOS"
}
else if(platform == 'linux-arm64')
{
nameSplit = 'Linux Arm64'
}
else
{
nameSplit.charAt(0).toUpperCase() + nameSplit.slice(1);
}
return 'PixelVision8-'+nameSplit +'.zip';
}
gulp.task('release-zip', function(){
var dest = process.env.FINAL + process.env.CURRENT_PLATFORM;
return gulp.src(dest + "/**/*")
.pipe(zip(zipName(process.env.CURRENT_PLATFORM)))
.pipe(gulp.dest(process.env.FINAL));
})
gulp.task("release", gulp.series('build-next-platform', 'release-clean', 'release-platform'));//, 'release-runner'));