This is the common build system for QLess' Grunt based projects
npm install --save-dev @qless/build-grunt
This will install the module in the project. It comes with a custom grunt
binary that only runs the commands below. This was done for backwards
compatibility until these projects are migrated to a more modern build.
By default, other than installing the module, there is no additional configuration needed.
To copy extra files (probably should get rid of those...), add a property to
the project's package.json
file called buildCopy
. It should be an array of glob string patterns relative to the root of the site.
npx grunt
Runs the development grunt build for local testing only.
npx grunt css
npx grunt assets
npx grunt html
These are the small tasks that build up each asset of the app. They should not really be ran by themselves.
npx grunt compile
This task compiles together all the assets commands and puts them in the dist folder
npx grunt build
npx grunt buildprod
These produce the final output WAR files. The difference is that build
is for
local development only.
buildprod
produces a version suitable for deploying to test envs and
production but only if used after bump
. As such, it should not be used
on its own but is included here to build a sample to that can be used to test
what will get deployed. npx grunt publish
should be used instead
npx grunt publish
Bumps the project version and then builds a WAR file that can be deployed to the different environments.
npx deploy
Deploys the files to QLess's test servers.
By default, it will do a patch version. To use a minor or major, add --bumpType=minor|major
after the task name.
npx grunt deploy
Builds a local suitable WAR file and then copies it to the host computer's local JBoss install. Left in purely for backwards compat.
To push changes in build-grunt
out to the front-ends using this tool, update the
package version in those projects as you would for any other package.
-
Create a tagged release of
build-grunt
- Create release branch from
develop
. - Merge release branch to
develop
andmaster
. - Tag release version on
master
. - Bump version.
- Create release branch from
-
Update package version for
build-grunt
in thepackage.json
for each consuming project:- APILogin
- CEC
- CIA (Calendar Integration)
- Calendar
- Monitor
// package.json { "devDependencies": { "@qless/build-grunt": "git://github.com/QLess/build-grunt.git#{version-tag}" } }
{version-tag}
would be the release tag likev1.7.0
:git://github.com/QLess/build-grunt.git#v1.7.0