Re: [openstack-dev] [ironic] [horizon] ironic panels

2015-10-21 Thread Beth Elwell



On 21/10/2015 01:48, Jim Rollenhagen wrote:

On Tue, Oct 20, 2015 at 04:50:04PM +0100, Beth Elwell wrote:

Hi Jim,

I have replied inline to your comments below:

On 19/10/2015 19:38, Jim Rollenhagen wrote:

On Mon, Oct 19, 2015 at 07:05:04PM +0100, Beth Elwell wrote:

Hi all,

I am currently in the process of writing an Ironic panel in Horizon
upstream. It was originally intended for this panel to be written in
Angular JS, however, as I understand, no horizon angular work will
merge for several months, and 2-3 panels (of which ironic is not one)
are being moved to the feature branch to iterate on the design pattern
that they want to use to implement the angular.

With regard to the ironic panel, this means that in order to implement
it in angular, it will take weeks or perhaps months to merge and even
when it does, it may well need to be rewritten to follow design patterns
being set at the moment.

Therefore I propose that I continue to develop this as a Horizon python
panel as a short term solution to allow a UI to exist for our users of
Ironic ASAP and longer term make use of the ironic webclient and the
work that krotscheck is currently doing on that.

I would appreciate feedback with regard to whether the ironic community
are happy for me to continue on with developing a horizon panel or would
like me to work on an angular panel.

In general, I like the idea of "get a web interface to users quickly",
and in that spirit I think building a horizon panel is the right thing
to do.

I do love the webclient work; I think it's great. However, considering
that (as far as I know) there's only two people working on Ironic web
interfaces, is it valuable to be working on two different web interfaces
right now? In the worst case:

I have had contact from another party interested in helping get a horizon
panel up and running quickly and so it is definitely doable to have that
being worked on as well as the work on the webclient.

* horizon panel will be built
* webclient will also be built
* horizon will figure out angular stuff
* webclient will be re-written to work with horizon
* webclient will likely take significant time to merge into horizon
* old horizon panel will be deprecated
* (in time) old horizon panel will be removed

And in the best case, only the rewrite step is skipped, and maybe the
merge into horizon won't take long. There's also a question about how
much different the two are, and how large of a leap that is for users.

That seems like a lot of extra effort and maintenance for an entire
team; let alone two people. So I question if it's worth working on the
webclient, or punting on that until horizon is ready, and then
refactoring the horizon panel into angular.

Is there a clear benefit to having both worked on in parallel?

As I see it they ultimately fulfill different purposes and therefore
developing both is not a waste of resources or time. The panel is a short
term solution to fulfill a user requirement for a user interface within
Horizon. The webclient is a long term mission to create independent API
libraries in javascript in order to make openstack more composable.

Okay, after reading this and talking with krotscheck in IRC:

* The horizon panel is clearly valuable, as many users use Horizon. We
   should support that.

* The ironic-webclient work is clearly valuable, as we support running
   Ironic standalone, and a standalone web UI would be great to have for
   that.

* I'm not opinionated whether "independent API libraries in Javascript
   in order to make OpenStack more composable" is valuable. It seems like
   it is, assuming there's a use case for that. The clear use case to me
   is to allow Horizon competitors to be built, which seems useful for
   folks that don't want to or care to use Horizon.

At any rate, I agree the horizon panel should be worked on - let's get
our users a UI.


Following the original email I have spoken further with the Horizon 
teams. In assessing the state of my existing work and theirs on the 
angular panel have got to, it seems pointless to remake a Django horizon 
panel, and in so doing go backwards, when one in angular already 
virtually exists in full now.


After discussion with David Lyle from horizon I will be converting the 
angular panel to a plugin that will be a significantly faster effort 
than starting another panel from scratch in Django. As I understand, 
this will have much the same effect as a panel within horizon - our 
users will have an ironic UI allowing them to access ironic from within 
horizon and we will be able to reuse most of the existing code that has 
already been written to do so to avoid replication of the same thing in 
just a different language.


// jim

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe

Re: [openstack-dev] [ironic] [horizon] ironic panels

2015-10-20 Thread Beth Elwell

Hi Jim,

I have replied inline to your comments below:

On 19/10/2015 19:38, Jim Rollenhagen wrote:

On Mon, Oct 19, 2015 at 07:05:04PM +0100, Beth Elwell wrote:

Hi all,

I am currently in the process of writing an Ironic panel in Horizon
upstream. It was originally intended for this panel to be written in
Angular JS, however, as I understand, no horizon angular work will
merge for several months, and 2-3 panels (of which ironic is not one)
are being moved to the feature branch to iterate on the design pattern
that they want to use to implement the angular.

