Ticket #7817 (assigned Feature Request)
Improve release procedures for add-ons on plone.org
| Reported by: | limi | Owned by: | tarek |
|---|---|---|---|
| Priority: | major | Milestone: | Ongoing |
| Component: | Infrastructure | Version: | |
| Keywords: | focusarea | Cc: | tarek, grahamperrin |
Description (last modified by tarek) (diff)
Document a release process, and create release tools for packaging and uploading products from the command line.
- Provide a tool that contains changes in distutils for Python 2.4 and 2.5, so it can register and upload to several PyPI-like servers. Change distutils in Python 2.6 accordingly
- Pypi support in PloneSoftwareCenter
- Write a guideline
- work on plone.org PSC migration step
Change History
comment:3 Changed 4 years ago by tarek
- Owner changed from regebro to tarek
- Status changed from new to assigned
Steps:
- 02/19 : Provide a tool that contains changes in distutils for Python 2.4 and 2.5, so it can register and upload to several PyPI-like servers.
- 02/23 : Change distutils in Python 2.6 accordingly
- 03/15 : provide a guideline
- ParisSprint : Finish PyPI support in PloneSoftwareCenter
comment:4 Changed 4 years ago by tarek
Step #1 is done, in iw.dist. Which provides two new commands, called 'mupload' and 'mregister'
comment:6 Changed 4 years ago by tarek
For plone.org, I think we should think about a seperated instance for the SoftwareCenter.
The migration process should be transparent since all PSC changes were non-destructive, but we also should consider a file system storage (FileSystemStorage i guess) to store all eggs and tarballs
comment:8 Changed 4 years ago by tarek
Task status: the work is almost finished and I am focusing on making the lasts changes to PSC/Plone.org.
upcoming events
- We are doing a sprint for plone.org with Alex Clark next week end. this is the third one and we're hoping to finish plone.org related work soon.
- I am going to submit a tutorial for Washington DC Plone Symposium in October, explaining how to write, release and distribute plone packages using buildout and the set of tools built. I will wrapup documentation for the community and publish it at plone.org.
I am expecting a lot of feedback from the community during this event if my tutorial is accepted.
Task details
- change distutils so it handle multiple servers: DONE, available in Python trunk. See http://docs.python.org/dev/distutils/packageindex.html
- provide a package with distutils enhancements, for Python 2.4 and 2.5: DONE, available in the collective. See: http://svn.plone.org/svn/collective/collective.dist.
- provide a tutorial on how to use collective.dist: DONE. available in collective.dist, see http://pypi.python.org/pypi/collective.dist
- work on PloneSoftwareCenter to make it support cheeseshop APIs.
- work done:
- works with distutils
- each project can hold several packages, given their distutils id
- now the storage of eggs/tarballs is pluggable and a new storage can be written
as a separate package
- AT/ZODB storage by default
- collective.psc.externalstorage provides ExternalStorage
- collective.psc.blobstorage provides blobstorage
- work left:
- finish the code in the blob storage plugin
- provide migration function when a user move from a storage kind to another
- work done:
- work on plone.org.
- work left: write migration steps, test new.plone.org
- make sur collective.psc.mirroring work nicely with apache
- fix the blob issues (zodb version)
