用buildout來構建python專案

2021-09-05 12:40:22 字數 1908 閱讀 4824

buildout 的中文文件非常稀少,這裡有篇blog,抄一些東西過來

demo

假設你有乙個專案newproject,從來用過buildout,安裝什麼的就不說了

cd newproject

buildout init

wget -o bootstrap.py

python bootstrap.py

此時你可以看到生成了一些目錄:eggs,develop-eggs,bin,parts等,先不管

vim buildout.cfg

將下面的東西加到 [buildout] 段, 可以新建乙個versions.cfg來做以前pip時requirements.txt的作用

show-picked-versions=true

extends = versions.cfg

update-versions-file = versions.cfg

versions = versions

例如專案依賴為ipython,vim versions.cfg

[versions]

ipython = 5.1.0

vim buildout.cfg,新增乙個develop = 的玩意兒,假設開發的東西是個包,那麼目錄為.,並且需要寫乙個setup.py,否則執行bin/buildout會報錯

[buildout]

develop = .

隨便先寫乙個簡單的setup.py, 其中package_dir=必寫,src為你專案的**根目錄,當然如果有依賴包的話需要些install_requires

# -*- coding: utf-8 -*-

from setuptools import find_packages, setup

setup(

name='buildout_demo',

version='0.0.1',

license='mit',

author='',

author_email='',

description='buildout demo',

url='',

packages=find_packages(exclude=['tests']),

package_data=,

package_dir=,

)

vim buildout.cfg, 注意這裡面一定要有乙個part =的東西

新增part

[buildout]

parts = tools

[tools]

recipe = zc.recipe.egg

interpreter = ipython

eggs = ipython

[ls_root]

recipe = plone.recipe.command

command = ls -al /

update-command = $

其中,每個part都必須有recipe這個玩意兒,而recipe則可以認為是buildout一些工作流的命令,例如zc.recipe.egg是把包裝到egg目錄,plone.recipe.command是在buildout時可以執行的某些命令, 可以在 pypi 搜尋 buildout recipe列表

用 npm scripts 來構建前端專案的嘗試

2016 04 02 23 20 12 1341瀏覽 最近讀了 why i left gulp and grunt for npm scripts。讀完後,覺的這文章寫的相當不錯,就決定嘗試下。下面先簡單介紹下 npm scripts。什麼是 npm scripts node.js 專案下一般都有乙...

Linux上用anaconda安裝pytorch

pytorch是乙個非常優雅的深度學習框架。使用anaconda可以非常方便地安裝pytorch。下面我介紹一下用anaconda安裝pytorch的步驟。bash anaconda shconda install pytorch torchvision cuda75 c pytorchcuda8....

使用SQLAlchemy來構建表

from datetime import datetime from flask sqlalchemy import sqlalchemy from sqlalchemy.dialects.mysql import tinyint,bigint,varchar,char,datetime,integ...