@@ -1584,6 +1584,7 @@ local-pypi-debug:
1584
1584
1585
1585
# =============================================================================
1586
1586
# 🏠 LOCAL DEVPI SERVER
1587
+ # TODO: log in background, better cleanup/delete logic
1587
1588
# =============================================================================
1588
1589
# help: 🏠 LOCAL DEVPI SERVER
1589
1590
# help: devpi-install - Install devpi server and client
@@ -1596,9 +1597,11 @@ local-pypi-debug:
1596
1597
# help: devpi-clean - Full cycle: build → upload → install locally
1597
1598
# help: devpi-status - Show devpi server status
1598
1599
# help: devpi-web - Open devpi web interface
1600
+ # help: devpi-delete - Delete mcpgateway==<ver> from devpi index
1601
+
1599
1602
1600
1603
.PHONY : devpi-install devpi-init devpi-start devpi-stop devpi-setup-user devpi-upload \
1601
- devpi-test devpi-clean devpi-status devpi-web devpi-restart
1604
+ devpi-delete devpi- test devpi-clean devpi-status devpi-web devpi-restart
1602
1605
1603
1606
DEVPI_HOST := localhost
1604
1607
DEVPI_PORT := 3141
@@ -1688,14 +1691,14 @@ devpi-setup-user: devpi-start
1688
1691
(devpi user -c $( DEVPI_USER) password=$( DEVPI_PASS) email=$( DEVPI_USER) @localhost.local 2> /dev/null || \
1689
1692
echo ' User $(DEVPI_USER) already exists' ) && \
1690
1693
devpi login $(DEVPI_USER ) --password=$(DEVPI_PASS ) && \
1691
- (devpi index -c dev bases=root/pypi volatile=False 2> /dev/null || \
1694
+ (devpi index -c dev bases=root/pypi volatile=True 2> /dev/null || \
1692
1695
echo ' Index dev already exists' ) && \
1693
1696
devpi use $(DEVPI_INDEX ) "
1694
1697
@echo " ✅ User '$( DEVPI_USER) ' and index 'dev' configured"
1695
1698
@echo " 📝 Login: $( DEVPI_USER) / $( DEVPI_PASS) "
1696
1699
@echo " 📍 Using index: $( DEVPI_INDEX) "
1697
1700
1698
- devpi-upload : devpi-setup-user
1701
+ devpi-upload : dist devpi-setup-user # # Build wheel/sdist, then upload
1699
1702
@echo " 📤 Uploading existing package to devpi..."
1700
1703
@if [ ! -d " dist" ] || [ -z " $$ (ls -A dist/ 2>/dev/null)" ]; then \
1701
1704
echo " ❌ No dist/ directory or files found. Run 'make dist' first." ; \
@@ -1813,3 +1816,18 @@ devpi-unconfigure-pip:
1813
1816
else \
1814
1817
echo " ℹ️ No pip configuration found" ; \
1815
1818
fi
1819
+
1820
+ # ─────────────────────────────────────────────────────────────────────────────
1821
+ # 📦 Version helper (defaults to the version in pyproject.toml)
1822
+ # override on the CLI: make VER=0.2.1 devpi-delete
1823
+ # ─────────────────────────────────────────────────────────────────────────────
1824
+ VER ?= $(shell python -c "import tomllib, pathlib; \
1825
+ print(tomllib.loads(pathlib.Path('pyproject.toml') .read_text())['project']['version'])" \
1826
+ 2>/dev/null || echo 0.0.0)
1827
+
1828
+ devpi-delete : devpi-setup-user # # Delete mcpgateway==$(VER) from index
1829
+ @echo " 🗑️ Removing mcpgateway==$( VER) from $( DEVPI_INDEX) …"
1830
+ @/bin/bash -c " source $( VENV_DIR) /bin/activate && \
1831
+ devpi use $(DEVPI_INDEX ) && \
1832
+ devpi remove -y mcpgateway==$(VER ) || true"
1833
+ @echo " ✅ Delete complete (if it existed)"
0 commit comments