View File | Revision Log | Show Annotations | Download File | View Changeset
/hippo/hippo-cms7/essentials/trunk/README.md
Revision: 51941
Committed: Thu Mar 5 09:58:07 2015 UTC (5 years, 10 months ago) by tjeger
File size: 4760 byte(s)
Log Message:
ESSENTIALS-505: Update README and licensing.

File Contents

# Content
1 # Hippo Essentials
2 Hippo Essentials is for developers who want to setup a new [Hippo CMS](http://www.onehippo.org) project. It enables
3 them to kickstart their project in a matter of minutes, to benefit from our best practices and to easily add Enterprise
4 or community plugins from the Hippo Marketplace.
5
6 ```
7 Please use the Hippo Essentials feedback form to inform us if you encounter any bugs/glitches or if you have any
8 suggestions for improvements.
9 ```
10
11 # Prerequisites
12
13 * Java 8
14 * Maven 3.x
15 * Git (http://git-scm.com)
16 * NodeJS (http://nodejs.org/) 0.10+
17 * Node Package Manager (http://npmjs.org)
18 * Grunt (http://gruntjs.org)
19 * Bower (http://bower.io)
20
21 Grunt and Bower can be installed with Node Package Manager:
22
23 ```shell
24 sudo npm install -g grunt-cli bower
25 ```
26
27 If Bower fails to download zipped dependencies, make sure it uses decompress-zip >= 0.0.4.
28 (e.g. check the file /usr/lib/node_modules/bower/node_modules/decompress-zip/package.json,
29 and reinstall Bower if decompress-zip is too old).
30
31 ## Windows specific preparation instructions
32
33 You can automate the installation of NodeJS and NPM using [Chocolatey package manager]
34 (https://chocolatey.org).
35
36 The package for Node.js can be installed using (this will also install NPM):
37
38 C:\> choco install nodejs.install
39
40 __Note:__ Due to a [bug] (http://jira.codehaus.org/browse/MEXEC-137) in the exec-maven-plugin the Maven build of the
41 API module will fail as the exec-maven-plugin is unable to find the __grunt__ and __bower__ commands. To fix this, do
42 the following:
43
44 * open folder `C:\Users\USER\AppData\Roaming\npm`
45 * copy __grunt.cmd__ to __grunt.bat__
46 * copy __bower.cmd__ to __bower.bat__
47
48 More information can be found [here] (http://stackoverflow.com/questions/22393785/exec-maven-plugin-says-cannot-run-specified-program-even-though-it-is-on-the-pa/22395703#22395703).
49
50 Installation of Git is also possible using Chocolatey:
51
52 C:\> choco install git.install
53
54
55 # Getting Started
56
57 ## SVN checkout
58
59 To get started with the Hippo Essentials, checkout the code. You have two options to check out
60 the project. The example commands below use the potentially unstable trunk snapshot. Consider
61 using a tag instead.
62
63 ### Read-only
64 ```shell
65 svn co http://svn.onehippo.org/repos/hippo/hippo-cms7/essentials/trunk essentials
66 ```
67
68 ### Read-write (you'll need Hippo SVN account for this)
69 ```shell
70 svn co https://svn.onehippo.org/repos/hippo/hippo-cms7/essentials/trunk essentials
71 ```
72
73 ### Build the essentials components:
74 ```shell
75 cd essentials
76 mvn clean install
77 ```
78
79 ### Validate license headers:
80 ```shell
81 mvn clean && mvn validate -Ppedantic
82 ```
83
84 ### Create and install archetype locally:
85 ```shell
86 svn co http://svn.onehippo.org/repos/hippo/hippo-cms7/archetype/trunk/ archetype
87 cd archetype
88 mvn clean install
89 ```
90
91 ### Generate a new Hippo project from the archetype (use appropriate archetype version):
92 ```shell
93 mvn archetype:generate -D "archetypeGroupId=org.onehippo.cms7" -D "archetypeArtifactId=hippo-project-archetype" -D "archetypeVersion=[archetype version]"
94 ```
95
96 ##Running locally
97
98
99 This project uses the Maven Cargo plugin to run the CMS, Website and Essentials dashboard locally in Tomcat.
100 From the project root folder, execute:
101
102 ```shell
103 mvn clean verify
104 mvn -P cargo.run -Drepo.path=storage
105 ```
106
107 The following URLs are available from this project:
108
109 * CMS at http://localhost:8080/cms
110 * Website at http://localhost:8080/site
111 * Essentials dashboard at http://localhost:8080/essentials
112
113 Logs are located in `target/tomcat8x/logs`
114
115 ##Using JRebel
116
117 Set the environment variable `REBEL_HOME` to the directory containing jrebel.jar.
118
119 Build with:
120
121 ```shell
122 mvn clean install -Djrebel
123 ```
124
125 Start with:
126
127 ```shell
128 mvn -P cargo.run -Djrebel
129 ```
130
131 ##Best Practice for development
132
133 Use the option `-Drepo.path=/some/path/to/repository` during start up. This will avoid
134 your repository to be cleared when you do a mvn clean.
135
136 For example start your project with:
137
138 ```shell
139 mvn -P cargo.run -Drepo.path=/home/usr/tmp/repo
140 ```
141 or with jrebel:
142
143 ```shell
144 mvn -P cargo.run -Drepo.path=/home/usr/tmp/repo -Djrebel
145 ```
146 ##Hot deploy
147
148 To hot deploy, redeploy or undeploy the CMS or site:
149
150 ```shell
151 cd cms (or site)
152 mvn cargo:redeploy (or cargo:undeploy, or cargo:deploy)
153 ```
154
155 ##Automatic Export
156
157 Essentials depends on the automatic export feature being enabled, which is the archetype-generated Hippo
158 project's default setting. You can change the setting temporarily in the upper right corner in the CMS,
159 or permanently in your project's file
160 `./bootstrap/configuration/src/main/resources/configuration/modules/autoexport-module.xml`
161
162 ##Copyright and license
163
164 Copyright 2013-2015 Hippo B.V.
165 Distributed under the [Apache 2.0 license](http://svn.onehippo.org/repos/hippo/hippo-cms7/essentials/trunk/LICENSE).
166