You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by Zoran Regvart <zo...@regvart.com> on 2017/02/20 14:06:33 UTC

3rd party jars not in Maven central, add them to git repository?

Hi Cameleers,
what do you think about adding 3rd party jars to the git repo (as binary blobs)?

Background: integration tests for Salesforce component require
deployment of customizations to the your Salesforce instance, so in
order to run them you need to make a number of manual steps
beforehand[1].

Salesforce publishes a Migration tool[2] as a set of Ant tasks. These
are packaged as a jar file that is not available on Maven central, so
in order to use them the user needs to download supply the jar to the
Maven build.

I would like to automate that and to prescribe the way of managing
this customizations for future tests, so I think it would be best to
put that jar in our git repository.

I think this would encourage contributions and allow everyone to run
the integration tests, for instance in CI.

The license is very liberal, it just requires the inclusion of the
copyright & disclamer notice.

What do you think?

zoran

[1] https://github.com/apache/camel/tree/master/components/camel-salesforce/camel-salesforce-component#running-the-integration-tests
[2] https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/forcemigrationtool_install.htm
-- 
Zoran Regvart

Re: 3rd party jars not in Maven central, add them to git repository?

Posted by Zoran Regvart <zo...@regvart.com>.
Hi Tadayoshi,
thank you, I think a separate profile and instructions on downloading
the needed jar will be to most pragmatic way to go

zoran

On Tue, Feb 21, 2017 at 7:25 AM, Tadayoshi Sato
<sa...@gmail.com> wrote:
> FWIW, camel-box component has a similar situation with regard to
> integration tests, where it needs some proprietary information to run
> itests. So the component keeps out the itests to a separate Maven profile
> ("box-test") and developers need to run them manually.
> https://github.com/apache/camel/tree/master/components/camel-box

-- 
Zoran Regvart

Re: 3rd party jars not in Maven central, add them to git repository?

Posted by Tadayoshi Sato <sa...@gmail.com>.
Hi Zoran,

As Pontus pointed out, for an Apache project 3rd party jars need to be ASL
compatible in order to include them into the source repository. To my
knowledge, that was the reason why Camel officially doesn't have
camel-paypay component:
https://issues.apache.org/jira/browse/CAMEL-5093

FWIW, camel-box component has a similar situation with regard to
integration tests, where it needs some proprietary information to run
itests. So the component keeps out the itests to a separate Maven profile
("box-test") and developers need to run them manually.
https://github.com/apache/camel/tree/master/components/camel-box

Best regards,
Tadayoshi

On Tue, Feb 21, 2017 at 6:24 AM, Pontus Ullgren <ul...@gmail.com> wrote:

