upload library build in stage env

This commit is contained in:
Eugenio Romano
2018-09-06 09:38:31 +01:00
parent a53f6b770d
commit 17824824d0
5 changed files with 184 additions and 24 deletions

View File

@@ -1,19 +0,0 @@
#!/usr/bin/env bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd $DIR/../
echo "====== COPY new build in node_modules ===== "
rm -rf ../node_modules/@alfresco
mkdir -p $DIR/../node_modules/@alfresco/adf-core
mkdir -p $DIR/../node_modules/@alfresco/adf-content-services
mkdir -p $DIR/../node_modules/@alfresco/adf-process-services
mkdir -p $DIR/../node_modules/@alfresco/adf-insights
cp -R $DIR/../lib/dist/core/* $DIR/../node_modules/@alfresco/adf-core
cp -R $DIR/../lib/dist/content-services/* $DIR/../node_modules/@alfresco/adf-content-services
cp -R $DIR/../lib/dist/process-services/* $DIR/../node_modules/@alfresco/adf-process-services
cp -R $DIR/../lib/dist/insights/* $DIR/../node_modules/@alfresco/adf-insights

View File

@@ -8,8 +8,6 @@ var archiver = require('archiver');
var unzip = require('unzip-stream');
var stream = require('unzip-stream');
var exec = require('child_process').exec;
replaceHrefInIndex = (folder) => {
fs.readFile(`demo-shell/${folder}/index.html`, 'utf8', function (err, data) {
if (err) {
@@ -72,7 +70,6 @@ async function main() {
let newFolder = path.join(__dirname, `../demo-shell/${outputFolder}`)
fs.rename(oldFolder, newFolder, (err) => {
// if (err) throw err;
console.log('renamed complete');
});

View File

@@ -0,0 +1,85 @@
var program = require('commander');
var AlfrescoApi = require('alfresco-js-api-node');
var http = require('http');
var fs = require('fs');
var path = require('path');
var archiver = require('archiver');
var unzip = require('unzip-stream');
var stream = require('unzip-stream');
var exec = require('child_process').exec;
var alfrescoJsApi;
downloadZip = async(url, pacakge) => {
console.log(`Download ${pacakge}`)
var file = fs.createWriteStream(`${pacakge}.zip`);
return await http.get(`http://${url}`, (response) => {
response.pipe(file);
file.on('finish', async () => {
console.log(`Unzip ${pacakge}` + path.join(__dirname, `../${pacakge}.zip`));
fs.createReadStream(path.join(__dirname, `../${pacakge}.zip`))
.pipe(unzip.Extract({path: path.join(__dirname, '../node_modules/@alfresco/')}))
// .on('finish', () => {
// setTimeout(() => {
// let oldFolder = path.join(__dirname, `../demo-shell/demo.zip`)
// let newFolder = path.join(__dirname, `../demo-shell/${outputFolder}`)
//
// fs.rename(oldFolder, newFolder, (err) => {
// console.log('renamed complete');
// });
//
// }, 10000);
//
// })
});
});
}
getUrl = async (folder, pacakge) => {
let zipDemoNode;
try {
zipDemoNode = await alfrescoJsApi.nodes.getNode('-my-', {
'relativePath': `Builds/${folder}/${pacakge}.zip`
});
} catch (error) {
console.log('error: ' + error);
}
return await alfrescoJsApi.content.getContentUrl(zipDemoNode.entry.id, true);
}
async function main() {
program
.version('0.1.0')
.option('-p, --password [type]', 'password')
.option('-u, --username [type]', 'username')
.option('--base-href [type]', '')
.option('-f, --folder [type]', 'Name of the folder')
.option('-host, --host [type]', 'URL of the CS')
.parse(process.argv);
alfrescoJsApi = new AlfrescoApi({
provider: 'ECM',
hostEcm: program.host
});
alfrescoJsApi.login(program.username, program.password);
let coreUrl = await getUrl(program.folder, 'core');
downloadZip(coreUrl, 'core');
let contentUrl = await getUrl(program.folder, 'content-services');
downloadZip(contentUrl, 'content-services');
let processUrl = await getUrl(program.folder, 'process-services');
downloadZip(processUrl, 'process-services');
let insightUrl = await getUrl(program.folder, 'insights');
downloadZip(insightUrl, 'insights');
}
main();

View File

@@ -0,0 +1,97 @@
var program = require('commander');
var AlfrescoApi = require('alfresco-js-api-node');
var fs = require('fs');
var path = require('path');
var archiver = require('archiver');
writeZipLib = async function (zipName, zipFolder) {
if (!fs.existsSync(zipFolder)) {
fs.mkdirSync(zipFolder);
}
// create a file to stream archive data to.
let output = fs.createWriteStream(path.join(zipFolder, `${zipName}.zip`));
let archive = archiver('zip', {
zlib: {level: 9} // Sets the compression level.
});
archive.pipe(output);
archive.directory(path.join(__dirname, `../lib/dist/${zipName}`), zipName);
return archive.finalize();
};
async function main() {
program
.version('0.1.0')
.usage('[options] <file ...>')
.option('-p, --password [type]', 'password')
.option('-u, --username [type]', 'username')
.option('-f, --folder [type]', 'Name of the folder')
.option('-host, --host [type]', 'URL of the CS')
.parse(process.argv);
let alfrescoJsApi = new AlfrescoApi({
provider: 'ECM',
hostEcm: program.host
});
let zipFolder = path.join(__dirname, '/../lib/dist/zip/');
await this.writeZipLib('core', zipFolder);
await this.writeZipLib('content-services', zipFolder);
await this.writeZipLib('process-services', zipFolder);
await this.writeZipLib('insights', zipFolder);
let files = fs.readdirSync(path.join(__dirname, '../lib/dist/zip'));
if (files && files.length > 0) {
alfrescoJsApi.login(program.username, program.password);
let folder;
if (!program.folder) {
program.folder = Date.now();
}
try {
folder = await alfrescoJsApi.nodes.addNode('-my-', {
'name': program.folder,
'relativePath': `Builds`,
'nodeType': 'cm:folder'
}, {}, {
'overwrite': true
});
} catch (error) {
console.log('error' + error);
}
for (const fileName of files) {
let pathFile = path.join(__dirname, '../lib/dist/zip', fileName);
console.log('Upload ' + pathFile);
let file = fs.createReadStream(pathFile);
try {
await alfrescoJsApi.upload.uploadFile(
file,
'',
folder.entry.id,
null,
{
'name': file.name,
'nodeType': 'cm:content'
});
} catch (error) {
console.log('error' + error);
}
}
}
}
main();