Inline

Op dinsdag 21 juni 2016 heeft Taher Alkhateeb <[email protected]>
het volgende geschreven:

> Hi Everyone,
>
> I have create the JIRA https://issues.apache.org/jira/browse/OFBIZ-7534
> for
> this project
>
> I have two questions in this thread
>
> First Question
> ------------------
> Can I drop the below tasks from the build system? They currently exist in
> Ant but I am not sure whether they are actively used or not. So if you want
> me to add any of these tasks please reply to this thread, otherwise I will
> not include them in gradle. Please note I added all multi tenant tasks
> because many of them are broken or have no functionality, so I am assuming
> people are doing multi-tenancy manually but not sure, so please help!
>
> - build-dev
> - build-production
> - build-qa
> - build-test
> - clean-ivy
> - copy-dtds
> - create-tenant


Don't drop, until replaced by gradlle equivalent. Used to setup a tenant
instanciation in a multi-tenant setup. This has dependencies that set the
tenant admin Id an password and execute the initial data load for the
tenant. For these dependencies the same 'don't drop, until.....' applies.


> - download-PG-JDBC


Don't drop, until replaced by gradlle equivalent. Used for PostgreSQL based
test and/or production environment

- download-activemq


Don't drop, until replaced by gradlle equivalent. Used for clustered test
and/or production environment

- download-mySQL-JDBC


 Don't drop, until replaced by gradlle equivalent. Used for MySQL based
test and/or production environment


> - gen-kek
> - gitinfo
> - load-all-tenants


Drop. Used for multi tenant demo setup. Deprecated.


> - load-demo-multitenant


Drop. Used for multi tenant demo setup. Deprecated.


> - load-tenant
> - load-tenant-data-readers
> - refresh
> - revert-dev
> - run-test-list
> - start-batch
> - start-batch-secure
> - start-both-secure
> - start-pos-secure
> - start-secure
> - svninfo
>
> Second Question
> -----------------------
>
> it seems many of the load tasks are too specific. So I suggest to only
> implement loadDemo and the rest are executed manually by users, for
> example: ./gradlew 'ofbiz --load-data reader=seed, seed-initial, ext'
> instead of load-extseed.
>
>
Then there is no need to maintain the load-demo variant, as it can be
executed like the other data loading mechanism. It is better not to confuse
potential adopters by serving them 2 variants that basically do the same,
but wit different data sets.



