Socket
Socket
Sign inDemoInstall

ember-publisher

Package Overview
Dependencies
Maintainers
3
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ember-publisher

This is a micro-lib designed to help unify s3 publishing for Ember and related Ember projects.


Version published
Weekly downloads
53
increased by26.19%
Maintainers
3
Weekly downloads
 
Created
Source

Ember Publisher

Build Status

This is a micro-lib designed to help unify s3 publishing for Ember and related Ember projects.

Each project using Ember Publisher needs a file in project_configs that gives information about how it'll be published to S3. That project file needs to export a function that returns an object that looks like this:

{ 'ember.js':
  { contentType: 'text/javascript',
    destinations: {
      canary: [ 'my-bucket-url' ]  //list of urls you'd like to publish to canary
    }
  }
};

Each key should be the name of the file in the dist folder of the project. destinations should contain a key for each channel you'd like to publish to whose value is an array of bucket urls. See project_configs/ember-proj.js for more details.

  • wildcard - is the fallback channel. It can be implemented per project or not. For example, if I wanted to publish any tagged push. I could implement a wildcard entry inside destinations ( should be empty by default ) and merge in s3 bucket urls if a tag is present. Then when no branch is found the wildcard would be used which would (in this case) contain the tag s3 buck urls. You can see an example of this inside ember.js' project config.

Assumptions

You MUST have the following defined in your environment to execute publishing correctly:

  • S3_BUCKET_NAME
  • TRAVIS_BRANCH
  • TRAVIS_TAG
  • TRAVIS_COMMIT
  • S3_ACCESS_KEY_ID
  • S3_SECRET_ACCESS_KEY

The TRAVIS prefixed variables are set by travis-ci by default so you shouldn't worry about those unless you are running locally.

Constructor

project - this is the word that when suffixed with proj.js points to a file in project_configs. (ie ember would yield project_configs/ember-proj.js.

projectConfigPath - It is now possible to specify the absolute path of your project's config by setting setting projectConfigPath. This will take precedence above the project property (see above)

In the above case, if the current branch is master then it will utilize the wildcard destinations. The no-op branch is to ensure that it doesn't default to the wildcard branch.

Channels

Currently the supported channels are as follows

(branch/channel)

  • master -> canary
  • beta -> beta
  • stable -> release
  • release -> release

Utilize wildcard set of destinations

Override channels by overriding the currenBranch function on your instance of publisher. Like so:

  publisher.currentBranch = function() {
    return (TRAVIS_BRANCH === 'master') ? 'wildcard' : 'no-op';
  };

Keywords

FAQs

Package last updated on 06 Aug 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc