Nth Phonetic Mnemonic

    This package has been deprecated

    Author message:

    Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

    @serverless-contracts/plugin
    TypeScript icon, indicating that this package has built-in type declarations

    0.3.0 • Public • Published

    @serverless-contracts/plugin

    A plugin to safely deploy Serverless microservices.

    This plugin is part of the serverless-contracts project. See its documentation for more insights.

    Installation

    npm install @serverless-contracts/plugin --save-dev

    Or if you're using yarn

    yarn add -D @serverless-contracts/plugin

    Then in your serverless.ts file, add @serverless-contracts/plugin to the list of your plugins.

    Configuration

    Add a contracts key to your Serverless file:

    import { myFirstContract, mySecondContract } from 'my-contracts-package';
    import { consumedContract } from 'other-contracts';
    
    const serverlessConfigation = {
        service: 'my-app',
        provider: {
            name: aws
        },
        plugins: ['@serverless-contracts/plugin'],
        functions: {
            ...
        },
        contracts: {
            provides: {
                myFirstContract: myFirstContract.fullContractSchema,
                mySecondContract: mySecondContract.fullContractSchema
            },
            consumes: {
                consumedContract: consumedContract.fullContractSchema,
            },
        },
    }

    Where all the contracts are defined using serverless-contracts.

    Commands

    • serverless localContracts: prints the local version of the contracts
    • serverless remoteContracts: prints the currently deployed version of the contracts
    • serverless safeDeploy --strategy <strategy>: a wrapper around the deploy command of the Serverless Framework, check if the contracts modification is deployable with the chosen strategy. Choices are PROVIDER_FIRST or CONSUMER_FIRST

    Typing

    This plugin exposes its own types. In order to properly type your Serverless service file:

    import { ServerlessContracts } from '@serverless-contracts/plugin';
    import { AWS } from '@serverless/typescript';
    
    const serverlessConfiguration: AWS & ServerlessContracts = {
        ...
    }

    Install

    npm i @serverless-contracts/plugin

    DownloadsWeekly Downloads

    20

    Version

    0.3.0

    License

    MIT

    Unpacked Size

    331 kB

    Total Files

    83

    Last publish

    Collaborators

    • adriencaccia
    • fargito