Ghost/ghost/release-utils
Daniel Lockyer 9f3114d1a1 Published new versions
- @tryghost/adapter-manager@0.1.8
 - @tryghost/errors@0.2.1
 - @tryghost/image-transform@1.0.1
 - @tryghost/moleculer-service-from-class@0.2.4
 - @tryghost/mw-session-from-token@0.1.6
 - @tryghost/pretty-cli@1.2.8
 - @tryghost/release-utils@0.6.4
 - @tryghost/session-service@0.1.6
 - @tryghost/vhost-middleware@1.0.6
 - @tryghost/zip@1.1.2
2020-08-07 16:06:21 +01:00
..
lib Updated execa to v4 with code modifications 2020-08-04 14:59:55 +01:00
test Updated execa to v4 with code modifications 2020-08-04 14:59:55 +01:00
.eslintrc.js Remove trailing commas from .eslintrc.js files 2020-08-04 14:48:07 +01:00
LICENSE 2020 2020-01-07 19:06:08 +00:00
package.json Published new versions 2020-08-07 16:06:21 +01:00
README.md 2020 2020-01-07 19:06:08 +00:00

Release Utils

Install

npm install @tryghost/release-utils --save

or

yarn add @tryghost/release-utils

Usage

Create Gist:

const releaseUtils = require('@tryghost/release-utils');


releaseUtils
    .gist
    .create({
        userAgent: String,
        gistName: String,
        gistDescription: String,
        changelogPath: String [Path on Disk]
        github: {
            username: String
            token: String
        },
        isPublic: Boolean [optional, Default: true]
    })

Create Changelog:

const releaseUtils = require('@tryghost/release-utils');


const changelog = new releaseUtils.Changelog({
    changelogPath: String [Path on Disk],
    folder: String [Path on Disk]
});

changelog
    .write({
        githubRepoPath: String,
        lastVersion: String
    })
    .write({
        githubRepoPath: String
        lastVersion: String
        append: Boolean [optional, Default: false],
        folder: String [optional, Path on Disk]
    })
    .sort()
    .clean()

Create & Upload Release:

const releaseUtils = require('@tryghost/release-utils');


releaseUtils
    .releases
    .create({
        tagName: String,
        releaseName: String,
        userAgent: String,
        uri: String,
        github: {
            username: String,
            token: String,
        },
        changelogPath: String [Path on Disk] OR Array[{
            changelogPath: String [Path on Disk],
            content: Array [optional]
        }],
        gistUrl: String [optional],
        preRelease: Boolean [optional, Default: false],
        draft: Boolean [optional, Default: true],
        filterEmojiCommits: Boolean [optional, Default: true],
        content: Array [optional]
    });

releaseUtils
    .releases
    .uploadZip({
        github: {
            username: String,
            token: String
        },
        zipPath: String [Path on Disk],
        uri: String,
        userAgent: String
    })

Develop

This is a mono repository, managed with lerna.

Follow the instructions for the top-level repo.

  1. git clone this repo & cd into it as usual
  2. Run yarn to install top-level dependencies.

Run

  • yarn dev

Test

  • yarn lint run just eslint
  • yarn test run lint and tests

Copyright & License

Copyright (c) 2013-2020 Ghost Foundation - Released under the MIT license.