build-rc.yml 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. name: Release Docker Images for RC
  2. on:
  3. push:
  4. branches:
  5. # FIXME: debug code
  6. # - rc/*
  7. - support/github-actions
  8. jobs:
  9. build-rc:
  10. runs-on: ubuntu-latest
  11. steps:
  12. - uses: actions/checkout@v1
  13. - name: Set up Docker Buildx
  14. uses: crazy-max/ghaction-docker-buildx@v1.0.4
  15. - name: Cache/Restore node_modules
  16. id: cache
  17. uses: actions/cache@v1
  18. with:
  19. path: var/cache/growi-builder
  20. key: ${{ runner.OS }}-growi-builder-${{ hashFiles('docker/Dockerfile') }}
  21. restore-keys: |
  22. ${{ runner.OS }}-growi-builder-${{ hashFiles('docker/Dockerfile') }}
  23. ${{ runner.OS }}-growi-builder-
  24. - name: install dependencies
  25. if: steps.cache.outputs.cache-hit != 'true'
  26. run: |
  27. yarn
  28. - name: install plugins
  29. if: steps.cache.outputs.cache-hit != 'true'
  30. run: |
  31. yarn add growi-plugin-lsx growi-plugin-pukiwiki-like-linker growi-plugin-attachment-refs
  32. yarn add -D react-images react-motion
  33. - name: Build Docker Image
  34. run: |
  35. docker buildx build \
  36. --tag growi \
  37. --platform linux/amd64 \
  38. --load \
  39. --cache-from=type=local,src=var/cache/growi-builder \
  40. --cache-to=type=local,dest=var/cache/growi-builder \
  41. --file ./docker/Dockerfile .
  42. - name: Login to docker.io registry
  43. run: |
  44. echo ${{ secrets. DOCKER_REGISTRY_PASSWORD }} | docker login --username wsmoogle --password-stdin
  45. - name: Get SemVer
  46. run: |
  47. semver=`npm run version --silent`
  48. echo ::set-env name=SEMVER::$(echo $semver)
  49. - name: Docker Tags by SemVer
  50. uses: weseek/ghaction-docker-tags-by-semver@v1.0.3
  51. with:
  52. source: growi
  53. target: weseek/growi
  54. semver: ${{ env.SEMVER }}
  55. publish: true