[PYTHON] Minimales Makefile und buildout.cfg, um eine Umgebung mit buildout zu erstellen

Eines der Tools zum Erstellen einer Python-Miniaturgartenumgebung ist das Erstellen. Ich habe ein Makefile geschrieben, um eine Buildout-Umgebung zu erstellen

Am Anfang...

Es wird davon ausgegangen, dass Python und virtualenv bereits verfügbar sind.

Erwarteter Betrieb

Die erwarteten Befehle sind:

make build
Erstellen Sie eine Buildout-Umgebung.
make clean
Löschen Sie die Buildout-Umgebung.
make rebuild
Erstellen Sie die Buildout-Umgebung neu.

make macht make build.

Makefile und buildout.cfg

Makefile

Ich benutze oft Makefile, wenn ich Buildout ausführe. Das folgende Beispiel beschreibt die minimal erforderlichen Operationen.

Makefile


# -*- coding: utf-8 -*-
# Need virtualenv
.PHONY: all clean build rebuild

all: env bin/buildout build
	echo "buildout finished..."

clean:
	rm -rf bin parts eggs develop-eggs .installed env bootstrap.py

build: bin/buildout
	bin/buildout -c buildout.cfg

rebuild: clean build
	echo

bin/buildout: env
	curl https://raw.githubusercontent.com/buildout/buildout/master/bootstrap/bootstrap.py | env/bin/python

env:
	virtualenv --no-site-packages env
	env/bin/pip install -U setuptools

buildout.cfg Sie benötigen die Konfigurationsdatei buyout.cfg für den Buildout. Diese Einstellung bewirkt nichts.

buildout.cfg


[buildout]
parts =

Versuche dich zu bewegen

Verfassung

Die Datei enthält das obige Makefile und buildout.cfg im selben Verzeichnis.

(py3k)$ ls
Makefile	buildout.cfg

Erstellen Sie eine Umgebung

Lassen Sie uns einen Make Build erstellen.

(py3k)$ make build
virtualenv --no-site-packages env
Using real prefix '/home/examples/.anyenv/envs/pyenv/versions/3.4.2'
New python executable in env/bin/python3.4
Also creating executable in env/bin/python
Installing setuptools, pip...done.
env/bin/pip install -U setuptools
You are using pip version 6.0.3, however version 6.0.6 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
DEPRECATION: --download-cache has been deprecated and will be removed in the future. Pip now automatically uses and configures its cache.
Collecting setuptools from https://pypi.python.org/packages/3.4/s/setuptools/setuptools-11.3.1-py2.py3-none-any.whl#md5=59cd761f2f2b926313bed7f83337e4d7
  Downloading setuptools-11.3.1-py2.py3-none-any.whl (500kB)
    100% |################################| 503kB 7.3MB/s 
Installing collected packages: setuptools
  Found existing installation: setuptools 8.2.1
    Uninstalling setuptools-8.2.1:
      Successfully uninstalled setuptools-8.2.1

Successfully installed setuptools-11.3.1
curl https://raw.githubusercontent.com/buildout/buildout/master/bootstrap/bootstrap.py > bootstrap.py
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6501  100  6501    0     0  17982      0 --:--:-- --:--:-- --:--:-- 18008
env/bin/python bootstrap.py
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/bin'.
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/parts'.
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/eggs'.
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/develop-eggs'.
Generated script '/home/examples/ng/var/src/develop/examples/buildout/simple/bin/buildout'.
bin/buildout -c buildout.cfg
(py3k)$    

Lassen Sie uns im Arbeitsverzeichnis nachsehen.

