Hi, I was wondering what the difference between type=mirror and type=stage is.
Is it that:
- a mirror gets its list of package exclusively from its 'bases' and you can't upload to it
- a stage allows you to upload to it and never looks at its list of bases for packages
Or is it something else? I'm seeing the following behavior:
$ devpi index --create one type=stage bases=root/pypi
http://localhost/pypi/root/one:
type=stage
bases=root/pypi
volatile=True
uploadtrigger_jenkins=None
acl_upload=root
$ devpi index --create one type=stage bases=root/pypi
http://localhost/pypi/root/one:
type=stage
bases=root/pypi
volatile=True
uploadtrigger_jenkins=None
acl_upload=root
$ devpi index --create two type=mirror bases=
http://localhost/pypi/root/two:
type=mirror
bases=
volatile=False
Traceback (most recent call last):
File "/usr/local/bin/devpi", line 9, in <module>
load_entry_point('devpi-common==1.2', 'console_scripts', 'devpi')()
File "/usr/local/lib/python2.7/site-packages/devpi/main.py", line 29, in main
return method(hub, hub.args)
File "/usr/local/lib/python2.7/site-packages/devpi/index.py", line 63, in main
return index_create(hub, url, kvdict)
File "/usr/local/lib/python2.7/site-packages/devpi/index.py", line 5, in index_create
index_show(hub, url)
File "/usr/local/lib/python2.7/site-packages/devpi/index.py", line 36, in index_show
ixconfig["uploadtrigger_jenkins"],))
KeyError: 'uploadtrigger_jenkins'
$ devpi use root/two
current devpi index: http://localhost/pypi/root/two/ (logged in as root)
~/.pydistutils.cfg : no config file exists
~/.pip/pip.conf : no config file exists
~/.buildout/default.cfg: no config file exists
always-set-cfg: no
$ devpi list
0x10c-asm
1009558_nester
131228_pytest_1
17MonIP
18-e
1ee
1pass
1to001
2013007_pyh
2C.py
... [Removed huge list a pacakges presumably from root/pypi]
$ devpi use -l
root/pypi bases= volatile=False
root/two bases= volatile=True
root/one bases=root/pypi volatile=True
Why didn't 'root/one' list any packages when it had 'root/pypi' as a base. And, why did 'root/two' list a whole bunch of packages when didn't have any bases? Is a 'mirror' always a mirror of the central pypi server? Can I not have 'root/one' and 'root/two' be stage indexes and 'root/three' be a mirror of just those two and not the central public pypi server? And why did I get that 'uploadtrigger_jenkins' error?