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
node
andnpm
are available onPATH
)
- Configure
local.conf
in thecodebrag
home directory basing oncodebrag-rest/src/main/resources/application.conf.template
- Checkout a SVN/Git repository to chosen
repos-root
folder - Codebrag won't do that for you! - Navigate to the
codebrag
home directory - Execute
./run.sh
script - Default browser should open at
localhost:9090
- Go to project dir
- Configure
local.conf
in thecodebrag
home 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-ui
project. 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 havegrunt
installed globally you can usegrunt server
instead.
Default browser should open at https://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