(py3k)$ ls
Makefile	bin		buildout.cfg	develop-eggs	eggs		env		parts
Makefile
Makefile zum Bearbeiten des Buildouts. Ich habe es selbst früher erstellt.
bin
Dies ist das Verzeichnis, in dem die in der Buildout-Umgebung installierten Befehle installiert sind. Erstellt, wenn Sie Build erstellen.
buildout.cfg
Dies ist eine Einstellungsdatei für den Buildout. Diese Konfigurationsdatei wird verwendet, wenn der Build erstellt wurde.
develop-eggs
Das Verzeichnis, in dem Ihr in der Entwicklung befindliches Paket installiert wird. Da es in dem Zustand installiert ist, in dem es mit pip -e eingegeben wurde, In diesem Verzeichnis wird ein Link für das Python-Paket erstellt.
eggs
Das Verzeichnis, in dem Pakete installiert sind.
parts
Dateien, die zu Teilen wie Paketeinstellungen und Werkzeugen werden, werden abgelegt.

Löschen Sie die Umgebung

(py3k)$ make clean
rm -rf bin parts eggs develop-eggs .installed env bootstrap.py

Bestätigen Sie, dass Sie es gelöscht haben.

(py3k)$ ls
Makefile	buildout.cfg

Zu diesem Zeitpunkt wird auch die von virualenv erstellte Umgebung verwendet. Es ist bereits verwurzelt.

Löschen und erstellen Sie die Umgebung

Lassen Sie uns nun Build Rebuild ausführen.


(py3k)$ make rebuild
rm -rf bin parts eggs develop-eggs .installed env bootstrap.py
virtualenv --no-site-packages env
Using real prefix '/home/examples/.anyenv/envs/pyenv/versions/3.4.2'
New python executable in env/bin/python3.4
Also creating executable in env/bin/python
Installing setuptools, pip...done.
env/bin/pip install -U setuptools
You are using pip version 6.0.3, however version 6.0.6 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
DEPRECATION: --download-cache has been deprecated and will be removed in the future. Pip now automatically uses and configures its cache.
Collecting setuptools from https://pypi.python.org/packages/3.4/s/setuptools/setuptools-11.3.1-py2.py3-none-any.whl#md5=59cd761f2f2b926313bed7f83337e4d7
  Downloading setuptools-11.3.1-py2.py3-none-any.whl (500kB)
    100% |################################| 503kB 3.4MB/s 
Installing collected packages: setuptools
  Found existing installation: setuptools 8.2.1
    Uninstalling setuptools-8.2.1:
      Successfully uninstalled setuptools-8.2.1

Successfully installed setuptools-11.3.1
curl https://raw.githubusercontent.com/buildout/buildout/master/bootstrap/bootstrap.py > bootstrap.py
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6501  100  6501    0     0  16741      0 --:--:-- --:--:-- --:--:-- 16755
env/bin/python bootstrap.py
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/bin'.
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/parts'.
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/eggs'.
Creating directory '/home/examples/ng/var/src/develop/examples/buildout/simple/develop-eggs'.
Generated script '/home/examples/ng/var/src/develop/examples/buildout/simple/bin/buildout'.
bin/buildout -c buildout.cfg
echo

(py3k)$ 

Ich mache nur sauber und baue dann.

Recommended Posts

