Skip to content

Update create-digitalocean-k8s-cluster.yml.yml #1

Update create-digitalocean-k8s-cluster.yml.yml

Update create-digitalocean-k8s-cluster.yml.yml #1

name: 'DigitalOcean Kubernetes Cluster'
description: 'Spin up a Kubernetes cluster on DigitalOcean'
on:
workflow_dispatch:
inputs:
do_token:
description: 'DigitalOcean API Token'
required: true
cluster_name:
description: 'Name of the cluster'
required: true
default: 'github-action-cluster'
region:
description: 'Region to deploy the cluster in'
required: true
default: 'nyc3'
node_size:
description: 'Droplet size for nodes'
required: true
default: 's-2vcpu-4gb'
node_count:
description: 'Number of nodes'
required: true
default: '2'
runs:
using: 'composite'
steps:
- name: Install doctl
run: |
curl -sL https://github.com/digitalocean/doctl/releases/latest/download/doctl-$(uname -s)-$(uname -m) -o doctl
chmod +x doctl
sudo mv doctl /usr/local/bin/
shell: bash
- name: Authenticate doctl
run: |
doctl auth init --access-token ${{ inputs.do_token }}
shell: bash
- name: Create Kubernetes Cluster
run: |
doctl kubernetes cluster create ${{ inputs.cluster_name }} \
--region ${{ inputs.region }} \
--size ${{ inputs.node_size }} \
--count ${{ inputs.node_count }}
shell: bash
- name: Get Kubeconfig
run: |
doctl kubernetes cluster kubeconfig save ${{ inputs.cluster_name }}
shell: bash
- name: Output Cluster Info
run: |
doctl kubernetes cluster get ${{ inputs.cluster_name }}
shell: bash