Quellcode durchsuchen

Make sure to always build the assets when building a python package (#4306)

master
Voxin Muyli vor 11 Monaten
Ursprung
Commit
0247120559
Es ist kein Account mit der E-Mail-Adresse des Committers verbunden
1 geänderte Dateien mit 15 neuen und 2 gelöschten Zeilen
  1. 15
    2
      setup.py

+ 15
- 2
setup.py Datei anzeigen

@@ -8,8 +8,12 @@ To release a new version to PyPi:
8 8
 """
9 9
 import os
10 10
 import re
11
+import subprocess
11 12
 import sys
12 13
 
14
+# pylint: disable=deprecated-module
15
+from distutils.command import build as build_module
16
+
13 17
 from setuptools import setup, find_packages
14 18
 
15 19
 PROJECT_DIR = os.path.dirname(__file__)
@@ -17,6 +21,14 @@ PROJECT_DIR = os.path.dirname(__file__)
17 21
 sys.path.append(os.path.join(PROJECT_DIR, "src"))
18 22
 from oscar import get_version  # noqa isort:skip
19 23
 
24
+
25
+class BuildNPM(build_module.build):
26
+    def run(self):
27
+        subprocess.check_call(["npm", "install"])
28
+        subprocess.check_call(["npm", "run", "build"])
29
+        super().run()
30
+
31
+
20 32
 install_requires = [
21 33
     "setuptools>=51.3.3",
22 34
     "django>=3.2,<4.3",
@@ -88,8 +100,8 @@ setup(
88 100
     license="BSD",
89 101
     platforms=["linux"],
90 102
     include_package_data=True,
91
-    package_dir={'': 'src'},
92
-    packages=find_packages('src'),
103
+    package_dir={"": "src"},
104
+    packages=find_packages("src"),
93 105
     python_requires=">=3.8",
94 106
     install_requires=install_requires,
95 107
     extras_require={
@@ -98,6 +110,7 @@ setup(
98 110
         "sorl-thumbnail": [sorl_thumbnail_version],
99 111
         "easy-thumbnails": [easy_thumbnails_version],
100 112
     },
113
+    cmdclass={"build": BuildNPM},
101 114
     classifiers=[
102 115
         "Development Status :: 5 - Production/Stable",
103 116
         "Environment :: Web Environment",

Laden…
Abbrechen
Speichern