publish.js 948 B

12345678910111213141516171819202122232425262728293031
  1. /*
  2. publish.js - Publish package
  3. */
  4. import * as spawn from 'child_process'
  5. import * as gulp from 'gulp'
  6. import * as log from 'fancy-log'
  7. import * as path from 'path'
  8. import config from 'assist'
  9. function publish(cb) {
  10. let cmd = '../paks/assist/s3-publish-files'
  11. let tf = config.terraform
  12. let part = path.basename(process.cwd())
  13. let args = [`build/${part}`, tf[`${part}_cdn_bucket`].value, tf[`${part}_cdn_id`].value, tf.aws_profile.value]
  14. print(`Publishing: profile "${config.profile}" ${config.version}`)
  15. print(`Starting: ${cmd} ${args.join(' ')} ...`)
  16. let pkg = spawn.spawn(cmd, args)
  17. pkg.stdout.on('data', data => process.stdout.write(data.toString()))
  18. pkg.stderr.on('data', data => process.stdout.write(data.toString()))
  19. pkg.on('exit', err => {
  20. if (err) {
  21. throw new Error(`Cannot publish ${err.toString()}`)
  22. }
  23. cb()
  24. })
  25. }
  26. export default gulp.series(publish)