The backend system of document system.
- Git branch rule:
mainbranch should a release (production) branch, anddevalso under protected, you are not allowed to force pushing any commit, please creaet PR first.- Creating your branch from
devbranch when developing feature. - Choose a review from our team member as reviewer to review your PR.
- Writing some testing case before commit PR.
- Dev
- Replace sensitive base on your env:
$ cd system $ cp .env.sample .env $ vim .env # write down your env - build and running:
- You can change dev or production of API when change
ENVIRONMENT, acceptdevandproduction
$ docker compose up --build - You can change dev or production of API when change
- backend running on
5000port directly, Nginx expost8080port and rewrite/api/v1before redirect to backend server - fill
system/service/client_secret.jsonfor Google Oauth
- Replace sensitive base on your env:
- Testing
- Run testing and generate report (on terminal and html)
$ cd system $ coverage run -m pytest -v --cov=repo --cov=service --cov=controller --cov=email_notification_system --cov-report term --cov-report html - you can run http server to see coverage report in html:
$ cd system && python -m http.server
- Run testing and generate report (on terminal and html)
- k8s
$ cd k8s $ kubectl create namesapce document-system $ kubectl apply -f deployment.yaml $ kubectl apply -f service.yaml
This template should help get you started developing with Vue 3 in Vite.
VSCode + Volar (and disable Vetur).
TypeScript cannot handle type information for .vue imports by default, so we replace the tsc CLI with vue-tsc for type checking. In editors, we need Volar to make the TypeScript language service aware of .vue types.
See Vite Configuration Reference.
npm installnpm run devnpm run buildRun Unit Tests with Vitest
npm run test:unitRun End-to-End Tests with Cypress
npm run test:e2e:devThis runs the end-to-end tests against the Vite development server. It is much faster than the production build.
But it's still recommended to test the production build with test:e2e before deploying (e.g. in CI environments):
npm run build
npm run test:e2eLint with ESLint
npm run lint