+1
It would prefer such kind of structure.
Regards
JB
On 02/17/2016 01:00 AM, Olivier Lamy wrote:
Hi,
From a noob POV, I prefer the option with
guacamole/
guacamole-client/
guacamole-server/
guacamole-extensions/
etc....
We can even try to have a maven build executing the C build (well it's just
a matter of executing some command line :-) )
Pros: easy to understand for newbies
Cons: no separation of concerns a release will be a release of all (is it
really a problem?)
On 17 February 2016 at 10:12, Mike Jumper <[email protected]> wrote:
After attempting the guacamole/{client,server} structure, things seem
rather confusing. I'm not sure I like how this structure feels,
particularly from the perspective of a user who will often have modest
experience with building things from source. Imagine that a user
clones the repository, like they are used to doing, lists its contents
and...
$ cd guacamole/
$ ls
client README.md server
$
Instant confusion. There is no build file in the root of the
repository; merely two solitary directories and a README which the
user must now *gulp* read. The structure works, but I think it's very
alien compared to other projects and past experience. Further, the
renaming such that the initial "guacamole-" prefix is no longer
present ends up being inconsistent with the way guacamole-client is
structured:
$ ls client/
CONTRIBUTING guacamole guacamole-ext project-assembly.xml
doc guacamole-common LICENSE README
extensions guacamole-common-js pom.xml
$
It would be nice to adopt a structure which is not only familiar but
consistent. This structure doesn't seem to provide either of those
characteristics.
What if we continue using guacamole-client as the overall parent, and
instead include guacamole-server as a subdirectory therein (even
though it's not a Maven project):
$ cd guacamole/
$ ls
CONTRIBUTING guacamole guacamole-ext pom.xml
doc guacamole-common guacamole-server project-assembly.xml
extensions guacamole-common-js LICENSE README.md
$
Perhaps a little less daunting/alien? Everything here builds
automatically via Maven, with the sole exception being
"guacamole-server" which is at least in a predictable and consistent
location with respect to the other subprojects. The overall structure
ends up being:
guacamole/
extensions/
guacamole-auth-jdbc/
guacamole-auth-ldap/
guacamole-auth-noauth/
guacamole/
guacamole-common/
guacamole-common-js/
guacamole-ext/
guacamole-server/
Thoughts?
On Tue, Feb 16, 2016 at 11:43 AM, Mike Jumper <[email protected]>
wrote:
OK, then. Unless there are any further ideas (or objections), I will
prepare
the import with the following structure:
guacamole/
client/
server/
and we can continue molding the repo from there with an overall
README.md,
as well as other required files.
Thanks, all.
- Mike
On Feb 12, 2016 12:38 AM, "Jean-Baptiste Onofré" <[email protected]>
wrote:
Good point, I forgot about this point.
At least a small README.md ;)
Regards
JB
On 02/12/2016 09:37 AM, Mike Jumper wrote:
On Feb 11, 2016 9:10 PM, "Jean-Baptiste Onofré" <[email protected]>
wrote:
+1
but I would add a parent pom to simplify the way of building.
A parent pom wouldn't work for the combined repository because
guacamole-server is a native C project. It is built using GNU
Autotools,
not Maven like guacamole-client.
To clarify:
guacamole-server is the parent project of six subprojects (and a few
convenience libraries) written in C99, all of which build using GNU
Autotools:
* guacd
* libguac
* libguac-client-rdp
* libguac-client-ssh
* libguac-client-telnet
* libguac-client-vnc
Building guacamole-server builds and installs each of those subprojects
automatically (through a traditional recursive build).
guacamole-client is the parent project of seven Java / JavaScript
subprojects, and is already set up with a proper parent pom:
* guacamole
* guacamole-auth-jdbc
* guacamole-auth-ldap
* guacamole-auth-noauth
* guacamole-common
* guacamole-common-js
* guacamole-ext
Building guacamole-client builds all subprojects due to the existing
parent
pom.
- Mike
--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com
--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com