Mailinglist Archive: opensuse-packaging (129 mails)

< Previous Next >
Re: [opensuse-packaging] Packaging good practices
On Fri, 22 Jan 2016 16:57:35 +0100
"Zbigniew Reszela" <zreszela@xxxxxxxx> wrote:

Hello again,

First of all many thanks to all of you for your fast replies.
And sorry for dropping a message without a subject.
I tried to recompile all your hints below, and replied with more
questions in between them.
I have already some feeling about some of these issues, but I wanted
to ensure myself with the opinion of experts.
I hope that I'm not abusing your mailing list with this...

On 01/21/2016 05:03 PM, Darin Perusich wrote:
You can setup a private OBS instance and manage all your "internal"
packages and packaging there for any of the supported distro's. In
the past I ran a private OBS instance and had packages for a few
openSUSE versions, SLES, RHEL/CentOS. You can link the private
instance, package and or projects, against the public service for
dependency handling, it's super flexible and will simplify
packaging immensely.

https://en.opensuse.org/openSUSE:Build_Service_private_instance
--
Later,
Darin

After reading a little bit about the OpenBuildService it looks that
linking and layering features are very powerfull.
And the possibility of linking dependencies between the openSUSE's
build service and the private OpenBuildService is definitily an
advantage. Does the OpenBuildService provide the web interface
similar to openSUSE's build service? Or it works only with the osc
commands?

It works with both. In SUSE we use it also for building our enterprise
product that have to be signed by our key. If you deploy your own
OpenBuildService it looks very similar to one in build.opensuse.org
just without opensuse branding.


On 01/21/2016 08:49 PM, Axel Braun wrote:
Am Donnerstag, 21. Januar 2016, 16:34:46 schrieb Zbigniew Reszela:
Initially we do not foresee to publish our packages to the
distribution, but maybe in the future we would like to do that for
some of our projects. In your portal we have found several
recommendation to use the OBS [2]. But our understanding is that
OBS is just for the packages aimed to be public. We have not found
information on how to build locally packages apart of a link to
the Fedora “How to create RPM packages” [3]. There is also a
possibility to setup our private OBS system, but maybe it is too
complicated solution for what we need right now.
next to what already was said - you can use the openSUSE build
server and nevertheless build packages locally, without the need to
publish them.

An own OBS instance would nevertheless be the more safe way

Some questions regarding building packages locally:
* Having an account in the openSUSE's build service is still a
requirement?

yes, as you need to do dependency resolution and possible download on
server ( like you have your secret project S and it depends on boost,
so it read from spec what is required and install it to your local
chroot.

* Having the source and spec file in the openSUSE's build service is a
requirement?

no, as you can see below you can have empty dummy_package and you can
do osc build after copying your files. Unless you call osc commit, it
won't be send to server. ( it is same like svn for example )

* By not publishing them you refer to not publishing the output
package to the repository provided by the openSUSE's build service?

you can prevent publishing in repository, so it means, if you send
sources to server, server can build it, but result of build is not
available in public repository ( but can be downloaded via API ).



On 01/21/2016 10:13 PM, Greg Freemyer wrote:
On Thu, Jan 21, 2016 at 10:34 AM, Zbigniew Reszela
<zreszela@xxxxxxxx>
wrote:

Initially we do not foresee to publish our packages to the
distribution, but maybe in the future we would like to do that
for some of our
projects.
In your portal we have found several recommendation to use the
OBS [2]. But our understanding is that OBS is just for the
packages aimed to be public.
I disagree.

When you get a OBS login you automatically get a home project (and
any sub-projects you create).

Within the home project you have to make no guarantees of support
etc to anyone else. You establish your own rules for availability,
support, etc. If anyone uses your packages, it is a buyer beware
situation unless they talk to you and get a support commitment.

The only fundamental reason I know of not to use your home project
for an internal package management system is if any of these are
true:

- The packages are not opensource - in general OBS is available to
host packaging of opensource packages only

- The packages are illegal in Germany (hacking tools mostly)

- Despite a package being opensource, it contains code that violates
German or US copyright laws

If none of those are an issue then, the public OBS server should
work
for you.

If any of those are an issue, you can still consider operating a
private instance of OBS at your university. I have no experience
with that, but a lot of people have and the full OBS system is
available as an appliance for easy installation (as I understand).

Hope that helps,
Greg

Some questions about the use of home project:
* Is the home project and its packages (source and spec file) visible
to the rest of the openSUSE's build service users? or maybe even
public in the Internet?


yes, it is visible. That is reason why you cannot use it for
copyrighted or law breaking projects.


On 01/21/2016 10:53 PM, Malcolm wrote:
On Thu 21 Jan 2016 04:13:33 PM CST, Greg Freemyer wrote:

On Thu, Jan 21, 2016 at 10:34 AM, Zbigniew Reszela
<zreszela@xxxxxxxx> wrote:

Initially we do not foresee to publish our packages to the
distribution, but maybe in the future we would like to do that for
some of our projects. In your portal we have found several
recommendation to use the OBS [2]. But our understanding is that
OBS is just for the packages aimed to be public.

I disagree.

When you get a OBS login you automatically get a home project (and
any sub-projects you create).

Within the home project you have to make no guarantees of support
etc to anyone else. You establish your own rules for availability,
support, etc. If anyone uses your packages, it is a buyer beware
situation unless they talk to you and get a support commitment.

The only fundamental reason I know of not to use your home project
for an internal package management system is if any of these are
true:

- The packages are not opensource - in general OBS is available to
host packaging of opensource packages only

- The packages are illegal in Germany (hacking tools mostly)

- Despite a package being opensource, it contains code that
violates German or US copyright laws

If none of those are an issue then, the public OBS server should
work for you.

If any of those are an issue, you can still consider operating a
private instance of OBS at your university. I have no experience
with that, but a lot of people have and the full OBS system is
available as an appliance for easy installation (as I understand).

Hope that helps,
Greg
--
Greg Freemyer
www.IntelligentAvatar.net
Hi
There are a number of packages that I build locally via osc (as in
use OBS package resources) that never appear in my home projects
(as in checked in), just reside as a generic package name on OBS and
disabled... I use a local repo to provide to my systems.... ;)


If I understand well, you have your openSUSE's build service account
hence you have the home project.
You have also defined the packages there. But you use the "osc build"
command to build the packages locally and upload the output packages
to your local repo.
Do you still need to go through the openSUSE's build service to
update the source?

it basically works in a way, that you copy files to your dummy
checkout, call `osc build` and copy resulted rpms to your target
location.


Cheers,
Zibi


In general my recommendation is if you have more then more project and
if it have dependencies between it is easier to use OpenBuildService.
Public one on openSUSE or private one, what fits your needs.

Josef
--
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-packaging+owner@xxxxxxxxxxxx

< Previous Next >