Quantcast

Debian Repository or Deployment Hooks

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Debian Repository or Deployment Hooks

Nepomuk Seiler
Hi,

I'm fairly new to Nexus and have the following use case:

.: I want to turn a specifyed repo to a apt-repo, like the yum plugin does.

The ticket for this request has been open for quite some time, so
I'm looking for an alternative.

Is there a way to hook in, when something is released in a repository?
And then call some bash commands (namly reprepo) to add these
debian files to another repository?

thanks in advance,
Muki

--
intelliAd Media GmbH

Sendlinger Str. 7
80331 München
T +49 (0)89 - 15 90 490 - 26
F +49 (0)89 - 15 90 490 - 33
E [hidden email]
W www.intelliad.de

Follow us:
www.intelliad.de/blog
www.facebook.com/intelliAd
www.twitter.com/intelliAd

Sitz der Gesellschaft: München
Geschäftsführer: Wolfhart Fröhlich, Tobias Kiessling, Mischa Rürup
Registergericht: München, HRB179458
USt. Id. DE253551317

Diese E-Mail kann vertrauliche und/oder rechtlich geschützte Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser E-Mail ist nicht gestattet.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Debian Repository or Deployment Hooks

Tamás Cservenák
Hi Muki,

Bad news is, that currently, there is no "out of box" hook for this. You cannot do this without a bit of coding (creating a Nexus plugin).
But the good news is that the _minimal_ plugin you'd need (to listen for deploy events and start a CLI process of some tool) would be fairly trivial.

In Nexus there is no event fired for "release", only "deploy" in release repositories (that implicitly means "release"). Still, these events are fired per each file, so you don't get "boundaries" like GA being released, you will simply get a series of deploy events for all the files being deployed to release repository (event for files like maven metadata!).

One possibility would be for an "apt light support" to create a capability, that once get registered with some hosted repository, it simply listens for deploys and do what it has to do. Still, you'd need to be a bit smart (similar like SCM triggers in some CI server), to listen for these events but run the job when it's "silence" for some time after deploy events. As in case of a deploy, you will get a bunch of deploy events (one for each file, so tens, hundreds or maybe even thousands, depending on the project size being deployed), and you'd want to fire the job AFTER all the deploys did happen (like "run when deploy events are fired and there is a 5 minute silence AFTER")... Still, this would be not ideal, as your Maven project might have modules that build/test/deploy longer than 5 minutes, so overall deployment might trigger multiple runs....

HTH,
~t~


On Tue, Jan 14, 2014 at 12:02 PM, Nepomuk Seiler <[hidden email]> wrote:
Hi,

I'm fairly new to Nexus and have the following use case:

.: I want to turn a specifyed repo to a apt-repo, like the yum plugin does.

The ticket for this request has been open for quite some time, so
I'm looking for an alternative.

Is there a way to hook in, when something is released in a repository?
And then call some bash commands (namly reprepo) to add these
debian files to another repository?

thanks in advance,
Muki

--
intelliAd Media GmbH

Sendlinger Str. 7
80331 München
T <a href="tel:%2B49%20%280%2989%20-%2015%2090%20490%20-%2026" value="+4989159049026" target="_blank">+49 (0)89 - 15 90 490 - 26
F <a href="tel:%2B49%20%280%2989%20-%2015%2090%20490%20-%2033" value="+4989159049033" target="_blank">+49 (0)89 - 15 90 490 - 33
E [hidden email]
W www.intelliad.de

Follow us:
www.intelliad.de/blog
www.facebook.com/intelliAd
www.twitter.com/intelliAd

Sitz der Gesellschaft: München
Geschäftsführer: Wolfhart Fröhlich, Tobias Kiessling, Mischa Rürup
Registergericht: München, HRB179458
USt. Id. DE253551317

Diese E-Mail kann vertrauliche und/oder rechtlich geschützte Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser E-Mail ist nicht gestattet.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Debian Repository or Deployment Hooks

Nepomuk Seiler
Hi Tamás,

Thanks for all the hints :) I just need one more. Is there any good
source of "how to develope a nexus plugin". Where some APIs are
described. Most of the tutorials I found are outdated or very brief.

When I got something, I will open source it on Github.

cheers,
Muki


Am 14.01.2014 12:14, schrieb Tamás Cservenák:
Hi Muki,

Bad news is, that currently, there is no "out of box" hook for this. You cannot do this without a bit of coding (creating a Nexus plugin).
But the good news is that the _minimal_ plugin you'd need (to listen for deploy events and start a CLI process of some tool) would be fairly trivial.

