[PKG-Openstack-devel] [MoM] Packaging manila

Andreas Tille andreas at an3as.eu
Sun May 3 06:26:24 UTC 2015


Hi Thomas,

thanks for helping out with the MoM project.

On Sat, May 02, 2015 at 11:57:54PM +0200, Thomas Goirand wrote:
> >>The script uploads the local git repository on Alioth.  So I needed to
> >>create my local Manila, first.
> >>Therefore, I tried different ways for creating initial commit on Manila
> >>repo.
> >>I could choose between 1) last version of Manila on github (tag:
> >>2015.1.0rc1)
> 
> Yes, this is what you should do.

Are you sure about rc1?  Upstream has rc2 yet.
 
> >2) Manila source code on Vivid, and 3) the last uploaded
> >>version on Manila (which James had mentioned it on the other e-mail).
> 
> Don't use Ubuntu as Debian's upstream. Please use upstream code from
> upstream repository:

Good.  That also was my advise.  That's why I would use the latest
upstream.
 
> >Please always keep in mind that I do not know the relation between the
> >launchpad and the github, but *I* consider it good practice to use the
> >version that is released by upstream and as far as I can see upstream is
> >at github.
> 
> Nearly! Github is only a place where there's a copy from
> git.openstack.org. I often use github as it's faster to download
> form there, but using git.openstack.org is also ok.

Thanks for the clarification.

> >If you do
> >
> >  $ uscan --verbose --force-download
> 
> PLEASE NO !!!!!!! We're using git tag packaging. So don't get any
> tarball involved here. Just git clone from github, and do:
> 
> ./debian/rules gen-orig-xz
> 
> If you have a correct debian/changelog and debian/rules, then
> openstack-pkg-tools will generate the orig.tar.xz for you correctly.

OK.  However, I think the debian/watch file should be fixed anyway to
report the latest upstream version.  Verifying this by using

   uscan --verbose --report

should be done at least (and should be in sync what we are packaging).
 
> >I *personally* hate dh-make since it leaves you alone with a lot of
> >useless templates you need to delete afterwards.
> 
> Same over here. Using what's already done in the cinder package
> seems a much better idea, since Manila is based on Cinder if I'm not
> mistaking.

+1
 
> >I'd (strongly) recommend to start from this since this is most probably
> >the best way to start from.
> 
> I'd very much prefer using Cinder as a base.
> 
> >>if iI copy ubuntu-Manila debian dir,
> >>is it needed to change some thing like control file, changelog, ...?
> 
> Yes. We're not packaging the same way. The debian/control
> dependencies may be adapted for Trusty, but not for Sid / Jessie.
> The debian/rules needs to be adapted for using the tag-based
> packaging style too (see what's on top of Cinder's debian/rules for
> example).

Thanks for the hint.

> Don't use the tarball downloaded via uscan. Just generate one using:
> 
> ./debian/rules gen-orig-xz
> 
> once you have a correct debian/changelog for which the version
> matches the tag which you wish to package.

As hint for Malihe:  This target does only exist if you add

include /usr/share/openstack-pkg-tools/pkgos.make

to the rules file (as it is done in debian/rules of cinder).
 
> I insist: please don't do this. All my tooling, including the
> automated build using jenkins, are using this git tag thing. It's
> also well explained on http://openstack.alioth.debian.org/ (there's
> even a HUGE snapshot of the pkgos.make which is included in each
> package, with the command for generating the orig.tar.xz... you
> can't miss that one!). If you miss some info there, let me know, and
> I'll try to explain better.

Thanks for your intent to help.  That's really appreciated.
 
> On http://openstack.alioth.debian.org/, there's a section with as title:
> 
> "Once your done: uploading to Alioth with correct rights"
> 
> which explains the steps. Basically, the pkgos-alioth-new-git
> creates a bare clone of the git repository on your laptop, it makes
> a tarball out of it, uploads that to Alioth with scp, extract it
> there, then fixes the perms as explained in the page above...

Malihe, could you please confirm that you are able to follow all this?
 
> >    git tag 2015.1.0_rc1 2015.1.0rc1
> >
> >what we want to write here.  Please note that I have currently no clone
> >on my machine - may be the upstream tag is different - adapt if needed.
> 
> All correct. Now we don't need retagging, as 2015.1.0 is out anyway.

Ahh, that's correct.  The watch file I suggested now reports:

...
Newest version on remote site is 2015.1.0, local version is 2015.1~b2
 => Newer version available from
    https://github.com/openstack/manila/archive/2015.1.0.tar.gz

So the question I now have is:  How to pull this from upstream.  My
repository now looks like:

$ cat .git/config
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = ssh://git.debian.org/git/openstack/manila.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "debian/kilo"]
        remote = origin
        merge = refs/heads/debian/kilo


Probably I have mixed this up due to my poor understanding.  I'd like to
pull from upstream the latest tag (2015.1.0) and push the changes to
git.debian.org.  Could you please explain how to do this properly?

Kind regards and thanks for your help

       Andreas.

-- 
http://fam-tille.de



More information about the Openstack-devel mailing list