Wrap downloader in a catch
This commit is contained in:
parent
c1cff132b3
commit
ef002ec79b
1 changed files with 29 additions and 19 deletions
|
@ -16,7 +16,10 @@ export async function getMantisSettings()
|
||||||
|
|
||||||
if (!MANTIS_API_ENDPOINT || !MANTIS_API_KEY)
|
if (!MANTIS_API_ENDPOINT || !MANTIS_API_KEY)
|
||||||
{
|
{
|
||||||
throw new Error('Mantis API endpoint or key not configured in environment variables.');
|
return {
|
||||||
|
url: null,
|
||||||
|
headers: null,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
const headers = {
|
const headers = {
|
||||||
Authorization: `${MANTIS_API_KEY}`,
|
Authorization: `${MANTIS_API_KEY}`,
|
||||||
|
@ -210,28 +213,35 @@ const downloadQueue = [];
|
||||||
|
|
||||||
export async function setup()
|
export async function setup()
|
||||||
{
|
{
|
||||||
// Initialize the download queue
|
try
|
||||||
downloadQueue.length = 0;
|
|
||||||
|
|
||||||
// Start the process of checking for new tickets
|
|
||||||
processNewMantisTickets();
|
|
||||||
setInterval(processNewMantisTickets, 5 * 60 * 1000); // Check for new tickets every 5 minutes
|
|
||||||
setInterval(processTicketsInQueue, 1 * 1000); // Process the queue every 10 seconds
|
|
||||||
|
|
||||||
if(process.env.LOAD_ALL_MANTISES == 'true')
|
|
||||||
{
|
{
|
||||||
for (let i = 3000; i <= 5100; i++)
|
// Initialize the download queue
|
||||||
{
|
downloadQueue.length = 0;
|
||||||
//Check if the ticket already exists in the database
|
|
||||||
const existingTicket = await prisma.mantisIssue.findUnique({
|
|
||||||
where: { id: i },
|
|
||||||
select: { updatedAt: true } // Only select needed field
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!existingTicket)
|
// Start the process of checking for new tickets
|
||||||
|
processNewMantisTickets();
|
||||||
|
setInterval(processNewMantisTickets, 5 * 60 * 1000); // Check for new tickets every 5 minutes
|
||||||
|
setInterval(processTicketsInQueue, 1 * 1000); // Process the queue every 10 seconds
|
||||||
|
|
||||||
|
if(process.env.LOAD_ALL_MANTISES == 'true')
|
||||||
|
{
|
||||||
|
for (let i = 3000; i <= 5100; i++)
|
||||||
{
|
{
|
||||||
downloadQueue.push(i);
|
//Check if the ticket already exists in the database
|
||||||
|
const existingTicket = await prisma.mantisIssue.findUnique({
|
||||||
|
where: { id: i },
|
||||||
|
select: { updatedAt: true } // Only select needed field
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!existingTicket)
|
||||||
|
{
|
||||||
|
downloadQueue.push(i);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch(error)
|
||||||
|
{
|
||||||
|
logger.error('Error setting up Mantis downloader:', error);
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Add table
Add a link
Reference in a new issue