In Nexus there is no event fired for "release", only "deploy" in release repositories (that implicitly means "release"). Still, these events are fired per each file, so you don't get "boundaries" like GA being released, you will simply get a series of deploy events for all the files being deployed to release repository (event for files like maven metadata!).

One possibility would be for an "apt light support" to create a capability, that once get registered with some hosted repository, it simply listens for deploys and do what it has to do. Still, you'd need to be a bit smart (similar like SCM triggers in some CI server), to listen for these events but run the job when it's "silence" for some time after deploy events. As in case of a deploy, you will get a bunch of deploy events (one for each file, so tens, hundreds or maybe even thousands, depending on the project size being deployed), and you'd want to fire the job AFTER all the deploys did happen (like "run when deploy events are fired and there is a 5 minute silence AFTER")... Still, this would be not ideal, as your Maven project might have modules that build/test/deploy longer than 5 minutes, so overall deployment might trigger multiple runs....

HTH,
~t~


On Tue, Jan 14, 2014 at 12:02 PM, Nepomuk Seiler <[hidden email]> wrote:
Hi,

I'm fairly new to Nexus and have the following use case:

.: I want to turn a specifyed repo to a apt-repo, like the yum plugin does.

The ticket for this request has been open for quite some time, so
I'm looking for an alternative.

Is there a way to hook in, when something is released in a repository?
And then call some bash commands (namly reprepo) to add these
debian files to another repository?

thanks in advance,
Muki

--
intelliAd Media GmbH

Sendlinger Str. 7
80331 München
T <a moz-do-not-send="true" href="tel:%2B49%20%280%2989%20-%2015%2090%20490%20-%2026" value="+4989159049026" target="_blank">+49 (0)89 - 15 90 490 - 26
F <a moz-do-not-send="true" href="tel:%2B49%20%280%2989%20-%2015%2090%20490%20-%2033" value="+4989159049033" target="_blank">+49 (0)89 - 15 90 490 - 33
E [hidden email]
W www.intelliad.de

Follow us:
www.intelliad.de/blog
www.facebook.com/intelliAd
www.twitter.com/intelliAd

Sitz der Gesellschaft: München
Geschäftsführer: Wolfhart Fröhlich, Tobias Kiessling, Mischa Rürup
Registergericht: München, HRB179458
USt. Id. DE253551317

Diese E-Mail kann vertrauliche und/oder rechtlich geschützte Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser E-Mail ist nicht gestattet.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]



Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Debian Repository or Deployment Hooks

Tamás Cservenák
Hi,

well, best is to look at the sources (it's all OSS) :)

So, here is a handful of resources:

and naturally the Nexus itself, as it also contains a bunch of plugins


HTH,
~t~


On Thu, Jan 16, 2014 at 9:28 AM, Nepomuk Seiler <[hidden email]> wrote:
Hi Tamás,

Thanks for all the hints :) I just need one more. Is there any good
source of "how to develope a nexus plugin". Where some APIs are
described. Most of the tutorials I found are outdated or very brief.

When I got something, I will open source it on Github.

cheers,
Muki


Am <a href="tel:14.01.2014" value="+3614012014" target="_blank">14.01.2014 12:14, schrieb Tamás Cservenák:
Hi Muki,

Bad news is, that currently, there is no "out of box" hook for this. You cannot do this without a bit of coding (creating a Nexus plugin).
But the good news is that the _minimal_ plugin you'd need (to listen for deploy events and start a CLI process of some tool) would be fairly trivial.

In Nexus there is no event fired for "release", only "deploy" in release repositories (that implicitly means "release"). Still, these events are fired per each file, so you don't get "boundaries" like GA being released, you will simply get a series of deploy events for all the files being deployed to release repository (event for files like maven metadata!).

One possibility would be for an "apt light support" to create a capability, that once get registered with some hosted repository, it simply listens for deploys and do what it has to do. Still, you'd need to be a bit smart (similar like SCM triggers in some CI server), to listen for these events but run the job when it's "silence" for some time after deploy events. As in case of a deploy, you will get a bunch of deploy events (one for each file, so tens, hundreds or maybe even thousands, depending on the project size being deployed), and you'd want to fire the job AFTER all the deploys did happen (like "run when deploy events are fired and there is a 5 minute silence AFTER")... Still, this would be not ideal, as your Maven project might have modules that build/test/deploy longer than 5 minutes, so overall deployment might trigger multiple runs....

HTH,
~t~


On Tue, Jan 14, 2014 at 12:02 PM, Nepomuk Seiler <[hidden email]> wrote:
Hi,

