Skip to content

totallymoney/github-serverless-dotnet-artifacts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

github serverless dotnet artifacts

Publish and deploy serverless dotnet projects using github managed artifacts.

Serverless packaging is performed correctly.

Requirements

  • jq, yarn, curl & dotnet are available on the command line
  • gh is available if deployin using github workflow
  • Amazon.Lambda.Tools dotnet tool is installed in the target project
$ dotnet new tool-manifest
$ dotnet tool install Amazon.Lambda.Tools

Usage

  1. Install
$ yarn add -D @totallymoney/github-serverless-dotnet-artifacts
  1. Add these scripts to your package.json
"scripts": {
  "publish": "gsda-publish <org/repo> <project_path>",
  "deploy": "gsda-deploy <org/repo>",
  "pick": "gsda-pick -e stage -e prod -c 5"
}
  • <org/repo> could be mediaingenuity/myrepo or totallymoney/repo.name
  • <project_path> could be src or path/to/project.fsroj
  • -e (multiple) are preset environments for pick
  • -c is the version list count for pick
  • both -e and -c have sensible defaults and can be overridden when pick is called
  1. Specify this package location in your serverless.yml
package:
  artifact: package.zip
  1. Add a publish step to your CI pipeline to create a github release
$ yarn run publish $VERSION $GITHASH
  • $VERSION is the github release name in semver format
  • $GITHASH is the commit that triggered the build and will be tagged
  1. Use the deploy command to update an enviroment
$ yarn run deploy $VERSION $ENVIRONMENT
  • $VERSION is the github release to deploy
  • $ENVIRONMENT is the target environment (aka serverless stage)
  1. Use pick for interactive deployments!
$ yarn pick

Development

Make sure you belong to the totallymoney npm organization. Then make changes to the source code and publish. Enter the new version number as prompted. A git push command will run automatically after publishing.

$ git commit -am "Improve logging"
$ yarn publish --access public

About

Use github releases to publish and deploy serverless framework dotnet projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published