Skip to content
This repository has been archived by the owner on May 17, 2024. It is now read-only.

Merge branch 'feat/lark_bot' into develop #408

Merge branch 'feat/lark_bot' into develop

Merge branch 'feat/lark_bot' into develop #408

Workflow file for this run

name: Deploy to k8s
on:
push:
branches:
- develop
- main
env:
ILLA_MIXPANEL_API_KEY: ${{ secrets.ILLA_MIXPANEL_API_KEY }}
ILLA_AMPLITUDE_API_KEY: ${{ secrets.ILLA_AMPLITUDE_API_KEY }}
ILLA_MUI_LICENSE: ${{ secrets.ILLA_MUI_LICENSE }}
ILLA_SENTRY_AUTH_TOKEN: ${{ secrets.ILLA_SENTRY_AUTH_TOKEN }}
DO_CLUSTER: ${{ secrets.DO_CLUSTER }}
DOCKER_LOGIN: ${{ secrets.DOCKER_LOGIN }}
DOCKER_PWD: ${{ secrets.DOCKER_PWD }}
DO_TOKEN: ${{ secrets.DO_TOKEN }}
ILLA_INTERCOM_APP_ID: ${{ secrets.ILLA_INTERCOM_APP_ID }}
ILLA_POSTHOG_KEY: ${{ secrets.ILLA_POSTHOG_KEY }}
jobs:
build:
name: Build website
runs-on: ubuntu-latest
environment:
name:
${{ (github.ref == 'refs/heads/main') && 'production' || (github.ref ==
'refs/heads/develop') && 'test' || (github.ref == 'refs/heads/beta') &&
'beta' }}
env:
ILLA_API_BASE_URL: ${{ vars.ILLA_API_BASE_URL }}
ILLA_APP_ENV: ${{ vars.ILLA_APP_ENV }}
ILLA_CLOUD_URL: ${{ vars.ILLA_CLOUD_URL }}
ILLA_MARKET_URL: ${{ vars.ILLA_MARKET_URL }}
ILLA_PERIPHERAL_API_BASE_URL: ${{ vars.ILLA_PERIPHERAL_API_BASE_URL }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: actions/setup-node@v4
with:
node-version: 20.12.2
- uses: pnpm/action-setup@v3
with:
version: 9.0.6
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Build website
run: |
echo "Building for $GITHUB_REF_NAME branch,ILLA APP ENV is $ILLA_APP_ENV"
pnpm build
- name: Compress tipis
run: |
tar -czvf tipis-fe.tar.gz ./apps/agent/dist ./nginx.conf ./Dockerfile ./tipisai-frontend.conf
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: build-artifacts
path: tipis-fe.tar.gz
build-docker:
needs: build
name: Build Docker image
runs-on: ubuntu-latest
steps:
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: build-artifacts
- name: Load build artifacts
run: |
tar -xzvf tipis-fe.tar.gz
- name: Build Docker
run: |
docker build --cache-from=tipisai-fe -f Dockerfile -t tipisai-fe .
- name: Push application Docker image
run: |
docker login -u $DOCKER_LOGIN -p $DOCKER_PWD
docker tag tipisai-fe "illasoft/tipisai-fe:$GITHUB_REF_NAME"
docker push "illasoft/tipisai-fe:$GITHUB_REF_NAME"
deploy:
needs: build-docker
name: Deploy to k8s
runs-on: ubuntu-latest
environment:
name:
${{ (github.ref == 'refs/heads/main') && 'production' || (github.ref ==
'refs/heads/develop') && 'test' || (github.ref == 'refs/heads/beta') &&
'beta' }}
env:
ILLA_APP_ENV: ${{ vars.ILLA_APP_ENV }}
steps:
- name: Install doctl
uses: digitalocean/action-doctl@v2
with:
token: ${{ secrets.DO_TOKEN }}
- name: Install kubectl
run: |
sudo snap install kubectl --classic
- name: Setup kubectl
run: |
doctl kubernetes cluster kubeconfig save $DO_CLUSTER
kubectl version
- name: Deploy to Kubernetes
run: |
kubectl -n $ILLA_APP_ENV rollout restart deployment tipisai-cloud-frontend