An open API service indexing awesome lists of open source software.

https://github.com/onebeyond/make-manifest

Generates a manifest file for a node service
https://github.com/onebeyond/make-manifest

hacktoberfest

Last synced: about 1 year ago
JSON representation

Generates a manifest file for a node service

Awesome Lists containing this project

README

          

[![Maintainability](https://api.codeclimate.com/v1/badges/d7e1985d2a7e16964adc/maintainability)](https://codeclimate.com/github/onebeyond/make-manifest/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/d7e1985d2a7e16964adc/test_coverage)](https://codeclimate.com/github/onebeyond/make-manifest/test_coverage)

# make-manifest
Generates a manfiest.json similar to...
```
{
"name": "make-manifest",
"version": "0.1.0",
"timestamp": "2016-07-05T00:21:41.308Z",
"scm": {
"remote": "git@github.com:guidesmiths/make-manifest.git",
"branch": "master",
"commit": "98d5460ad979b1b0300c6cf9fee4799abddf0ab6"
}
}
```
### Why?
It's good practice to ship some basic information about your application build in case you need to rebuild or debug it from source. It can also be useful to guarantee at least one new layer if you're deploying your application within a docker image. Copying a freshly generated manifest in the last step of your Dockerfile will achieve this.

### Usage
```
Usage: make-manifest [options]

Options:

-h, --help output usage information
-V, --version output the version number
-x --extra [string] colon separated key value pair
```
### Example
```
./bin/make-manifest --extra "build.url: $CIRCLE_BUILD_URL" --extra "build.number: $CIRCLE_BUILD_NUM"
{
"name": "make-manifest",
"version": "0.1.0",
"timestamp": "2016-07-05T00:21:41.308Z",
"scm": {
"remote": "git@github.com:guidesmiths/make-manifest.git",
"branch": "master",
"commit": "98d5460ad979b1b0300c6cf9fee4799abddf0ab6"
},
"build": {
"url": "https://circleci.com/gh/guidesmiths/make-manifest/48",
"number": "48"
}
}
```