dj-twenty-six / 101

DJ26 Basic Introduction
GNU General Public License v3.0
3 stars 0 forks source link

pdm publish 를 실행시 PublishError 발생 #7

Open 8trider opened 1 year ago

8trider commented 1 year ago

pdm install Lock file does not exist Updating the lock file... 🔒 Lock successful Changes are written to pdm.lock. All packages are synced to date, nothing to do. Installing the project as an editable package... ✔ Install hello-8trider 0.1.0 successful

🎉 All complete!

(hello-8trider-3.8) ⚡ root@LAPTOP-TAQDM786  ~/code/hello-8trider   main ±  pdm publish Building sdist... Built sdist at /root/code/hello-8trider/dist/hello_8trider-0.1.0.tar.gz Building wheel... Built wheel at /root/code/hello-8trider/dist/hello_8trider-0.1.0-py3-none-any.whl Username: opeth8 Password: Save credentials to keyring? [y/n] (n): n Uploading hello_8trider-0.1.0-py3-none-any.whl 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.0/4.0 kB • 00:00 • ?See /tmp/pdm-publish-pjp_i6yi.log for detailed debug log. 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.0/4.0 kB • 00:00 • ? [PublishError]: 403 Client Error: You must enable two factor authentication to upload for url: https://upload.pypi.org/legacy/

pySatellite commented 1 year ago

아래와 같은 앱을 이용하여 처리 하였습니다.

image

tjkpolisher commented 1 year ago
  1. Two factor authentication (2FA)(이중 인증)을 거쳐야 합니다. Pypi 개인 계정 설정으로 들어가서 먼저 Two factor authentication (2FA)를 생성합니다. 왼쪽의 Add 2FA with authentication application을 클릭하는 것이 건강에 이롭습니다.
  2. 설정 창으로 이동하면 QR코드가 뜹니다. 이를 인증 애플리케이션으로 촬영한 후 인증번호를 발급받아야 합니다. 강사님께서 위에 사진으로도 올려주신 것과 같이 Google Authenticator 앱이 가장 사용이 편합니다.
  3. 설치 후 구글 계정 로그인 하시면 왼쪽 아래에 더하기 기호가 있습니다. 터치 후 QR 코드 촬영으로 컴퓨터 화면의 QR 코드를 촬영합니다. 촬영이 완료되면 여섯 자리 숫자가 발급되는데, 이 숫자를 QR 코드 옆의 verification code에 입력합니다.
  4. 이중 인증 완료 후 아래에 있는 API Token 칸에서 토큰을 생성합니다. 토큰 이름은 임의로 정하셔도 무방합니다(최소한 지금까지 파악한 바로는 그렇습니다).
  5. 토큰이 생성된 후 토큰 값이 나옵니다. 이 값은 두 번 다시 조회할 수 없고 오직 지금만 조회할 수 있기 때문에 이 토큰 값을 반드시 별도의 파일로 저장해두세요.
  6. 이후 pdm publish를 실행할 때 username에는 __token__을, password에는 방금 발급받은 토큰 값을 입력하면 정상적으로 배포가 진행됩니다.
pySatellite commented 1 year ago

https://lgtm.fun/

LGTM