Re: [Engine-devel] Java Development Lifecycle
- Original Message - From: Yair Zaslavsky yzasl...@redhat.com To: Martin Perina mper...@redhat.com Cc: engine-devel@ovirt.org Sent: Wednesday, August 28, 2013 5:34:42 AM Subject: Re: [Engine-devel] Java Development Lifecycle - Original Message - From: Martin Perina mper...@redhat.com To: engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 2:54:38 PM Subject: Re: [Engine-devel] Java Development Lifecycle For me the most time consuming problem is GWT compilation. When compiling GWT it build both Admin User portals , it duplicates the compilation time , can this please be separated such that I can build admin portal without a user portal and vice verse ??? It would be really nice if we can agree to create some clear separation between frontend and backend part, for example if frontend would communicate with backend only through REST API, GWT would have to recompile only if REST API or some frontend code has been changed. It's not something what can be done i short term, but it would be nice if we can find a way how to do it and create a schedule for this task. +100 - Original Message - From: Mooli Tayer mta...@redhat.com To: engine-devel engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 1:29:01 PM Subject: [Engine-devel] Java Development Lifecycle Hello, I've been working on the engine for a few month now, And I feel I have not yet been able to find a productive and fast approach for Java development in different engine components. This revolves mainly around: Compiling and deploying artifacts: == If I want to check a small change in the engine, Be it in an artifact that is part of engine.ear or when I am working on one of the side tools that might run as a service (e.g ovirt-engine-notifier) or just a single jar (engine-manage-domains) It is essential to compile only parts of the project and not all of it. This can be achieved usually quite easily with mvn, however afterwards I would like to be able to also deploy and run it locally or even take all jars comprising a project and run them exploded inside my IDE (I use intellij idea) so I can enjoy live code editing and other benefits idea jboss gwt integration offers. I have been using remote debug (which is available by default in the engine and non existent in other jars so I have to tamper manually with a python service file to add debug flags - see next) But it's not as powerful as running inside an IDE and I feel my current development lifecycle is not as fast and productive as it could have been. (I do understand the engine is complex regarding configuration and deployment, so it's a challenge) Configuration: == This might be more of a todo item, I'm not sure.. After deployment of an artifact to run on a machine(again, engine, notifier or whatever) if I want to change it's configuration (configure it for remote debug as mentioned or change it's logging behavior and so on) It seems I always have to do it in a different place which I always spend hours finding. It could be great if for all artifacts configuration could be streamlined and monolithic across different components. These issues might seem obvious to some of you or unneeded to others, but I've decided to shout out in engine-devel because my usual way of approaching individuals has not got me very far, and also because I'm convinced some of you have found ways to be productive I am unaware of - Please share them! Others may have their own good ideas approaches(or their own needs). Thanks, Mooli. ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
On 08/27/2013 03:21 PM, Alon Bar-Lev wrote: # engine-setup --help Usage: /usr/bin/engine-setup --log=file write log to this file. --config=file Load configuration files. --config-append=file Load extra configuration files. --offline Offline mode. --generate-answer=file Generate answer file. --jboss-home=dir Use this jboss. Can you tell more precisely what is missing? BTW: I also curious why you need to re-run fresh setup over and over. its clear from usage above how to generate an answer file from above, not how it would be used for a non-interactive setup? ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
- Original Message - From: Itamar Heim ih...@redhat.com To: Alon Bar-Lev alo...@redhat.com Cc: Martin Betak mbe...@redhat.com, engine-devel engine-devel@ovirt.org Sent: Thursday, August 29, 2013 2:04:53 AM Subject: Re: [Engine-devel] Java Development Lifecycle On 08/27/2013 03:21 PM, Alon Bar-Lev wrote: # engine-setup --help Usage: /usr/bin/engine-setup --log=file write log to this file. --config=file Load configuration files. --config-append=file Load extra configuration files. --offline Offline mode. --generate-answer=file Generate answer file. --jboss-home=dir Use this jboss. Can you tell more precisely what is missing? BTW: I also curious why you need to re-run fresh setup over and over. its clear from usage above how to generate an answer file from above, not how it would be used for a non-interactive setup? Answer file is configuration, you use --config-append= to apply configuration, it can be the output of the answer file or any other setting. I will love to work with technical writer so a proper man page and usage can be perfected. Regards, Alon ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
+1 - Original Message - From: Mooli Tayer mta...@redhat.com To: engine-devel engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 2:29:01 PM Subject: [Engine-devel] Java Development Lifecycle Hello, I've been working on the engine for a few month now, And I feel I have not yet been able to find a productive and fast approach for Java development in different engine components. This revolves mainly around: Compiling and deploying artifacts: == If I want to check a small change in the engine, Be it in an artifact that is part of engine.ear or when I am working on one of the side tools that might run as a service (e.g ovirt-engine-notifier) or just a single jar (engine-manage-domains) It is essential to compile only parts of the project and not all of it. This can be achieved usually quite easily with mvn, however afterwards I would like to be able to also deploy and run it locally or even take all jars comprising a project and run them exploded inside my IDE (I use intellij idea) so I can enjoy live code editing and other benefits idea jboss gwt integration offers. I have been using remote debug (which is available by default in the engine and non existent in other jars so I have to tamper manually with a python service file to add debug flags - see next) But it's not as powerful as running inside an IDE and I feel my current development lifecycle is not as fast and productive as it could have been. (I do understand the engine is complex regarding configuration and deployment, so it's a challenge) Configuration: == This might be more of a todo item, I'm not sure.. After deployment of an artifact to run on a machine(again, engine, notifier or whatever) if I want to change it's configuration (configure it for remote debug as mentioned or change it's logging behavior and so on) It seems I always have to do it in a different place which I always spend hours finding. It could be great if for all artifacts configuration could be streamlined and monolithic across different components. These issues might seem obvious to some of you or unneeded to others, but I've decided to shout out in engine-devel because my usual way of approaching individuals has not got me very far, and also because I'm convinced some of you have found ways to be productive I am unaware of - Please share them! Others may have their own good ideas approaches(or their own needs). Thanks, Mooli. ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
- Original Message - From: Mooli Tayer mta...@redhat.com To: engine-devel engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 2:29:01 PM Subject: [Engine-devel] Java Development Lifecycle Hello, I've been working on the engine for a few month now, And I feel I have not yet been able to find a productive and fast approach for Java development in different engine components. This revolves mainly around: Compiling and deploying artifacts: == If I want to check a small change in the engine, Be it in an artifact that is part of engine.ear or when I am working on one of the side tools that might run as a service (e.g ovirt-engine-notifier) or just a single jar (engine-manage-domains) It is essential to compile only parts of the project and not all of it. This can be achieved usually quite easily with mvn, however afterwards I would like to be able to also deploy and run it locally or even take all jars comprising a project and run them exploded inside my IDE (I use intellij idea) so I can enjoy live code editing and other benefits idea jboss gwt integration offers. I have been using remote debug (which is available by default in the engine and non existent in other jars so I have to tamper manually with a python service file to add debug flags - see next) But it's not as powerful as running inside an IDE and I feel my current development lifecycle is not as fast and productive as it could have been. (I do understand the engine is complex regarding configuration and deployment, so it's a challenge) Configuration: == This might be more of a todo item, I'm not sure.. After deployment of an artifact to run on a machine(again, engine, notifier or whatever) if I want to change it's configuration (configure it for remote debug as mentioned or change it's logging behavior and so on) It seems I always have to do it in a different place which I always spend hours finding. It could be great if for all artifacts configuration could be streamlined and monolithic across different components. These issues might seem obvious to some of you or unneeded to others, but I've decided to shout out in engine-devel because my usual way of approaching individuals has not got me very far, and also because I'm convinced some of you have found ways to be productive I am unaware of - Please share them! Others may have their own good ideas approaches(or their own needs). So to make long story short, you want: 1. Be able to partially build project. This is already supported[1], so I do not understand what is missing. [1] http://www.ovirt.org/OVirt_Engine_Development_Environment#Usage 2. Setup all components with debug port enabled at development mode. This can be achieved quite easy, but there is a catch... in tools you might want to add environment variable to halt at startup and wait for debugger. Patches are welcomed! 3. Be able to run all under ide without installation. This is how developers worked until recently, it created an entire new category of art, running engine without actually setup it. Artists are hard to find and harder to duplicate. So I am sorry, but this is not the right way to go. You can build partially, install over existing setup, and debug using remote debugger. Any other mean is a waste of resources to set up, maintain and sync. Regards, Alon Bar-Lev. ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
For me the most time consuming problem is GWT compilation. It would be really nice if we can agree to create some clear separation between frontend and backend part, for example if frontend would communicate with backend only through REST API, GWT would have to recompile only if REST API or some frontend code has been changed. It's not something what can be done i short term, but it would be nice if we can find a way how to do it and create a schedule for this task. - Original Message - From: Mooli Tayer mta...@redhat.com To: engine-devel engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 1:29:01 PM Subject: [Engine-devel] Java Development Lifecycle Hello, I've been working on the engine for a few month now, And I feel I have not yet been able to find a productive and fast approach for Java development in different engine components. This revolves mainly around: Compiling and deploying artifacts: == If I want to check a small change in the engine, Be it in an artifact that is part of engine.ear or when I am working on one of the side tools that might run as a service (e.g ovirt-engine-notifier) or just a single jar (engine-manage-domains) It is essential to compile only parts of the project and not all of it. This can be achieved usually quite easily with mvn, however afterwards I would like to be able to also deploy and run it locally or even take all jars comprising a project and run them exploded inside my IDE (I use intellij idea) so I can enjoy live code editing and other benefits idea jboss gwt integration offers. I have been using remote debug (which is available by default in the engine and non existent in other jars so I have to tamper manually with a python service file to add debug flags - see next) But it's not as powerful as running inside an IDE and I feel my current development lifecycle is not as fast and productive as it could have been. (I do understand the engine is complex regarding configuration and deployment, so it's a challenge) Configuration: == This might be more of a todo item, I'm not sure.. After deployment of an artifact to run on a machine(again, engine, notifier or whatever) if I want to change it's configuration (configure it for remote debug as mentioned or change it's logging behavior and so on) It seems I always have to do it in a different place which I always spend hours finding. It could be great if for all artifacts configuration could be streamlined and monolithic across different components. These issues might seem obvious to some of you or unneeded to others, but I've decided to shout out in engine-devel because my usual way of approaching individuals has not got me very far, and also because I'm convinced some of you have found ways to be productive I am unaware of - Please share them! Others may have their own good ideas approaches(or their own needs). Thanks, Mooli. ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
For me personally the most time consuming part of development is when I have to frequently change/update configurations of the engine, I have to manually deal with the interactive setup wizzard. Thanks to the new development environment I managed to automate all other parts of my process using scripts, except engine-setup. I would greatly appreciate if there were some way of supplying 'answers' to the engine-setup from command line (or answer files, like in the 'full' version) so it could be scripted. Best regards, Martin ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
- Original Message - From: Martin Betak mbe...@redhat.com To: Alon Bar-Lev alo...@redhat.com Cc: engine-devel engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 3:17:44 PM Subject: Re: [Engine-devel] Java Development Lifecycle For me personally the most time consuming part of development is when I have to frequently change/update configurations of the engine, I have to manually deal with the interactive setup wizzard. Thanks to the new development environment I managed to automate all other parts of my process using scripts, except engine-setup. I would greatly appreciate if there were some way of supplying 'answers' to the engine-setup from command line (or answer files, like in the 'full' version) so it could be scripted. # engine-setup --help Usage: /usr/bin/engine-setup --log=file write log to this file. --config=file Load configuration files. --config-append=file Load extra configuration files. --offline Offline mode. --generate-answer=file Generate answer file. --jboss-home=dir Use this jboss. Can you tell more precisely what is missing? BTW: I also curious why you need to re-run fresh setup over and over. Thanks, Alon ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
Re: [Engine-devel] Java Development Lifecycle
- Original Message - From: Martin Perina mper...@redhat.com To: engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 2:54:38 PM Subject: Re: [Engine-devel] Java Development Lifecycle For me the most time consuming problem is GWT compilation. It would be really nice if we can agree to create some clear separation between frontend and backend part, for example if frontend would communicate with backend only through REST API, GWT would have to recompile only if REST API or some frontend code has been changed. It's not something what can be done i short term, but it would be nice if we can find a way how to do it and create a schedule for this task. +100 - Original Message - From: Mooli Tayer mta...@redhat.com To: engine-devel engine-devel@ovirt.org Sent: Tuesday, August 27, 2013 1:29:01 PM Subject: [Engine-devel] Java Development Lifecycle Hello, I've been working on the engine for a few month now, And I feel I have not yet been able to find a productive and fast approach for Java development in different engine components. This revolves mainly around: Compiling and deploying artifacts: == If I want to check a small change in the engine, Be it in an artifact that is part of engine.ear or when I am working on one of the side tools that might run as a service (e.g ovirt-engine-notifier) or just a single jar (engine-manage-domains) It is essential to compile only parts of the project and not all of it. This can be achieved usually quite easily with mvn, however afterwards I would like to be able to also deploy and run it locally or even take all jars comprising a project and run them exploded inside my IDE (I use intellij idea) so I can enjoy live code editing and other benefits idea jboss gwt integration offers. I have been using remote debug (which is available by default in the engine and non existent in other jars so I have to tamper manually with a python service file to add debug flags - see next) But it's not as powerful as running inside an IDE and I feel my current development lifecycle is not as fast and productive as it could have been. (I do understand the engine is complex regarding configuration and deployment, so it's a challenge) Configuration: == This might be more of a todo item, I'm not sure.. After deployment of an artifact to run on a machine(again, engine, notifier or whatever) if I want to change it's configuration (configure it for remote debug as mentioned or change it's logging behavior and so on) It seems I always have to do it in a different place which I always spend hours finding. It could be great if for all artifacts configuration could be streamlined and monolithic across different components. These issues might seem obvious to some of you or unneeded to others, but I've decided to shout out in engine-devel because my usual way of approaching individuals has not got me very far, and also because I'm convinced some of you have found ways to be productive I am unaware of - Please share them! Others may have their own good ideas approaches(or their own needs). Thanks, Mooli. ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel ___ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel