GithubHelp home page GithubHelp logo

martinic / ember-cli-deploy-couchdb Goto Github PK

View Code? Open in Web Editor NEW
13.0 4.0 2.0 605 KB

An ember-cli-deploy-plugin to upload an Ember App directly to a CouchDB cluster.

License: MIT License

JavaScript 85.79% HTML 14.21%

ember-cli-deploy-couchdb's Introduction

Ember-cli-deploy-couchdb

An ember-cli-deploy plugin to upload files to CouchDB

This plugin uploads an Ember App to a CouchDB design doc. The Ember App is served directly to the browser from CouchDB, without any other software in the stack.

What is an ember-cli-deploy plugin?

A plugin is an addon that can be executed as a part of the ember-cli-deploy pipeline. A plugin will implement one or more of the ember-cli-deploy's pipeline hooks.

For more information on what plugins are and how they work, please refer to the Plugin Documentation.

Quick Start

To get up and running quickly, do the following:

$ ember install ember-cli-deploy-couchdb
  • Place the following configuration into config/deploy.js
ENV.couchdb = {
  db: 'http://localhost:5984/emberapp'

  // optionally, if you are using ember-cli-deploy-build instead of
  // ember-cli-deploy-build-plus, also include the following

  // ddocname: emberapp,
  // couchDir: 'tmp/deploy-dist',
  // distDir: 'tmp/deploy-dist/_attachments'
}

If you are using ember-cli-deploy-build, you will also need to add the following to your build hook

ENV.build = {
  outputPath: 'tmp/deploy-dist/_attachments'
}
  • Place the following configuration into config/environment.js where ddocname is normaly the same as modulePrefix:. ddocname can be changed in the configuration options.
if (environment === 'production') {
  ENV.rootURL = '/emberapp/_design/ddocname/_rewrite/';
}

If a vhost is used do the following:

if (environment === 'production') {
  ENV.rootURL = '/';
}
  • Run the pipeline
$ ember deploy

Installation

Run the following command in your terminal:

ember install ember-cli-deploy-couchdb

ember-cli-deploy Hooks Implemented

For detailed information on what plugin hooks are and how they work, please refer to the Plugin Documentation.

  • configure
  • willDeploy
  • didBuild
  • upload

Configuration Options

For detailed information on how configuration of plugins works, please refer to the Plugin Documentation.

db (required)

The CouchDB URL

Default: undefined

ddocname

The Ember App is uploaded to the ddocname URL as _design/ddocname.

Default: context.project.name()

couchappignore

Array of regexps for files to skip upload.

Default: []

distDir

The root directory where the files will be searched for. By default, this option will use the distDir property of the deployment context, provided by ember-cli-deploy-build-plus.

Default: context.distDir

Prerequisites

The following properties are expected to be present on the deployment context object:

Issues

You can use the issue tracker to provide feedback, suggest features or report bugs.

  • If you get Assertion failed: end <= source_len, file src\smalloc.cc, line 280 you are using node.js v0.12 or io.js v1.3.0. These versions have a bug with Buffers. Upgrade to a newer or older version.

Running Tests

  • npm test

ember-cli-deploy-couchdb's People

Contributors

broerse avatar greenkeeperio-bot avatar martinic avatar dehuszar avatar ember-tomster avatar

Stargazers

jens alexander avatar Harald Kisch avatar Dmitri Akatov avatar Kevin Rio avatar  avatar Ari Najarian avatar Matt A avatar  avatar Kirill Shaplyko avatar Nate Todd avatar Sjoerd de Jong avatar Sean Goresht avatar Jonas Weber avatar

Watchers

James Cloos avatar  avatar  avatar  avatar

Forkers

broerse dehuszar

ember-cli-deploy-couchdb's Issues

Setting up with default ember-cli-deploy-build

How would I go about getting this plugin working with the regular ember-cli-deploy build plugin? I've seen the discussion on the main plugin's issues thread but I'd really rather do the configuration myself than use a forked plugin.

Is it just passing some context-assembled path for attachments to the distDir property? Or are there other details involved?

Action required: Greenkeeper could not be activated 🚨

🚨 You need to enable Continuous Integration on all branches of this repository. 🚨

To enable Greenkeeper, you need to make sure that a commit status is reported on all branches. This is required by Greenkeeper because we are using your CI build statuses to figure out when to notify you about breaking changes.

Since we did not receive a CI status on the greenkeeper/initial branch, we assume that you still need to configure it.

If you have already set up a CI for this repository, you might need to check your configuration. Make sure it will run on all new branches. If you don’t want it to run on every branch, you can whitelist branches starting with greenkeeper/.

We recommend using Travis CI, but Greenkeeper will work with every other CI service as well.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.