JSPM

  • Created
  • Published
  • Downloads 114
  • Score
    100M100P100Q79472F
  • License MIT

Bipbip is a deploy tool

Package Exports

  • bipbip.js
  • bipbip.js/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (bipbip.js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Bipbip.js - Simple deployment tool

Build Status DUB

Bipbip.js is a simple tool to deploy, based on Node.js.

Bipbip.js

Installation

$ npm install -g bipbip.js@0.11.*

Getting Started

Run a deployment

$ bipbip <env>

# Run prod env
$ bipbip prod

Configuration

bipbip.js takes the deploy.js default file. The file takes a default configuration and supports environments.

The environment called is merged with default environment.

exports.config = {
  default: {
  },
  <env1>: {
  },
  <env2>: {
  }
}

Environment variables

workspace: "/path/to/workspace",
// empty string in releaseDir is used to deploy current folder (workspace)
releaseDir: "",
requirements: {
    local: [],
    remote: []
},
servers: [{
  user: "user",
  host: "server_to_deploy.io",
  to: "/path/to/deploy",
  port: 22
}],
repository: {
  url: "git@github.com:baptistedonaux/bipbip.js.git",

  // branch and tag should not be sets simultaneously
  branch: null,
  tag: null,
  
  options: {
    // clone submodule
    submodules: true|false
  }
},
commands:  {
  local: [
    // local commands to run (before send to remote server)
  ],
  remote: [
    // remote commands to run (after project send to remote server)
  ],
  postDeploy: [
    // remote commands to run (after new release deployed)
  ]
},
ignores: [
  // ignore files/folders
],
shared: {
  files: [
    // files shared
  ],
  folders: [
    // folders shared
  ]
},
releases: 3

Required values

{
  servers: [{
    user: "User to connect the remote server",
    host: "Server to deploy",
    to: "Absolute path where deploy"
  }]
}

Default values

{
  workspace: require("process").cwd(),
  requirements: {
    local: [],
    remote: []
  },
  servers: [{
    port: 22
  }],
  repository: {
    branch: null,
    options: {
      submodules: false
    },
    tag: null,
    url: null
  },
  commands:  {
    local: [],
    remote: [],
    postDeploy: []
  },
  ignores: [],
  shared: {
    files: [],
    folders: []
  },
  releases: 3
}

Test

$ npm test

Contribute

bipbip.js is a simple project. No specific or complexe features will are developped. For bugs and features, open an issue.