Função simples e grosseira para gerar PDF a partir de uma página web. 😄
O projeto é gerenciado pelo Serverless Framework, usando Python, pelos seguintes motivos:
- Serverless não nos deixa presos à AWS;
- Utiliza AWS Lambda, permitindo uma escala gigantesca;
- Python é a linguagem com melhor performance na plataforma Lamda;
A lib pdfkit
é utilizada (ainda que não mais mantida) por ser compatível com a lib de mesmo nome para Ruby, sendo assim, não ficamos presos nem ao Python.
Será necessário instalar o Serverless Framework, pelo link acima.
Na raiz do projeto, execute:
npm install
Com o python e pip instalados:
pip install -r requirements.txt
Para instalar todas as dependências, instale o pipenv, seguindo as instruções para seu sistema operacional, depois, na pasta do projeto, rode um pipenv install
e estará pronto!
Após instalar as dependências, utilizar o comando sls offline
com a porta 3000 livre e utilizar curl ou semelhante:
curl http://localhost:3000/production/pdf
Instale o pytest
com o comando pip install -U pytest
(caso use pipenv, só usar um pipenv install
).
Utilize o comando pytest
na raiz do projeto para rodar os testes.
Na raiz do projeto, execute o comando make
ou make deploy
e pronto.
Basta editar o serverless.yml
conforme necessário, baixar as dependências.
Caso queira mudar o nome do serviço, ou domínio, execute:
sls create_domain