Skip to content

Commit 3bec3f1

Browse files
committed
Release: Publish zip to website repo
1 parent 362e3fc commit 3bec3f1

File tree

1 file changed

+43
-31
lines changed

1 file changed

+43
-31
lines changed

build/release.js

Lines changed: 43 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ var cheerio = require( "cheerio" ),
66
shell = require( "shelljs" );
77

88
module.exports = function( Release ) {
9+
var clonedRepos = {};
10+
911
Release.define({
1012
issueTracker: "github",
1113
changelogShell: function() {
@@ -19,33 +21,19 @@ module.exports = function( Release ) {
1921
done([]);
2022
},
2123

22-
_uploadZipToWebsite: function( done ) {
23-
var releaseDist = path.join( Release.dir.repo, "dist" ),
24-
zipFilename = "jquery.mobile-" + Release.newVersion + ".zip";
25-
26-
console.log( "Uploading " + zipFilename + " to jquerymobile.com..." );
27-
scp.send({
28-
user: "jqadmin",
29-
host: "jquerymobile.com",
30-
file: path.join( releaseDist, zipFilename),
31-
path: "/var/www/jquerymobile.com/htdocs/resources/download/"
32-
}, function( err ) {
33-
if ( err ) {
34-
Release.abort( "Error while uploading " + zipFilename + " to the website: " + err );
35-
}
36-
done();
37-
});
38-
},
39-
4024
_cloneDemosRepo: function() {
4125
var local = Release.dir.base + "/demos.jquerymobile.com",
4226
remote = "[email protected]:jquery/demos.jquerymobile.com";
4327

44-
console.log( "Cloning " + remote.cyan + "..." );
45-
Release.git( "clone " + remote + " " + local, "Error cloning Demos repo." );
46-
console.log();
28+
if ( !clonedRepos[ remote ] ) {
29+
console.log( "Cloning " + remote.cyan + "..." );
30+
Release.git( "clone " + remote + " " + local, "Error cloning Demos repo." );
31+
console.log();
4732

48-
return local;
33+
clonedRepos[ remote ] = local;
34+
}
35+
36+
return clonedRepos[ remote ];
4937
},
5038

5139
_publishDemos: function() {
@@ -66,7 +54,7 @@ module.exports = function( Release ) {
6654
console.log( "Adding files..." );
6755
process.chdir( repo );
6856
Release.git( "add ." , "Error adding files." );
69-
Release.git( "commit -m '" + commitMessage + "'" , "Error commiting files." );
57+
Release.git( "commit -m '" + commitMessage + "'" , "Error commiting demos files." );
7058
console.log( "Pushing to github..." );
7159
Release.git( "push", "Error pushing demos to github." );
7260
console.log();
@@ -76,11 +64,15 @@ module.exports = function( Release ) {
7664
var local = Release.dir.base + "/jquerymobile.com",
7765
remote = "[email protected]:jquery/jquerymobile.com";
7866

79-
console.log( "Cloning " + remote.cyan + "..." );
80-
Release.git( "clone " + remote + " " + local, "Error cloning website repo." );
81-
console.log();
67+
if ( !clonedRepos[ remote ] ) {
68+
console.log( "Cloning " + remote.cyan + "..." );
69+
Release.git( "clone " + remote + " " + local, "Error cloning website repo." );
70+
console.log();
71+
72+
clonedRepos[ remote ] = local;
73+
}
8274

83-
return local;
75+
return clonedRepos[ remote ];
8476
},
8577

8678
_updateBuilder: function() {
@@ -125,18 +117,38 @@ module.exports = function( Release ) {
125117
console.log( "Adding files..." );
126118
process.chdir( repo );
127119
Release.git( "add ." , "Error adding files." );
128-
Release.git( "commit -m '" + commitMessage + "'" , "Error commiting files." );
120+
Release.git( "commit -m '" + commitMessage + "'" , "Error commiting builder files." );
129121
console.log( "Pushing to github..." );
130-
Release.git( "push", "Error pushing demos to github." );
122+
Release.git( "push", "Error pushing builder update to github." );
123+
console.log();
124+
},
125+
126+
_publishZipsToWebsite: function() {
127+
var repo = Release._cloneWebsiteRepo(),
128+
dest = repo + "/resources/download",
129+
dist = Release.dir.repo + "/dist/jquery.mobile-" + Release.newVersion + ".zip",
130+
images = Release.dir.repo + "/dist/jquery.mobile.images-" + Release.newVersion + ".zip",
131+
commitMessage = "Release: Added zip for version " + Release.newVersion;
132+
133+
shell.mkdir( "-p", dest );
134+
shell.cp( dist, dest );
135+
shell.cp( images, dest );
136+
137+
console.log( "Adding files..." );
138+
process.chdir( repo );
139+
Release.git( "add ." , "Error adding zip files." );
140+
Release.git( "commit -m '" + commitMessage + "'" , "Error commiting zip files." );
141+
console.log( "Pushing to github..." );
142+
Release.git( "push", "Error pushing zip files to github." );
131143
console.log();
132144
},
133145

134146
_complete: function( done ) {
135147
Release._walk([
136-
Release._section( "publishing zip file" ),
137-
Release._uploadZipToWebsite,
138148
Release._section( "publishing demos" ),
139149
Release._publishDemos,
150+
Release._section( "publishing zip files" ),
151+
Release._publishZipsToWebsite,
140152
Release._section( "updating builder" ),
141153
Release._updateBuilder
142154
], done );

0 commit comments

Comments
 (0)