Soy un nuevo flujo de trabajo de acciones de github y me preguntaba si es posible configurar mi máquina ec2 directamente para CI y CD después de cada pulsación.
He visto que es posible con ECS, pero quería una solución sencilla ya que estamos probando esto en nuestro entorno de desarrollo y no queremos que nuestro presupuesto se exceda.
¿Es posible, si es así, cómo puedo lograrlo?
Si compila su código en GitHub Actions y solo desea copiar el paquete sobre EC2 existente, puede usar el complemento de acción de archivos SCP
https://github.com/marketplace/actions/scp-files
- name: copy file via ssh key uses: appleboy/scp-action@master with: host: ${{ secrets.HOST }} username: ${{ secrets.USERNAME }} port: ${{ secrets.PORT }} key: ${{ secrets.KEY }} source: "tests/a.txt,tests/b.txt" target: "test"Si tiene algún otro recurso de AWS que interactúa con EC2 (o cualquier otro servicio de AWS) y desea utilizar la CLI de AWS, puede utilizar la acción de credenciales de AWS
https://github.com/aws-actions/configure-aws-credentials
- name: Configure AWS credentials from Test account uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: ${{ secrets.TEST_AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.TEST_AWS_SECRET_ACCESS_KEY }} aws-region: us-east-1 - name: Copy files to the test website with the AWS CLI run: | aws s3 sync . s3://my-s3-test-website-bucket