You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

47 lines
1.5 KiB

  1. on:
  2. push:
  3. tags:
  4. - 'v*'
  5. name: Build & Deploy Image
  6. jobs:
  7. build:
  8. name: Build & Release Image
  9. runs-on: ubuntu-latest
  10. env:
  11. working-directory: ./builder
  12. steps:
  13. - name: Checkout code
  14. uses: actions/checkout@v2
  15. - name: Build project
  16. id: builder
  17. working-directory: ${{ env.working-directory }}
  18. run: |
  19. bash build-docker.sh
  20. echo ::set-output name=filename::$(ls deploy/*.zip | xargs -n 1 basename)
  21. - name: Fix Permissions
  22. id: fix_perm_filename
  23. run: |
  24. chmod a+rw ${{ env.working-directory }}/deploy/${{ steps.builder.outputs.filename }}
  25. echo ${{ env.working-directory }}/deploy/${{ steps.builder.outputs.filename }}
  26. - name: Create Release
  27. id: create_release
  28. uses: actions/create-release@v1
  29. env:
  30. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  31. with:
  32. tag_name: ${{ github.ref }}
  33. release_name: Release ${{ github.ref }}
  34. draft: false
  35. prerelease: false
  36. - name: Upload Release Asset
  37. id: upload-release-asset
  38. uses: actions/upload-release-asset@v1
  39. env:
  40. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  41. with:
  42. upload_url: ${{ steps.create_release.outputs.upload_url }}
  43. asset_path: ${{ env.working-directory }}/deploy/${{ steps.builder.outputs.filename }}
  44. asset_name: ${{ steps.builder.outputs.filename }}
  45. asset_content_type: application/zip