|
1 | 1 | VENDOR=JetRails |
2 | 2 | MODULE=Cloudflare |
3 | | -MAGENTO_VERSION=2.4.4 |
4 | | -MAGENTO_EDITION=community |
5 | | -NAMESPACE=$(VENDOR)"_"$(MODULE) |
6 | | -NAMESPACE_PATH=$(VENDOR)"/"$(MODULE) |
| 3 | +NAMESPACE=$(VENDOR)_$(MODULE) |
| 4 | +NAMESPACE_PATH=$(VENDOR)/$(MODULE) |
7 | 5 | VERSION=$(shell git describe --tags `git rev-list --tags --max-count=1`) |
8 | 6 | MODULE_FILES=Block Console Controller Helper Model etc view registration.php |
9 | 7 | MODULE_FILES_EXTRA=composer.json LICENSE.md |
10 | 8 |
|
11 | | -.PHONY: deps build bump deploy watch package clean nuke dev-create dev-up dev-down dev-nuke |
| 9 | +.PHONY: deps build bump deploy package clean help |
12 | 10 |
|
13 | 11 | deps: ## Download dependencies |
14 | 12 | yarn install |
15 | 13 |
|
16 | 14 | build: ## Build styles and scripts |
17 | 15 | yarn build |
| 16 | + rm -rf ./build/$(NAMESPACE_PATH) |
| 17 | + mkdir -p ./build/$(NAMESPACE_PATH) |
| 18 | + rsync -uavq $(MODULE_FILES) ./build/$(NAMESPACE_PATH) |
18 | 19 |
|
19 | 20 | bump: ## Bump version in source files based on latest git tag |
20 | 21 | VERSION=$(VERSION); find Block Console Controller Helper Model etc view -type f -iname "*.php" -exec sed -E -i '' "s/([\t ]+\*[\t ]+@version[\t ]+)(.*)/\1$$VERSION/g" {} + |
21 | 22 | VERSION=$(VERSION); sed -E -i '' "s/(Version-)(.+)(-orange)/\1$$VERSION\3/g" ./README.md |
22 | 23 | VERSION=$(VERSION); sed -E -i '' "s/(\"version\": \")(.+)(\")/\1$$VERSION\3/g" ./composer.json |
23 | 24 | VERSION=$(VERSION); sed -E -i '' "s/(\"version\": \")(.+)(\")/\1$$VERSION\3/g" ./package.json |
24 | 25 |
|
25 | | -deploy: ## Deploy code to public_html directory |
26 | | - NAMESPACE_PATH=$(NAMESPACE_PATH); mkdir -p "./public_html/app/code/$$NAMESPACE_PATH" |
27 | | - NAMESPACE_PATH=$(NAMESPACE_PATH); rsync -uavq $(MODULE_FILES) "./public_html/app/code/$$NAMESPACE_PATH" |
28 | | - |
29 | | -watch: deploy ## Intermittently sync code to public_html directory |
30 | | - fswatch -o $(MODULE_FILES) | xargs -n1 -I{} make deploy |
| 26 | +deploy: build ## Deploy code to docker container |
| 27 | + docker compose exec magento rm -rf /bitnami/magento/app/code/$(NAMESPACE_PATH) |
| 28 | + docker compose exec magento mkdir -p /bitnami/magento/app/code/$(NAMESPACE_PATH) |
| 29 | + docker compose cp ./build/$(NAMESPACE_PATH) magento:/bitnami/magento/app/code/$(VENDOR) |
| 30 | + docker compose exec magento chown -R daemon:root /bitnami/magento/app/code |
31 | 31 |
|
32 | 32 | package: bump build ## Package into archive file |
33 | 33 | rm -rf ./dist |
34 | 34 | mkdir -p ./dist |
35 | | - VERSION=$(VERSION); NAMESPACE=$(NAMESPACE); zip -r dist/$$NAMESPACE-$$VERSION.zip $(MODULE_FILES) $(MODULE_FILES_EXTRA) |
| 35 | + zip -r dist/$(NAMESPACE)-$(VERSION).zip $(MODULE_FILES) $(MODULE_FILES_EXTRA) |
36 | 36 |
|
37 | 37 | clean: ## Remove generated files and folders |
38 | | - rm -rf ./dist ./.parcel-cache |
39 | | - |
40 | | -nuke: clean ## Remove generated & deployment data |
41 | | - rm -rf ./node_modules ./public_html |
42 | | - |
43 | | -install-from-magento: ## Install module from official Magento repo (for testing) |
44 | | - docker-compose -f ./public_html/docker-compose.yml run --rm build composer require --no-ansi jetrails/magento2-cloudflare:1.4.0 |
45 | | - |
46 | | -shell: ## Spawn a shell |
47 | | - docker-compose -f ./public_html/docker-compose.yml run --rm deploy bash |
48 | | - |
49 | | -dev-create: ## Create development environment |
50 | | - composer global config repositories.magento composer https://repo.magento.com/ |
51 | | - composer create-project --prefer-dist --repository-url=https://repo.magento.com/ magento/project-$(MAGENTO_EDITION)-edition=$(MAGENTO_VERSION) ./public_html |
52 | | - cp .magento.docker.yml .magento.setup.params ./public_html |
53 | | - cd public_html && ln -s ../docker-compose.override.yml ./docker-compose.override.yml |
54 | | - cd public_html && composer require magento/ece-tools -w |
55 | | - cd public_html && ./vendor/bin/ece-docker build:compose --no-varnish --mode developer |
56 | | - cd public_html && docker-compose up -d |
57 | | - cd public_html && docker-compose run --rm deploy composer self-update --2 |
58 | | - cd public_html && docker-compose run --rm deploy magento-command setup:install `cat .magento.setup.params | tr '\n' ' '` ; |
59 | | - cd public_html && docker-compose run --rm deploy magento-command module:disable Magento_TwoFactorAuth |
60 | | - cd public_html && docker-compose run --rm deploy magento-command cache:flush |
61 | | - cd public_html && docker-compose run --rm deploy magento-command deploy:mode:set developer -s |
62 | | - # cd public_html && docker-compose run --rm deploy magento-command setup:static-content:deploy --jobs 4 |
63 | | - cd public_html && docker-compose run --rm deploy magento-command setup:di:compile |
64 | | - |
65 | | -dev-up: ## Spin development environment up |
66 | | - docker-compose -f ./public_html/docker-compose.yml up -d |
67 | | - |
68 | | -dev-down: ## Spin development environment down |
69 | | - docker-compose -f ./public_html/docker-compose.yml down |
70 | | - |
71 | | -dev-nuke: dev-down nuke ## Spin development environment down |
72 | | - docker volume rm public_html_magento-development-magento-db |
| 38 | + rm -rf ./dist ./build ./.parcel-cache |
73 | 39 |
|
74 | 40 | help: ## Display available commands |
75 | 41 | @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' |
0 commit comments