Python setuptools переопределяет версию из командной строки

88
8

Я создаю непрерывную систему доставки для проекта python, и я пытаюсь выяснить, как установить строку ENTIRE версии сборки проекта через egg_info.


Я использую thinkworks GO, который имеет встроенную метку отслеживания версии GO_PIPELINE_LABEL. Я хотел бы вызвать команду build_tools egg building с этой версией в качестве аргумента, полностью переопределяющего версию в setup.py.


например:


GO_PIPELINE_LABEL='1.2.3.4' python setup.py egg_info --tag-build=$GO_PIPELINE_LABEL bdist_egg

похоже, приводит к


'dist/myproject-0.0.01.2.3.4-py2.7.egg' 

Кажется, что он всегда поддерживает версию setup.py и командную строку. Моя setup.py выглядит так:


import os
from setuptools import setup, find_packages
from setuptools.command.install import install

ROOT_DIR = os.path.dirname(__file__)
SOURCE_DIR = os.path.join(ROOT_DIR)

# python setup.py egg_info -rb14 bdist_egg rotate -m.egg -k5
# python setup.py egg_info --tag-build=1.2.3.4 bdist_egg

version = ''

setup(name='myproject',
version=version,
description='baa',
author='Me',
author_email='irrelevant@domain.com',
packages=['submodule', 'another.submodule'],
package_data = {
'': ['*.xsd'],
},
install_requires=['cmd2',
'dnspython',
'ordereddict',
'prettyprint',
'pycontrol',
'simplejson',
'suds',
'pyparsing<2.0.0',
'urllib3',
'lxml',
]
)


Я попытался обнулить/удалить переменную версии в моей setup.py, но все, что мне кажется, приводит к конкатенации значений версии, а нуль, похоже, равен 0.0.0. Кто-нибудь знает, как я могу использовать setup_tools и установить строку версии?


Спасибо,
К

спросил(а) 2013-11-07T12:00:00+04:00 7 лет, 7 месяцев назад
1
Решение
-5

Один параметр - это параметр синтаксического разбора и установка версии, как показано ниже, перед вызовом setup

from optparse import OptionParser
parser = OptionParser("")
parser.add_option("--tag-build", dest="version")
(info,a)=parser.parse_args()
version = info.version
print "version is ", version

ответил(а) 2014-04-25T13:33:00+04:00 7 лет, 1 месяц назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема