0.1.1 • Published 6 years ago

serverless-plugin-cicd v0.1.1

Weekly downloads
35
License
Apache-2.0
Repository
github
Last release
6 years ago

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

ParameterInfoDefaultMore Information
image (node)If the runtime is nodeJSaws/codebuild/nodejs:6.3.1Lookup other image identifiers
image (python)If the runtime is pythonaws/codebuild/python:3.5.2Lookup other image identifiers
image (other)If the runtime is something elseaws/codebuild/ubuntu-base:14.04Lookup other image identifiers
branchThe git branch CodePipeline monitorsmasterMore on how CodePipeline starts
ownerThe owner of the GitHub repositoryblankRequired as no default
repositoryThe GitHub repository CodePipeline monitorsThe name of your serviceMore on how CodePipeline starts
githubtokenThe GitHub OAuth token for private reposblankHow to get a token
excludestagesStages you don't want CICD forblankServerless 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.