build_wamr_vscode_ext.yml 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. # Copyright (C) 2019 Intel Corporation. All rights reserved.
  2. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  3. name: build wamr-ide vscode extension
  4. on:
  5. workflow_call:
  6. inputs:
  7. upload_url:
  8. description: upload binary assets to the URL of release
  9. type: string
  10. required: true
  11. ver_num:
  12. description: a semantic version number.
  13. type: string
  14. required: true
  15. permissions:
  16. contents: read
  17. jobs:
  18. build:
  19. runs-on: ubuntu-22.04
  20. permissions:
  21. contents: write # for uploading release artifacts
  22. steps:
  23. - uses: actions/checkout@v6.0.1
  24. - name: Use Node.js 18.x
  25. uses: actions/setup-node@v6
  26. with:
  27. node-version: 18.x
  28. - name: set vscode extension to correct version
  29. run: |
  30. npm install -g json
  31. json -I -f package.json -e "this.version=\"${{ inputs.ver_num }}\""
  32. working-directory: test-tools/wamr-ide/VSCode-Extension
  33. - name: generate wamr ide vscode extension
  34. run: |
  35. npm install -g @vscode/vsce
  36. rm -rf node_modules
  37. npm install
  38. vsce package
  39. working-directory: test-tools/wamr-ide/VSCode-Extension
  40. - name: publish wamr ide vscode extension to the vsce marketplace
  41. if: ${{ github.repository == 'bytecodealliance/wasm-micro-runtime' }}
  42. run: |
  43. vsce publish -p ${{ secrets.TOKEN }}
  44. working-directory: test-tools/wamr-ide/VSCode-Extension
  45. - name: compress the vscode extension
  46. run: |
  47. mv wamride-*.vsix wamr-ide.vsix
  48. tar czf wamr-ide-${{ inputs.ver_num }}.tar.gz wamr-ide.vsix
  49. zip wamr-ide-${{ inputs.ver_num }}.zip wamr-ide.vsix
  50. working-directory: test-tools/wamr-ide/VSCode-Extension
  51. - name: upload release tar.gz
  52. uses: actions/upload-release-asset@v1
  53. env:
  54. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  55. with:
  56. upload_url: ${{ inputs.upload_url }}
  57. asset_path: test-tools/wamr-ide/VSCode-Extension/wamr-ide-${{ inputs.ver_num }}.tar.gz
  58. asset_name: wamr-ide-${{ inputs.ver_num }}.tar.gz
  59. asset_content_type: application/x-gzip
  60. - name: upload release zip
  61. uses: actions/upload-release-asset@v1
  62. env:
  63. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  64. with:
  65. upload_url: ${{ inputs.upload_url }}
  66. asset_path: test-tools/wamr-ide/VSCode-Extension/wamr-ide-${{ inputs.ver_num }}.zip
  67. asset_name: wamr-ide-${{ inputs.ver_num }}.zip
  68. asset_content_type: application/zip