npm install faf-toolCommand line utility which helps in setting up faf project
1. Install
1. Basic Usage
1. Commands
1. CLI Options
1. Settings File
``bash
npm install -g faf-tool
`
##Basic Usage
`bash
mkdir diamond-feature
cd diamond-feature
faf-tool
`
running faf-tool without command shows help and copy settings.json.example to current foldersettings.json.example
rename to settings.json and edit it, for example:
`javascript`
{
"svn-server": "svnserver.jaspersoft.com",
"release-cycle": "diamond",
"feature-name": "feature",
"jasperserver-branch": "diamond-ce-feature",
"jasperserver-pro-branch": "diamond-pro-feature",
"modules": [
"bi-charts",
"bi-dashboard",
"bi-report",
"bi-repository",
"js-sdk",
"jrs-ui",
"jrs-ui-pro"
]
}
Prepare local project to work
`bash
faf-tool setup
`
##Commands
#### setup
Checkout selected modules and run npm init
`bash
faf-tool setup
`
#### init
Initialize for each module: npm install && npm prune && grunt init
`bash
faf-tool init
`
#### watch
Start watchers assets like js,hml,css etc in all faf packages
`bash
faf-tool watch
`
> To find out local deployment you have to prepare .workspace file
#### update-init
Update and initialize for each module: svn up && npm install && npm prune && grunt init
`bash
faf-tool update-init
`
#### checkout-full
Checking out faf modules and jrs if specified
`bash
faf-tool create-feature
`
#### switch
Switch repository to specified branch
`bash
faf-tool switch
`
#### downmerge
Runs svn up and svn merge from trunk command for FAF modules and JRS
Accepts "--accept=
Accepts "--separate-changelist=
`bash
faf-tool downmerge
`
#### removecl
removes all changelists which was created during downmerge task
executed with --separate-changelist=true wich is set by default
`bash
faf-tool removecl
`
#### cleanup
runs svn cleanup for each module
`bash
faf-tool cleanup
`
- --dry-run=true--verbose
- --no-time
- - hide time report--username=
- - svn username--password=
- - svn password--accept=
- - argument for svn merge command, works for "downmerge" task. Default "postpone".--parallel=
- - argument for parallel command execution, works for most tasks which use svn. Default "true".--separate-changelist=
- - argument for adding module changes to a separate svn changelist, works for "downmerge" task. Default "true"
##Dry run example
`bash
faf-tool create-feature --dry-run
`
##Settings File
Look at settings.json samples
`javascript
{
// by default it uses "https://" protocol
"svn-server": "svnserver.jaspersoft.com",
// branch name parts
//name of the feature branch or "trunk"
"feature-name": "
// optional parameter for features without release cycle like bugfix
"release-cycle": "
// optional JRS branches names used for checkout JRS
"jasperserver-branch": "
"jasperserver-pro-branch": "
// optional JRS location
"jasperserver-ci-path": "
"jasperserver-pro-ci-path": "
// optional svn credentials
"username": "username",
"password":"password",
"modules": [
"bi-charts",
"bi-dashboard",
"bi-report",
"bi-repository",
"js-sdk",
"jrs-ui",
"jrs-ui-pro"
]
}
``