|
4 | 4 | DOCKER_COMPOSE := docker-compose |
5 | 5 | endif |
6 | 6 |
|
| 7 | +NETBOX_VERSION ?= |
| 8 | +ifneq ($(NETBOX_VERSION),) |
| 9 | + DOCKER_PATH := docker/$(NETBOX_VERSION) |
| 10 | + TEST_SELECTOR := "/opt/netbox/netbox/netbox_diode_plugin/tests/$(NETBOX_VERSION)/tests/" |
| 11 | +else |
| 12 | + DOCKER_PATH := docker |
| 13 | + TEST_SELECTOR = netbox_diode_plugin |
| 14 | +endif |
| 15 | + |
7 | 16 | .PHONY: docker-compose-netbox-plugin-up |
8 | 17 | docker-compose-netbox-plugin-up: |
9 | | - @$(DOCKER_COMPOSE) -f docker/docker-compose.yaml up -d --build |
| 18 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml up -d --build |
10 | 19 |
|
11 | 20 | .PHONY: docker-compose-netbox-plugin-down |
12 | 21 | docker-compose-netbox-plugin-down: |
13 | | - @$(DOCKER_COMPOSE) -f docker/docker-compose.yaml down |
| 22 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml down |
14 | 23 |
|
15 | 24 | .PHONY: docker-compose-netbox-plugin-test |
16 | 25 | docker-compose-netbox-plugin-test: |
17 | | - -@$(DOCKER_COMPOSE) -f docker/docker-compose.yaml -f docker/docker-compose.test.yaml run -u root --rm netbox ./manage.py test $(TEST_FLAGS) --keepdb netbox_diode_plugin |
18 | | - @$(MAKE) docker-compose-netbox-plugin-down |
| 26 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml -f $(DOCKER_PATH)/docker-compose.test.yaml run -u root --rm netbox ./manage.py test $(TEST_FLAGS) --keepdb $(TEST_SELECTOR); \ |
| 27 | + EXIT_CODE=$$?; \ |
| 28 | + $(MAKE) docker-compose-netbox-plugin-down; \ |
| 29 | + exit $$EXIT_CODE |
| 30 | + |
| 31 | +.PHONY: docker-compose-netbox-plugin-test-lint |
| 32 | +docker-compose-netbox-plugin-test-lint: |
| 33 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml -f $(DOCKER_PATH)/docker-compose.test.yaml run -u root --rm netbox ruff check --output-format=github netbox_diode_plugin; \ |
| 34 | + EXIT_CODE=$$?; \ |
| 35 | + $(MAKE) docker-compose-netbox-plugin-down; \ |
| 36 | + exit $$EXIT_CODE |
19 | 37 |
|
20 | 38 | .PHONY: docker-compose-netbox-plugin-test-cover |
21 | 39 | docker-compose-netbox-plugin-test-cover: |
22 | | - -@$(DOCKER_COMPOSE) -f docker/docker-compose.yaml -f docker/docker-compose.test.yaml run --rm -u root -e COVERAGE_FILE=/opt/netbox/netbox/coverage/.coverage netbox sh -c "coverage run --source=netbox_diode_plugin --omit=*/migrations/* ./manage.py test --keepdb netbox_diode_plugin && coverage xml -o /opt/netbox/netbox/coverage/report.xml && coverage report -m | tee /opt/netbox/netbox/coverage/report.txt" |
23 | | - @$(MAKE) docker-compose-netbox-plugin-down |
| 40 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml -f $(DOCKER_PATH)/docker-compose.test.yaml run --rm -u root -e COVERAGE_FILE=/opt/netbox/netbox/coverage/.coverage netbox sh -c "coverage run --source=netbox_diode_plugin --omit=*/migrations/* ./manage.py test --keepdb $(TEST_SELECTOR) && coverage xml -o /opt/netbox/netbox/coverage/report.xml && coverage report -m | tee /opt/netbox/netbox/coverage/report.txt"; \ |
| 41 | + EXIT_CODE=$$?; \ |
| 42 | + $(MAKE) docker-compose-netbox-plugin-down; \ |
| 43 | + exit $$EXIT_CODE |
| 44 | + |
| 45 | +.PHONY: docker-compose-generate-matching-docs |
| 46 | +docker-compose-generate-matching-docs: |
| 47 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml -f $(DOCKER_PATH)/docker-compose.test.yaml run --rm netbox python manage.py generate_matching_docs | awk '/Generating markdown documentation.../{p=1;next} p' > ./docs/matching-criteria-documentation.md |
| 48 | + |
| 49 | +.PHONY: docker-compose-migrate |
| 50 | +docker-compose-migrate: |
| 51 | + @$(DOCKER_COMPOSE) -f $(DOCKER_PATH)/docker-compose.yaml -f $(DOCKER_PATH)/docker-compose.test.yaml run --rm netbox python manage.py migrate |
0 commit comments