build-lite-image.yml 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. name: 构建lite镜像
  2. on:
  3. push:
  4. tags:
  5. - v*.*.*
  6. - v*.*-Beta*
  7. workflow_dispatch:
  8. jobs:
  9. build:
  10. runs-on: ubuntu-latest
  11. if: "!contains(github.ref, 'ExeBeta')"
  12. name: 构建lite镜像
  13. steps:
  14. - name: Checkout
  15. uses: actions/checkout@master
  16. - name: Prepare
  17. id: prepare
  18. run: |
  19. echo "::set-output name=version::${GITHUB_REF:10}"
  20. echo "version=${GITHUB_REF:10}"
  21. - name: Set Up QEMU
  22. uses: docker/setup-qemu-action@v2
  23. - name: Set Up Buildx
  24. uses: docker/setup-buildx-action@v2
  25. - name: Login DockerHub
  26. uses: docker/login-action@v2
  27. with:
  28. username: ${{ secrets.DOCKER_USERNAME }}
  29. password: ${{ secrets.DOCKER_PASSWORD }}
  30. - name: Go Cross Build
  31. working-directory: docker
  32. run: |
  33. docker run --rm \
  34. -e VERSION=${{ steps.prepare.outputs.version }} \
  35. -e BASEKEY=${{ secrets.BASEKEY }} \
  36. -e AESKEY16=${{ secrets.AESKEY16 }} \
  37. -e AESIV16=${{ secrets.AESIV16 }} \
  38. -v $(pwd)/go:/root/go \
  39. -v $(pwd)/lite-make.sh:/init.sh \
  40. --entrypoint "/init.sh" \
  41. nevinee/csf-cross-builder
  42. - name: Docker Buildx Latest Image
  43. if: "!contains(steps.prepare.outputs.version, 'Beta')"
  44. uses: docker/build-push-action@v3
  45. with:
  46. context: docker
  47. file: docker/lite-release.Dockerfile
  48. platforms: |
  49. linux/386
  50. linux/amd64
  51. linux/arm64
  52. linux/arm/v7
  53. push: true
  54. build-args: |
  55. VERSION=${{ steps.prepare.outputs.version }}
  56. tags: |
  57. ${{ secrets.DOCKER_USERNAME }}/chinesesubfinder:${{ steps.prepare.outputs.version }}-lite
  58. ${{ secrets.DOCKER_USERNAME }}/chinesesubfinder:${{ steps.prepare.outputs.version }}
  59. ${{ secrets.DOCKER_USERNAME }}/chinesesubfinder:latest-lite
  60. ${{ secrets.DOCKER_USERNAME }}/chinesesubfinder:latest
  61. - name: Docker Buildx Beta Image
  62. if: contains(steps.prepare.outputs.version, 'Beta')
  63. uses: docker/build-push-action@v3
  64. with:
  65. context: docker
  66. file: docker/lite-release.Dockerfile
  67. platforms: |
  68. linux/386
  69. linux/amd64
  70. linux/arm64
  71. linux/arm/v7
  72. push: true
  73. build-args: |
  74. VERSION=${{ steps.prepare.outputs.version }}
  75. tags: |
  76. ${{ secrets.DOCKER_USERNAME }}/chinesesubfinder:${{ steps.prepare.outputs.version }}-lite
  77. ${{ secrets.DOCKER_USERNAME }}/chinesesubfinder:${{ steps.prepare.outputs.version }}