Merge pull request #8 from dustinpianalto/development
Some checks failed
CI / build (push) Has been cancelled
Some checks failed
CI / build (push) Has been cancelled
Add action to deploy to ECS after image is built
This commit is contained in:
commit
d581a9bf32
18
.github/workflows/main.yml
vendored
18
.github/workflows/main.yml
vendored
@ -33,6 +33,7 @@ jobs:
|
|||||||
uses: battila7/get-version-action@v2.0.0
|
uses: battila7/get-version-action@v2.0.0
|
||||||
|
|
||||||
- name: Build, tag, and push image to Amazon ECR
|
- name: Build, tag, and push image to Amazon ECR
|
||||||
|
id: build-image
|
||||||
env:
|
env:
|
||||||
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
|
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
|
||||||
ECR_REPOSITORY: goff
|
ECR_REPOSITORY: goff
|
||||||
@ -42,3 +43,20 @@ jobs:
|
|||||||
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
|
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
|
||||||
docker tag $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG $ECR_REGISTRY/$ECR_REPOSITORY:latest
|
docker tag $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG $ECR_REGISTRY/$ECR_REPOSITORY:latest
|
||||||
docker push $ECR_REGISTRY/$ECR_REPOSITORY:latest
|
docker push $ECR_REGISTRY/$ECR_REPOSITORY:latest
|
||||||
|
echo "::set-output name=image::$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG"
|
||||||
|
|
||||||
|
- name: Fill in the new image ID in the Amazon ECS task definition
|
||||||
|
id: task-def
|
||||||
|
uses: aws-actions/amazon-ecs-render-task-definition@v1
|
||||||
|
with:
|
||||||
|
task-definition: task-definition.json
|
||||||
|
container-name: "goff"
|
||||||
|
image: ${{ steps.build-image.outputs.image }}
|
||||||
|
|
||||||
|
- name: Deploy Amazon ECS task definition
|
||||||
|
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
|
||||||
|
with:
|
||||||
|
task-definition: ${{ steps.task-def.outputs.task-definition }}
|
||||||
|
service: "goff"
|
||||||
|
cluster: "discord-bots"
|
||||||
|
wait-for-service-stability: true
|
||||||
|
|||||||
134
task-definition.json
Normal file
134
task-definition.json
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
{
|
||||||
|
"ipcMode": null,
|
||||||
|
"executionRoleArn": "arn:aws:iam::005692590034:role/goff_ecs_rds+cw+ecr",
|
||||||
|
"containerDefinitions": [
|
||||||
|
{
|
||||||
|
"dnsSearchDomains": null,
|
||||||
|
"environmentFiles": null,
|
||||||
|
"logConfiguration": {
|
||||||
|
"logDriver": "awslogs",
|
||||||
|
"secretOptions": null,
|
||||||
|
"options": {
|
||||||
|
"awslogs-group": "/ecs/goff",
|
||||||
|
"awslogs-region": "us-east-1",
|
||||||
|
"awslogs-stream-prefix": "ecs"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"entryPoint": null,
|
||||||
|
"portMappings": [],
|
||||||
|
"command": null,
|
||||||
|
"linuxParameters": null,
|
||||||
|
"cpu": 0,
|
||||||
|
"environment": [],
|
||||||
|
"resourceRequirements": null,
|
||||||
|
"ulimits": null,
|
||||||
|
"dnsServers": null,
|
||||||
|
"mountPoints": [],
|
||||||
|
"workingDirectory": null,
|
||||||
|
"secrets": [
|
||||||
|
{
|
||||||
|
"valueFrom": "goff_database_uri",
|
||||||
|
"name": "DATABASE_URL"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"valueFrom": "goff_discord_token",
|
||||||
|
"name": "DISCORDGO_TOKEN"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"valueFrom": "goff_email_password",
|
||||||
|
"name": "GOFF_EMAIL_PASSWORD"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"valueFrom": "goff_email_username",
|
||||||
|
"name": "GOFF_EMAIL_USERNAME"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"dockerSecurityOptions": null,
|
||||||
|
"memory": 512,
|
||||||
|
"memoryReservation": null,
|
||||||
|
"volumesFrom": [],
|
||||||
|
"stopTimeout": null,
|
||||||
|
"image": "005692590034.dkr.ecr.us-east-1.amazonaws.com/goff:latest",
|
||||||
|
"startTimeout": null,
|
||||||
|
"firelensConfiguration": null,
|
||||||
|
"dependsOn": null,
|
||||||
|
"disableNetworking": null,
|
||||||
|
"interactive": null,
|
||||||
|
"healthCheck": null,
|
||||||
|
"essential": true,
|
||||||
|
"links": null,
|
||||||
|
"hostname": null,
|
||||||
|
"extraHosts": null,
|
||||||
|
"pseudoTerminal": null,
|
||||||
|
"user": null,
|
||||||
|
"readonlyRootFilesystem": null,
|
||||||
|
"dockerLabels": null,
|
||||||
|
"systemControls": null,
|
||||||
|
"privileged": null,
|
||||||
|
"name": "goff"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"placementConstraints": [],
|
||||||
|
"memory": "512",
|
||||||
|
"taskRoleArn": "arn:aws:iam::005692590034:role/goff_ecs_rds+cw+ecr",
|
||||||
|
"compatibilities": [
|
||||||
|
"EC2"
|
||||||
|
],
|
||||||
|
"taskDefinitionArn": "arn:aws:ecs:us-east-1:005692590034:task-definition/goff:2",
|
||||||
|
"family": "goff",
|
||||||
|
"requiresAttributes": [
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "com.amazonaws.ecs.capability.logging-driver.awslogs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "ecs.capability.execution-role-awslogs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "com.amazonaws.ecs.capability.ecr-auth"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.19"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "com.amazonaws.ecs.capability.task-iam-role"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "ecs.capability.execution-role-ecr-pull"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"targetId": null,
|
||||||
|
"targetType": null,
|
||||||
|
"value": null,
|
||||||
|
"name": "ecs.capability.secrets.ssm.environment-variables"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"pidMode": null,
|
||||||
|
"requiresCompatibilities": [
|
||||||
|
"EC2"
|
||||||
|
],
|
||||||
|
"networkMode": null,
|
||||||
|
"cpu": "1024",
|
||||||
|
"revision": 2,
|
||||||
|
"status": "ACTIVE",
|
||||||
|
"inferenceAccelerators": null,
|
||||||
|
"proxyConfiguration": null,
|
||||||
|
"volumes": []
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user