@@ -199,6 +199,24 @@ export async function getAllPackages(gitRoot: string) {
199199 } ;
200200}
201201
202+ /**
203+ * Use the Github actions core.setOutput function, but this is just here
204+ * for type safety
205+ */
206+ function setOutputs (
207+ bundles : PackageRecord [ ] ,
208+ tabs : PackageRecord [ ] ,
209+ libs : PackageRecord [ ] ,
210+ devserver : PackageRecord ,
211+ docserver : PackageRecord
212+ ) {
213+ core . setOutput ( 'bundles' , bundles ) ;
214+ core . setOutput ( 'tabs' , tabs ) ;
215+ core . setOutput ( 'libs' , libs ) ;
216+ core . setOutput ( 'devserver' , devserver ) ;
217+ core . setOutput ( 'docserver' , docserver ) ;
218+ }
219+
202220async function main ( ) {
203221 const gitRoot = await getGitRoot ( ) ;
204222 const { packages, bundles, tabs, libs } = await getAllPackages ( gitRoot ) ;
@@ -218,11 +236,13 @@ async function main() {
218236 core . summary . addList ( summaryItems ) ;
219237 await core . summary . write ( ) ;
220238
221- core . setOutput ( 'bundles' , Object . values ( bundles ) ) ;
222- core . setOutput ( 'tabs' , Object . values ( tabs ) ) ;
223- core . setOutput ( 'libs' , Object . values ( libs ) ) ;
224- core . setOutput ( 'devserver' , packages [ '@sourceacademy/modules-devserver' ] ) ;
225- core . setOutput ( 'docserver' , packages [ '@sourceacademy/modules-docserver' ] ) ;
239+ setOutputs (
240+ Object . values ( bundles ) ,
241+ Object . values ( tabs ) ,
242+ Object . values ( libs ) ,
243+ packages [ '@sourceacademy/modules-devserver' ] ,
244+ packages [ '@sourceacademy/modules-docserver' ]
245+ ) ;
226246
227247 const workflows = await checkForChanges ( pathlib . join ( gitRoot , '.github/workflows' ) ) ;
228248 core . setOutput ( 'workflows' , workflows ) ;
0 commit comments