Com actualització del projecte, establiré una integració contínua/entrega contínua : aquesta ens permetrà emmagatzemar el treball, actualitzar-lo de manera automàtica i fer proves contínues. Això ens ajudarà pensant en el projecte a tenir un registre clar dels canvis i a validar de forma integrada tant l'aplicació, com la infraestructura (que utilitza Terraform i Docker), assegurant que cada actualització sigui neta i controlada . Ens dirigim al repositori flask_s3_file_manager i fem clic a la pestanya on diu Settings . Després a la columna esquerra despleguem el menú de Secrets and variables i fem clic a Actions . Allà trobarem una cosa anomenada Repository secrets on crearem un amb el nom AWS_ACCESS_KEY_ID , introduint com a secret l'ID d'AWS que tenim a la nostra CLI per l'usuari boto3_user , i afegim el secret. Fem el mateix per AWS_SECRET_ACCESS_KEY. En el cas de no recordar aquestes dades, podem executar un cat ~/.aws/credentials a la terminal...
Per definir el servei d'ECS és necessari connectar-lo a una VPC i a les seves subxarxes. Podríem crear una VPC des de zero configurant les seves taules de rutes i un Internet Gateway, però el nostre compte d'AWS ja ve amb una VPC predeterminada i xarxes a cadascuna de les zones de disponibilitat, que són les que utilitzarem. Fins ara a Terraform hem utilitzat blocs de resource per crear components nous. Tanmateix, quan necessitem consultar recursos existents al nostre compte d'AWS, utilitzem blocs data , que ens permeten importar els seus IDs directament al codi: També és necessari crear el seu Grup de Seguretat . En ell configurarem: el seu nom, la VPC predeterminada a la que es vincula i les regles de tràfic: A ingress el tràfic entrant per port 5000 i a egress permetrem la seva sortida sense restriccions. A continuació, crearem la configuració del servei aws_ecs_service : Seguidament definirem la infraestructura, executarem terraform plan . Com a qualsevol proje...