Below is a developer guide if you want to hack on Codebrag yourself. If you are just looking for installation or upgrade instructions, please refer to the wiki
Prerequisites:
- sbt 0.13.6
- nodejs 0.10.13 or newer (make sure
nodeandnpmare available onPATH)
- Configure
local.confin thecodebraghome directory basing oncodebrag-rest/src/main/resources/application.conf.template - Checkout a SVN/Git repository to chosen
repos-rootfolder - Codebrag won't do that for you! - Navigate to the
codebraghome directory - Execute
./run.shscript - Default browser should open at
localhost:9090
- Go to project dir
- Configure
local.confin thecodebraghome directory basing oncodebrag-rest/src/main/resources/application.conf.template - Start sbt with
sbt - Open project in your favorite IDE
- Run backend server on jetty with
~ container:start. Project will be recompiled & redeployed every time Scala sources will be changed. - Go to
codebrag-uiproject. If this is your first attempt, runnpm install. This will install all the dependencies required to start UI Codebrag application. Then run./node_modules/.bin/grunt server. If you havegruntinstalled globally you can usegrunt serverinstead.
Default browser should open at http://localhost:9090
For more information about UI application build please consult README in codebrag-ui project
You may want to run Codebrag without backend services e.g. to work on frontend side (HTML, CSS).
Follow the instructions in codebrag-ui project README to install all required stuff.
When Codebrag is run, appending ?nobackend to any URL lets you work with stubbed data - with no backend required.
If you want to execute tests from sbt and skip slow cases requiring database, you can execute following command:
test-only * -- -l requiresDb
For logging we use SLF4J+Logback. An example configration file can be found in scripts/logback-example.xml. To use a
configuration file, either place a logback.xml file in the bundle, or specify an external one using
-Dlogback.configurationFile.
- Start sbt, change subproject:
project codebrag-dist - Run:
assembly - This will create a fat-jar. To start Codebrag with the given configuration, run:
java -Dconfig.file=[path to .conf file] -Dlogback.configurationFile=logback.xml -jar codebrag-dist-assembly-[version].jar
When using the embedded SQL storage, it may be useful to browse the tables. H2 provides consoles, which can be run as follows:
- For a web console, run from sbt:
codebrag-dao/run-h2-console - For a command line console, run
java -Dconfig.file=codebrag.conf -cp [path to the fat JAR] com.softwaremill.codebrag.dao.sql.H2ShellConsole