diff --git a/src/functions.ts b/src/functions.ts index a39138c..0e8adc8 100644 --- a/src/functions.ts +++ b/src/functions.ts @@ -35,7 +35,7 @@ export async function release_data( ): Promise { // Setup tag-based filtering let filter = (r: object): boolean => { - return semver.satisfies(r.tag_name, version, true) + return semver.satisfies(r['tag_name'], version, true) } // Check if the user passed a 'latest*' tag, and override filtering @@ -49,7 +49,7 @@ export async function release_data( } } else if (version.includes('-edge')) { filter = r => { - return r.tag_name.endsWith('-edge') + return r['tag_name'].endsWith('-edge') } } else { // This is special: passing 'latest' or 'latest-stable' allows us to use @@ -62,6 +62,7 @@ export async function release_data( // Get all the releases const all_releases = await all_nf_releases(ok) + // FIXME Ignore const matching_releases = all_releases.filter(filter) matching_releases.sort(function (x, y) { @@ -71,13 +72,13 @@ export async function release_data( return matching_releases[0] } -export function nextflow_bin_url(release, get_all: boolean): string { - const release_assets = release.assets - const all_asset = release_assets.filter(a => { - return a.browser_download_url.endsWith('-all') +export function nextflow_bin_url(release: object, get_all: boolean): string { + const release_assets = release['assets'] + const all_asset = release_assets.filter((a: object) => { + return a['browser_download_url'].endsWith('-all') })[0] - const regular_asset = release_assets.filter(a => { - return a.name === 'nextflow' + const regular_asset = release_assets.filter((a: object) => { + return a['name'] === 'nextflow' })[0] const dl_asset = get_all ? all_asset : regular_asset diff --git a/src/main.ts b/src/main.ts index f2cbc12..40dc9d1 100644 --- a/src/main.ts +++ b/src/main.ts @@ -32,8 +32,10 @@ async function run(): Promise { let release = {} try { release = await release_data(version, octokit) - resolved_version = release.tag_name - core.info(`Input version '${version}' resolved to Nextflow ${release.name}`) + resolved_version = release['tag_name'] + core.info( + `Input version '${version}' resolved to Nextflow ${release['name']}` + ) } catch (e: unknown) { if (e instanceof Error) { core.setFailed( diff --git a/test/functions.ts b/test/functions.ts index bd9a648..1704833 100644 --- a/test/functions.ts +++ b/test/functions.ts @@ -12,19 +12,21 @@ test.before(t => { }) test('all_nf_releases', async t => { - const result = await functions.all_nf_releases(t.context.octokit) + const result = await functions.all_nf_releases(t.context['octokit']) t.is(typeof result, 'object') }) test('lastest_stable_release_data', async t => { - const result = await functions.latest_stable_release_data(t.context.octokit) + const result = await functions.latest_stable_release_data( + t.context['octokit'] + ) t.is(typeof result, 'object') - t.is(result.tag_name, 'v22.10.2') + t.is(result['tag_name'], 'v22.10.2') }) test('release_data', async t => { - const result = await functions.release_data('v22.10.2', t.context.octokit) - t.is(result.tag_name, 'v22.10.2') + const result = await functions.release_data('v22.10.2', t.context['octokit']) + t.is(result['tag_name'], 'v22.10.2') }) test.todo('nextflow_bin_url')