أنا أستخدم ملف conda.lock لتثبيت التبعيات. كنت أتساءل ما إذا كانت هناك طريقة لتخزينها. حاليًا ، يبدو أن التخزين المؤقت المنتظم لا يعمل من أجل ذلك.
حسنًا ... لديّ ملف تشغيل باستخدام ملف قفل ثقيل ، ويعمل التخزين المؤقت على نظام التشغيل Linux و OSX:
إنه لا يعمل على النوافذ ، وعلى الرغم من أنه يجعلني حزينًا ، إلا أنه لا يفاجئني أيضًا.
إذا كان لديك روابط إلى الريبو المعني ، أو السجلات ، أو أي معلومات إضافية يمكنك تقديمها بخلاف "لا يعمل" فهذا من شأنه أن يساعد!
شكرا bollwyvl على ردك السريع.
آسف لعدم تقديم المزيد من التفاصيل في وقت سابق. أنا أجرب على لعبة ريبو ، يمكنك العثور على سجل حديث هنا:
https://github.com/ma-sadeghi/xyztest/runs/1534789528؟check_suite_focus=true
تم الإبلاغ عن حجم ذاكرة التخزين المؤقت ليكون ~ 0 ميغا بايت.
ملاحظة. أنا لا أستخدم setup-miniconda
لهذا الريبو ، كنت أحاول جعله يعمل مع conda
المضمن على أجهزة CI.
تضمين التغريدة
بالنظر إلى ملفك yml
مع القليل من البحث في setup-miniconda
، اتضح أنني كنت أقوم بمجموعة كاملة من الأشياء الخاطئة. لم يكن مجلد ذاكرة التخزين المؤقت ( ~/conda_pkgs_dir
) موجودًا ، لذلك اضطررت إلى إنشائه يدويًا ، كما أنني لم أقم بتعيين متغير البيئة CONDA_PKGS_DIRS
للإشارة إلى ~/conda_pkgs_dir
. إليك أحدث تكرار:
https://github.com/ma-sadeghi/xyztest/runs/1535236467؟check_suite_focus=true
الذي يبدو أن التخزين المؤقت يعمل بشكل جيد وأن خطوة "تثبيت التبعيات" أصبحت الآن أسرع بكثير.
شكرا على البصيرة.
حوزة! مخبأ للجميع!
لاحظ أن التخزين المؤقت للمجلد بأكمله لن يعمل كما ينبغي ، مثل
تحتوي ذاكرة التخزين المؤقت على كلٍ من كرات القطران _و_ المحتويات التي تم فك حزمها ... في ملف
خطوة ما بعد الخطوة (نحاول) تنظيف بعض ذلك.
لا تتردد في الإغلاق إذا لم يكن هناك شيء آخر مكسور ... خاصةً بهذا الشكل
لم يتضمن هذا الإجراء.
bollwyvl آسف ، أعلم أن هذا خارج نطاق هذا الريبو تمامًا ، ولكن هل لي أن أسأل ما الذي تفعله بالضبط لتحسين التخزين المؤقت؟ ما هي الملفات التي تتخلص منها؟ المحتويات غير المعبأة أو كرات القطران؟
نعم هذا حجمه إلى حد كبير:
https://github.com/conda-incubator/setup-miniconda/blob/master/src/delete.ts
هناك بعض الأشياء الأخرى هناك أيضًا ، لكنها أشياء رديئة بالمقارنة
لنقل ، mkl أو qt unpacked.
bollwyvl سؤال سريع: بالنظر إلى delete.ts
، يبدو أنك تقوم بحذف المجلدات غير المضغوطة ، بدلاً من الملفات المضغوطة .tar.bz2
. ربما أنا شيء مفقود، ولكن يبدو أنه من خلال القيام بذلك، والاحتياجات كوندا للقيام "التخلص من التوتر" خطوة إضافية، في حين إذا .tar.bz2
يتم حذف، conda
يمكن ببساطة إعادة استخدام ضغط بالفعل المجلدات. لقد جربته على جهاز الكمبيوتر الخاص بي ويبدو أن هذا الأخير أدى إلى عمليات تثبيت أسرع.
أعتقد أنه يمكنك تشغيل Conda نظيفًا أيضًا. bollwyvl ربما يمكننا استخدام ذلك بدلاً من delete.ts
، لقد فعلت ذلك على هذا النحو لأنني لم أكن على دراية بـ Conda Clean في تلك اللحظة.
$ conda clean --help
usage: conda clean [-h] [-a] [-i] [-p] [-t] [-f]
[-c TEMPFILES [TEMPFILES ...]] [-d] [--json] [-q] [-v] [-y]
Remove unused packages and caches.
Options:
optional arguments:
-h, --help Show this help message and exit.
Removal Targets:
-a, --all Remove index cache, lock files, unused cache packages,
and tarballs.
-i, --index-cache Remove index cache.
-p, --packages Remove unused packages from writable package caches.
WARNING: This does not check for packages installed
using symlinks back to the package cache.
-t, --tarballs Remove cached package tarballs.
-f, --force-pkgs-dirs
Remove *all* writable package caches. This option is
not included with the --all flag. WARNING: This will
break environments with packages installed using
symlinks back to the package cache.
-c TEMPFILES [TEMPFILES ...], --tempfiles TEMPFILES [TEMPFILES ...]
Remove temporary files that could not be deleted
earlier due to being in-use. Argument is path(s) to
prefix(es) where files should be found and removed.
Output, Prompt, and Flow Control Options:
-d, --dry-run Only display what would have been done.
--json Report all output as json. Suitable for using conda
programmatically.
-q, --quiet Do not display progress bar.
-v, --verbose Can be used multiple times. Once for INFO, twice for
DEBUG, three times for TRACE.
-y, --yes Do not ask for confirmation.
Examples:
conda clean --tarballs
بعض الأفكار الأخرى لذاكرة تخزين مؤقت أصغر: