New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

ember-cli-deploy-revision-data

Package Overview
Dependencies
Maintainers
4
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ember-cli-deploy-revision-data

An ember-cli-deploy plugin to generate data about this deploy revision including a unique revision key based on the current build

  • 3.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
18K
increased by8.14%
Maintainers
4
Weekly downloads
 
Created
Source

ember-cli-deploy-revision-data

An ember-cli-deploy plugin to generate data about this deploy revision including a unique revision key based on the current build

This plugin will generate revison data for the current build. This data can be used by other plugins to understand more about the current revision being deployed. The revision key included in the revison data can be used to uniquely identify the particular version of the application.

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:

  • Ensure ember-cli-deploy-build is installed and configured

  • Install this plugin

$ ember install ember-cli-deploy-revision-data
  • Run the pipeline
$ ember deploy

Installation

Run the following command in your terminal:

ember install ember-cli-deploy-revision-data

ember-cli-deploy Hooks Implemented

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

  • configure
  • prepare

Configuration Options

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

Defaults

ENV["revision-data"] = {
  type: 'file-hash',
  scm: function(context) {
    return require('./lib/scm-data-generators')['git'];
  }
}

type

The type of Data Generator to be used.

Default: 'file-hash' Alternatives: 'git-tag-commit', 'git-commit', 'version-commit'

scm

The type of the SCM Data Generator to be used

Default: GitScmDataGenerator

You can set this to null if you don't want any Scm Data Generator to be used.

You can also pass your own custom scm generator class.

Data Generators

Data generators are the strategies used to generate information about the revision being deployed. A data generator must return an object which contains a property called revisionKey which uniquely identifies the current revision. A generator can add any other data that it deems relevant to the data object that it returns.

File Hash generator (file-hash)

This generator contructs a revisionKey from the fingerprint of the index.html file.

Data fields returned
revisionKey

The unique identifier of this build based on the MD5 fingerprint of the index.html file. This key is guaranteed to be idempotent. That is, the same revision key will be generated for the same set of project files. If the project files change in any way, this will be reflected by a change in the revision key.

timestamp

The timestamp of the current deploy

Configuration Options
filePattern

A pattern that matches the file you would like to be fingerprinted. This pattern should be relative to distDir.

Default: index.html

distDir

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

Default: context.distDir

distFiles

The list of built project files. This option should be relative to distDir and should include the file that matches filePattern. By default, this option will use the distFiles property of the deployment context, provided by ember-cli-deploy-build.

Default: context.distFiles

Git Tag Commit generator (git-tag-commit)

Constructs a revision key based on the most recent git tag and the currently checked-out commit.

Data fields returned
revisionKey

The unique identifier of this build based on the git tag, followed by the separator symbol (+ by default), followed by the first 8 characters of the current commit hash.

For example, if your most recent git tag is v2.0.3, and the current commit is 0993043d49f9e0[...], this generator will return a revision of v2.0.3+0993043d.

timestamp

The timestamp of the current deploy

Configuration Options
commitHashLength

The length of the commit hash that is used when constructing the revisionKey.

separator

The text used to separate the tag name from the commit sha. By default, + is used.

Git Commit generator (git-commit)

Constructs a revision key based on the most recent git commit.

Data fields returned
revisionKey

The unique identifier of this build based on the first 7 characters of the current commit hash.

For example, if the current commit is 0993043d49f9e0[...], this generator will return a revision of 0993043.

timestamp

The timestamp of the current deploy

Configuration Options
commitHashLength

The length of the commit hash that is used as the revisionKey.

Version Commit generator

Similar to the Git Tag Commit generator but uses the package.json version string to construct the revision key instead of the git tag.

Data fields returned
revisionKey

The unique identifier of this build based on the version in the package.json, followed by a the separator symbol (+ by default), followed by the first 8 characters of the current commit hash.

For example, if your package.json version is v2.0.3, and the current commit is 0993043d49f9e0[...], this generator will return a revision of v2.0.3+0993043d.

Note: Some environments (like CircleCI) may return partial git information. If the current commit hash cannot be determined, the generator will return only the package.json version (v2.0.3) as the revisionKey.

timestamp

The timestamp of the current deploy

Configuration Options
commitHashLength

The length of the commit hash that is used when constructing the revisionKey.

separator

The text used to separate the tag name from the commit sha. By default, + is used.

versionFile

The file containing your project's version number. Must be a JSON file with a top-level version key.

Default: package.json

SCM Data Generators

SCM Data generators are the strategies used to collect extra information about the revision being deployed. An scm data generator must return an object which contains properties that it deems relevant to the revision being deployed .

Git generator

This generator uses the information available from the git repository of your ember-cli application.

Data fields returned
sha

The SHA of the commit being deployed

email

Committer's email

name

Committer's name

message

The commit message

branch

Git branch being deployed

timestamp

Commit's timestamp

Prerequisites

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

Plugins known to work well with this one

ember-cli-deploy-redis

Running Tests

  • yarn test

Why ember build and ember test don't work

Since this is a node-only ember-cli addon, this package does not include many files and dependencies which are part of ember-cli's typical ember build and ember test processes.

Keywords

FAQs

Package last updated on 04 Jun 2023

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