Re: Proposing Ballerina Runtime for OpenWhisk

2018-07-09 Thread Malith Munasinghe
Hi Chetan,

On Mon, 9 Jul 2018 at 21:08, Chetan Mehrotra 
wrote:

> Ballerina language looks very interesting with it GUI Composer support
> [1]. Probably in future it can be leveraged to compile a composition
> integrating various actions.


> @Malith - Any details on memory characteristics of the runtime (Docker
> image size, memory foot print of runtime etc)
>

Current docker image is 392MB and a compiled ballerina function (.balx) can
be run with 128MB memory.


>
> Chetan Mehrotra
> [1]
> https://github.com/ballerina-platform/ballerina-lang/tree/master/composer
>
> On Mon, Jul 9, 2018 at 6:02 PM, Matt Rutkowski 
> wrote:
> > Thanks Malith and Rodric!
> >
> > It is very exciting to be getting runtime contributions from the
> community.
> >
> > -mr
> >
> > On 2018/07/08 22:12:05, Rodric Rabbah  wrote:
> >> Hi Malith
> >>
> >> I’ve made a number of updates to the runtime test framework as part of
> documenting runtime integration (merged as [1]). These are in a PR that I
> hope gets merged in the next day or two. I can send a PR [2] to your repo
> to update the tests for the new interface (I think you’ll find it cleaner,
> and also tests a few more scenarios).
> >>
> >> I think we can add even more tests over time (which reduces the amount
> of code one has to write to test their runtime).
> >>
> >> I will open infra tickets for new repos for Ballerina and the Ruby
> runtime. It’ll be great to have both. I see Kubeless already has Ballerina
> support and OpenFaas, Ruby.
> >>
> >> -r
> >>
> >> [1]
> https://github.com/apache/incubator-openwhisk/commit/9c05de4494d6edbd198fd494d458b908bbc0cd0a
> >>
> >> [2] https://github.com/apache/incubator-openwhisk/pull/3851
> >>
> >> > On Jul 3, 2018, at 6:14 AM, Malith Munasinghe 
> wrote:
> >> >
> >> > *Hi All, I have initiated this thread to introduce Ballerina [1]
> Language
> >> > Runtime for OpenWhisk. Ballerina is a simple programming language
> whose
> >> > syntax and platform address the hard problems of integration.
> Ballerina is
> >> > a general purpose, concurrent, transactional, statically and strongly
> typed
> >> > programming language with both textual and graphical syntaxes. Its
> >> > specialization is integration - it brings fundamental concepts, ideas
> and
> >> > tools of distributed system integration into the language and offers
> a type
> >> > safe, concurrent environment to implement such applications. These
> include
> >> > distributed transactions, reliable messaging, stream processing,
> workflows
> >> > and container management platforms.The implementation of the OpenWhisk
> >> > language runtime for Ballerina (0.975.0) can be found in repository
> [2] and
> >> > relevant docker image can be found in [3]. I would like to donate
> this to
> >> > Apache Incubator OpenWhisk project as a new Runtime. Please share your
> >> > thoughts on necessary actions to be taken to contribute this code to
> >> > OpenWhisk project. [1] https://ballerina.io/ 
> [2]
> >> > https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
> >> >  [3]
> >> > https://hub.docker.com/r/mpmunasinghe/balaction/
> >> > *
> >> >
> >> > --
> >> >
> >> > *With regards,*
> >> > *Malith Munasinghe*
> >> >
> >> > *@mpmunasinghe*
> >>
>


-- 
*With regards,*
*Malith Munasinghe,*
*Senior Software Engineer WSO2 Lanka, *
[image: unnamed.jpg]@mpmunasighe


Re: Proposing Ballerina Runtime for OpenWhisk

2018-07-09 Thread Chetan Mehrotra
Ballerina language looks very interesting with it GUI Composer support
[1]. Probably in future it can be leveraged to compile a composition
integrating various actions.

@Malith - Any details on memory characteristics of the runtime (Docker
image size, memory foot print of runtime etc)

Chetan Mehrotra
[1] https://github.com/ballerina-platform/ballerina-lang/tree/master/composer

