|
602
|
1 |
Grunt Building |
|
|
2 |
============== |
|
|
3 |
|
|
|
4 |
Our dev and release builds are handled by [Grunt](http://gruntjs.com/). |
|
|
5 |
|
|
|
6 |
Installation |
|
|
7 |
------------ |
|
|
8 |
|
|
|
9 |
First you need to install the `grunt-cli` (`npm -g install grunt-cli`) |
|
|
10 |
|
|
|
11 |
After cloning you can simply do an NPM install. |
|
|
12 |
|
|
|
13 |
`npm install` |
|
|
14 |
|
|
|
15 |
This will install the tools needed locally and build the library and npm package. |
|
|
16 |
|
|
|
17 |
Shortcuts |
|
|
18 |
--------- |
|
|
19 |
|
|
|
20 |
* `grunt build` Runs a `yogi` build. |
|
|
21 |
* `grunt npm` Runs the npm build. |
|
|
22 |
* `grunt test` Runs a `yogi test` on the entire lib. |
|
|
23 |
* `grunt test-cli` Runs only the CLI tests. |
|
|
24 |
* `grunt travis` Runs a custom build/test just for Travis CI. |
|
|
25 |
* `grunt release` Runs a release build (more below) |
|
|
26 |
* `grunt`, `grunt help`, `grunt yui` Will display build help. |
|
|
27 |
|
|
|
28 |
Release Build |
|
|
29 |
------------- |
|
|
30 |
|
|
|
31 |
You can do a full YUI release build with `grunt release`. |
|
|
32 |
|
|
|
33 |
This command uses two CLI options (`--release-version` and `--release-build`). |
|
|
34 |
|
|
|
35 |
* `--release-version` The version to stamp the files with |
|
|
36 |
* `--release-build` The build number of this release. |
|
|
37 |
|
|
|
38 |
If `--release-build` is not provided, the last Git sha (short version) will be used in it's place. |
|
|
39 |
|
|
|
40 |
Release builds are stored under: `./releases/[VERSION]/` |
|
|
41 |
|
|
|
42 |
The release build consists of the following artifacts: |
|
|
43 |
|
|
|
44 |
* `dist release zip` Containing source, tests, HISTORY, api docs and landing pages. |
|
|
45 |
* `cdn release zip` Contains the build dir stamped for a CDN release (CSS files processed for relative paths) |
|
|
46 |
* `ssl cdn release zip` Same as above only tweaked for SSL access. |
|
|
47 |
* `npm package` The npm package designed for a simple `npm publish` |
|
|
48 |
|
|
|
49 |
Other Builds |
|
|
50 |
------------ |
|
|
51 |
|
|
|
52 |
We no longer require a `Makefile` for any of our modules, they have all been converted to `grunt` builds. |
|
|
53 |
|
|
|
54 |
* `cssnormalize` Under `src/cssnormalize`, `grunt` will import the source. |
|
|
55 |
* `handlebars` Under `src/handlebars`, `grunt` will import the source. |
|
|
56 |
* `test` Under `src/test`, `grunt` will import the source. |
|
|
57 |
|