From 0f5a6c5011c732fd8834150a7d8deefbb83442bb Mon Sep 17 00:00:00 2001 From: Geonhyuk Seo Date: Tue, 19 Nov 2024 16:34:08 +0900 Subject: [PATCH 1/6] =?UTF-8?q?=F0=9F=90=9E=20Fix(apps/client):=20@cloudfl?= =?UTF-8?q?ow=20=EB=B6=88=EB=9F=AC=EC=98=A4=EB=8A=94=20=EA=B2=83=20@cloud-?= =?UTF-8?q?graph=20=EB=B6=88=EB=9F=AC=EC=98=A4=EB=8A=94=20=EA=B2=83?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20connector=20component=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/cloud-graph/components/Connector.tsx | 2 +- pnpm-lock.yaml | 67 +++---------------- 2 files changed, 10 insertions(+), 59 deletions(-) diff --git a/apps/client/src/cloud-graph/components/Connector.tsx b/apps/client/src/cloud-graph/components/Connector.tsx index 5da79b0e..70b8169b 100644 --- a/apps/client/src/cloud-graph/components/Connector.tsx +++ b/apps/client/src/cloud-graph/components/Connector.tsx @@ -1,5 +1,5 @@ import { useTheme } from '@mui/material'; -import { Point } from '@cloudflow/types'; +import { Point } from '@cloud-graph/types'; type Props = { from: Point; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2d8ac1e0..6c7d79d9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -234,31 +234,6 @@ importers: specifier: ^4.19.2 version: 4.19.2 - packages/cli: - dependencies: - chalk: - specifier: 4.1.2 - version: 4.1.2 - express: - specifier: ^4.21.1 - version: 4.21.1 - open: - specifier: ^10.1.0 - version: 10.1.0 - devDependencies: - '@types/node': - specifier: ^22.8.2 - version: 22.8.2 - cross-env: - specifier: ^7.0.3 - version: 7.0.3 - tsup: - specifier: ^8.3.5 - version: 8.3.5(@swc/core@1.9.1)(jiti@1.21.6)(postcss@8.4.47)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.5.1) - tsx: - specifier: ^4.19.2 - version: 4.19.2 - packages/ncloud-sdk: dependencies: axios: @@ -1728,6 +1703,9 @@ packages: '@types/jsonwebtoken@9.0.5': resolution: {integrity: sha512-VRLSGzik+Unrup6BsouBeHsf4d1hOEgYWTm/7Nmw1sXoN1+tRly/Gy/po3yeahnP4jfnQWWAhQAqcNfH7ngOkA==} + '@types/jsonwebtoken@9.0.7': + resolution: {integrity: sha512-ugo316mmTYBl2g81zDFnZ7cfxlut3o+/EQdaP7J8QN2kY6lJ22hmQYCK5EHcJHbrW+dkCGSCPgbG8JtYj6qSrg==} + '@types/methods@1.1.4': resolution: {integrity: sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==} @@ -6368,6 +6346,7 @@ snapshots: typescript: 5.6.3 transitivePeerDependencies: - chokidar + '@nestjs/swagger@8.0.5(@nestjs/common@10.4.7(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)(rxjs@7.8.1))(@nestjs/core@10.4.7)(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.2.2)': dependencies: '@microsoft/tsdoc': 0.15.0 @@ -6673,6 +6652,10 @@ snapshots: dependencies: '@types/node': 22.9.0 + '@types/jsonwebtoken@9.0.7': + dependencies: + '@types/node': 22.9.0 + '@types/methods@1.1.4': {} '@types/mime@1.3.5': {} @@ -6687,7 +6670,7 @@ snapshots: '@types/passport-jwt@4.0.1': dependencies: - '@types/jsonwebtoken': 9.0.5 + '@types/jsonwebtoken': 9.0.7 '@types/passport-strategy': 0.2.38 '@types/passport-strategy@0.2.38': @@ -8698,37 +8681,6 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@22.8.2)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.9.1)(@types/node@20.17.6)(typescript@5.6.3)): - dependencies: - '@babel/core': 7.26.0 - '@jest/test-sequencer': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.26.0) - chalk: 4.1.2 - ci-info: 3.9.0 - deepmerge: 4.3.1 - glob: 7.2.3 - graceful-fs: 4.2.11 - jest-circus: 29.7.0(babel-plugin-macros@3.1.0) - jest-environment-node: 29.7.0 - jest-get-type: 29.6.3 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-runner: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 - micromatch: 4.0.8 - parse-json: 5.2.0 - pretty-format: 29.7.0 - slash: 3.0.0 - strip-json-comments: 3.1.1 - optionalDependencies: - '@types/node': 22.8.2 - ts-node: 10.9.2(@swc/core@1.9.1)(@types/node@20.17.6)(typescript@5.6.3) - transitivePeerDependencies: - - babel-plugin-macros - - supports-color - jest-diff@29.7.0: dependencies: chalk: 4.1.2 @@ -8754,7 +8706,6 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/node': 22.9.0 - jest-mock: 29.7.0 jest-util: 29.7.0 From e5d061a9c3252d16c8c0fca43367da6becf0d9f0 Mon Sep 17 00:00:00 2001 From: Geonhyuk Seo Date: Tue, 19 Nov 2024 16:56:32 +0900 Subject: [PATCH 2/6] =?UTF-8?q?=F0=9F=9A=9A=20Setting(.github):=20cODEOWNE?= =?UTF-8?q?RS=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISSUES CLOSED: #81 --- .github/CODEOWNERS | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .github/CODEOWNERS diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000..ae59cfa1 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,4 @@ +@paulcjy +@SeoGeonhyuk +@Gdm0714 +@p1n9d3v \ No newline at end of file From 4129c0f9b05382869e563f4faaf8fbab4198d7ec Mon Sep 17 00:00:00 2001 From: Geonhyuk Seo Date: Tue, 19 Nov 2024 17:04:14 +0900 Subject: [PATCH 3/6] =?UTF-8?q?=F0=9F=90=9E=20Fix(.github):=20cODEOWNERS?= =?UTF-8?q?=20=EC=9E=AC=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISSUES CLOSED: #81 --- .github/CODEOWNERS | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index ae59cfa1..1450d1ca 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,4 +1 @@ -@paulcjy -@SeoGeonhyuk -@Gdm0714 -@p1n9d3v \ No newline at end of file +* @paulcjy @SeoGeonhyuk @Gdm0714 @p1n9d3v \ No newline at end of file From 60d5a1ddc552a6c421508782d303a3489c601a95 Mon Sep 17 00:00:00 2001 From: Geonhyuk Seo Date: Tue, 19 Nov 2024 17:17:20 +0900 Subject: [PATCH 4/6] =?UTF-8?q?=F0=9F=93=9D=20Docs(.github):=20pR=20TEMPLA?= =?UTF-8?q?TE=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISSUES CLOSED: #81 --- .github/pull_request_template.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 .github/pull_request_template.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 00000000..3aefc4ac --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,20 @@ +PR 작성 전 체크 리스트 +타이틀은 “이번 작업을 한 문장의 메시지로 요약한 것”으로 설정합니다. + +완료 작업 목록을 기록합니다. (WHAT) + +커밋이 작게 쪼개져 있기 때문에 맥락을 알 수 있도록 어떤 작업을 완료했는지 드러나야 합니다. +완료하지 않은 것은 반드시 제외합니다. 동작 화면이 있다면 스크린 캡처를 포함합니다. +고민과 해결 과정을 기록합니다. (HOW+WHY) + +어떤 문제를 해결하려고 무엇을 시도했는지, 결과적으로 어떻게 해결했는지 포함합니다. + +PR 작성 후 충돌이 안 나는지 확인할 것 + +<위 내용은 모두 삭제하고 PR 보내세요> + +---- 절취선 ---- + +주요 작업 +구현 결과 +비고(Optional) \ No newline at end of file From 00a3c86af35c0b1af013d125e3ecea35d72d71c8 Mon Sep 17 00:00:00 2001 From: Geonhyuk Seo Date: Tue, 19 Nov 2024 17:45:08 +0900 Subject: [PATCH 5/6] =?UTF-8?q?=F0=9F=9A=9A=20Setting(.github/workflows):?= =?UTF-8?q?=20github=20action=EC=9D=84=20=ED=86=B5=ED=95=B4=20=EC=97=B4?= =?UTF-8?q?=EB=A6=B0=20PR=EC=97=90=20=EB=8C=80=ED=95=B4=EC=84=9C=20?= =?UTF-8?q?=EC=9E=90=EB=8F=99=EC=9C=BC=EB=A1=9C=20=EC=95=8C=EB=A6=BC?= =?UTF-8?q?=EC=9D=84=20=EB=B3=B4=EB=82=B4=EC=A3=BC=EA=B2=8C=EB=81=94=20?= =?UTF-8?q?=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISSUES CLOSED: #80 --- .github/workflows/check-open-prs.yml | 60 ++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/check-open-prs.yml diff --git a/.github/workflows/check-open-prs.yml b/.github/workflows/check-open-prs.yml new file mode 100644 index 00000000..2d107a2c --- /dev/null +++ b/.github/workflows/check-open-prs.yml @@ -0,0 +1,60 @@ +name: Check Open PRs and Notify Slack + +on: + schedule: + # 매 1시간마다 실행 + - cron: '0 * * * *' + + workflow_dispatch: # 수동 실행을 위한 트리거 + inputs: + force_notify: + description: "Force Slack notification" + +jobs: + notify_open_prs: + runs-on: ubuntu-latest + + steps: + # 1. GitHub 리포지토리 체크아웃 + - name: Checkout repository + uses: actions/checkout@v3 + + # 2. PR 데이터 수집 + - name: Fetch Open PRs with Reviewers + id: fetch_prs + run: | + # 모든 열린 PR 가져오기 + prs=$(gh pr list --json number,title,url,reviewRequests --jq '.[] | select(.reviewRequests | length > 0)') + echo "Found PRs: $prs" + + # JSON 데이터를 Action output으로 저장 + echo "::set-output name=prs::$prs" + + env: + GITHUB_TOKEN: ${{ secrets.G_TOKEN }} # GitHub 기본 제공 토큰 + + # 3. Slack 알림 전송 + - name: Notify Slack + if: steps.fetch_prs.outputs.prs != '' # 열린 PR이 있을 때만 실행 + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} # Slack 웹훅 URL + run: | + echo "Preparing Slack notification..." + prs_json='${{ steps.fetch_prs.outputs.prs }}' + + if [ -z "$prs_json" ]; then + echo "No PRs to notify about." + exit 0 + fi + + # Slack 메시지 작성 + message=":warning: *Open Pull Requests with Reviewers:*" + echo $prs_json | jq -c '.[]' | while read -r pr; do + title=$(echo $pr | jq -r '.title') + url=$(echo $pr | jq -r '.url') + reviewers=$(echo $pr | jq -r '.reviewRequests | map(.login) | join(", ")') + message+="\n- <$url|$title> (Reviewers: $reviewers)" + done + + # Slack 메시지 전송 + curl -X POST -H 'Content-type: application/json' --data "{\"text\":\"$message\"}" $SLACK_WEBHOOK_URL From 25e0dd55aba348537b876160f45c57da1585b5d8 Mon Sep 17 00:00:00 2001 From: Geonhyuk Seo Date: Tue, 19 Nov 2024 17:46:34 +0900 Subject: [PATCH 6/6] =?UTF-8?q?=F0=9F=9A=9A=20Setting(.github/workflows):?= =?UTF-8?q?=20github=20action=20=ED=85=8C=EC=8A=A4=ED=8A=B8=EB=A5=BC=20?= =?UTF-8?q?=EC=9C=84=ED=95=9C=20=ED=81=AC=EB=A1=A0=EC=9E=A1=20=EC=8B=9C?= =?UTF-8?q?=EA=B0=84=201=EB=B6=84=EB=A7=88=EB=8B=A4=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISSUES CLOSED: #80 --- .github/workflows/check-open-prs.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-open-prs.yml b/.github/workflows/check-open-prs.yml index 2d107a2c..83d1a7b4 100644 --- a/.github/workflows/check-open-prs.yml +++ b/.github/workflows/check-open-prs.yml @@ -2,8 +2,8 @@ name: Check Open PRs and Notify Slack on: schedule: - # 매 1시간마다 실행 - - cron: '0 * * * *' + # 매 1분마다 실행 + - cron: '1 * * * *' workflow_dispatch: # 수동 실행을 위한 트리거 inputs: