INNER CODE UNIT · TypeScript
createOrFindPRTask
duckduckgo/Android · .github/actions/pr-asana-sync/src/main.ts:243
async function createOrFindPRTask(
payload: PullRequestEvent,
title: string,
prStatus: string,
customFields: PRFields
): Promise<asana.resources.Tasks.Type | undefined> {
const body = payload.pull_request.body || ''
const asanaTaskMatch = body.match(
/Task\/Issue URL:.*https:\/\/app.asana.*\/([0-9]+).*/
)
let parentTaskId = asanaTaskMatch && asanaTaskMatch[1]
let openShipReviewTask: asana.resources.Tasks.Type | undefined
let shipReviewPRTask: asana.resources.Tasks.Type | undefined
if (parentTaskId) {
info(`Found Asana task mention with parent ID: ${parentTaskId}`)
try {
let subTasks = await client.tasks.subtasks(parentTaskId, {