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.

37 lines
948B

  1. RACK_SDK_VERSION ?= 0.6.2
  2. RACK_REPOSITORY := rack
  3. RACK_ENVIRONMENT_TAG := env
  4. RACK_ENVIRONMENT_IMAGE := $(RACK_REPOSITORY):$(RACK_ENVIRONMENT_TAG)
  5. RACK_SDK_TAG := v$(RACK_SDK_VERSION)
  6. RACK_SDK_IMAGE := $(RACK_REPOSITORY):$(RACK_SDK_TAG)
  7. PLUGIN_DIST_DIR=$(shell pwd)/dist
  8. all: racksdk
  9. run: racksdk distdir
  10. docker run --mount type=bind,source="$(PLUGIN_DIST_DIR)",target=/dist -it $(RACK_SDK_IMAGE)
  11. racksdk: rackenv
  12. docker image inspect $(RACK_SDK_IMAGE) --format "{{.ID}}" \
  13. || docker image build -t $(RACK_SDK_IMAGE) sdk/ \
  14. --build-arg RACK_SDK_VERSION=$(RACK_SDK_VERSION)
  15. rackenv:
  16. docker image inspect $(RACK_ENVIRONMENT_IMAGE) --format "{{.ID}}" \
  17. || docker image build -t $(RACK_ENVIRONMENT_IMAGE) $(RACK_ENVIRONMENT_TAG)/
  18. cleansdk:
  19. docker image rm $(RACK_SDK_IMAGE)
  20. cleanenv:
  21. docker image rm $(RACK_ENVIRONMENT_IMAGE)
  22. distdir:
  23. mkdir -p ${PLUGIN_DIST_DIR}
  24. clean: cleansdk cleanenv
  25. .PHONY: all build clean cleanenv cleansdk