serverless-plugin-cicd

0.1.1 • Public • Published

serverless-plugin-cicd

serverless License npm version

Serverless plugin for creating a CI/CD pipeline that watches a GitHub repo.

About The Black Tux

The Black Tux is reinventing the formalwear rental industry so guys can show up at their best on the days that matter most. The company designs and manufactures modern rental suits and tuxedos that actually fit—made of 100% wool, ordered online or in one of our showrooms, and delivered for free. Using a combination of machine learning, tailor-trained fit specialists, and industry-leading customer service, The Black Tux guarantees a perfect fit every time.

To support this elevated customer experience we rely on lots of technology. From time to time we release things we build to the open source community when we feel they might be useful by others as well, and of course don't include anything proprietary.

Getting Started

Prerequisites

Make sure you have the following installed before starting:

Installation

First install the package:

npm install serverless-plugin-cicd --save

Then add the plugin to your serverless.yml file:

plugins:
  - serverless-plugin-cicd

There are a number of parameters that you then can use:

custom:
  cicd:
    image: 'the aws codebuild image'
    branch: 'the git branch you want to watch'
    owner: 'the GitHub repository owner where your project can be found'
    repository: 'the GitHub repository where your project can be found'
    githubtoken: 'the GitHub OAuth token if this project is private'
    excludestages:
      - '[name of a stage to exclude]'
      - '[another stage name to exclude]'

Or you can also store some parameters per stage by using the following (let us know if more should be per-stage):

custom:
  staging:
    branch: 'the git branch you want to watch for the stage called staging'
  prod:
    branch: 'a different branch you want to watch for the stage called prod'

Some details on these parameters

Parameter Info Default More Information
image (node) If the runtime is nodeJS aws/codebuild/nodejs:6.3.1 Lookup other image identifiers
image (python) If the runtime is python aws/codebuild/python:3.5.2 Lookup other image identifiers
image (other) If the runtime is something else aws/codebuild/ubuntu-base:14.04 Lookup other image identifiers
branch The git branch CodePipeline monitors master More on how CodePipeline starts
owner The owner of the GitHub repository blank Required as no default
repository The GitHub repository CodePipeline monitors The name of your service More on how CodePipeline starts
githubtoken The GitHub OAuth token for private repos blank How to get a token
excludestages Stages you don't want CICD for blank Serverless stages

Deploying


The plugin will be packaged with the lambda when deployed as normal using Serverless:

serverless deploy

Support

All support is conducted through GitHub issues. This is released basically "as is" but we will answer questions as we can.

Contributing

Please open a GitHub issue before contributing code changes.

Package Sidebar

Install

npm i serverless-plugin-cicd

Weekly Downloads

117

Version

0.1.1

License

Apache-2.0

Last publish

Collaborators

  • kevindiamond