Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: 2024-03-03 배포 #821

Merged
merged 26 commits into from
Mar 2, 2024
Merged

ci: 2024-03-03 배포 #821

merged 26 commits into from
Mar 2, 2024

Conversation

nyj001012
Copy link
Contributor

개요

  • 2024-03-03 백엔드 배포
  • 프론트 배포도 함께 이루어질 예정

작업 사항

  • 버그 수정 및 docker 파일 수정
  • pr test 시, 타입 오류 메시지 상대경로 명시적으로 해소
  • v2 리팩토링
  • 코드 포맷팅

목적

  • 백엔드 배포

스크린샷 (optional)

scarf005 and others added 25 commits September 7, 2023 18:19
* refactor: v1 api와 다른 부분 수정

* refactor: books API schema default sort value 추가 및 callSign 오타 수정

* refactor: status: zod.enum -> zod.nativeEnum 변경

z.enum으로 했을때 number 반환값에 대한 처리가 되지 않아 enumStatus 생성 후 nativeEnum으로 변경하였습니다.

* feat: books//:id v2 구현

* feat: books/search v2 구현

* feat: book/update v2 구현

* feat: books/info/:id v2 구현

* refactor: BookNotFoundError import 오타 수정

* feat: books/info/sorted v2 구현

* feat: books/info/tag v2 구현

book_info.id 로 distinct가 되지 않는 오류가 있어요

* refactor: 의미에 맞는 변수명으로 수정 및 코드 간략화

Co-authored-by: scarf <greenscarf005@gmail.com>

* refactor: book_info 중복 select 부분 처리

Co-authored-by: scarf <greenscarf005@gmail.com>

* feat: books/donator v2 구현

v1 구현 시 얘기했었던 기부자가 유저가 아니더라도 수정될 수 있도록 수정 & email은 더이상 관리하지 않기 때문에 변수명에서 제거

* refactor: 대출 가능 여부 boolean 반환값으로 수정

kysely 사용중 select가 없을 경우 sql syntax 에러로 해당 부분 수정 및 boolean 값 반환되도록 수정

* feat: [get] books/create v2 구현

axios.get 동작 중 발생하는 에러(catch 영역)에 대한 처리를 어떻게 해야할지 모르겠어요

* fix: 임시로 타입 오류 무시

---------

Co-authored-by: scarf <greenscarf005@gmail.com>
* build: prettier 설정

* style: prettier 적용

---------

Co-authored-by: nocontribute <>
Co-authored-by: kylee <kylee@fitfuns.com>
* refactor: `/stock` 제거

#767 (comment)

* refactor: contracts에서 500번대 오류 제거

백엔드에서 복구 불가능한 오류일 시 반환하기 때문에, 프론트엔드에서 따로 처리하는 것이 좋을 것 같습니다.

* refactor: `/history` -> `/lendings`

#767 (comment)

Co-authored-by: jwoo <74581396+Jiwon-Woo@users.noreply.github.com>

* refactor: `/users ` 정리

#767 (comment)

Co-authored-by: honeyl3ee <ddanhopark@gmail.com>

* refactor: `/tag` 서비스 임시 제거

고도화를 하기 위해서는 내부 구현을 바꾸어야 하는 문제가 있어 우선순위를 낮추었습니다.

주석처리를 할까 고민했으나 제거 이전 커밋(1565441)으로 체크아웃시 전체 코드를 확인 가능하기 때문에 복잡도 감소를 위해 코드를 제거하였습니다.

* refactor: `/books` 경로 정리

#767 (comment)
#767 (comment)

Co-authored-by: Jeong Jihwan <47599349+JeongJiHwan@users.noreply.github.com>
Co-authored-by: jwoo <74581396+Jiwon-Woo@users.noreply.github.com>

* feat: swagger에서 1줄 요약 표시

---------