On Mon, Jul 9, 2018 at 6:02 PM, Matt Rutkowski  wrote:
> Thanks Malith and Rodric!
>
> It is very exciting to be getting runtime contributions from the community.
>
> -mr
>
> On 2018/07/08 22:12:05, Rodric Rabbah  wrote:
>> Hi Malith
>>
>> I’ve made a number of updates to the runtime test framework as part of 
>> documenting runtime integration (merged as [1]). These are in a PR that I 
>> hope gets merged in the next day or two. I can send a PR [2] to your repo to 
>> update the tests for the new interface (I think you’ll find it cleaner, and 
>> also tests a few more scenarios).
>>
>> I think we can add even more tests over time (which reduces the amount of 
>> code one has to write to test their runtime).
>>
>> I will open infra tickets for new repos for Ballerina and the Ruby runtime. 
>> It’ll be great to have both. I see Kubeless already has Ballerina support 
>> and OpenFaas, Ruby.
>>
>> -r
>>
>> [1] 
>> https://github.com/apache/incubator-openwhisk/commit/9c05de4494d6edbd198fd494d458b908bbc0cd0a
>>
>> [2] https://github.com/apache/incubator-openwhisk/pull/3851
>>
>> > On Jul 3, 2018, at 6:14 AM, Malith Munasinghe  
>> > wrote:
>> >
>> > *Hi All, I have initiated this thread to introduce Ballerina [1] Language
>> > Runtime for OpenWhisk. Ballerina is a simple programming language whose
>> > syntax and platform address the hard problems of integration. Ballerina is
>> > a general purpose, concurrent, transactional, statically and strongly typed
>> > programming language with both textual and graphical syntaxes. Its
>> > specialization is integration - it brings fundamental concepts, ideas and
>> > tools of distributed system integration into the language and offers a type
>> > safe, concurrent environment to implement such applications. These include
>> > distributed transactions, reliable messaging, stream processing, workflows
>> > and container management platforms.The implementation of the OpenWhisk
>> > language runtime for Ballerina (0.975.0) can be found in repository [2] and
>> > relevant docker image can be found in [3]. I would like to donate this to
>> > Apache Incubator OpenWhisk project as a new Runtime. Please share your
>> > thoughts on necessary actions to be taken to contribute this code to
>> > OpenWhisk project. [1] https://ballerina.io/  [2]
>> > https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
>> >  [3]
>> > https://hub.docker.com/r/mpmunasinghe/balaction/
>> > *
>> >
>> > --
>> >
>> > *With regards,*
>> > *Malith Munasinghe*
>> >
>> > *@mpmunasinghe*
>>


Re: Proposing Ballerina Runtime for OpenWhisk

2018-07-09 Thread Matt Rutkowski
Thanks Malith and Rodric! 

It is very exciting to be getting runtime contributions from the community.

-mr

On 2018/07/08 22:12:05, Rodric Rabbah  wrote: 
> Hi Malith
> 
> I’ve made a number of updates to the runtime test framework as part of 
> documenting runtime integration (merged as [1]). These are in a PR that I 
> hope gets merged in the next day or two. I can send a PR [2] to your repo to 
> update the tests for the new interface (I think you’ll find it cleaner, and 
> also tests a few more scenarios). 
> 
> I think we can add even more tests over time (which reduces the amount of 
> code one has to write to test their runtime).
> 
> I will open infra tickets for new repos for Ballerina and the Ruby runtime. 
> It’ll be great to have both. I see Kubeless already has Ballerina support and 
> OpenFaas, Ruby. 
> 
> -r
> 
> [1] 
> https://github.com/apache/incubator-openwhisk/commit/9c05de4494d6edbd198fd494d458b908bbc0cd0a
> 
> [2] https://github.com/apache/incubator-openwhisk/pull/3851
> 
> > On Jul 3, 2018, at 6:14 AM, Malith Munasinghe  
> > wrote:
> > 
> > *Hi All, I have initiated this thread to introduce Ballerina [1] Language
> > Runtime for OpenWhisk. Ballerina is a simple programming language whose
> > syntax and platform address the hard problems of integration. Ballerina is
> > a general purpose, concurrent, transactional, statically and strongly typed
> > programming language with both textual and graphical syntaxes. Its
> > specialization is integration - it brings fundamental concepts, ideas and
> > tools of distributed system integration into the language and offers a type
> > safe, concurrent environment to implement such applications. These include
> > distributed transactions, reliable messaging, stream processing, workflows
> > and container management platforms.The implementation of the OpenWhisk
> > language runtime for Ballerina (0.975.0) can be found in repository [2] and
> > relevant docker image can be found in [3]. I would like to donate this to
> > Apache Incubator OpenWhisk project as a new Runtime. Please share your
> > thoughts on necessary actions to be taken to contribute this code to
> > OpenWhisk project. [1] https://ballerina.io/  [2]
> > https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
> >  [3]
> > https://hub.docker.com/r/mpmunasinghe/balaction/
> > *
> > 
> > -- 
> > 
> > *With regards,*
> > *Malith Munasinghe*
> > 
> > *@mpmunasinghe*
> 


