vivekk3's picture
Upload folder using huggingface_hub
9c4b01e verified
name: Dockerize and Push to K8s
on:
push:
branches:
- main
permissions:
contents: read
pages: write
id-token: write
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set dotenv Vault key
env:
DOTENV_VAULT_KEY: ${{ secrets.DOTENV_VAULT_KEY }}
run: echo "DOTENV_VAULT_KEY=${{ secrets.DOTENV_VAULT_KEY }}" >> $GITHUB_ENV
- name: Install doctl
uses: digitalocean/action-doctl@v2
with:
token: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
- name: Build container image
run: docker build -t ${{ secrets.DIGITALOCEAN_REGISTRY }}/warden-ml:${{ github.sha }} .
- name: Log in to DigitalOcean Container Registry with short-lived credentials
run: doctl registry login
- name: Push image to DigitalOcean Container Registry
run: docker push ${{ secrets.DIGITALOCEAN_REGISTRY }}/warden-ml:${{ github.sha }}
- name: Update deployment file
run: |
IMAGE=${{ secrets.DIGITALOCEAN_REGISTRY }}/warden-ml:${{ github.sha }}
sed -i "s|<IMAGE>|$IMAGE|" $GITHUB_WORKSPACE/k8s/deployment.yaml
- name: Save DigitalOcean kubeconfig with short-lived credentials
run: doctl kubernetes cluster kubeconfig save ${{ secrets.DIGITALOCEAN_CLUSTER_ID }}
- name: Deploy to DigitalOcean Kubernetes
run: kubectl apply -f $GITHUB_WORKSPACE/k8s/
- name: Verify deployment
run: kubectl rollout status deployment/warden-ml