Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have some source code in an SVN repo which is updated daily.

Is there a way to push this source package into a PPA that would update from the SVN trunk and build the new packages for me?

Or do I need my own mechanism for pushing new source packages for every update from trunk?

share|improve this question
4  
If the answer below answers your question please consider accepting it. –  N.N. Jul 18 '11 at 16:36
add comment

1 Answer 1

up vote 16 down vote accepted

This can easily be done on Launchpad. What you are looking for is called a source package recipe.

The way to set this up and get it building the source every day is to first register the project on Launchpad if it isn't already. Once that is complete, go to the project page and click "configure project branch":

enter image description here

Now you need to tell Launchpad where the SVN repository is. Click "Import a branch hosted somewhere else", select 'SVN', and enter the URL of the SVN branch. Give the branch a name and click update:

enter image description here

Now you have the contents of the SVN repository being imported into Launchpad every so often (usually more than once per day). The next step is to create a source package recipe that builds the package from source every day. There are basically two options here:

  • Store the Debian packaging files in the SVN repository - the files should be in a folder called debian.
  • Create a separate Launchpad branch that contains the Debian packaging files and have Launchpad merge them together before it builds the package.

Since the first option is the easiest, I'd recommend going that route. To set up the daily builds, head to your project's page on Launchpad and click the "code" link at the very top. Click on the branch that contains the source code and then click "create packaging recipe":

enter image description here

From there, simply accept all of the defaults and click "create recipe". That's it! Your packages will be built each day (assuming there are new revisions) and placed in the PPA you specified when you created the recipe.

References:

share|improve this answer
    
Ok, thanks for your precise reply. Very well edited. Please tell me, how to configure that source package to get build for all distroseries?? –  Manveru Jul 10 '11 at 11:36
    
@Man: When you create the recipe, you will be asked which Ubuntu releases you want the packages built for. –  Nathan Osman Jul 10 '11 at 19:15
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.