> Hi,
>
> You can always try to incourage Salesforce to do it since ofcourse that
> would be better.
> However failing to convince them there is no problem that you/we do it
> ourself. As I wrote it's beeing done for other projects.
> One example is the JCIFS library used in camel-extra. The official project
> has for a long time refused to publish the artifact to
> maven central so as such we do it ourself as individuals.
>
> I agree it is "wrong" but IMHO it's better, or at least just as wrong, as
> keeping the jars commited into the git repo.
> Both ways will put the coordination/maintance work on the camel project but
> keeping it in a artifact repo makes more sense than in the source repo (at
> least to me).
>
> // Pontus
>
> On Mon, 20 Feb 2017 at 22:02 Zoran Regvart <zo...@regvart.com> wrote:
>
> > Hi Pontus,
> > first of all, thank you :)
> >
> > Yeah, I would love to do that, but it brings along another set of
> > other questions: is it up to me/us or Salesforce to publish the jar in
> > Maven central? And to what coordinates, Camels?
> >
> > That kinda feels more wrong to me :(
> >
> > zoran
> >
> > On Mon, Feb 20, 2017 at 9:48 PM, Pontus Ullgren <ul...@gmail.com>
> wrote:
> > > Hi,
> > >
> > > Would it not be a better solution to publish the jar ourself to maven
> > > central ?
> > > Similare to what SMX project does for other 3rd party libraries that
> are
> > > not osgi compatible bundles ?
> > >
> > > Just my $0.02
> > > // Pontus
> > >
> > >
> > > On Mon, 20 Feb 2017 at 15:07 Zoran Regvart <zo...@regvart.com> wrote:
> > >
> > >> Hi Cameleers,
> > >> what do you think about adding 3rd party jars to the git repo (as
> binary
> > >> blobs)?
> > >>
> > >> Background: integration tests for Salesforce component require
> > >> deployment of customizations to the your Salesforce instance, so in
> > >> order to run them you need to make a number of manual steps
> > >> beforehand[1].
> > >>
> > >> Salesforce publishes a Migration tool[2] as a set of Ant tasks. These
> > >> are packaged as a jar file that is not available on Maven central, so
> > >> in order to use them the user needs to download supply the jar to the
> > >> Maven build.
> > >>
> > >> I would like to automate that and to prescribe the way of managing
> > >> this customizations for future tests, so I think it would be best to
> > >> put that jar in our git repository.
> > >>
> > >> I think this would encourage contributions and allow everyone to run
> > >> the integration tests, for instance in CI.
> > >>
> > >> The license is very liberal, it just requires the inclusion of the
> > >> copyright & disclamer notice.
> > >>
> > >> What do you think?
> > >>
> > >> zoran
> > >>
> > >> [1]
> > >>
> > https://github.com/apache/camel/tree/master/components/
> camel-salesforce/camel-salesforce-component#running-the-integration-tests
> > >> [2]
> > >>
> > https://developer.salesforce.com/docs/atlas.en-us.daas.
> meta/daas/forcemigrationtool_install.htm
> > >> --
> > >> Zoran Regvart
> > >>
> >
> >
> >
> > --
> > Zoran Regvart
> >
>

Re: 3rd party jars not in Maven central, add them to git repository?

Posted by Pontus Ullgren <ul...@gmail.com>.
Hi,

You can always try to incourage Salesforce to do it since ofcourse that
would be better.
However failing to convince them there is no problem that you/we do it
ourself. As I wrote it's beeing done for other projects.
One example is the JCIFS library used in camel-extra. The official project
has for a long time refused to publish the artifact to
maven central so as such we do it ourself as individuals.

I agree it is "wrong" but IMHO it's better, or at least just as wrong, as
keeping the jars commited into the git repo.
Both ways will put the coordination/maintance work on the camel project but
keeping it in a artifact repo makes more sense than in the source repo (at
least to me).

// Pontus

On Mon, 20 Feb 2017 at 22:02 Zoran Regvart <zo...@regvart.com> wrote:

> Hi Pontus,
> first of all, thank you :)
>
> Yeah, I would love to do that, but it brings along another set of
> other questions: is it up to me/us or Salesforce to publish the jar in
> Maven central? And to what coordinates, Camels?
>
> That kinda feels more wrong to me :(
>
> zoran
>
> On Mon, Feb 20, 2017 at 9:48 PM, Pontus Ullgren <ul...@gmail.com> wrote:
> > Hi,
> >
> > Would it not be a better solution to publish the jar ourself to maven
> > central ?
> > Similare to what SMX project does for other 3rd party libraries that are
> > not osgi compatible bundles ?
> >
> > Just my $0.02
> > // Pontus
> >
> >
> > On Mon, 20 Feb 2017 at 15:07 Zoran Regvart <zo...@regvart.com> wrote:
> >
> >> Hi Cameleers,
> >> what do you think about adding 3rd party jars to the git repo (as binary
> >> blobs)?
> >>
> >> Background: integration tests for Salesforce component require
> >> deployment of customizations to the your Salesforce instance, so in
> >> order to run them you need to make a number of manual steps
> >> beforehand[1].
> >>
> >> Salesforce publishes a Migration tool[2] as a set of Ant tasks. These
> >> are packaged as a jar file that is not available on Maven central, so
> >> in order to use them the user needs to download supply the jar to the
> >> Maven build.
> >>
> >> I would like to automate that and to prescribe the way of managing
> >> this customizations for future tests, so I think it would be best to
> >> put that jar in our git repository.
> >>
> >> I think this would encourage contributions and allow everyone to run
> >> the integration tests, for instance in CI.
> >>
> >> The license is very liberal, it just requires the inclusion of the
> >> copyright & disclamer notice.
> >>
> >> What do you think?
> >>
> >> zoran
> >>
> >> [1]
> >>
> https://github.com/apache/camel/tree/master/components/camel-salesforce/camel-salesforce-component#running-the-integration-tests
> >> [2]
> >>
> https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/forcemigrationtool_install.htm
> >> --
> >> Zoran Regvart
> >>
>
>
>
> --
> Zoran Regvart
>

Re: 3rd party jars not in Maven central, add them to git repository?

Posted by Zoran Regvart <zo...@regvart.com>.
Hi Pontus,
first of all, thank you :)