> If you would like to add the other load data tasks, please specify which
> ones.
>
> Appreciate your early responses.
>
> Taher Alkhateeb
>
> On Tue, Jun 21, 2016 at 1:02 PM, Taher Alkhateeb <
> [email protected] <javascript:;>
> > wrote:
>
> > Hi Everyone,
> >
> > Thank you all for your support and kinds words. This is truly a wonderful
> > atmosphere and I am lucky, honoured, and privileged to work with you all
> on
> > this project.
> >
> > My patch is almost done, but definitely there is a lot of work to be done
> > which includes the following:
> > - I have one failing test out of 889 that I need to dig through, maybe
> you
> > guy can help
> > - I want to change / delete / add some tasks
> > - Documentation needs to be updated in multiple areas
> > - Testing, testing, testing, testing, testing, testing, testing, testing,
> > testing
> >
> > So the plan of action is as follows:
> > - I will continue the discussion on this thread for a few questions that
> I
> > need an answer for.
> > - I will issue a JIRA to hold the patch and everything else
> >
> > Please consider helping, this is something that definitely needs a team,
> > more than one brain! If you are working on something not urgent, please
> > consider dropping it for a while and jump along for help.
> >
> > I will post another email soon with the JIRA details and list of
> questions
> > I need answer for.
> >
> > Again, thank you, you guys rock, I love OFBiz and this community!
> >
> > Regards,
> >
> > Taher Alkhateeb
> >
> >
> >
> > On Tue, Jun 21, 2016 at 12:49 PM, Nicolas Malin <
> [email protected] <javascript:;>>
> > wrote:
> >
> >> I'm in over for these technical aspects but the motivation and
> enthusiasm
> >> for many PMC and commiter tells me that seems a good way.
> >>
> >> So now I will learn gradle ;) and I'm in favor to realize this change
> >> directly on trunk
> >>
> >> Thks Taher to your engine energy on this subject !
> >>
> >> Nicolas
> >>
> >>
> >>
> >> Le 21/06/2016 10:43, Jacques Le Roux a écrit :
> >>
> >>> As Gavin mentioned, Gradle can run Ant so no worries using only Gradle
> >>>
> >>> https://docs.gradle.org/current/userguide/ant.html
> >>>
> >>> Jacques
> >>>
> >>>
> >>> Le 21/06/2016 à 09:59, Michael Brohl a écrit :
> >>>
> >>>> I have no strong opinion for/against Gradle (I simply have no
> >>>> experience with it) but I agree that it should be either Ant or
> Gradle.
> >>>> Running two build tools in parallel would make it too complex an gain
> >>>> nothing.
> >>>>
> >>>> I'm in favor for learning new things so Gradle sounds fine for me :-)
> >>>>
> >>>> Regards,
> >>>>
> >>>> Michael
> >>>>
> >>>>
> >>>> Am 21.06.16 um 08:11 schrieb Taher Alkhateeb:
> >>>>
> >>>>> Hi Deepak,
> >>>>>
> >>>>> Ant would be removed completely for the following reasons:
> >>>>>
> >>>>> - First to resolve the ASF issue about the libraries mentioned by
> >>>>> Sharan
> >>>>> below without expending effort on both build systems.
> >>>>> - Ant is an obstacle to refactoring the framework. If we keep both
> >>>>> systems
> >>>>> side by side we gain nothing, actually we lose value because the
> builds
> >>>>> become more complex. For example, we will not be able to intrduce the
> >>>>> unit
> >>>>> tests, and we will have two build outputs, and we will have two ways
> of
> >>>>> running the framework (java -jar ofbiz.jar and gradlew ofbiz) and we
> >>>>> will
> >>>>> have other incompatibility issues.
> >>>>>
> >>>>> With that being said, we will not make the switch before a thorough
> and
> >>>>> full testing. That is why we ask everyone who is willing to please
> >>>>> help us
> >>>>> out to make this transition smooth by testing and providing feedback
> >>>>> and
> >>>>> comments.
> >>>>>
> >>>>> Taher Alkhateeb
> >>>>>
> >>>>> On Tuesday, 21 June 2016, Deepak Dixit <
> [email protected] <javascript:;>
> >>>>> >
> >>>>> wrote:
> >>>>>
> >>>>> +1 for Gradle.
> >>>>>>
> >>>>>> Are we going to remove ant from framework completely or planning to
> >>>>>> keep
> >>>>>> both ant and gradle?
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> Thanks & Regards
> >>>>>> --
> >>>>>> Deepak Dixit
> >>>>>> www.hotwaxsystems.com
> >>>>>>
> >>>>>> On Mon, Jun 20, 2016 at 6:20 PM, Sharan Foga <[email protected]
> <javascript:;>
> >>>>>> <javascript:;>> wrote:
> >>>>>>
> >>>>>> Hi Everyone
> >>>>>>>
> >>>>>>> This is the second of two emails to inform the community about what
> >>>>>>> has
> >>>>>>> been happening around how we are planning to handle external
> >>>>>>> dependencies
> >>>>>>> in the trunk. Two weeks ago the community discussed and agreed to
> >>>>>>> the use
> >>>>>>> of Gradle to help us put together a unit test framework. While
> >>>>>>> trying to
> >>>>>>> get this set up while Ant remained as our build tool became very
> >>>>>>>
> >>>>>> difficult.
> >>>>>>
> >>>>>>> This was because our Ant scripts:
> >>>>>>>
> >>>>>>>     - are massive and contain a lot of code
> >>>>>>>     - are complex
> >>>>>>>     - are very brittle and make it very hard to change things
> >>>>>>>     - have no dependency management
> >>>>>>>     - need everything to be declared
> >>>>>>>
> >>>>>>> We realised very quickly that the re-factoring issues and
> >>>>>>> limitations we
> >>>>>>> are facing are because of our build tool – Ant.
> >>>>>>>
> >>>>>>> Ant is verbose so it needs everything to be declared. We did a
> brief
> >>>>>>> assessment of Maven and found it better than Ant but not a good fit
> >>>>>>> for
> >>>>>>> OFBiz because it has strict requirements for the
> >>>>>>> convention-over-configuration rules to work. Instead we decided to
> >>>>>>> take a
> >>>>>>> closer look at Gradle.
> >>>>>>>
> >>>>>>> So why Gradle?
> >>>>>>> As Taher was already looking at Gradle for unit testing, we decided
> >>>>>>> to
> >>>>>>> look at what we would need to do to totally replace Ant with
> Gradle.
> >>>>>>> We
> >>>>>>> received some great support and feedback from David, who is already
> >>>>>>> using
> >>>>>>> Gradle with Moqui.
> >>>>>>>
> >>>>>>> After some preliminary tests we found that Gradle has some very
> good
> >>>>>>> features such as:
> >>>>>>>
> >>>>>>>     - a much shorter code base (e.g. one single file of around 250
> >>>>>>> lines
> >>>>>>>
> >>>>>> of
> >>>>>>
> >>>>>>> code replaces all the build.xml files and thousands of lines of
> code)
> >>>>>>>     -  Programming is DSL based and links in well with Groovy (e.g.
> >>>>>>> the
> >>>>>>> script is short because despite heavy custom requirements for
> OFBiz,
> >>>>>>> two
> >>>>>>> small functions took care of the complex directory structure)
> >>>>>>>     - It handles all the external jar files by downloading any
> >>>>>>>
> >>>>>> dependencies
> >>>>>>
> >>>>>>> directly via internet
> >>>>>>>     - Jars can be upgraded by simply changing a string
> >>>>>>>     - It has matured a lot and has a high level of support in
> >>>>>>> tools,IDEs,
> >>>>>>> books, documentation
> >>>>>>>     - It also has a lot of plugins which means that it works with
> >>>>>>> pretty
> >>>>>>> much all build systems, supports multiple programming languages,
> and
> >>>>>>> many
> >>>>>>> other features (e.g. OSGi)
> >>>>>>>
> >>>>>>> We understand that it can help us make OFBiz more modular and also
> >>>>>>>
> >>>>>> setting
> >>>>>>
> >>>>>>> up a framework for managing addons would be a lot easier.
> >>>>>>>
> >>>>>>> So what's been done?
> >>>>>>> Taher has been working very hard on a patch for the trunk that
> >>>>>>> completely
> >>>>>>> replaces Ant with Gradle.  (Huge thanks to David for providing some
> >>>>>>>
> >>>>>> example
> >>>>>>
> >>>>>>> scripts to help us get started!) The patch is now ready to be
> >>>>>>> applied to
> >>>>>>> the trunk and includes the following:
> >>>>>>>
> >>>>>>>      - java -jar ofbiz.jar is now replaced with -> gradlew 'ofbiz
> >>>>>>> --whatever-options-here'
> >>>>>>>      - In addition to gradlew 'ofbiz' we also have gradlew
> >>>>>>> 'ofbizDebug
> >>>>>>> --whatever'. What does that mean? It means we can run debug on ALL
> >>>>>>> ofbiz
> >>>>>>> commands, not just start
> >>>>>>>      - If we decide to change the source directory structure in
> >>>>>>> components
> >>>>>>> say from /src to /src/main, it would literally be a change of 5
> >>>>>>>
> >>>>>> characters
> >>>>>>
> >>>>>>> in the build script
> >>>>>>>      - We can immediately move all jar files if we want to a
> unified
> >>>>>>> location in /lib for example
> >>>>>>>      - We can delete most of the jars and declare them as
> >>>>>>> dependencies
> >>>>>>> saving space and resources
> >>>>>>>      - We can automate the creation of the .classpath file so when
> we
> >>>>>>> update libraries no need to do this manually (under development)
> >>>>>>>      - We can ignore components that are not define in the xml
> files
> >>>>>>> for
> >>>>>>> loading (under development)
> >>>>>>>      - We can introduce unit tests with about 10 minutes of work
> >>>>>>>
> >>>>>>> We are finding that the flexibility and control we are getting with
> >>>>>>>
> >>>>>> Gradle
> >>>>>>
> >>>>>>> is truly amazing. We know that Gradle will be a major change to the
> >>>>>>>
> >>>>>> project
> >>>>>>
> >>>>>>> but we think that it will significantly improve the project by
> >>>>>>> removing a
> >>>>>>> lot of build complexity and take care of that essential dependency
> >>>>>>> management that we need to comply with.
> >>>>>>>
> >>>>>>> Our next steps will be to apply the patch to the trunk and then
> >>>>>>> continue
> >>>>>>> the re-factoring work. We will need to organise some knowledge
> >>>>>>> transfer
> >>>>>>>
> >>>>>> so
> >>>>>>
> >>>>>>> that all our committers understand what the changes are and how
> they
> >>>>>>>
> >>>>>> would
> >>>>>>
> >>>>>>> need to work in the future.
> >>>>>>>
> >>>>>>> The PMC are very, very excited about having Gradle as part of
> future
> >>>>>>> of
> >>>>>>> OFBiz and we hope that the community will think so too. As always,
> >>>>>>>
> >>>>>> feedback
> >>>>>>
> >>>>>>> welcome.
> >>>>>>>
> >>>>>>> Thanks
> >>>>>>> Sharan
> >>>>>>>
> >>>>>>>
> >>>>
> >>>>
> >>>
> >>
> >
>


-- 
Pierre Smits

ORRTIZ.COM <http://www.orrtiz.com>
OFBiz based solutions & services

OFBiz Extensions Marketplace
http://oem.ofbizci.net/oci-2/

Reply via email to