i am trying ...
loadRecipe('existingpackage') class NewPackage(PackageRecipe): name = 'newpackage-test' p = existingpackage.version print p
but getting error, that existingpackage is not defined
i am trying ...
loadRecipe('existingpackage') class NewPackage(PackageRecipe): name = 'newpackage-test' p = existingpackage.version print p
but getting error, that existingpackage is not defined
因为 conary 就像(几乎)python 中的编码:
p = .version print '你的包的版本号:' + p rhs = p.split("_",1) print '最新的你的包的变更集:' + rhs[1]
你说得对,loadRecipe 需要包的名称。但是要访问配方中的信息,您应该使用那里定义的类,而不是包名或配方文件名。(这也很自然。有时食谱可以定义多个类。)
例如,在一个firefox插件中,我想要firefox的版本,以便插件可以安装到正确的位置。
loadRecipe('firefox')
class FirefoxPackageSearch(PackageRecipe):
[snip]
def setup(r):
[snip]
r.macros.ff_version = '.'.join(FireFox.version.split('.')[:2])
我加载了 Firefox 配方并使用Firefox.version来获得我想要的。