handle negative release situation

This commit is contained in:
Ben Sarmiento
2024-02-01 01:42:30 +01:00
parent 09d058a2df
commit 3b6ccd6e13

View File

@@ -153,17 +153,22 @@ jobs:
const tagName = '${{ steps.version.outputs.version }}'; const tagName = '${{ steps.version.outputs.version }}';
const releaseName = `Release ${tagName}`; const releaseName = `Release ${tagName}`;
// Fetch the latest release to calculate time since last release let lastReleaseTime;
const latestRelease = await github.rest.repos.getLatestRelease({ let hoursSinceLastRelease = 'N/A';
owner: ownerName,
repo: repoName,
});
const lastReleaseTime = new Date(latestRelease.data.published_at); try {
const currentTime = new Date(); const latestRelease = await github.rest.repos.getLatestRelease({
const hoursSinceLastRelease = ((currentTime - lastReleaseTime) / 3600000).toFixed(2); owner: ownerName,
repo: repoName,
});
lastReleaseTime = new Date(latestRelease.data.published_at);
const currentTime = new Date();
hoursSinceLastRelease = ((currentTime - lastReleaseTime) / 3600000).toFixed(2);
} catch (error) {
console.log("No previous releases found or error fetching latest release");
}
// Sponsorship details
const sponsorshipDetails = ` const sponsorshipDetails = `
Support our project: Support our project:
- Patreon: https://www.patreon.com/debridmediamanager - Patreon: https://www.patreon.com/debridmediamanager
@@ -171,7 +176,6 @@ jobs:
- PayPal: https://paypal.me/yowmamasita - PayPal: https://paypal.me/yowmamasita
`; `;
// Query GitHub sponsors
async function getGithubSponsors() { async function getGithubSponsors() {
const query = ` const query = `
query { query {
@@ -188,7 +192,6 @@ jobs:
} }
} }
`; `;
try { try {
const response = await github.graphql(query); const response = await github.graphql(query);
return response.viewer.sponsorshipsAsMaintainer.nodes return response.viewer.sponsorshipsAsMaintainer.nodes
@@ -202,7 +205,6 @@ jobs:
const githubSponsors = await getGithubSponsors(); const githubSponsors = await getGithubSponsors();
// Constructing the release body
const releaseBody = ` const releaseBody = `
Release: ${tagName} Release: ${tagName}
Hours since last release: ${hoursSinceLastRelease} hours Hours since last release: ${hoursSinceLastRelease} hours
@@ -212,7 +214,6 @@ jobs:
Shoutouts to our amazing sponsors! ${githubSponsors.join(', ')} Shoutouts to our amazing sponsors! ${githubSponsors.join(', ')}
`; `;
// Create a release
const response = await github.rest.repos.createRelease({ const response = await github.rest.repos.createRelease({
owner: ownerName, owner: ownerName,
repo: repoName, repo: repoName,