Hi guys,
As we don't have anymore access to the people.apache.org server to push pur source packages and binary packages during a vote, we have to change teh way we process releases. I'll explain how we should now proceed in this mail. There is one common area where we can push packages for test, vote and release : https://dist.apache.org/repos/ash/dist. This area has 3 distinct sub-directories : * dev : for development packages, typically the voted release * test : for nightly builds, or for anything that requires a test * release for the released packages. Here is the global structure of this area : dist.apache.org/repos/asf | +-- dist | +--dev | | | +-- directory | | | +-- apacheds | | | | | +-- 2.0.0-M21 | | | | | +-- 2.0.0-M22 | | | +-- api | | | | | +-- 1.0.0-RC1 | | | +-- escimo | | | +-- fortress | | | +-- kerby | | | +-- mavibot | | | +-- kerby | . | . | (any sub directory that would be needed for another sub-project) | | +--release | | | +-- directory | | | +-- apacheds | | | | | +-- dist | | | | | +-- 2.0.0-M21 | | | +-- api | | | | | +-- dist | | | | | +-- 1.0.0-RC1 | | | +-- escimo | | | +-- fortress | | | +-- kerby | | | +-- mavibot | | | +-- kerby | . | . | (any sub directory that would be needed for another sub-project) | +--test | +-- directory . . . I haven't show all the content of this tree, you can go and check by yourself. So the idea is to move the packages to be voted into a new sub-directory of your project, and to commit it there. It's important to know that this area is managed by SVN, so you will first have to check it out : $ svn co https://dist.apache.org/repos/asf/dist/dev/directory ... $ svn co https://dist.apache.org/repos/asf/dist/release/directory ... etc That may take a while, especially for Studio, which contains a log of packages (and big ones). You can limit what gets checked out to your own project, and not extract the already existing versions. Fpr instance, if you want to checkout the 'api' release part, but not the versions, here is what you should do : dev area : ---------- cd ~/apacheds mkdir -p dist/dev/directory/api cd dist/dev/directory/api svn co --depth empty https://dist.apache.org/repos/dist/dev/directory/api dev release area : -------------- cd ~/apacheds mkdir -p dist/dev/directory/api cd dist/dev/directory/api svn co --depth immediates https://dist.apache.org/repos/dist/release/directory/api release NOTE : the release/ directory has one more level, : release/directory/api/*dist*/1.0.0-RC1 compared to dev/directory/api/1.0.0-RC1, thus the '--depth imediates' instead of '--depth empty' Once you have created those svn checkout on your machine, you can push the packages you create under the 'dev' directory, with the version you will use : dev area : ---------- cd ~/apacheds/dist/dev/directory/api mkdir 1.0.0-RC2 cp <the place where you have generated the packages> 1.0.0-RC2 svn add 1.0.0-RC2 svn ci 1.0.0-RC2 and your are done for the vote. Once the vote has been called, and successfuly closed, you can now move the voted packages in the release area : release area : -------------- cd ~/apacheds/dist/dev/directory/api/dist cp ~/apacheds/dist/dev/directory/api/1.0.0-RC2 . svn add 1.0.0-RC2 svn ci 1.0.0-RC2 and you are done. This is somehow simpler than before, where you had to move the packages to people.apache.org, update your index.html file, then push everything to the dist area. I'm quite sure that all those manipulation can be automated for the next releases... Thanks !