Minimales Makefile und buildout.cfg, um eine Umgebung mit buildout zu erstellen
Erstellen Sie eine Umgebung mit virtualenv
Bereiten Sie eine Umgebung für die Verwendung von OpenCV und Pillow mit AWS Lambda vor
So erstellen Sie eine NVIDIA Docker-Umgebung
Erstellen Sie eine API zum Konvertieren von PDF-Dateien in TIF-Bilder mit FastAPI und Docker
Ich habe versucht, eine Umgebung zu erstellen, um regelmäßig mit Selenium mit AWS Fargate zu überprüfen
[Python] So erstellen Sie eine lokale Webserverumgebung mit SimpleHTTPServer und CGIHTTPServer
Eine einfache Möglichkeit, ein Importmodul mit jupyter zu erstellen
Erstellen Sie eine Open AI Gym-Umgebung mit Bash unter Windows 10
Erstellen Sie mit AirtestIDE eine Umgebung für die Testautomatisierung (Tipps)
Erstellen einer Umgebung für die Verwendung von CaboCha mit Google Colaboratory
Übergeben von Argumenten oder Umgebungsvariablen mit Makefile und Befehl make unter #Linux
Schritte zum schnellen Erstellen einer umfassenden Lernumgebung auf einem Mac mit TensorFlow und OpenCV
Erstellen Sie eine API mit Django
Erstellen Sie mit Docker eine Umgebung für "Deep Learning von Grund auf neu"
Erstellen Sie LCD-Spiele (16x2) mit Raspberry Pi und Python
Erstellen Sie eine Authentifizierungsfunktion mit django-allauth und CustomUser in Django
Erstellen einer Todo-App mit Django ① Erstellen Sie eine Umgebung mit Docker
[Python Kivy] So erstellen Sie mit pyinstaller eine exe-Datei
So erstellen Sie einen Datenrahmen und spielen mit Elementen mit Pandas
[Django] Memo zum Erstellen einer Umgebung von Django + MySQL + Vue.js [Python]
Übersicht über die virtuelle Python-Umgebung und deren Erstellung
Ich habe versucht, einen Artikel mit SQL Alchemy auf Wiki.js zu erstellen
Ich habe mir eine Möglichkeit ausgedacht, ein 3D-Modell aus Fotos zu erstellen. Teil 01 Erstellen einer Umgebung
Ich habe versucht, eine Umgebung von MkDocs unter Amazon Linux zu erstellen
Versuchen Sie, mit angr + bingraphvis einen Ausführungspfaddifferenz-Viewer zu erstellen
Versuchen Sie, eine Python-Umgebung mit Visual Studio Code & WSL zu erstellen
Erstellen Sie mit Vagrant (Ubuntu 16.04) eine Umgebung für Django x Apache x mod_wsgi.
Ich habe versucht, Bulls and Cows mit einem Shell-Programm zu erstellen
Erstellen Sie mit GCP + Docker + Jupyter Lab eine beliebige Umgebung für maschinelles Lernen
So erstellen Sie eine Python- und Jupyter-Ausführungsumgebung mit VSCode
Erstellen Sie eine Altersgruppe mit Pandas
Erstellen einer Umgebung mit pyenv und pyenv-virtualenv
[Für Anfänger] Schritte zum Erstellen von benutzerdefinierten Alexa-Fähigkeiten und zum Verknüpfen von Konten mit dem Benutzerpool von Cognito
Herausforderung beim Erstellen eines Zeitachsenlistenberichts mit der Toggl-API und Python
Vorgehensweise zum Erstellen einer virtuellen Python-Umgebung mit VS-Code unter Windows
[Python] Erstellen Sie einen Linebot, um den Namen und das Alter auf das Bild zu schreiben
Bereiten Sie eine Umgebung zum Berühren von Dateien im Grib2-Format mit Python vor (Docker Edition).
Erstellen Sie eine Python3-Umgebung mit pyenv auf einem Mac und zeigen Sie NetworkX-Diagramme an
Ich möchte ein Ubuntu Chrome-Benutzerprofil nur mit Colab erstellen
(Hinweis) Eine Webanwendung, die TensorFlow verwendet, um empfohlene Songnamen abzuleiten. [Erstellen Sie eine Ausführungsumgebung mit Docker-Compose.]
So bereiten Sie mit pyenv-virtualenv unter Amazon Linux eine Umgebung mit unterschiedlichen Python-Versionen und -Paketen für jedes Projekt vor
Erstellen Sie eine Anwendung, indem Sie mit Pygame klassifizieren
[Python] Erstellen einer Umgebung mit Anaconda [Mac]
Ändern Sie die Python 64-Bit-Umgebung mit Anaconda in eine 32-Bit-Umgebung
Erstellen Sie mit PySimpleGUI einen Bildverarbeitungs-Viewer
Hinweise beim Erstellen einer Umgebung mit Python
[Python] Erstellen Sie mit Anaconda eine virtuelle Umgebung
Erstellen Sie schnell eine Excel-Datei mit Python #python
Fraktal zum Erstellen und Spielen mit Python
Erstellen Sie mit Docker eine Python + uWSGI + Nginx-Umgebung
Erstellen und entschlüsseln Sie Caesar-Code mit Python
Erstellen Sie mit Django Updateview einen Update-Bildschirm