[ACS-5186] Add new GH workflow for ADF upstream (#3191)

This commit is contained in:
MichalKinas
2023-05-15 16:05:40 +02:00
committed by GitHub
parent ec37bf0ec2
commit 9603c0a36b
3 changed files with 258 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
module.exports = async ({github, context, version}) => {
const BRANCH_TO_CREATE = 'upstream-dependencies';
const { data: prs } = await github.rest.pulls.list({
owner: context.repo.owner,
repo: context.repo.repo,
state: 'open',
head: `${context.repo.owner}:${BRANCH_TO_CREATE}`,
base: 'develop'
});
if (prs?.length > 0) {
const title = prs[0].title;
const result = title.match(version);
return result?.length > 0 ? true : false;
}
return false;
}

View File

@@ -0,0 +1,33 @@
function inDays(d1, d2) {
return Math.floor((d2.getTime() - d1.getTime()) / (24 * 3600 * 1000));
}
module.exports = async ({github, dependencyName}) => {
const organization = 'alfresco';
const dependencyFullName = `@${organization}/${dependencyName}`;
const pkg = require('../../../package.json');
const localVersion = pkg.dependencies[dependencyFullName];
const { data: availablePakages } = await github.rest.packages.getAllPackageVersionsForPackageOwnedByOrg({
package_type: 'npm',
package_name: dependencyName,
org: organization
});
const latestPkgToUpdate = availablePakages[0];
if (localVersion === latestPkgToUpdate?.name) {
return { hasNewVersion: 'false' };
} else {
const findLocalVerionOnRemote = availablePakages.find((item) => item.name === localVersion);
let rangeInDays = 'N/A'
if (findLocalVerionOnRemote !== undefined) {
var creationLocal = new Date(findLocalVerionOnRemote.created_at);
var creationLatest = new Date(latestPkgToUpdate.created_at,);
rangeInDays = inDays(creationLocal, creationLatest);
}
return { hasNewVersion: 'true', remoteVersion: { name: latestPkgToUpdate?.name, rangeInDays } , localVersion};
}
}