getReleaseAsset.js 830 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const octokit = require('@octokit/rest')({
  2. debug: true
  3. })
  4. octokit.repos.getReleases({
  5. owner: 'octokit',
  6. repo: 'rest.js'
  7. })
  8. .then(result => {
  9. if (result.data.length === 0) {
  10. console.log('Repository has no releases')
  11. return
  12. }
  13. // get id of first release
  14. const firstRelease = result.data.pop()
  15. return octokit.repos.getAssets({
  16. owner: 'octokit',
  17. repo: 'rest.js',
  18. id: firstRelease.id
  19. })
  20. })
  21. .then(result => {
  22. if (result.data.length === 0) {
  23. console.log('First release has no assets attached')
  24. return
  25. }
  26. // get id of first asset
  27. const assetId = result.data[0].id
  28. return octokit.repos.getAsset({
  29. owner: 'octokit',
  30. repo: 'rest.js',
  31. id: assetId
  32. })
  33. })
  34. .then(result => {
  35. // result.data has asset properties
  36. })