python - कपड - वाशिंग मशीन रिपेयर कैसे करे




Setup.py में बिल्ड निर्देशिका की सफाई करें (3)

पूर्व हटाए जाने के लिए, बस distutils.dir_util.remove_tree सेटअप से पहले distutils.dir_util.remove_tree से हटा दें।

पोस्ट-डिलीट के लिए, मैं मानता हूं कि आप केवल चयनित कमांड के बाद पोस्ट-डिलीट करना चाहते हैं संबंधित कमांड उप-वर्ग, इसके रन पद्धति को ओवरराइड करें (बेस रन को कॉल करने के बाद निकालें _टीरी को लागू करने के लिए), और नई कमांड को सीएमडीक्लास शब्दकोश की सेटअप में पास करें।

मैं अपने setup.py कैसे बना सकता हूं? बिल्ड निर्देशिका को पूर्व-हटाएं और बाद में हटाएं?


यहां एक जवाब है जो मैट के उत्तर की कार्यक्षमता के साथ मार्टिन के उत्तर के प्रोग्राममैटिक दृष्टिकोण को जोड़ता है (एक clean जो सभी संभावित बिल्ड क्षेत्रों का ध्यान रखता है):

from distutils.core import setup
from distutils.command.clean import clean
from distutils.command.install import install

class MyInstall(install):

    # Calls the default run command, then deletes the build area
    # (equivalent to "setup clean --all").
    def run(self):
        install.run(self)
        c = clean(self.distribution)
        c.all = True
        c.finalize_options()
        c.run()

if __name__ == '__main__':

    setup(
        name="myname",
        ...
        cmdclass={'install': MyInstall}
    )

यह स्थापित करने से पहले बिल्ड निर्देशिका साफ़ करता है

python setup.py clean --all install

लेकिन आपकी आवश्यकताओं के अनुसार: इससे पहले, और बाद में ऐसा होगा

python setup.py clean --all install clean --all




distutils