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.

44 lines
1.4 KiB

3 years ago
  1. PLUGIN_NAME = docker.inweb.id/lizardfs-volume-plugin
  2. PLUGIN_TAG ?= 3.10
  3. TRAVIS_BUILD_NUMBER ?= local
  4. all: clean rootfs create
  5. clean:
  6. @echo "### rm ./plugin"
  7. @rm -rf ./plugin
  8. config:
  9. @echo "### copy config.json to ./plugin/"
  10. @mkdir -p ./plugin
  11. @cp config.json ./plugin/
  12. rootfs: config
  13. @echo "### docker build: rootfs image with"
  14. @docker build -t ${PLUGIN_NAME}:rootfs .
  15. @echo "### create rootfs directory in ./plugin/rootfs"
  16. @mkdir -p ./plugin/rootfs
  17. @docker create --name tmp ${PLUGIN_NAME}:rootfs
  18. @docker export tmp | tar -x -C ./plugin/rootfs
  19. @docker rm -vf tmp
  20. create:
  21. @echo "### remove existing plugin ${PLUGIN_NAME}:${PLUGIN_TAG} if exists"
  22. @docker plugin rm -f ${PLUGIN_NAME}:${PLUGIN_TAG} || true
  23. @docker plugin rm -f ${PLUGIN_NAME}:${TRAVIS_BUILD_NUMBER} || true
  24. @echo "### create new plugin ${PLUGIN_NAME}:${PLUGIN_TAG} from ./plugin"
  25. @docker plugin create ${PLUGIN_NAME}:${PLUGIN_TAG} ./plugin
  26. @docker plugin create ${PLUGIN_NAME}:${TRAVIS_BUILD_NUMBER} ./plugin
  27. enable:
  28. @echo "### enable plugin ${PLUGIN_NAME}:${PLUGIN_TAG}"
  29. @docker plugin enable ${PLUGIN_NAME}:${PLUGIN_TAG}
  30. disable:
  31. @echo "### disable plugin ${PLUGIN_NAME}:${PLUGIN_TAG}"
  32. @docker plugin disable ${PLUGIN_NAME}:${PLUGIN_TAG}
  33. push: clean rootfs create
  34. @echo "### push plugin ${PLUGIN_NAME}:${PLUGIN_TAG}"
  35. @docker plugin push ${PLUGIN_NAME}:${TRAVIS_BUILD_NUMBER}
  36. @docker plugin push ${PLUGIN_NAME}:${PLUGIN_TAG}