Re: Proposing Ballerina Runtime for OpenWhisk

2018-07-08 Thread Malith Munasinghe
Hi Rodric,


On Mon, 9 Jul 2018 at 03:42, Rodric Rabbah  wrote:

> Hi Malith
>
> I’ve made a number of updates to the runtime test framework as part of
> documenting runtime integration (merged as [1]). These are in a PR that I
> hope gets merged in the next day or two. I can send a PR [2] to your repo
> to update the tests for the new interface (I think you’ll find it cleaner,
> and also tests a few more scenarios).
>

+1


>
> I think we can add even more tests over time (which reduces the amount of
> code one has to write to test their runtime).
>

I will open an issue in the repo to track the missing tests.


>
> I will open infra tickets for new repos for Ballerina and the Ruby
> runtime. It’ll be great to have both. I see Kubeless already has Ballerina
> support and OpenFaas, Ruby.
>

Great.


>
> -r
>
> [1]
> https://github.com/apache/incubator-openwhisk/commit/9c05de4494d6edbd198fd494d458b908bbc0cd0a
>
> [2] https://github.com/apache/incubator-openwhisk/pull/3851
>
> > On Jul 3, 2018, at 6:14 AM, Malith Munasinghe 
> wrote:
> >
> > *Hi All, I have initiated this thread to introduce Ballerina [1] Language
> > Runtime for OpenWhisk. Ballerina is a simple programming language whose
> > syntax and platform address the hard problems of integration. Ballerina
> is
> > a general purpose, concurrent, transactional, statically and strongly
> typed
> > programming language with both textual and graphical syntaxes. Its
> > specialization is integration - it brings fundamental concepts, ideas and
> > tools of distributed system integration into the language and offers a
> type
> > safe, concurrent environment to implement such applications. These
> include
> > distributed transactions, reliable messaging, stream processing,
> workflows
> > and container management platforms.The implementation of the OpenWhisk
> > language runtime for Ballerina (0.975.0) can be found in repository [2]
> and
> > relevant docker image can be found in [3]. I would like to donate this to
> > Apache Incubator OpenWhisk project as a new Runtime. Please share your
> > thoughts on necessary actions to be taken to contribute this code to
> > OpenWhisk project. [1] https://ballerina.io/  [2]
> > https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
> >  [3]
> > https://hub.docker.com/r/mpmunasinghe/balaction/
> > *
> >
> > --
> >
> > *With regards,*
> > *Malith Munasinghe*
> >
> > *@mpmunasinghe*
>


-- 
*With regards,*
*Malith Munasinghe,*
*Senior Software Engineer WSO2 Lanka, *
[image: unnamed.jpg]@mpmunasighe


Re: Proposing Ballerina Runtime for OpenWhisk

2018-07-08 Thread Rodric Rabbah
Hi Malith

I’ve made a number of updates to the runtime test framework as part of 
documenting runtime integration (merged as [1]). These are in a PR that I hope 
gets merged in the next day or two. I can send a PR [2] to your repo to update 
the tests for the new interface (I think you’ll find it cleaner, and also tests 
a few more scenarios). 

I think we can add even more tests over time (which reduces the amount of code 
one has to write to test their runtime).

I will open infra tickets for new repos for Ballerina and the Ruby runtime. 
It’ll be great to have both. I see Kubeless already has Ballerina support and 
OpenFaas, Ruby. 

-r

[1] 
https://github.com/apache/incubator-openwhisk/commit/9c05de4494d6edbd198fd494d458b908bbc0cd0a

[2] https://github.com/apache/incubator-openwhisk/pull/3851

