Skip to content

A tiny publish tool. Copying your files to remote server.

License

Notifications You must be signed in to change notification settings

fangqk1991/mini-publish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mini-publish

Installation

npm install -g mini-publish

Configuration file

You should create a configuration file. Example:

// YOUR-CONFIG-FILE.js
module.exports = {
  name: 'SomeProject',
  sourceDir: __dirname,
  includes: [
    '/some-dir/'
  ],
  ignores: [
    '.git',
    '.DS_Store',
    '.idea',
    '.nyc_output'
    '/node_modules/'
  ],
  exeBefore: [
    `echo "[Echo in local] Prepare files..."`,
  ],
  exeAfter: [
    `echo "[Echo in local] Publish finished"`,
  ],
  remote: {
    host: '127.0.0.1',
    targetDir: '/var/www/some',
    publishBefore: [
      `echo "[Echo in remote server] Files uploading..."`,
    ],
    publishAfter: [
      `echo "[Echo in remote server] Files has been uploaded."`,
    ],
  }
}
  • name: project name
  • sourceDir: the path of project which will be upload to server
  • includes: items will be include for rsync, it takes higher priority then ignores
  • ignores: items will be exclude for rsync
  • remote.host: the remote server, such as fang@example.com
  • remote.port: the remote server port, such as 22, default 22
  • remote.targetDir: the remote directory for project

You can see lib/publish.tmpl for more information.

Usage

mini-publish YOUR-CONFIG-FILE.js

Extras

You can mini-publish in any project other than JavaScript.

About

A tiny publish tool. Copying your files to remote server.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published