With regard to the ironic panel, this means that in order to implement
it in angular, it will take weeks or perhaps months to merge and even
when it does, it may well need to be rewritten to follow design patterns
being set at the moment.

Therefore I propose that I continue to develop this as a Horizon python
panel as a short term solution to allow a UI to exist for our users of
Ironic ASAP and longer term make use of the ironic webclient and the
work that krotscheck is currently doing on that.

I would appreciate feedback with regard to whether the ironic community
are happy for me to continue on with developing a horizon panel or would
like me to work on an angular panel.

In general, I like the idea of "get a web interface to users quickly",
and in that spirit I think building a horizon panel is the right thing
to do.

I do love the webclient work; I think it's great. However, considering
that (as far as I know) there's only two people working on Ironic web
interfaces, is it valuable to be working on two different web interfaces
right now? In the worst case:
I have had contact from another party interested in helping get a 
horizon panel up and running quickly and so it is definitely doable to 
have that being worked on as well as the work on the webclient.

* horizon panel will be built
* webclient will also be built
* horizon will figure out angular stuff
* webclient will be re-written to work with horizon
* webclient will likely take significant time to merge into horizon
* old horizon panel will be deprecated
* (in time) old horizon panel will be removed

And in the best case, only the rewrite step is skipped, and maybe the
merge into horizon won't take long. There's also a question about how
much different the two are, and how large of a leap that is for users.

That seems like a lot of extra effort and maintenance for an entire
team; let alone two people. So I question if it's worth working on the
webclient, or punting on that until horizon is ready, and then
refactoring the horizon panel into angular.

Is there a clear benefit to having both worked on in parallel?


As I see it they ultimately fulfill different purposes and therefore 
developing both is not a waste of resources or time. The panel is a 
short term solution to fulfill a user requirement for a user interface 
within Horizon. The webclient is a long term mission to create 
independent API libraries in javascript in order to make openstack more 
composable.

// jim

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Thanks,
Beth
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [ironic] [horizon] ironic panels

2015-10-20 Thread Jim Rollenhagen
On Tue, Oct 20, 2015 at 04:50:04PM +0100, Beth Elwell wrote:
> Hi Jim,
> 
> I have replied inline to your comments below:
> 
> On 19/10/2015 19:38, Jim Rollenhagen wrote:
> >On Mon, Oct 19, 2015 at 07:05:04PM +0100, Beth Elwell wrote:
> >>Hi all,
> >>
> >>I am currently in the process of writing an Ironic panel in Horizon
> >>upstream. It was originally intended for this panel to be written in
> >>Angular JS, however, as I understand, no horizon angular work will
> >>merge for several months, and 2-3 panels (of which ironic is not one)
> >>are being moved to the feature branch to iterate on the design pattern
> >>that they want to use to implement the angular.
> >>
> >>With regard to the ironic panel, this means that in order to implement
> >>it in angular, it will take weeks or perhaps months to merge and even
> >>when it does, it may well need to be rewritten to follow design patterns
> >>being set at the moment.
> >>
> >>Therefore I propose that I continue to develop this as a Horizon python
> >>panel as a short term solution to allow a UI to exist for our users of
> >>Ironic ASAP and longer term make use of the ironic webclient and the
> >>work that krotscheck is currently doing on that.
> >>
> >>I would appreciate feedback with regard to whether the ironic community
> >>are happy for me to continue on with developing a horizon panel or would
> >>like me to work on an angular panel.
> >In general, I like the idea of "get a web interface to users quickly",
> >and in that spirit I think building a horizon panel is the right thing
> >to do.
> >
> >I do love the webclient work; I think it's great. However, considering
> >that (as far as I know) there's only two people working on Ironic web
> >interfaces, is it valuable to be working on two different web interfaces
> >right now? In the worst case:
> I have had contact from another party interested in helping get a horizon
> panel up and running quickly and so it is definitely doable to have that
> being worked on as well as the work on the webclient.
> >* horizon panel will be built
> >* webclient will also be built
> >* horizon will figure out angular stuff
> >* webclient will be re-written to work with horizon
> >* webclient will likely take significant time to merge into horizon
> >* old horizon panel will be deprecated
> >* (in time) old horizon panel will be removed
> >
> >And in the best case, only the rewrite step is skipped, and maybe the
> >merge into horizon won't take long. There's also a question about how
> >much different the two are, and how large of a leap that is for users.
> >
> >That seems like a lot of extra effort and maintenance for an entire
> >team; let alone two people. So I question if it's worth working on the
> >webclient, or punting on that until horizon is ready, and then
> >refactoring the horizon panel into angular.
> >
> >Is there a clear benefit to having both worked on in parallel?
> 
> As I see it they ultimately fulfill different purposes and therefore
> developing both is not a waste of resources or time. The panel is a short
> term solution to fulfill a user requirement for a user interface within
> Horizon. The webclient is a long term mission to create independent API
> libraries in javascript in order to make openstack more composable.

