@@ -405,6 +405,7 @@ async function getRepoInfo(
405
405
if ( repoInfoCache . has ( key ) ) {
406
406
return repoInfoCache . get ( key ) ! ;
407
407
}
408
+
408
409
const { repository } = await octokit . graphql < RepositoryQuery > (
409
410
/* GraphQL */ `
410
411
query repository($name: String!, $owner: String!) {
@@ -588,50 +589,49 @@ async function run(env: Env) {
588
589
const n2m = new NotionToMarkdown ( { notionClient : notion } ) ;
589
590
const octokit = new Octokit ( { auth : env . GH_BOT_TOKEN } ) ;
590
591
const login = await getBotLogin ( octokit ) ;
591
- const relevantPages = await getSharedNotionPages ( notion ) ;
592
- const discussions = await getExistingDiscussions ( octokit , login ) ;
593
- const issues = await getExistingIssues ( octokit , login ) ;
592
+ const [ relevantPages , discussions , issues ] = await Promise . all ( [
593
+ getSharedNotionPages ( notion ) ,
594
+ getExistingDiscussions ( octokit , login ) ,
595
+ getExistingIssues ( octokit , login ) ,
596
+ ] ) ;
594
597
const { discussions : discussionsPlan , issues : issuesPlan } =
595
598
await buildUpdatePlan ( octokit , n2m , relevantPages , discussions , issues ) ;
596
599
597
600
console . info ( `Built Discussion sync plan:` , discussionsPlan ) ;
598
601
console . info ( `Built Issues sync plan:` , issuesPlan ) ;
599
602
600
- for ( const item of discussionsPlan . delete ) {
601
- console . info (
602
- `Deleting discussion with id ${ item . discussion . id } : "${ item . discussion . title } "`
603
- ) ;
604
- await deleteDiscussion ( octokit , item ) ;
605
- }
606
-
607
- for ( const item of discussionsPlan . update ) {
608
- console . info (
609
- `Updating discussion with id ${ item . discussion . id } : "${ item . title } "`
610
- ) ;
611
- await updateDiscussion ( octokit , item ) ;
612
- }
613
-
614
- for ( const item of discussionsPlan . create ) {
615
- console . info ( `Creating discussion: "${ item . title } "` ) ;
616
- await createDiscussion ( octokit , item ) ;
617
- }
618
-
619
- for ( const item of issuesPlan . delete ) {
620
- console . info (
621
- `Deleting issue with id ${ item . issue . id } : "${ item . issue . title } "`
622
- ) ;
623
- await deleteIssue ( octokit , item ) ;
624
- }
625
-
626
- for ( const item of issuesPlan . update ) {
627
- console . info ( `Updating issue with id ${ item . issue . id } : "${ item . title } "` ) ;
628
- await updateIssue ( octokit , item ) ;
629
- }
630
-
631
- for ( const item of issuesPlan . create ) {
632
- console . info ( `Creating issue: "${ item . title } "` ) ;
633
- await createIssue ( octokit , item ) ;
634
- }
603
+ await Promise . all ( [
604
+ ...discussionsPlan . delete . map ( async ( item ) => {
605
+ console . info (
606
+ `Deleting discussion with id ${ item . discussion . id } : "${ item . discussion . title } "`
607
+ ) ;
608
+ await deleteDiscussion ( octokit , item ) ;
609
+ } ) ,
610
+ ...discussionsPlan . update . map ( async ( item ) => {
611
+ console . info (
612
+ `Updating discussion with id ${ item . discussion . id } : "${ item . title } "`
613
+ ) ;
614
+ await updateDiscussion ( octokit , item ) ;
615
+ } ) ,
616
+ ...discussionsPlan . create . map ( async ( item ) => {
617
+ console . info ( `Creating discussion: "${ item . title } "` ) ;
618
+ await createDiscussion ( octokit , item ) ;
619
+ } ) ,
620
+ ...issuesPlan . delete . map ( async ( item ) => {
621
+ console . info (
622
+ `Deleting issue with id ${ item . issue . id } : "${ item . issue . title } "`
623
+ ) ;
624
+ await deleteIssue ( octokit , item ) ;
625
+ } ) ,
626
+ ...issuesPlan . update . map ( async ( item ) => {
627
+ console . info ( `Updating issue with id ${ item . issue . id } : "${ item . title } "` ) ;
628
+ await updateIssue ( octokit , item ) ;
629
+ } ) ,
630
+ ...issuesPlan . create . map ( async ( item ) => {
631
+ console . info ( `Creating issue: "${ item . title } "` ) ;
632
+ await createIssue ( octokit , item ) ;
633
+ } ) ,
634
+ ] ) ;
635
635
636
636
return {
637
637
discussionsPlan,
0 commit comments