블로그 웹사이트
연락처 | [email protected]
이는 프로덕션 준비 코드가 아니라 고급 POC에 가깝습니다.
접근성상의 이유로 블로그 텍스트를 오디오로 변환하는 데 사용합니다.
/text 폴더에 있는 모든 텍스트 파일을 S3에 업로드하고, 이를 .mp3 파일로 변환하여 이메일 주소로 다시 보냅니다.
이메일 주소는 service/logic/email.py 파일에 하드코딩되어 있으며 변경할 수 있습니다.
디자인에 대한 자세한 내용은 다음과 같습니다. https://www.ranthebuilder.cloud/post/serverless-empowers-accessibility-convert-text-to-speech-with-amazon-polly
중요: 선택한 이메일 주소로 이메일을 보내려면 SES를 활성화해야 합니다. https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html
저는 Johannes Koch와 Jimmy Dahlqvist의 훌륭한 YouTube 동영상을 보고 스스로 솔루션을 디자인해야겠다는 영감을 받았습니다.
서비스 설계 및 추가 정보는 여기에서 내 블로그 게시물을 확인하세요.
이벤트 흐름:
확실히 개선된 사항이지만 이는 개인적인 요구 사항을 자동화하고 블로그 게시물에 대한 코드 예제를 제공하기 위한 빠른 POC일 뿐입니다.
프로덕션 코드에서는 작업이 완료될 때까지 기다리는 단계 함수 상태 머신을 사용해야 합니다.
필요에 따라 mp3 파일을 웹 사이트에 업로드하고 개인 AWS 계정에서 제거하고 싶습니다. 원하는 대로 동작을 변경할 수 있습니다.
poetry config --local virtualenvs.in-project true
실행하여 모든 종속 항목이 프로젝트 '.venv' 폴더에 설치되도록 하세요.make dev
실행poetry install
실행 make deploy
실행하여 cloudformation 스택을 생성합니다.
CDK destroy는 make destroy
사용하여 실행할 수 있습니다.
make pr
실행하세요. 이 명령은 필요한 모든 검사, 사전 커밋 후크, Linter, 코드 형식, flake8 및 테스트를 실행하므로 GitHub의 파이프라인이 통과하는지 확인할 수 있습니다.
이 명령은 코드의 오류를 자동으로 수정합니다.
커밋 전 단계에서 오류가 발생하면 자동으로 수정됩니다. 그러나 다음 단계로 계속 진행하려면 make pr
다시 실행해야 합니다.
make pr
모든 변경 사항을 커밋해야 합니다.
CDK에서는 Lambda 계층 종속성이 포함된 zip 파일을 생성하기 위해 요구사항.txt가 필요합니다. 이는 프로젝트의 poem.lock 파일을 기반으로 합니다.
``make destroy' 명령을 사용하면 자동으로 생성됩니다.
이 파일은 GitHub CI 중에 시를 사용하지 않고 필요한 모든 Python 라이브러리를 설치하는 데 사용됩니다.
파일 내용은 Pipfile.lock에서 생성됩니다.
make deploy
make deps
명령으로 자동으로 생성됩니다.
/text 폴더에 텍스트 파일(.txt)을 넣습니다. 'makeDeploy' 명령을 사용하여 CDK 스택을 배포합니다.
S3 버킷에 업로드되고 이메일을 통해 전송되는 mp3 파일로 변환됩니다.
이메일 주소는 하드코딩되어 있으며 service/logic/email.py 파일에서 찾을 수 있습니다.
새 파일을 추가할 때 버킷에 직접 업로드하거나 /text 폴더에 추가하고 'makeDeploy'를 실행할 수 있습니다.
코드 기여를 환영합니다. 이 가이드를 읽어보세요.
여기에서 우리의 행동강령을 읽어보세요.
이 라이브러리는 MIT 라이선스에 따라 라이선스가 부여됩니다. 라이센스 파일을 참조하십시오.