diff --git a/scripts/clean-env.js b/scripts/clean-env.js new file mode 100644 index 0000000000..396bc3ed0a --- /dev/null +++ b/scripts/clean-env.js @@ -0,0 +1,60 @@ +let alfrescoApi = require('@alfresco/js-api'); +let program = require('commander'); + +async function main() { + + program + .version('0.1.0') + .option('--host [type]', 'Remote environment host adf.lab.com ') + .option('-p, --password [type]', 'password RANCHER') + .option('-u, --username [type]', 'username RANCHER') + .parse(process.argv); + + this.alfrescoJsApi = new alfrescoApi.AlfrescoApiCompatibility({ + provider: 'ECM', + hostEcm: program.host + }); + + console.log(program.username + program.password); + await this.alfrescoJsApi.login(program.username, program.password); + + await deletetSite(this.alfrescoJsApi); + await emptyTrashCan(this.alfrescoJsApi); + + +} + +async function emptyTrashCan(alfrescoJsApi) { + let deletedNodes = await alfrescoJsApi.core.nodesApi.getDeletedNodes(); + + for (let i = 0; i < deletedNodes.list.entries.length; i++) { + + console.log(deletedNodes.list.entries[i].entry.id); + + await alfrescoJsApi.core.nodesApi.purgeDeletedNode(deletedNodes.list.entries[i].entry.id).then(() => { + console.log('done'); + }, () => { + console.log('errror'); + }) + } +} + +async function deletetSite(alfrescoJsApi) { + let listSites = await this.alfrescoJsApi.core.sitesApi.getSites(); + + console.log(listSites.list.pagination.totalItems); + for (let i = 0; i < listSites.list.entries.length; i++) { + + console.log(listSites.list.entries[i].entry.id); + + if (listSites.list.entries[i].entry.id !== 'swsdp') { + await alfrescoJsApi.core.sitesApi.deleteSite(listSites.list.entries[i].entry.id, {options: {permanent: true}}).then(() => { + console.log('done'); + }, () => { + console.log('errror'); + }) + } + } +} + +main();