Requirement: Your application must be deployable via Helm 3
To add your application to the DigitalOcean Marketplace, you'll need to do the following:
- Ensure that you have Helm 3 installed on your machine. Instructions
- Add the Helm 3 deployment (
deploy.sh
), upgrade (upgrade.sh
) and uninstall (uninstall.sh
) files to this repo. - Get an account set up within the DigitalOcean Marketplace Vendor Portal
- Clone or fork the digitalocean/marketplace-kubernetes repository
- Create a git branch that includes the name of your app (example:
$APP_NAME-first-pr
) - Run the following commands to create your
deploy.sh
,upgrade.sh
,uninstall.sh
andvalues.yml
files. They will be located instacks/$APP_NAME
:
export HELM_REPO_NAME=$REPO_NAME
export HELM_REPO_URL=$REPO_URL
export STACK_NAME=$APP_NAME
export CHART_NAME=$REPO_NAME/$APP_NAME
export CHART_VERSION=1.0.0
export NAMESPACE=$APP_NAME
./utils/generate-stack.sh
- Optionally, customize your
deploy.sh
,upgrade.sh
,uninstall.sh
and specify your Helm chart's configuration values invalues.yml
. Both can be found instacks/$APP_NAME
- Run
chmod +x *.sh
from withinstacks/$APP_NAME
to ensure all of your scripts are executable - Test out installing your stack by deploying it locally to a k8s cluster:
./stacks/$APP_NAME/deploy.sh
- Test out upgrading your stack by updating it locally on a k8s cluster:
./stacks/$APP_NAME/upgrade.sh
- Test out uninstalling your stack by deleting it locally from a k8s cluster:
./stacks/$APP_NAME/uninstall.sh
- Open a PR
- Once the PR is reviewed and merged by DigitalOcean, visit the DigitalOcean Marketplace Vendor Portal and submit your App Listing, refering to this PR in the appropriate input field.
- To deploy a newer version of your app's Helm chart, simply update the
CHART_VERSION
value in yourstacks/$APP_NAME/deploy.sh
file. If necessary, update yourvalues.yml
as well. - Open a PR
- Once your PR is merged, make any needed updates in the Vendor Portal to your App Listing, including referring to the URL of the PR that was merged. Your new PR will not take effect until you do this final step in the Vendor Portal.
Email [email protected] to get access to the Marketplace Vendor Portal. This is where you will manage your application's listing page.