Project Management, Collaboration and Time Tracking.
Ruby HTML JavaScript CSS Other
Permalink
Failed to load latest commit information.
app Fix bug with properties and todos for creating task from template. Sep 29, 2016
autotest Use single quoted strings for consistency, unless there is some embed… Jun 30, 2016
bin Use single quoted strings for consistency, unless there is some embed… Jun 30, 2016
config Better docs Sep 7, 2016
db Grant permissions for default project. Sep 29, 2016
doc Remove forums from the entire system. This deletes all existing data. May 7, 2011
features Invert unless/else statements to make them more readable. Jun 30, 2016
lib Document why we have this unusual include. Jul 4, 2016
log adding file perm changes Aug 26, 2009
public Moved tiny_mce asset files inside vendor/assets/javascripts Jul 23, 2013
resources Make the access control much prettier. Apr 21, 2010
scm_hooks Use single quoted strings for consistency, unless there is some embed… Jun 30, 2016
script Use single quoted strings for consistency, unless there is some embed… Jun 30, 2016
spec Fix spec test according to last chnages. User should be redirected to… Sep 2, 2016
test Fix test. Now we set default Type for new tasks. Sep 29, 2016
vendor Tidy up some CSS which wasn't used or more complex than it needed to … Jul 2, 2016
.boring Exclude Eclipe configuration files from git. Feb 7, 2010
.gitignore Let's not ignore these files. Turns out that our build process needs … Mar 6, 2016
.rspec Add ci:build rake task Mar 20, 2013
.ruby-gemset Not sure how the gemset name changed, but putting it back. Mar 1, 2016
.ruby-version We need new jruby for the latest openjdk 102 release Sep 14, 2016
.travis.yml Update ruby version in travis-ci config Sep 16, 2016
CONTRIBUTORS Add Andrei Malyshev to contributors list. Apr 6, 2016
DEVELOPMENT.md Security patch to Rails and jruby Oct 31, 2014
Gemfile remove N+1 queries for task list Aug 30, 2016
Gemfile.lock Update paginate gem to hopefully fix some pagination issues we have Oct 2, 2016
LICENSE Add documentation of support locations and other URLs to the top of t… Jan 3, 2011
NOTICE Update some docs May 13, 2016
Procfile Add Procfile for foreman Mar 19, 2013
README.rdoc Remove wrong instruction. Remove gem 'activerecord-session_store' fro… Jul 13, 2016
RELEASE-NOTES.rdoc Remove the failed logstash experiment Jun 17, 2016
Rakefile The previous commit fixed our Jenkins build problem. But let's revert… May 11, 2016
config.ru Rename mail module. Dec 16, 2010
init.rb Fix issue with version based deployment to Tomcat.. Sep 26, 2015

README.rdoc

Jobsworth Project Management

Build
Status

Welcome to the jobsworth project management, support ticketing and CRM system. This software is licensed under the AGPLv3.

Jobsworth can be used for helpdesk support ticketing, customer liasion, resource management (eg. systems and password tracking) and has a range of CRM type functionality. Plan your projects, see your schedule, know if you're slipping behind and why. Time Tracking and extensive reports help you show your clients exactly what you've done and for how long.

Features

  • no restrictions or limits

  • interactive gantt chart & scheduling

  • flexible reporting

  • tracks and indexes all changes

  • notifications via email, rss & ical

  • ldap integration

  • accounting/billing system integration

  • custom attributes

  • inbound and outbound email integration

  • sophisticated access control

  • services (SLA)

  • resources

  • much much more

Further project details can be seen at Ohloh.

Support

The primary support is through the mailing list or if you have a bug report, create an issue in the tracker. If you want to write up details of a new feature you'd like to see, please use the wiki.

Contributing

Code contributions are welcome to this project and the best way to go about it is to fork the git repository:

https://github.com/ari/jobsworth

Please read the DEVELOPMENT.md file in this directory for more information. Join the developer mailing list to discuss ideas or ask questions.

Installing jobsworth on your server

Step 1: Database

Create a new database and user with full permissions to that database. You can use mysql, mariadb, percona or postgresql.

Step 2: Servlet container

Install Apache Tomcat (or another java servlet container) and make sure you can get to the default installation home page. How to install Tomcat or some other servlet container is beyond the scope of these instructions but the basic details can be found in the documentation. Don't be afraid of all those XML configuration files in Tomcat; mostly they can be left to default values.

There is one file you will need to edit and that is context.xml. This file defines all the configuration for your application. Copy the example into the tomcat configuration folder and set all the variables to reasonable choices for your system.

Step 3: Install jobsworth

After all that setup we can now install the software. Just take the file ROOT.war from the github release and copy it into the webapps folder inside tomcat. If you ever need to upgrade in the future, just replace that one file.

Step 4: Connect

Open a web browser and connect to your jobsworth server. The default user is “admin” and password is “password”. Remember to change the password for this user or disable it.

Optional: Set up email receiving

When jobsworth sends outgoing emails for task updates, they will have a reply address which looks like this:

task-1234@acme.domain.com.au

If a user hits reply to that email, you want it to be appended to the task comments. Here's how to set this up for sendmail; adapt the script for your own mail server. Mail can be running on a different server to jobsworth because we use HTTP to push the mail from your mail server to jobsworth.

Sendmail

Add an entry to /etc/mail/local-host-names for your hostname:

acme.domain.com.au

Add an entry to /etc/mail/aliases to create an alias that will hand off emails to a script

jobsworth: "|/usr/local/share/jobsworth/mail_script.sh"

Add an entry to /etc/mail/virtusertable to redirect all emails to your domain to the above alias

@acme.domain.com.au        jobsworth

run “make; make restart” in /etc/mail to rebuild the sendmail databases.

Now create a script at /usr/local/share/jobsworth/mail_script.sh with the following contents

#!/bin/sh
SECRET=password1234
URL=https://acme.domain.com.au/emails
cat $2 | /usr/local/bin/curl -s -k --data-urlencode secret=${SECRET} --data-urlencode email@- ${URL}

Make sure you change the password and you make it the same as the password in the context.xml file.

Debugging

Accessing Rails console and rake commands

It is now possible to access Rails console in Java environment

cd path/to/directory/WEB-INF/
RAILS_ENV=production bash ./script/jruby_jar_exec ./script/rails console

Or run rake

RAILS_ENV=production bash ./script/jruby_jar_exec rake notes

NOTE: It is important that rake is not already present in PATH.

Resources

Project page

github.com/ari/jobsworth

Mailing list

groups.google.com/group/jobsworth

License

Copyright © 2008-2013 Aristedes Maniatis. The trademark and any branding associated with the name jobsworth are not released under any license and may not be used without permission.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License version 3 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

See LICENSE file for more details.