Skip to content

feat: fully functional tts service - merge conflicts resolved #1

feat: fully functional tts service - merge conflicts resolved

feat: fully functional tts service - merge conflicts resolved #1

Workflow file for this run

name: πŸš€ Deploy to Kubernetes
on:
push:
branches: [ main ]
workflow_dispatch:
env:
KUBECONFIG: ${{ secrets.KUBECONFIG }}
jobs:
deploy:

Check failure on line 12 in .github/workflows/deploy-k8s.yml

View workflow run for this annotation

GitHub Actions / πŸš€ Deploy to Kubernetes

Invalid workflow file

The workflow is not valid. .github/workflows/deploy-k8s.yml (Line: 12, Col: 3): The workflow must contain at least one job with no dependencies.
name: πŸš€ Deploy to Kubernetes
runs-on: ubuntu-latest
needs: [build-and-push-ghcr]
steps:
- name: πŸ“₯ Checkout code
uses: actions/checkout@v4
- name: πŸ”‘ Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: πŸ”§ Configure kubectl
run: |
aws eks update-kubeconfig --name flexfit-cluster-production --region us-east-1
- name: πŸ“¦ Install Helm
run: |
curl https://get.helm.sh/helm-v3.12.0-linux-amd64.tar.gz | tar xz
sudo mv linux-amd64/helm /usr/local/bin/helm
- name: πŸš€ Deploy to Kubernetes
env:
GOOGLE_CREDENTIALS: ${{ secrets.GOOGLE_CREDENTIALS }}
CHAIR_API_KEY: ${{ secrets.CHAIR_API_KEY }}
run: |
# Create namespace if it doesn't exist
kubectl create namespace flexfit --dry-run=client -o yaml | kubectl apply -f -
# Create Google credentials secret
kubectl create secret generic flexfit-google-credentials \
--from-literal=google-credentials.json="$GOOGLE_CREDENTIALS" \
--namespace flexfit --dry-run=client -o yaml | kubectl apply -f -
# Deploy using Helm
helm upgrade --install flexfit ./helm/flexfit \
--namespace flexfit \
--set googleCredentials="$GOOGLE_CREDENTIALS" \
--set chairApiKey="$CHAIR_API_KEY" \
--set global.imageTag="${{ github.sha }}" \
--wait --timeout=10m
- name: πŸ₯ Health Check
run: |
echo "Waiting for services to be ready..."
kubectl wait --for=condition=ready pod -l app.kubernetes.io/name=flexfit --namespace flexfit --timeout=300s
echo "Checking service endpoints..."
kubectl get services -n flexfit
kubectl get pods -n flexfit
- name: πŸ“Š Deployment Status
run: |
echo "πŸš€ Deployment completed successfully!"
echo "Services deployed:"
kubectl get services -n flexfit
echo ""
echo "Pods status:"
kubectl get pods -n flexfit