Skip to content

Instantly share code, notes, and snippets.

@cfjedimaster
Created April 3, 2023 13:23
Show Gist options
  • Save cfjedimaster/207617f3a824c5cb6ef22f43983a9a1b to your computer and use it in GitHub Desktop.
Save cfjedimaster/207617f3a824c5cb6ef22f43983a9a1b to your computer and use it in GitHub Desktop.
import fetch from 'node-fetch';
async function delay(x) {
return new Promise(resolve => {
setTimeout(() => {
resolve();
}, x);
});
}
export default defineComponent({
async run({ steps, $ }) {
const CLIENT_ID = process.env.PSAPI_CLIENTID;
const waitStatuses = ['running','pending','starting'];
let status = 'running';
let jobResult;
while(waitStatuses.indexOf(status) >= 0) {
let jobReq = await fetch(steps.generateAutotone.$return_value, {
headers: {
'Authorization':`Bearer ${steps.getAccessToken.$return_value}`,
'x-api-key': CLIENT_ID
}
})
jobResult = await jobReq.json();
status = jobResult['status'];
// to do better
if(waitStatuses.indexOf(status) >= 0) {
console.log('delaying while checking');
await delay(3000);
}
}
return jobResult;
},
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment