Skip to main content

A _minimalist_ personal command line friendly CI server. Automatically runs your build whenever one of the monitored files of the monitored projects has changed.

Project description

-------
Summary
-------

Nosyd is a _minimalist_ personal command line friendly CI server. It is primarily meant to run on your developer machine.
Nosyd tracks multiple projects and automatically runs your build whenever one of the monitored files of the monitored projects has changed.

------------
How it works
------------

Nosyd is an auto-testing tool, also called personnal Continuous Integration server. It is a daemonization of Jeff Wrinkler's original nosy script [1].

Nosyd sits in the background and can monitor multiple projects. This means you only need one instance of nosyd on your desktop.
Today nosyd rebuilds projects if one of the files it monitors has changed. After it has built the project, nosyd tries to notify you
of the build results using Desktop notifications. When it can, nosyd uses information from the build to report accurate information (number of failed tests, etc).
Nosyd then goes back waiting for a project to be rebuilt.

Nosyd version has a command line interface, configuration files, supports multiple builders and desktop notifiers notifiers.

--------
Features
--------

* automatically run your build whenever one of the monitored files of the monitored projects has changed
* filesets to select files monitored
* support multiple builders (nosetests, maven2, trial, django)
* notify using Gnome's notification library on Linux, Growl on Mac OS X
* per project configuration to override defaults
* command line interface to add/remove/list jobs
* persists daemon configuration using files and links
* logging

-----
Usage
-----

* install in path and run nosyd in a terminal to start the daemon. The terminal should be kept open, you will see the build output there
* optionally create a ~/.nosyd/config to override some of the configuration
* optionaly create a .nosy file in your project's directory. If that file changes, the file will be reloaded at next build.
* add/remove the monitored project by using --add/--remove [path] options
** you can also do it manually by adding/removing symlinks into the .nosyd/jobs/ directory
ln -s /path/to/your/project ~/.nosyd/jobs/

------
Layout
------

~/.nosyd/config optional main nosyd configuration
~/.nosyd/stop temporary file created to indicate nosyd should stop
~/.nosyd/jobs/a_link link to a directory on your file system representing a monitored project

/path/to/your/project/.nosy optional project specific configuration for nosyd

--------------
Configurations
--------------

Default values for the various configuration files:

~/.nosyd/config

[nosyd]
#logging=warning
#check_period=1

/path/to/your/project/.nosy

[nosy]
#type=default
#monitor_paths (project specific)
#logging=warning (for the project and associated builder and notifier)
#check_period (when ran standalone, i.e. with --local)


----
Help
----

Usage: nosyd [options]

Options:
--version show program's version number and exit
-h, --help show this help message and exit
-a, --add Start monitoring the specified or current directory
-r, --remove Stop monitoring the specified or current directory
-l, --list List the monitored projects
-c, --clean Clean the projects nosyd can't track anymore (links point to
nowhere)
-1, --local Run the standalone nosyd on the specified or current directory
-s, --stop Stops the running server, if any

Default behavior:
Start nosyd

Comments & bugs to <jerome.lacoste@gmail.com>


-----
Links
-----

[1] http://jeffwinkler.net/2006/04/27/keeping-your-nose-green/
[2] http://douglatornell.ca/software/python/Nosy-1.0.tar.gz


-------
Changes
-------

0.0.5 (2009-10-09)
==================

- Nosyd should now run on Mac OS X
- Mac OS X / Growl notifier support (http://growl.info/)
- new Django builder
- new CLI options (--stop)
- be smarter at identifying the monitored project files
- some performance improvements (cache some of the monitored files resolution to lower CPU usage)
- auto-rebuild project when .nosy file is changed



0.0.4 (2009-10-06)
==================

- setuptools support. Project split into multiple files



0.0.3 (2009-09-26)
==================

- add Trial and Maven2 builders
- support FileSet for identifying monitored files
- be more cross platform

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Nosyd-0.0.5.tar.gz (12.8 kB view details)

Uploaded Source

Built Distributions

Nosyd-0.0.5.linux-i686.tar.gz (22.1 kB view details)

Uploaded Source

Nosyd-0.0.5-py2.6.egg (27.0 kB view details)

Uploaded Source

File details

Details for the file Nosyd-0.0.5.tar.gz.

File metadata

  • Download URL: Nosyd-0.0.5.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Nosyd-0.0.5.tar.gz
Algorithm Hash digest
SHA256 7294aed06c87c8255e79724f59e1d2074769a5ec2c02baa8e5372ef0a6e62ed5
MD5 fb5486086ea628ef1e685ce1fc07d5fc
BLAKE2b-256 e2c5f568aeb67f622a6221cfb993c7340aadd3151cac468ea53e7c08894929d6

See more details on using hashes here.

File details

Details for the file Nosyd-0.0.5.linux-i686.tar.gz.

File metadata

File hashes

Hashes for Nosyd-0.0.5.linux-i686.tar.gz
Algorithm Hash digest
SHA256 ad8ba5fe0860d1fe8477650cbf14146adf396fb039eb75f7b11911282762bb0f
MD5 ba037512c015dcf0f589a08ddd61b39f
BLAKE2b-256 34f20eaea99d51276d95adae0954ab0eb9bd8778da923d88ad2ca539722e5445

See more details on using hashes here.

File details

Details for the file Nosyd-0.0.5-py2.6.egg.

File metadata

  • Download URL: Nosyd-0.0.5-py2.6.egg
  • Upload date:
  • Size: 27.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Nosyd-0.0.5-py2.6.egg
Algorithm Hash digest
SHA256 3d9e4503ca6f93e9f5434c5227b8c3573ce988e8fe4a54a898964cbafff0da2d
MD5 e56d2a5bf63d3282afda2202f57ac714
BLAKE2b-256 5ced7ab1e49c12c5a80d098cf391b7f27eee035d1be46cb27c105af27016b5c9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page