Yeah, I would love to do that, but it brings along another set of
other questions: is it up to me/us or Salesforce to publish the jar in
Maven central? And to what coordinates, Camels?

That kinda feels more wrong to me :(

zoran

On Mon, Feb 20, 2017 at 9:48 PM, Pontus Ullgren <ul...@gmail.com> wrote:
> Hi,
>
> Would it not be a better solution to publish the jar ourself to maven
> central ?
> Similare to what SMX project does for other 3rd party libraries that are
> not osgi compatible bundles ?
>
> Just my $0.02
> // Pontus
>
>
> On Mon, 20 Feb 2017 at 15:07 Zoran Regvart <zo...@regvart.com> wrote:
>
>> Hi Cameleers,
>> what do you think about adding 3rd party jars to the git repo (as binary
>> blobs)?
>>
>> Background: integration tests for Salesforce component require
>> deployment of customizations to the your Salesforce instance, so in
>> order to run them you need to make a number of manual steps
>> beforehand[1].
>>
>> Salesforce publishes a Migration tool[2] as a set of Ant tasks. These
>> are packaged as a jar file that is not available on Maven central, so
>> in order to use them the user needs to download supply the jar to the
>> Maven build.
>>
>> I would like to automate that and to prescribe the way of managing
>> this customizations for future tests, so I think it would be best to
>> put that jar in our git repository.
>>
>> I think this would encourage contributions and allow everyone to run
>> the integration tests, for instance in CI.
>>
>> The license is very liberal, it just requires the inclusion of the
>> copyright & disclamer notice.
>>
>> What do you think?
>>
>> zoran
>>
>> [1]
>> https://github.com/apache/camel/tree/master/components/camel-salesforce/camel-salesforce-component#running-the-integration-tests
>> [2]
>> https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/forcemigrationtool_install.htm
>> --
>> Zoran Regvart
>>



-- 
Zoran Regvart

Re: 3rd party jars not in Maven central, add them to git repository?

Posted by Pontus Ullgren <ul...@gmail.com>.
Hi,

Would it not be a better solution to publish the jar ourself to maven
central ?
Similare to what SMX project does for other 3rd party libraries that are
not osgi compatible bundles ?

Just my $0.02
// Pontus


On Mon, 20 Feb 2017 at 15:07 Zoran Regvart <zo...@regvart.com> wrote:

> Hi Cameleers,
> what do you think about adding 3rd party jars to the git repo (as binary
> blobs)?
>
> Background: integration tests for Salesforce component require
> deployment of customizations to the your Salesforce instance, so in
> order to run them you need to make a number of manual steps
> beforehand[1].
>
> Salesforce publishes a Migration tool[2] as a set of Ant tasks. These
> are packaged as a jar file that is not available on Maven central, so
> in order to use them the user needs to download supply the jar to the
> Maven build.
>
> I would like to automate that and to prescribe the way of managing
> this customizations for future tests, so I think it would be best to
> put that jar in our git repository.
>
> I think this would encourage contributions and allow everyone to run
> the integration tests, for instance in CI.
>
> The license is very liberal, it just requires the inclusion of the
> copyright & disclamer notice.
>
> What do you think?
>
> zoran
>
> [1]
> https://github.com/apache/camel/tree/master/components/camel-salesforce/camel-salesforce-component#running-the-integration-tests
> [2]
> https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/forcemigrationtool_install.htm
> --
> Zoran Regvart
>