I'm fairly new to Nexus and have the following use case:

.: I want to turn a specifyed repo to a apt-repo, like the yum plugin does.

The ticket for this request has been open for quite some time, so
I'm looking for an alternative.

Is there a way to hook in, when something is released in a repository?
And then call some bash commands (namly reprepo) to add these
debian files to another repository?

thanks in advance,
Muki

--
intelliAd Media GmbH

Sendlinger Str. 7
80331 München
T <a href="tel:%2B49%20%280%2989%20-%2015%2090%20490%20-%2026" value="+4989159049026" target="_blank">+49 (0)89 - 15 90 490 - 26
F <a href="tel:%2B49%20%280%2989%20-%2015%2090%20490%20-%2033" value="+4989159049033" target="_blank">+49 (0)89 - 15 90 490 - 33
E [hidden email]
W www.intelliad.de

Follow us:
www.intelliad.de/blog
www.facebook.com/intelliAd
www.twitter.com/intelliAd

Sitz der Gesellschaft: München
Geschäftsführer: Wolfhart Fröhlich, Tobias Kiessling, Mischa Rürup
Registergericht: München, HRB179458
USt. Id. DE253551317

Diese E-Mail kann vertrauliche und/oder rechtlich geschützte Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser E-Mail ist nicht gestattet.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]




Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Debian Repository or Deployment Hooks

Manfred Moser-4
In reply to this post by Tamás Cservenák
Muki,

You might also want to look at the nexus-apt-plugin. You might have to
update it and adapt it to your needs in terms of features and Nexus
version but it should give you a good start.

https://github.com/sannies/nexus-apt-plugin

manfred

> Hi Muki,
>
> Bad news is, that currently, there is no "out of box" hook for this. You
> cannot do this without a bit of coding (creating a Nexus plugin).
> But the good news is that the _minimal_ plugin you'd need (to listen for
> deploy events and start a CLI process of some tool) would be fairly
> trivial.
>
> In Nexus there is no event fired for "release", only "deploy" in release
> repositories (that implicitly means "release"). Still, these events are
> fired per each file, so you don't get "boundaries" like GA being released,
> you will simply get a series of deploy events for all the files being
> deployed to release repository (event for files like maven metadata!).
>
> One possibility would be for an "apt light support" to create a
> capability,
> that once get registered with some hosted repository, it simply listens
> for
> deploys and do what it has to do. Still, you'd need to be a bit smart
> (similar like SCM triggers in some CI server), to listen for these events
> but run the job when it's "silence" for some time after deploy events. As
> in case of a deploy, you will get a bunch of deploy events (one for each
> file, so tens, hundreds or maybe even thousands, depending on the project
> size being deployed), and you'd want to fire the job AFTER all the deploys
> did happen (like "run when deploy events are fired and there is a 5 minute
> silence AFTER")... Still, this would be not ideal, as your Maven project
> might have modules that build/test/deploy longer than 5 minutes, so
> overall
> deployment might trigger multiple runs....
>
> HTH,
> ~t~
>
>
> On Tue, Jan 14, 2014 at 12:02 PM, Nepomuk Seiler
> <[hidden email]>wrote:
>
>> Hi,
>>
>> I'm fairly new to Nexus and have the following use case:
>>
>> .: I want to turn a specifyed repo to a apt-repo, like the yum plugin
>> does.
>>
>> The ticket for this request has been open for quite some time, so
>> I'm looking for an alternative.
>>
>> Is there a way to hook in, when something is released in a repository?
>> And then call some bash commands (namly reprepo) to add these
>> debian files to another repository?
>>
>> thanks in advance,
>> Muki
>>
>> --
>> intelliAd Media GmbH
>>
>> Sendlinger Str. 7
>> 80331 München
>> T +49 (0)89 - 15 90 490 - 26
>> F +49 (0)89 - 15 90 490 - 33
>> E [hidden email]
>> W www.intelliad.de
>>
>> Follow us:
>> www.intelliad.de/blog
>> www.facebook.com/intelliAd
>> www.twitter.com/intelliAd
>>
>> Sitz der Gesellschaft: München
>> Geschäftsführer: Wolfhart Fröhlich, Tobias Kiessling, Mischa Rürup
>> Registergericht: München, HRB179458
>> USt. Id. DE253551317
>>
>> Diese E-Mail kann vertrauliche und/oder rechtlich geschützte
>> Informationen
>> enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
>> irrtümlich erhalten haben, informieren Sie bitte sofort den Absender
>> und
>> vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte
>> Weitergabe dieser E-Mail ist nicht gestattet.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Loading...