release.yml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. name: Release
  2. on:
  3. push:
  4. tags:
  5. - v*
  6. jobs:
  7. build:
  8. runs-on: ubuntu-latest
  9. steps:
  10. - uses: actions/checkout@v2
  11. with:
  12. persist-credentials: false
  13. - uses: actions/setup-node@v2
  14. with:
  15. node-version: '15'
  16. - name: Prepare
  17. run: yarn && node scripts/action-helper.js
  18. - name: Build
  19. run: |
  20. yarn build
  21. mkdir -p $ASSETS_DIR $TEMP_DIR
  22. cd dist && zip -r ../$ASSETS_DIR/$ASSET_ZIP . && cd ..
  23. # Same as `yarn build:selfHosted` but only manifest is changed for now
  24. TARGET=selfHosted BETA=1 npx gulp manifest
  25. cd dist && zip -r ../$TEMP_DIR/$ASSET_SELF_HOSTED_ZIP . && cd ..
  26. - name: Sign AMO
  27. id: signAMO
  28. continue-on-error: true
  29. run: |
  30. mkdir -p $TEMP_DIR/updates
  31. node scripts/amo-sign
  32. env:
  33. AMO_KEY: ${{ secrets.AMO_KEY }}
  34. AMO_SECRET: ${{ secrets.AMO_SECRET }}
  35. BETA: 1
  36. - name: Update updates.json
  37. uses: JamesIves/[email protected]
  38. if: steps.signAMO.outcome == 'success'
  39. with:
  40. branch: updates
  41. folder: ${{ env.TEMP_DIR }}/updates
  42. commit-message: Update to ${{ env.VERSION }} 🚀
  43. - name: Create Release
  44. env:
  45. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  46. run: |
  47. set -x
  48. params=("-m" "$RELEASE_NAME" "-m" "$RELEASE_NOTE")
  49. if [ "$PRERELEASE" = "true" ]; then
  50. params+=("-p")
  51. fi
  52. for asset in $ASSETS_DIR/*; do
  53. params+=("-a" "$asset")
  54. done
  55. hub release create "${params[@]}" v$VERSION