Co-authored-by: jwoo <74581396+Jiwon-Woo@users.noreply.github.com>
Co-authored-by: honeyl3ee <ddanhopark@gmail.com>
Co-authored-by: Jeong Jihwan <47599349+JeongJiHwan@users.noreply.github.com>
토큰에서 id 정보 찾아서 유저 정보 반환하는 controller
searchUsersById 서비스 함수의 종속성이 생각보다 많음.controller 에서 items 의 length 를 확인하도록
…리턴-버그

fix: auth 관련 api가 무조건 200 리턴 버그
* refactor: 400번대 에러 반환 제거

* refactor: overDueDay 반환 값에서 제거
* chore(deps): contracts의 pnpm-lock 업데이트

* chore(deps): @mapbox/npm-pre-gyp 설치

* chore(deps): npm-pre-gyp 설치

* Revert "chore(deps): npm-pre-gyp 설치"

This reverts commit 8922c38

* chore(deps): package.json과 pnpm-lock.yaml 동기화
* fix(notification): 3일 전 반납 알림을 중복 사용한 부분 삭제

- 3일 전 반납 알림을 보내는 함수가 notifyReturningReminder(), notifyOverdueManager() 인데, 후자가 유연한 동작을 지원하므로 전자 함수의 동작을 제거함

* fix(notification): 슬랙 연체 알림 보내는 함수 스케줄러에 추가

* Update backend/src/v1/notifications/notifications.service.ts

Co-authored-by: Ji-Hyuck, Min <45284810+jimin52@users.noreply.github.com>

* refactor: console.log 제거

---------

Co-authored-by: Ji-Hyuck, Min <45284810+jimin52@users.noreply.github.com>
* feat(utils): rate limit 모듈 추가

- R, CUD에 해당하는 rate limit 모듈 추가

* refactor(cursus): rate limit 모듈 import해서 사용하도록 변경

* feat: getRateLimiter 적용

* feat(books): 유효한 ISBN인지 검사하는 로직 추가

* feat(tags): tags router에 rate limit 추가

* feat(routes): router에서 authValidate를 미들웨어로 쓰는 곳에 rate limiter 추가

* feat(auth): /get/me에 rate limiter 추가

* feat(users): 유저 생성 후 created 문장 출력 시, db에 저장된 email 값을 사용

* build: csrf 방지를 위한 lusca 패키지 추가

* feat(app): csrf 방지 로직 추가

* feat(app): csrf 방지 옵션 수정

* build: express-session 패키지 추가

* feat(app): lusca 상태 유지를 위한 세션 추가

* feat(app): cookie에도 secret 추가

* feat(app): session에서 cookie 설정 및 lusca에서 부가적인 설정 제거
- /get/me 시, id가 null이면 400 status code, errorCode.NO_USER 반환
- catch 로직 수정
* feat: 파이썬 가상환경 설치 추가 및 가상환경에서 pip 동작

* feat: server_name 변경 및 루트일 때 인덱스 페이지 지정

* feat: docker-compose에서 443 포트 개방 및 letsencrypt 자동화 스크립트 추가

* feat: scripts/letsencrypt.sh 볼륨 연결

* fix: lusca 설정 수정

* chore: 불필요한 command 제거

* feat(letsencrypt 볼륨 연결):

* chore: lusca 제거

* fix(users): search에서 authvalidate의 roleset을 service로 변경
Comment on lines 28 to 37
app.use(session({
secret,
resave: false,
saveUninitialized: true,
cookie: {
httpOnly: true,
sameSite: 'strict',
secure: true,
}
}));

Check failure

Code scanning / CodeQL

Missing CSRF middleware High

This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
This cookie middleware is serving a
request handler
without CSRF protection.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 부분에 대해서는 lusca 라이브러리 공부 더 하고 접근하겠습니다

@nyj001012 nyj001012 self-assigned this Mar 2, 2024
@nyj001012 nyj001012 added bug Something isn't working enhancement New feature or request labels Mar 2, 2024
Copy link
Member

@chanhihi chanhihi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@nyj001012 nyj001012 merged commit 4d0ed15 into main Mar 2, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
Status: 완료
Development

Successfully merging this pull request may close these issues.

6 participants