update-contributors.js 983 B

1234567891011121314151617181920212223242526272829303132333435
  1. const execa = require('execa')
  2. const fs = require('fs')
  3. const README_FILE_NAME = 'README.md'
  4. async function updateContributorsListInReadme () {
  5. const readme = fs.readFileSync(README_FILE_NAME, 'utf-8')
  6. const args = [
  7. '--owner', 'transloadit',
  8. '--repo', 'uppy',
  9. '--cols', '6',
  10. '--format', 'md',
  11. '--showlogin', 'true',
  12. '--sortOrder', 'desc',
  13. ]
  14. if (process.env.GITHUB_TOKEN) {
  15. args.push('--authToken', process.env.GITHUB_TOKEN)
  16. }
  17. const { stdout } = await execa('githubcontrib', args, { encoding: 'utf-8' })
  18. console.log(stdout)
  19. if (stdout === '' || stdout === null) {
  20. console.log('Empty response from githubcontrib. GitHub’s rate limit?')
  21. return
  22. }
  23. const readmeWithUpdatedContributors = readme.replace(
  24. /<!--contributors-->[\s\S]+<!--\/contributors-->/,
  25. `<!--contributors-->\n${stdout}\n<!--/contributors-->`
  26. )
  27. fs.writeFileSync(README_FILE_NAME, readmeWithUpdatedContributors)
  28. }
  29. updateContributorsListInReadme()