About The Project
Draft makes it easier for developers to get started building apps that run on Kubernetes by taking a non-containerized application and generating the Dockerfiles, Kubernetes manifests, Helm charts, Kustomize configuration, and other artifacts associated with a containerized application. Draft can also generate a GitHub Actions workflow file to quickly build and deploy applications onto any Kubernetes cluster.
Commands
draft create
adds the minimum required Dockerfile and manifest files for your deployment to the project directory.
- Supported deployment types: Helm, Kustomize, Kubernetes manifest.
draft setup-gh
automates the GitHub OIDC setup process for your project.
draft generate-workflow
generates a GitHub Actions workflow for automatic build and deploy to a Kubernetes cluster.
draft update
automatically make your application to be internet accessible.
Use draft [command] --help
for more information about a command.
Prerequisites
Draft requires Go version 1.18.x.
Check your go version.
go version
Installation
-
Clone the repo
git clone https://github.com/Azure/draft.git
-
Change to the draft
directory and build the binary
cd draft/
make
-
Add the binary to your path (we use the same directory as go install)
mv draft $HOME/go/bin/
Install with HomeBrew
-
Run the following commands
$ brew tap azure/draft
$ brew install draft
Contributing
Draft is fully compatible with Azure Kubernetes Service. We strongly encourage contributions to make Draft available to other cloud providers 😊!
Issues/Discussions
The Draft team will be monitoring both the issues and discussions board. Please feel free to create issues for any problems you run into and the Draft team will be quick to respond. The discussions board will be used for community engagement. We look forward to see you there!
License
Draft is under the MIT License. See LICENSE for more information.
Trademark Notice
Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft’s Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.