mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
upload library build in stage env
This commit is contained in:
@@ -47,7 +47,7 @@ jobs:
|
|||||||
(./scripts/start.sh -dev -t -ss -vjsapi alpha || exit 1;);
|
(./scripts/start.sh -dev -t -ss -vjsapi alpha || exit 1;);
|
||||||
fi
|
fi
|
||||||
- stage: Packaging test
|
- stage: Packaging test
|
||||||
script: (npm run build-lib || exit 1;);
|
script: (npm run build-lib || exit 1;) && node ./scripts/upload-build-lib-in-cs.js -u $E2E_USERNAME -p $E2E_PASSWORD --host $E2E_HOST -f $TRAVIS_BUILD_NUMBER
|
||||||
- stage: Test Update version 2.0.0
|
- stage: Test Update version 2.0.0
|
||||||
env: STAGE=test-BC
|
env: STAGE=test-BC
|
||||||
script: ./scripts/test-e2e-bc.sh
|
script: ./scripts/test-e2e-bc.sh
|
||||||
@@ -70,7 +70,7 @@ jobs:
|
|||||||
if: tag =~ .*beta.*
|
if: tag =~ .*beta.*
|
||||||
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n alfresco-modeler-app
|
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n alfresco-modeler-app
|
||||||
- stage: Create Shell dist
|
- stage: Create Shell dist
|
||||||
script: ./copy-dist-node.sh; npm run build:dist; node ./scripts/upload-build-in-cs.js -u $E2E_USERNAME -p $E2E_PASSWORD --host $E2E_HOST -f $TRAVIS_BUILD_NUMBER
|
script: rm -rf ./node_modules/@alfresco; node ./scripts/download-build-lib-in-cs.js -u $E2E_USERNAME -p $E2E_PASSWORD --host $E2E_HOST -f $TRAVIS_BUILD_NUMBER; npm run build:dist; node ./scripts/upload-build-in-cs.js -u $E2E_USERNAME -p $E2E_PASSWORD --host $E2E_HOST -f $TRAVIS_BUILD_NUMBER
|
||||||
- stage: e2e Test # Test core
|
- stage: e2e Test # Test core
|
||||||
env: STAGE=core
|
env: STAGE=core
|
||||||
script: node ./scripts/download-build-in-cs.js --username $E2E_USERNAME --password $E2E_USERNAME --host $E2E_HOST --folder $TRAVIS_BUILD_NUMBER; ./scripts/test-e2e-lib.sh -host localhost:4200 -proxy $E2E_HOST -u $E2E_USERNAME -p $E2E_PASSWORD -e $E2E_EMAIL -b -save --folder core --skip-lint --use-dist
|
script: node ./scripts/download-build-in-cs.js --username $E2E_USERNAME --password $E2E_USERNAME --host $E2E_HOST --folder $TRAVIS_BUILD_NUMBER; ./scripts/test-e2e-lib.sh -host localhost:4200 -proxy $E2E_HOST -u $E2E_USERNAME -p $E2E_PASSWORD -e $E2E_EMAIL -b -save --folder core --skip-lint --use-dist
|
||||||
|
@@ -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
|
|
@@ -8,8 +8,6 @@ var archiver = require('archiver');
|
|||||||
var unzip = require('unzip-stream');
|
var unzip = require('unzip-stream');
|
||||||
var stream = require('unzip-stream');
|
var stream = require('unzip-stream');
|
||||||
|
|
||||||
var exec = require('child_process').exec;
|
|
||||||
|
|
||||||
replaceHrefInIndex = (folder) => {
|
replaceHrefInIndex = (folder) => {
|
||||||
fs.readFile(`demo-shell/${folder}/index.html`, 'utf8', function (err, data) {
|
fs.readFile(`demo-shell/${folder}/index.html`, 'utf8', function (err, data) {
|
||||||
if (err) {
|
if (err) {
|
||||||
@@ -72,7 +70,6 @@ async function main() {
|
|||||||
let newFolder = path.join(__dirname, `../demo-shell/${outputFolder}`)
|
let newFolder = path.join(__dirname, `../demo-shell/${outputFolder}`)
|
||||||
|
|
||||||
fs.rename(oldFolder, newFolder, (err) => {
|
fs.rename(oldFolder, newFolder, (err) => {
|
||||||
// if (err) throw err;
|
|
||||||
console.log('renamed complete');
|
console.log('renamed complete');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
85
scripts/download-build-lib-in-cs.js
Normal file
85
scripts/download-build-lib-in-cs.js
Normal 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();
|
97
scripts/upload-build-lib-in-cs.js
Normal file
97
scripts/upload-build-lib-in-cs.js
Normal 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();
|
Reference in New Issue
Block a user