Okay, after reading this and talking with krotscheck in IRC:

* The horizon panel is clearly valuable, as many users use Horizon. We
  should support that.

* The ironic-webclient work is clearly valuable, as we support running
  Ironic standalone, and a standalone web UI would be great to have for
  that.

* I'm not opinionated whether "independent API libraries in Javascript
  in order to make OpenStack more composable" is valuable. It seems like
  it is, assuming there's a use case for that. The clear use case to me
  is to allow Horizon competitors to be built, which seems useful for
  folks that don't want to or care to use Horizon.

At any rate, I agree the horizon panel should be worked on - let's get
our users a UI.

// jim

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [ironic] [horizon] ironic panels

2015-10-19 Thread Fox, Kevin M
The app catalog ui is using Angular almost exclusively. See: 
https://github.com/openstack/app-catalog-ui

The Horizon developers have been quite supportive of using Angular in Horizon 
plugins.

I think its been more of an issue migrating Python Horizion views to Angular in 
Horizon itself, not that Horizon isn't supporting Angular yet.

Thanks,
Kevin

From: Beth Elwell [e.r.elw...@gmail.com]
Sent: Monday, October 19, 2015 11:05 AM
To: openstack-dev@lists.openstack.org
Subject: [openstack-dev] [ironic] [horizon] ironic panels

Hi all,

I am currently in the process of writing an Ironic panel in Horizon
upstream. It was originally intended for this panel to be written in
Angular JS, however, as I understand, no horizon angular work will
merge for several months, and 2-3 panels (of which ironic is not one)
are being moved to the feature branch to iterate on the design pattern
that they want to use to implement the angular.

With regard to the ironic panel, this means that in order to implement
it in angular, it will take weeks or perhaps months to merge and even
when it does, it may well need to be rewritten to follow design patterns
being set at the moment.

Therefore I propose that I continue to develop this as a Horizon python
panel as a short term solution to allow a UI to exist for our users of
Ironic ASAP and longer term make use of the ironic webclient and the
work that krotscheck is currently doing on that.

I would appreciate feedback with regard to whether the ironic community
are happy for me to continue on with developing a horizon panel or would
like me to work on an angular panel.

Many thanks,
Beth Elwell


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [ironic] [horizon] ironic panels

2015-10-19 Thread Jim Rollenhagen
On Mon, Oct 19, 2015 at 07:05:04PM +0100, Beth Elwell wrote:
> 
> Hi all,
> 
> I am currently in the process of writing an Ironic panel in Horizon
> upstream. It was originally intended for this panel to be written in
> Angular JS, however, as I understand, no horizon angular work will
> merge for several months, and 2-3 panels (of which ironic is not one)
> are being moved to the feature branch to iterate on the design pattern
> that they want to use to implement the angular.
> 
> With regard to the ironic panel, this means that in order to implement
> it in angular, it will take weeks or perhaps months to merge and even
> when it does, it may well need to be rewritten to follow design patterns
> being set at the moment.
> 
> Therefore I propose that I continue to develop this as a Horizon python
> panel as a short term solution to allow a UI to exist for our users of
> Ironic ASAP and longer term make use of the ironic webclient and the
> work that krotscheck is currently doing on that.
> 
> I would appreciate feedback with regard to whether the ironic community
> are happy for me to continue on with developing a horizon panel or would
> like me to work on an angular panel.

In general, I like the idea of "get a web interface to users quickly",
and in that spirit I think building a horizon panel is the right thing
to do.

I do love the webclient work; I think it's great. However, considering
that (as far as I know) there's only two people working on Ironic web
interfaces, is it valuable to be working on two different web interfaces
right now? In the worst case:

* horizon panel will be built
* webclient will also be built
* horizon will figure out angular stuff
* webclient will be re-written to work with horizon
* webclient will likely take significant time to merge into horizon
* old horizon panel will be deprecated
* (in time) old horizon panel will be removed

And in the best case, only the rewrite step is skipped, and maybe the
merge into horizon won't take long. There's also a question about how
much different the two are, and how large of a leap that is for users.

That seems like a lot of extra effort and maintenance for an entire
team; let alone two people. So I question if it's worth working on the
webclient, or punting on that until horizon is ready, and then
refactoring the horizon panel into angular.

Is there a clear benefit to having both worked on in parallel?

// jim

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev