Skip to content

Commit

Permalink
Merge feat/support_indexed_search into MAJOR_CHANGE/new_front
Browse files Browse the repository at this point in the history
  • Loading branch information
Ramimashkouk committed May 7, 2024
2 parents f8acc79 + 26d644f commit 3a9e740
Show file tree
Hide file tree
Showing 40 changed files with 1,862 additions and 384 deletions.
76 changes: 76 additions & 0 deletions .github/workflows/backend_check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
name: check backend

on: [push, pull_request]

jobs:
build_backend_and_check_codestyle:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: set up python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: setup poetry and install dependencies
run: |
python -m pip install --upgrade pip poetry
python -m poetry lock --no-update
python -m poetry install --with lint --no-interaction
working-directory: backend/df_designer

- name: build wheel
run: |
python -m poetry build
working-directory: backend/df_designer

- name: run black codestyle
run: |
python -m poetry run black --line-length=120 --check .
working-directory: backend/df_designer

- name: run flake8 codestyle
run: |
ls
bash ./bin/run_codestyle.sh DIFF_BRANCH=${BASE_BRANCH}
env:
BASE_BRANCH: ${{github.base_ref}}

- name: run isort codestyle
run: |
python -m poetry run isort --line-length=120 --diff .
working-directory: backend/df_designer

test_backend:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: set up python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: setup poetry and install dependencies
run: |
python -m pip install --upgrade pip poetry
python -m poetry lock --no-update
python -m poetry install --with lint --no-interaction
working-directory: backend/df_designer

- name: build wheel
run: |
python -m poetry build
working-directory: backend/df_designer

- name: Create new project
run: |
python -m poetry run dflowd init --destination ../../ --no-input --overwrite-if-exists
working-directory: backend/df_designer

- name: run tests
run: |
python -m poetry install
python -m poetry run pytest ../backend/df_designer/app/tests/ --verbose
working-directory: df_designer_project
28 changes: 0 additions & 28 deletions .github/workflows/ci.yml

This file was deleted.

32 changes: 32 additions & 0 deletions .github/workflows/codestyle.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: codestyle

on: [push, pull_request]

jobs:
check_backend_codestyle:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: set up python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: setup poetry and install dependencies
run: |
python -m pip install --upgrade pip poetry
python -m poetry lock --no-update
python -m poetry install --with lint --quiet --no-interaction
working-directory: backend/df_designer

- name: run black codestyle
run: |
python -m poetry run black --line-length=120 --check .
working-directory: backend/df_designer

- name: run flake8 codestyle
run: |
bash ./bin/run_codestyle.sh DIFF_BRANCH=${BASE_BRANCH}
env:
BASE_BRANCH: ${{github.base_ref}}
29 changes: 29 additions & 0 deletions .github/workflows/docker_check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Build Docker Images

on:
push:
branches:
- dev
pull_request:
branches:
- dev

jobs:
build_images:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: setup poetry and install dependencies
run: |
python -m pip install --upgrade pip poetry
python -m poetry lock --no-update
python -m poetry install --with lint --no-ansi --no-interaction
working-directory: backend/df_designer

- name: Create new project
run: python -m poetry run dflowd init --destination ../../ --no-input --overwrite-if-exists
working-directory: backend/df_designer

- name: Build Frontend and Backend Images
run: docker build -f Dockerfile --build-arg PROJECT_DIR=df_designer_project --target=runtime .
20 changes: 20 additions & 0 deletions .github/workflows/frontend_check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: front check

on: [push, pull_request]

jobs:
build_and_check_frontend:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install bun
run: npm install -g bun

- name: Install dependencies
run: bun install
working-directory: frontend

- name: Build frontend
run: bun run build
working-directory: frontend
29 changes: 14 additions & 15 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
FROM oven/bun:1 as frontend-base
FROM frontend-base AS frontend-builder

WORKDIR /src
COPY ./frontend/package.json /src/frontend/package.json
COPY ./frontend/bun.lockb /src/frontend/bun.lockb
WORKDIR /temp
COPY ./frontend/package.json /temp/frontend/package.json
COPY ./frontend/bun.lockb /temp/frontend/bun.lockb

RUN cd /src/frontend && bun install --frozen-lockfile
RUN cd /temp/frontend && bun install --frozen-lockfile

# Copy the rest of the application code
COPY ./frontend/ /src/frontend/
WORKDIR /src/frontend/
COPY ./frontend/ /temp/frontend/
WORKDIR /temp/frontend/

RUN bun run build
RUN ls /src/frontend/dist

#---------------------------------------------------------

# Use a slim variant to reduce image size where possible
FROM python:3.10-slim as backend-builder

WORKDIR /src
WORKDIR /temp

ARG PROJECT_DIR
# ENV PROJECT_DIR ${PROJECT_DIR}
Expand All @@ -35,13 +34,13 @@ RUN python3 -m venv $POETRY_VENV \

ENV PATH="${PATH}:${POETRY_VENV}/bin"

COPY ./backend/df_designer /src/backend/df_designer
COPY --from=frontend-builder /src/frontend/dist /src/backend/df_designer/app/static
COPY ./backend/df_designer /temp/backend/df_designer
COPY --from=frontend-builder /temp/frontend/dist /temp/backend/df_designer/app/static

COPY ./${PROJECT_DIR} /src/${PROJECT_DIR}
COPY ./${PROJECT_DIR} /temp/${PROJECT_DIR}

# Build the wheel
WORKDIR /src/backend/df_designer
WORKDIR /temp/backend/df_designer
RUN poetry build

#---------------------------------------------------------
Expand All @@ -58,11 +57,11 @@ COPY --from=backend-builder /poetry-venv /poetry-venv
ENV PATH="/poetry-venv/bin:$PATH"

# Copy only the necessary files
COPY --from=backend-builder /src/backend/df_designer /df_designer
COPY ./${PROJECT_DIR} /${PROJECT_DIR}
COPY --from=backend-builder /temp/backend/df_designer /src2/backend/df_designer
COPY ./${PROJECT_DIR} /src2/${PROJECT_DIR}

# Install the wheel
WORKDIR /${PROJECT_DIR}
WORKDIR /src2/${PROJECT_DIR}
RUN poetry lock --no-update \
&& poetry install

Expand Down
3 changes: 2 additions & 1 deletion backend/df_designer/app/api/api_v1/api.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
from fastapi import APIRouter

from app.api.api_v1.endpoints import bot, flows
from app.api.api_v1.endpoints import bot, dff_services, flows
from app.core.config import settings

api_router = APIRouter()

api_router.include_router(flows.router, prefix="/".join([settings.API_V1_STR, "flows"]), tags=["flows"])
api_router.include_router(dff_services.router, prefix="/".join([settings.API_V1_STR, "services"]), tags=["services"])
api_router.include_router(bot.router, prefix="/".join([settings.API_V1_STR, "bot"]), tags=["bot"])
Loading

0 comments on commit 3a9e740

Please sign in to comment.