|
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__)
|
16 | 20 |
|
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 | 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 | 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",
|
|
0 commit comments