began rewriting chat with actual data read #19
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# .github/workflows/main.yml | |
name: CI/CD Pipeline | |
on: | |
push: | |
branches: | |
- main | |
env: | |
REGISTRY_NAME: pidgeonacr | |
IMAGE_NAME: fydp-app | |
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }} # Base64-encoded kubeconfig file | |
KUBE_NAMESPACE: default | |
DATABASE_URL: ${{ secrets.DATABASE_URL }} | |
NEXTAUTH_SECRET: ${{ secrets.NEXTAUTH_SECRET }} | |
GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID}} | |
GOOGLE_CLIENT_SECRET: ${{ secrets.GOOGLE_CLIENT_SECRET }} | |
SENDGRID_FROM_EMAIL: ${{ secrets.SENDGRID_FROM_EMAIL }} | |
SENDGRID_SMTP_USER: ${{ secrets.SENDGRID_SMTP_USER }} | |
SENDGRID_SMTP_KEY: ${{ secrets.SENDGRID_SMTP_KEY }} | |
SENDGRID_SMTP_HOST: ${{ secrets.SENDGRID_SMTP_HOST }} | |
SENDGRID_SMTP_PORT: ${{ secrets.SENDGRID_SMTP_PORT }} | |
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} | |
PINECONE_API_KEY: ${{ secrets.PINECONE_API_KEY }} | |
PINECONE_ENVIRONMENT: ${{ secrets.PINECONE_ENVIRONMENT }} | |
PINECONE_INDEX: ${{ secrets.PINECONE_INDEX }} | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Login to ACR | |
uses: azure/docker-login@v1 | |
with: | |
login-server: ${{ env.REGISTRY_NAME }}.azurecr.io | |
username: ${{ secrets.REGISTRY_USERNAME }} | |
password: ${{ secrets.REGISTRY_PASSWORD }} | |
- name: Build and push Docker image | |
run: | | |
docker build --build-arg DATABASE_URL=${{ secrets.DATABASE_URL }} --build-arg NEXTAUTH_SECRET=${{ secrets.NEXTAUTH_SECRET }} --build-arg GOOGLE_CLIENT_ID=${{ secrets.GOOGLE_CLIENT_ID }} --build-arg GOOGLE_CLIENT_SECRET=${{ secrets.GOOGLE_CLIENT_SECRET }} --build-arg SENDGRID_FROM_EMAIL=${{ secrets.SENDGRID_FROM_EMAIL }} --build-arg SENDGRID_SMTP_USER=${{ secrets.SENDGRID_SMTP_USER }} --build-arg SENDGRID_SMTP_KEY=${{ secrets.SENDGRID_SMTP_KEY }} --build-arg SENDGRID_SMTP_HOST=${{ secrets.SENDGRID_SMTP_HOST }} --build-arg SENDGRID_SMTP_PORT=${{ secrets.SENDGRID_SMTP_PORT }} --build-arg OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} --build-arg PINECONE_API_KEY=${{ secrets.PINECONE_API_KEY }} --build-arg PINECONE_ENVIRONMENT=${{ secrets.PINECONE_ENVIRONMENT }} --build-arg PINECONE_INDEX=${{ secrets.PINECONE_INDEX }} -t ${{ env.REGISTRY_NAME }}.azurecr.io/${{ env.IMAGE_NAME }}:${{ github.sha }} . | |
docker push ${{ env.REGISTRY_NAME }}.azurecr.io/${{ env.IMAGE_NAME }}:${{ github.sha }} | |
- name: Set up Kubectl | |
uses: azure/setup-kubectl@v1 | |
with: | |
version: 'v1.18.0' | |
- name: Configure Kubernetes context | |
uses: azure/k8s-set-context@v1 | |
with: | |
kubeconfig: ${{ env.KUBE_CONFIG_DATA }} | |
- name: Deploy to Kubernetes | |
run: | | |
kubectl set image deployment/fydp-app-deployment fydp-app=${{ env.REGISTRY_NAME }}.azurecr.io/${{ env.IMAGE_NAME }}:${{ github.sha }} -n ${{ env.KUBE_NAMESPACE }} |