> On Jul 3, 2018, at 6:14 AM, Malith Munasinghe  wrote:
> 
> *Hi All, I have initiated this thread to introduce Ballerina [1] Language
> Runtime for OpenWhisk. Ballerina is a simple programming language whose
> syntax and platform address the hard problems of integration. Ballerina is
> a general purpose, concurrent, transactional, statically and strongly typed
> programming language with both textual and graphical syntaxes. Its
> specialization is integration - it brings fundamental concepts, ideas and
> tools of distributed system integration into the language and offers a type
> safe, concurrent environment to implement such applications. These include
> distributed transactions, reliable messaging, stream processing, workflows
> and container management platforms.The implementation of the OpenWhisk
> language runtime for Ballerina (0.975.0) can be found in repository [2] and
> relevant docker image can be found in [3]. I would like to donate this to
> Apache Incubator OpenWhisk project as a new Runtime. Please share your
> thoughts on necessary actions to be taken to contribute this code to
> OpenWhisk project. [1] https://ballerina.io/  [2]
> https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
>  [3]
> https://hub.docker.com/r/mpmunasinghe/balaction/
> *
> 
> -- 
> 
> *With regards,*
> *Malith Munasinghe*
> 
> *@mpmunasinghe*


Re: Proposing Ballerina Runtime for OpenWhisk

2018-07-03 Thread Rodric Rabbah
Thank you Malith for introducing Ballerina to OpenWhisk.

We have received in the past contributions to add PHP (thanks @akrabat
), Go
 (thanks
@sciabarracom ) Ruby (#3725
 thanks @remore
) so far but have not documented the steps
required to add a new runtime so that it is available to the OpenWhisk
deployment. I've taken this opportunity to create a first draft after
working through to reduce the touch-points needed to integrate the runtime
with OpenWhisk in recent weeks.

Comments  are appreciated and welcome particularly from those who have
contributed runtimes in the past.
https://github.com/rabbah/openwhisk/blob/2672826f1b8e75549c3f15b3fa35b673ee23becd/docs/actions-new.md

I think there are some more things we can do to reduce the steps needed as
noted in the markdown. I'd like to make sure I covered the big steps first.

-r

On Tue, Jul 3, 2018 at 6:14 AM, Malith Munasinghe 
wrote:

> *Hi All, I have initiated this thread to introduce Ballerina [1] Language
> Runtime for OpenWhisk. Ballerina is a simple programming language whose
> syntax and platform address the hard problems of integration. Ballerina is
> a general purpose, concurrent, transactional, statically and strongly typed
> programming language with both textual and graphical syntaxes. Its
> specialization is integration - it brings fundamental concepts, ideas and
> tools of distributed system integration into the language and offers a type
> safe, concurrent environment to implement such applications. These include
> distributed transactions, reliable messaging, stream processing, workflows
> and container management platforms.The implementation of the OpenWhisk
> language runtime for Ballerina (0.975.0) can be found in repository [2] and
> relevant docker image can be found in [3]. I would like to donate this to
> Apache Incubator OpenWhisk project as a new Runtime. Please share your
> thoughts on necessary actions to be taken to contribute this code to
> OpenWhisk project. [1] https://ballerina.io/  [2]
> https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
>  [3]
> https://hub.docker.com/r/mpmunasinghe/balaction/
> *
>
> --
>
> *With regards,*
> *Malith Munasinghe*
>
> *@mpmunasinghe*
>


Proposing Ballerina Runtime for OpenWhisk

2018-07-03 Thread Malith Munasinghe
*Hi All, I have initiated this thread to introduce Ballerina [1] Language
Runtime for OpenWhisk. Ballerina is a simple programming language whose
syntax and platform address the hard problems of integration. Ballerina is
a general purpose, concurrent, transactional, statically and strongly typed
programming language with both textual and graphical syntaxes. Its
specialization is integration - it brings fundamental concepts, ideas and
tools of distributed system integration into the language and offers a type
safe, concurrent environment to implement such applications. These include
distributed transactions, reliable messaging, stream processing, workflows
and container management platforms.The implementation of the OpenWhisk
language runtime for Ballerina (0.975.0) can be found in repository [2] and
relevant docker image can be found in [3]. I would like to donate this to
Apache Incubator OpenWhisk project as a new Runtime. Please share your
thoughts on necessary actions to be taken to contribute this code to
OpenWhisk project. [1] https://ballerina.io/  [2]
https://github.com/mpmunasinghe/openwhisk-runtime-ballerina
 [3]
https://hub.docker.com/r/mpmunasinghe/balaction/
*

-- 

*With regards,*
*Malith Munasinghe*

*@mpmunasinghe*