Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 1,000,000+ packages pre-installed, including mecano with all npm packages installed. Try it out:

var mecano = require("mecano")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

mecano v0.6.0

Common functions for system deployment.

Build Status

Node.js Mecano

Mecano gather a set of functions usually used during system deployment. Documentation is available on the project website.

Functions include "chmod", "chown", "copy", "download", "execute", "extract", "git", "ini", "krb5_ktadd", "krb5_addprinc", "krb5_delprinc", "ldap_acl", "ldap_index", "ldap_schema", "link", "mkdir", "move", "remove", "render", "service", "touch", "upload" and "file". They all share common usages and philosophies:

  • Run seamlessly both locally and remotely over SSH.
  • Each action report if it had an effect.
  • Common behavior and API between actions: same action signature with options followed by callback; similar options properties; same callback signature with an error followed the number of affected actions.
  • Run one or multiple actions depending on option argument being an object or an array of objects.
  • Optmized for ease of use and checking over performance.
  • Full test coverage.


npm install mecano


For the tests to execute successfully, you must:

  • be online (attempt to fetch an ftp file)
  • be able to ssh yourself (eg ssh $(whoami)@localhost) without a password
# run all tests
npm test
# or a subset
npm run coffee && mocha test/api

Some of the tests require a specific environment. You are encouraged to customize which tests you wish to run and to use docker container.

To filter and configure your tests, you can either create a "" at the root of this project or point the "MECANO_TEST" environment variable to such a file. You can use the file "" as a starting point.

There are tests prepared to run on CentOS and Ubuntu using docker. Goto to one of the docker directory and run docker-compose, here's an example to run tests on CentOS:

cd docker/centos7 # or centos6
# Run all tests
docker-compose up --abort-on-container-exit
# Enter bash console
docker-compose run --rm nodejs
# Run a subset of the tests
docker-compose run --rm nodejs test/core
RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free