File tree Expand file tree Collapse file tree 1 file changed +29
-10
lines changed
Expand file tree Collapse file tree 1 file changed +29
-10
lines changed Original file line number Diff line number Diff line change @@ -203,17 +203,36 @@ async function main() {
203203 }
204204
205205 console . log ( releaseNotesText ) ;
206+ // --- Find or create draft release ---
207+ let draftRelease = null ;
208+ try {
209+ const { data : releases } = await octokit . repos . listReleases ( { owner : OWNER , repo : REPO , per_page : 10 } ) ;
210+ draftRelease = releases . find ( r => r . draft ) ;
211+ } catch { }
206212
207- // 7️⃣ Create GitHub release (as draft)
208- await octokit . repos . createRelease ( {
209- owner : OWNER ,
210- repo : REPO ,
211- tag_name : newTag ,
212- name : `Release ${ newTag } ` ,
213- body : releaseNotesText ,
214- draft : true ,
215- prerelease : false ,
216- } ) ;
213+ if ( draftRelease ) {
214+ // Update existing draft
215+ await octokit . repos . updateRelease ( {
216+ owner : OWNER ,
217+ repo : REPO ,
218+ release_id : draftRelease . id ,
219+ body : releaseNotesText ,
220+ name : `Release ${ draftRelease . tag_name } ` ,
221+ } ) ;
222+ console . log ( `✅ Draft release updated: ${ draftRelease . tag_name } ` ) ;
223+ } else {
224+ // Create new draft
225+ await octokit . repos . createRelease ( {
226+ owner : OWNER ,
227+ repo : REPO ,
228+ tag_name : newTag ,
229+ name : `Release ${ newTag } ` ,
230+ body : releaseNotesText ,
231+ draft : true ,
232+ prerelease : false ,
233+ } ) ;
234+ console . log ( `✅ Draft release created: ${ newTag } ` ) ;
235+ }
217236
218237 console . log ( `✅ Release created: ${ newTag } ` ) ;
219238}
You can’t perform that action at this time.
0 commit comments