Vytvoříme skript, který instalaci modulů Pythonu a spouštět některé příkazy

hlasů
-1

Chci vytvořit tenký obal kolem této knihovny https://github.com/jupyter-incubator/sparkmagic#installation

Jak můžete vidět v odkazu instalace krok vyžaduje

  1. instalaci některých balíčků s pip
  2. spustit nějaký příkaz typu jupyter enable ...nebojupyter-kernelspec install
  3. zvyk konfigurační soubor, který chci vytvořit a umístit na správné místo

Jsem zkontrolovat, jaké možnosti mám, aby se zařízení jako automatická jako volání skriptu. Doposud jsem přišel vytvoření bash skript se všemi těmito příkazy. Tímto způsobem se pracuje s jednoduchým install.sh, ale budu mít problémy, protože nebudu vědět, které python binárky použít. Pokud se uživatel chce nainstalovat lib pro python2 nebo python3 nemůže mít tuto volbu, pokud se dotkne skript.

Jsem se pak snažil použít setup.py, a přepsat cmdclassvložit vlastní kód

from setuptools import setup
from setuptools.command.develop import develop
from setuptools.command.install import install


class PostDevelopCommand(develop):
  Post-installation for development mode.
  def run(self):
    develop.run(self)
    print(do things)

class PostInstallCommand(install):
  Post-installation for installation mode.
  def run(self):
    install.run(self)
    print(do things)

setup(
  ...
  install_requires=['sparkmagic'],
  cmdclass={
    'develop': PostDevelopCommand,
    'install': PostInstallCommand,
},

...
)

ale na zakázku vytiskne pracoval pouze při spuštění python setup.py install, ale ne propip install

Rád bych, aby to poslední možnost práce, ale pokud to není ten správný patter dělat tento druh věcí, mohl byste mi navrhnout, kudy jít?

Položena 10/10/2019 v 00:40
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Tato otázka není se pip installpřímo, ale s koly . Projekty zabalené jako kola nemohou mít vlastní instalaci kroky. Viz například tuto diskusi . Vzhledem k tomu, pip preferuje práci s koly, je budování místně-li to nutné, vaše vlastní kroky neběží V době instalace. Existuje pravděpodobně způsobů, jak zabránit krok kola ačkoli.

S tímto vědomím, pravděpodobně byste měli řídit radami od Jana Vlčinský ve svém komentáři k jeho odpovědi na tuto otázku: Post instalační skript po instalaci kolo .

  • Přidat setuptools konzoly vstupní bod do svého projektu (nazvěme to myprojectconfigure). Možná raději používáte distutils script mají místo.

  • Pokyn uživatelům balení jej spustit ihned po instalaci balíčku ( pip install myproject && myprojectconfigure).

  • Nakonec přemýšlet o poskytnutí myprojectconfigure --uninstallstejně.

Odpovězeno 10/10/2019 v 14:56
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more