- Add
gem 'circleci'
to your dashing projectGemfile
bundle install
git clone [email protected]:mtchavez/dashing-circleci.git
- Copy weather fonts into your dashing project
mkdir -p dashing/assets/fonts
cp dashing-circleci/assets/fonts/weather.* dashing/assets/fonts
- Make a config directory and copy sample
circleci.yml
config
mkdir -p dashing/config
cp dashing-circleci/config/circleci.yml dashing/config
- Copy
CircleCI
widget into your dashing project widgets
mkdir -p dashing/widgets/circle_ci
cp -R dashing-circleci/widgets/circle_ci dashing/widgets/circle_ci
- Add
circleci.rb
job to dashing jobs
cp dashing-circleci/jobs/circleci.rb dashing/jobs
- Optionally copy example dashboard or use as a reference to make your own
cp dashing-circleci/dashboards/ci.erb dashing/dashboards
The config/circleci.yml
is used to setup the repositories you want to display.
You will need to modify this file to add your own repositories as well as your CircleCI API token
token: circle_ci_token
projects:
- user: github_username
repo: repository_name
css_id: repo-id
- user: mtchavez
repo: dashing-circleci
css_id: dashing-circleci
To display your dashboard you can use the dashboards/ci.erb
file in the repo as an example.
An example dashboard for the above config would be
<title>CircleCI</title>
<div class="gridster ready">
<ul>
<!-- Row 1 -->
<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
<div data-id="repo-id" data-view="CircleCi" data-unordered="true" data-title="Repository 1"></div>
</li>
<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
<div data-id="dashing-circleci" data-view="CircleCi" data-unordered="true" data-title="Dashing CircleCI"></div>
</li>
</ul>
</div>
The job requires the CircleCI gem so make sure that is installed first.
The circleci job only looks at master branches for your repositories. At my current job we found all our topic and feature branches were too noisy with builds and distracted from the status of our most important branch, master.
There is also a super basic, and probably not very well done, "weather" check of your master branch. Depending on the last 10 builds of your master branch it will display a different weather icon ala Jenkins.
Currently the job runs once a minute, but you can change that to whatever fits best for you.