camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Camel Azure component
Date Fri, 10 Feb 2017 12:14:20 GMT
Hi Sergey

Yeah sure its good to get this out in the hands of the users. If
something is not yet implemented or something we can always state that
in the docs.

And if there are things you think still must be done its a good idea
to log a JIRA with that.

For tests we sometimes have a maven profile that runs real integration
tests against an online account or something, and then regular unit
tests for just simpler tests.

As we have more and more of these it may be worthwhile to look into a
special jenkins job that only runs these integration tests with those
maven profiles enabled.

But sure feel free to go ahead and get the code into the master branch.

On Thu, Feb 9, 2017 at 6:42 PM, Sergey Beryozkin <sberyozkin@gmail.com> wrote:
> Hi
>
> I've finally attached a patch for the experts to have a glance, I know I can
> commit and look forward to doing my first Camel commit, but it is my first
> Camel component, so if something obvious is missing - let me know please.
>
> It is hard to create a complete functional component from a start but I hope
> it will be incrementally enhanced and improved.
> At the moment it covers an Azure Blob Service (with some tweaks likely
> needed later on once we experiment more with it), I'll have a look at adding
> a Queue service support later on.
>
> The most obvious thing which proved hard to solve is to have the tests not
> ignored - I run all the tests which are there against the live 30-day free
> account called 'camelazure' but it is a private account nonetheless.
>
> I spent a lot of time on trying to mock the clients but the Azure SDK
> creators made all of the clients final, so after messing with PowerMock I
> thought it was not worth it as it looks it can add some instability in the
> running tests. The idea of running the integration tests is also on the hold
> given that they do not have a Maven plugin for starting the emulator (and no
> emulator for Linux yet).
>
> So I'd like to go ahead with having these tests disabled and let those who
> are interested start playing with this component and provide the feedback
> until we figure out how to test it in Jenkins...
>
> Claus, what do you think, would you be OK for the commit to go to
> 2.19.0-SNAPSHOT in the current form ?
>
> Cheers, Sergey
>
>
>
> On 05/02/17 17:06, Sergey Beryozkin wrote:
>>
>> Hi Guys,
>>
>> I've looked a bit more carefully at the Azure Emulator docs:
>>
>>
>> https://docs.microsoft.com/en-us/azure/storage/storage-use-emulator#start-and-initialize-the-storage-emulator
>>
>>
>> and I do not see now how it can be dynamically prepared to get the
>> integration tests running, my apologies I did not check it initially,
>> though if my earlier email would contribute to a Camel Windows build be
>> set up then it would be good :-). I believe Francesco managed to do it
>> quite easily for Syncope.
>>
>> I guess as far as this component is concerned I'd need to start with the
>> basic mock client to get some coverage done.
>>
>> Cheers, Sergey
>>
>> On 05/02/17 12:39, Jean-Baptiste Onofré wrote:
>>>
>>> +1 for Windows build.
>>>
>>> Regards
>>> JB
>>>
>>> On Feb 3, 2017, 21:27, at 21:27, Willem Jiang <willem.jiang@gmail.com>
>>> wrote:
>>>>
>>>> +1 for setting up a Camel Windows build.
>>>> As some of our users are still using windows box.
>>>>
>>>>
>>>> Willem Jiang
>>>>
>>>> Blog: http://willemjiang.blogspot.com (English)
>>>>          http://jnn.iteye.com  (Chinese)
>>>> Twitter: willemjiang
>>>> Weibo: 姜宁willem
>>>>
>>>> On Fri, Feb 3, 2017 at 11:22 PM, Sergey Beryozkin
>>>> <sberyozkin@gmail.com>
>>>> wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> I've started prototyping a Camel Azure component [1].
>>>>>
>>>>> Azure has a number of services, Blob, Queue, Table and File, a lot of
>>>>> commands, etc.
>>>>> I'm starting with supporting a Blob Service. Queue service will
>>>>
>>>> follow,
>>>>>
>>>>> and I guess the component will keep evolving to support other
>>>>
>>>> services too.
>>>>>
>>>>>
>>>>> At the moment I have most of the Blob Service commands covered at the
>>>>> Producer side. I'm not sure Consumer will need to be there given that
>>>>
>>>> Azure
>>>>>
>>>>> Java API only offers an option to download the blobs to an output
>>>>
>>>> stream
>>>>>
>>>>> (file most likely). May be only for getting the attributes if really
>>>>
>>>> needed.
>>>>>
>>>>>
>>>>> I guess Queue Service will though require a Consumer but that is a
>>>>
>>>> stage 2.
>>>>>
>>>>>
>>>>> I'm using camel-aws component as a source of ideas.
>>>>>
>>>>> The biggest issue it how to test it. I have several basic 'live'
>>>>
>>>> in-only
>>>>>
>>>>> tests based on the copy from camel-aws/s3 which depend on a live
>>>>
>>>> security
>>>>>
>>>>> key and the connection. Microsoft Azure offers an emulator which can
>>>>
>>>> only
>>>>>
>>>>> be run on Windows. And I'm not keen using a mock client which can
>>>>
>>>> become
>>>>>
>>>>> stale and won't really prove the blob has been uploaded.
>>>>>
>>>>> I'd like to start with having these tests disabled on the master for
>>>>
>>>> those
>>>>>
>>>>> who are interested to experiment with them using their own live keys
>>>>
>>>> and in
>>>>>
>>>>> meantime I reckon we can either try to encourage the Microsoft Azure
>>>>
>>>> team
>>>>>
>>>>> to release their service emulator for the Linux platform asap or set
>>>>
>>>> up a
>>>>>
>>>>> Camel Windows build and run the emulator integration test on Windows
>>>>
>>>> only.
>>>>>
>>>>>
>>>>> Thanks, Sergey
>>>>>
>>>>> [1] https://issues.apache.org/jira/browse/CAMEL-10786
>>>>>
>>>
>>
>



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Mime
View raw message