[PYTHON] L'histoire du débogage dans l'environnement local car la compilation n'a pas fonctionné avec Read the Docs

tl;dr

problème

Ce que j'ai fait

Comme indiqué dans la documentation officielle (http://docs.readthedocs.io/en/latest/builds.html), RTD publie intégralement ses instructions de construction de documentation. De plus, l 'image docker de l'environnement utilisé pour la construction est également publiée, il est donc facile de créer un environnement équivalent à portée de main et de le déboguer. ..

Tout d'abord, tirez l'image du docker et lancez-la dans un shell interactif.

docker run -it readthedocs/build:latest /bin/bash

À propos, au moment de la rédaction de cet article, la balise «2.0» était «la plus récente».

Ensuite, exécutez la commande basée sur le journal de construction de l'écran de gestion. Normalement, vous pouvez lire la méthode de construction officielle à partir de python, mais comme elle est gênante, exécutez-la en remplissant correctement l'interligne à partir du nom du répertoire, etc.

export READTHEDOCS=1  #Ajouts
mkdir -p /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs  #Ajouts
git checkout https://github.com/koreyou/word_embedding_loader.git /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest
cd /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest  #Ajouts

python2.7 -mvirtualenv --no-site-packages --no-download /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest 
source /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest/bin/activate  #Ajouts
python /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest/bin/pip install --use-wheel -U --cache-dir /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/.cache/pip sphinx==1.5.3 Pygments==2.2.0 setuptools==28.8.0 docutils==0.13.1 mkdocs==0.15.0 mock==1.0.1 pillow==2.6.1 readthedocs-sphinx-ext\<0.6 sphinx-rtd-theme\<0.3 alabaster\>=0.7,\<0.8,!=0.7.5 commonmark==0.5.4 recommonmark==0.4.0 
# requirements.Étant donné que le chemin de txt n'est pas spécifié par lui-même, les exigences en tant que prétraitement.Il semble qu'ils recherchent l'emplacement de txt
python /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest/bin/pip install --exists-action=w --cache-dir /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/.cache/pip -r/home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/checkouts/latest/requirements.txt
python setup.py install --force 

#à l'origine-b C'était readthedocs, mais cela ne fonctionne pas, donc je l'ai changé en HTML standard
python /home/docs/checkouts/readthedocs.org/user_builds/word-embedding-loader/envs/latest/bin/sphinx-build -T -b html -d _build/doctrees-readthedocs -D language=en . _build/html 

Après cela, dans la procédure où le problème est survenu, veuillez déboguer avec python -m pdb.

À propos, la cause était parce que j'ai ajouté un élément supplémentaire à mon PATH. (RTD fait python setup.py install, vous n'avez donc pas besoin d'ajouter le répertoire de package de votre projet à votre PATH)

Recommended Posts

L'histoire du débogage dans l'environnement local car la compilation n'a pas fonctionné avec Read the Docs
L'histoire selon laquelle yapf n'a pas fonctionné avec vscode
L'histoire selon laquelle sendmail qui peut être exécuté dans le terminal ne fonctionnait pas avec cron
L'histoire selon laquelle le remplacement de la liste bidimensionnelle n'a pas fonctionné en python
J'étais en difficulté car le comportement du conteneur docker n'a pas changé
L'histoire de la création de l'environnement Linux le plus rapide au monde
L'histoire du partage de l'environnement pyenv avec plusieurs utilisateurs
L'image est affichée dans l'environnement de développement local, mais l'image n'est pas affichée sur le serveur distant de VPS.
[Python] Tensorflow 2.0 ne supportait pas Python 3.8, donc l'histoire de la rétrogradation de Python
Après avoir créé et appliqué un environnement virtuel de python3.8.0, la complétion de code ne fonctionnait pas avec vscode
L'histoire de ne pas pouvoir exécuter pygame avec pycharm
L'histoire du travail de sortie de l'application que Google ne raconte pas
L'histoire de la sortie du maître de planétarium au format pdf avec Pycairo
L'histoire de la participation à AtCoder
L'histoire du "trou" dans le fichier
Résultats qui n'ont pas été pris en compte dans la recherche avec ce mot
L'histoire d'un capteur de stationnement en 10 minutes avec le kit de démarrage GrovePi +
L'histoire de l'utilisation de mysqlclient car PyMySQL ne peut pas être utilisé avec Django 2.2
L'histoire d'une erreur dans PyOCR
J'ai installé Pygame avec Python 3.5.1 dans l'environnement de pyenv sur OS X
Correctif lorsque la recherche de texte intégral ne fonctionne pas dans l'environnement local GAE / Python
L'histoire de l'apprentissage profond avec TPU
Remarque: préparez l'environnement de CmdStanPy avec docker
Préparer l'environnement d'exécution de Python3 avec Docker
Lire la sortie du sous-processus, ouvrir en temps réel
L'histoire de la recherche du n optimal dans N poing
L'histoire de la lecture des données HSPICE en Python
Travaillez dans un environnement virtuel avec Python virtualenv.
L'histoire de l'affichage des fichiers multimédias dans Django
L'histoire qui s'inscrit dans l'installation de pip
Je ne peux pas ouvrir Chrome avec du sélénium car la version du pilote Chrome ne correspond pas