[JBoss JIRA] (MODCLUSTER-500) Consider dropping base container module; copy container integration code to every integration
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-500?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-500:
--------------------------------------
Summary: Consider dropping base container module; copy container integration code to every integration (was: Consider dropping base module; copy container integration code to every integration)
> Consider dropping base container module; copy container integration code to every integration
> ---------------------------------------------------------------------------------------------
>
> Key: MODCLUSTER-500
> URL: https://issues.jboss.org/browse/MODCLUSTER-500
> Project: mod_cluster
> Issue Type: Task
> Components: Core & Container Integration (Java)
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Fix For: 2.0.0.Alpha1
>
>
> The main reason for this would be to do the build process right in one take and thus simplify installation (and CI too).
> Just comparing Java code:
> {noformat}
> [rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
> 678 total
> [rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
> 754 total
> [rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
> 794 total
> [rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
> 1121 total
> [rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
> 3359 total
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-500) Consider dropping base module; copy container integration code to every integration
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-500?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-500:
--------------------------------------
Description:
The main reason for this would be to do the build process right in one take and thus simplify installation (and CI too).
Just comparing Java code:
{noformat}
[rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
678 total
[rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
754 total
[rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
794 total
[rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
1121 total
[rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
3359 total
{noformat}
was:
The main reason for this would be to do the build process right in one take and thus simplify installation (and CI too).
{noformat}
[rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
678 total
[rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
754 total
[rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
794 total
[rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
1121 total
[rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
3359 total
{noformat}
> Consider dropping base module; copy container integration code to every integration
> -----------------------------------------------------------------------------------
>
> Key: MODCLUSTER-500
> URL: https://issues.jboss.org/browse/MODCLUSTER-500
> Project: mod_cluster
> Issue Type: Task
> Components: Core & Container Integration (Java)
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Fix For: 2.0.0.Alpha1
>
>
> The main reason for this would be to do the build process right in one take and thus simplify installation (and CI too).
> Just comparing Java code:
> {noformat}
> [rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
> 678 total
> [rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
> 754 total
> [rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
> 794 total
> [rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
> 1121 total
> [rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
> 3359 total
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-500) Consider dropping base module; copy container integration code to every integration
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-500?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-500:
--------------------------------------
Description:
The main reason for this would be to do the build process right in one take and thus simplify installation (and CI too).
{noformat}
[rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
678 total
[rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
754 total
[rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
794 total
[rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
1121 total
[rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
3359 total
{noformat}
was:
{noformat}
[rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
678 total
[rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
754 total
[rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
794 total
[rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
1121 total
[rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
3359 total
{noformat}
> Consider dropping base module; copy container integration code to every integration
> -----------------------------------------------------------------------------------
>
> Key: MODCLUSTER-500
> URL: https://issues.jboss.org/browse/MODCLUSTER-500
> Project: mod_cluster
> Issue Type: Task
> Components: Core & Container Integration (Java)
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Fix For: 2.0.0.Alpha1
>
>
> The main reason for this would be to do the build process right in one take and thus simplify installation (and CI too).
> {noformat}
> [rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
> 678 total
> [rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
> 754 total
> [rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
> 794 total
> [rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
> 1121 total
> [rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
> 3359 total
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-500) Consider dropping base module; copy container integration code to every integration
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-500?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-500:
--------------------------------------
Component/s: Core & Container Integration (Java)
> Consider dropping base module; copy container integration code to every integration
> -----------------------------------------------------------------------------------
>
> Key: MODCLUSTER-500
> URL: https://issues.jboss.org/browse/MODCLUSTER-500
> Project: mod_cluster
> Issue Type: Task
> Components: Core & Container Integration (Java)
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Fix For: 2.0.0.Alpha1
>
>
> {noformat}
> [rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
> 678 total
> [rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
> 754 total
> [rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
> 794 total
> [rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
> 1121 total
> [rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
> 3359 total
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-500) Consider dropping base module; copy container integration code to every integration
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-500?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-500:
--------------------------------------
Description:
{noformat}
[rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
678 total
[rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
754 total
[rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
794 total
[rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
1121 total
[rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
3359 total
{noformat}
> Consider dropping base module; copy container integration code to every integration
> -----------------------------------------------------------------------------------
>
> Key: MODCLUSTER-500
> URL: https://issues.jboss.org/browse/MODCLUSTER-500
> Project: mod_cluster
> Issue Type: Task
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Fix For: 2.0.0.Alpha1
>
>
> {noformat}
> [rhusar@syrah container]$ find tomcat6 -name '*.java' | xargs wc -l
> 678 total
> [rhusar@syrah container]$ find tomcat7 -name '*.java' | xargs wc -l
> 754 total
> [rhusar@syrah container]$ find tomcat8 -name '*.java' | xargs wc -l
> 794 total
> [rhusar@syrah container]$ find tomcat9 -name '*.java' | xargs wc -l
> 1121 total
> [rhusar@syrah container]$ find catalina -name '*.java' | xargs wc -l
> 3359 total
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-499) tarballs or git submodules for: openssl, httpd and apr in mod_proxy_cluster repo
by Michal Karm Babacek (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-499?page=com.atlassian.jira.pl... ]
Michal Karm Babacek commented on MODCLUSTER-499:
------------------------------------------------
[~rhusar], taking openssl as an example (exactly the same applies to httpd project), one can either download from an ftp/http mirror, e.g.
* ftp://ftp.openssl.org/source/ (httpd: https://archive.apache.org/dist/httpd/httpd-2.4.20.tar.gz)
or from the official Github site:
* either cloning:
** https://github.com/openssl/openssl (https://github.com/apache/httpd)
* or downloading
** https://github.com/openssl/openssl/archive/OpenSSL_1_0_2-stable.zip
I find all the aforementioned sound (but for plain ftp :)). Gotta look into the difference between what they "release" as source code tarballs and what's on the GitHub as a source repository. There is definitely some post-processing going on with at least httpd. So far, I've been using sources cloned directly from GitHub.
Far more important decision is to embrace or reject the idea of git submodules of mod_proxy_cluster dependencies being directly in our mod_proxy_cluster repo. We had had a chat with [~gzaronikas] yesterday and we arrived at the conclusion that git submodules would make the most sense; although I have been having second thoughts since...especially due to the fact that if I have this structure:
{noformat}
mod_proxy_cluster
|
|-- CMakeLists.txt
|-- native
| |-- CMakeLists.txt
| |-- advertise (other files omitted for brevity)
| | `-- CMakeLists.txt
| |-- mod_cluster_slotmem
| | `-- CMakeLists.txt
| |-- mod_manager
| | `-- CMakeLists.txt
| `-- mod_proxy_cluster
| `-- CMakeLists.txt
|-- openssl (no other files actually present from now on)
| |-- CMakeLists.txt
| |-- crypto
| | `-- CMakeLists.txt
| |-- ssl
| | `-- CMakeLists.txt
| `-- apps
| `-- CMakeLists.txt
|-- apr
| `-- CMakeLists.txt
|-- apr-util
| `-- CMakeLists.txt
|-- pcre
| `-- CMakeLists.txt
|-- iconv
| `-- CMakeLists.txt
`-- httpd
`-- CMakeLists.txt
...
...
{noformat}
it kinda feels easier to use CMake commands in the parent CMakeLists.txt to download sources into the structure in comparison to adding git submodules and copy the nested CMakeLists.txt around...
> tarballs or git submodules for: openssl, httpd and apr in mod_proxy_cluster repo
> --------------------------------------------------------------------------------
>
> Key: MODCLUSTER-499
> URL: https://issues.jboss.org/browse/MODCLUSTER-499
> Project: mod_cluster
> Issue Type: Enhancement
> Components: Native (httpd modules)
> Affects Versions: 2.0.0.Alpha1
> Reporter: Michal Karm Babacek
> Assignee: Michal Karm Babacek
>
> h3. Task at hand
> * we are gradually getting rid of [the old build system|http://anonsvn.jboss.org/repos/jbossnative/trunk/], moving towards CMake
> * we don't want any auxiliary "util" or "helper" scripts hanging around, we want a pure CMake driven project
> * mod_proxy_cluster depends on:
> ** httpd
> *** apr
> *** apr-util
> *** openssl
> *** pcre
> *** iconv
> * we need to build these from sources
> h3. Solutions
> h4. Parent CMakeLists downloads tarballs
> * we keep openssl and httpd CMakeLists files in the directory structure
> * parent CMakeLists downlaods tarballs before children resolution
> h4. We use git submodules
> * we add the dependencies as git submodules
> * parent CMakeLists does not downlaod anything, it merely checkouts into the desired versions of our dependencies
> * we need to keep our:{noformat}mod_proxy_cluster/openssl/CMakeLists{noformat}, {noformat}mod_proxy_cluster/openssl/crypto/CMakeLists{noformat} etc. *and* submodules; perhaps needs something like {{openssl_build}} (our CMakeLists files) and {{openssl}} (git submodule) directories and {{mod_proxy_cluster/CMakeLists}} taking care of copying prior to children resolution
> Gonna prototype and see what works the best.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-499) tarballs or git submodules for: openssl, httpd and apr in mod_proxy_cluster repo
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-499?page=com.atlassian.jira.pl... ]
Radoslav Husar edited comment on MODCLUSTER-499 at 5/13/16 6:30 AM:
--------------------------------------------------------------------
Where can the tarballs be downloaded from? If its from an official apache hosting, that sounds best to me atm.
was (Author: rhusar):
Where can the tarballs be downloaded from? If its from an official apache hosting, that sounds best to me.
> tarballs or git submodules for: openssl, httpd and apr in mod_proxy_cluster repo
> --------------------------------------------------------------------------------
>
> Key: MODCLUSTER-499
> URL: https://issues.jboss.org/browse/MODCLUSTER-499
> Project: mod_cluster
> Issue Type: Enhancement
> Components: Native (httpd modules)
> Affects Versions: 2.0.0.Alpha1
> Reporter: Michal Karm Babacek
> Assignee: Michal Karm Babacek
>
> h3. Task at hand
> * we are gradually getting rid of [the old build system|http://anonsvn.jboss.org/repos/jbossnative/trunk/], moving towards CMake
> * we don't want any auxiliary "util" or "helper" scripts hanging around, we want a pure CMake driven project
> * mod_proxy_cluster depends on:
> ** httpd
> *** apr
> *** apr-util
> *** openssl
> *** pcre
> *** iconv
> * we need to build these from sources
> h3. Solutions
> h4. Parent CMakeLists downloads tarballs
> * we keep openssl and httpd CMakeLists files in the directory structure
> * parent CMakeLists downlaods tarballs before children resolution
> h4. We use git submodules
> * we add the dependencies as git submodules
> * parent CMakeLists does not downlaod anything, it merely checkouts into the desired versions of our dependencies
> * we need to keep our:{noformat}mod_proxy_cluster/openssl/CMakeLists{noformat}, {noformat}mod_proxy_cluster/openssl/crypto/CMakeLists{noformat} etc. *and* submodules; perhaps needs something like {{openssl_build}} (our CMakeLists files) and {{openssl}} (git submodule) directories and {{mod_proxy_cluster/CMakeLists}} taking care of copying prior to children resolution
> Gonna prototype and see what works the best.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months
[JBoss JIRA] (MODCLUSTER-499) tarballs or git submodules for: openssl, httpd and apr in mod_proxy_cluster repo
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-499?page=com.atlassian.jira.pl... ]
Radoslav Husar commented on MODCLUSTER-499:
-------------------------------------------
Where can the tarballs be downloaded from? If its from an official apache hosting, that sounds best to me.
> tarballs or git submodules for: openssl, httpd and apr in mod_proxy_cluster repo
> --------------------------------------------------------------------------------
>
> Key: MODCLUSTER-499
> URL: https://issues.jboss.org/browse/MODCLUSTER-499
> Project: mod_cluster
> Issue Type: Enhancement
> Components: Native (httpd modules)
> Affects Versions: 2.0.0.Alpha1
> Reporter: Michal Karm Babacek
> Assignee: Michal Karm Babacek
>
> h3. Task at hand
> * we are gradually getting rid of [the old build system|http://anonsvn.jboss.org/repos/jbossnative/trunk/], moving towards CMake
> * we don't want any auxiliary "util" or "helper" scripts hanging around, we want a pure CMake driven project
> * mod_proxy_cluster depends on:
> ** httpd
> *** apr
> *** apr-util
> *** openssl
> *** pcre
> *** iconv
> * we need to build these from sources
> h3. Solutions
> h4. Parent CMakeLists downloads tarballs
> * we keep openssl and httpd CMakeLists files in the directory structure
> * parent CMakeLists downlaods tarballs before children resolution
> h4. We use git submodules
> * we add the dependencies as git submodules
> * parent CMakeLists does not downlaod anything, it merely checkouts into the desired versions of our dependencies
> * we need to keep our:{noformat}mod_proxy_cluster/openssl/CMakeLists{noformat}, {noformat}mod_proxy_cluster/openssl/crypto/CMakeLists{noformat} etc. *and* submodules; perhaps needs something like {{openssl_build}} (our CMakeLists files) and {{openssl}} (git submodule) directories and {{mod_proxy_cluster/CMakeLists}} taking care of copying prior to children resolution
> Gonna prototype and see what works the best.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 7 months