Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ jobs:
runs-on: [ ubuntu-latest ]
steps:
- name: Checkout source
uses: actions/checkout@v3
uses: actions/checkout@v5

- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '17'
Expand All @@ -19,15 +19,15 @@ jobs:
run: mvn clean install -DskipTests

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v3
uses: aws-actions/configure-aws-credentials@v5.0.0
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: 'eu-north-1'
aws-region: 'us-east-1'

- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1
uses: aws-actions/amazon-ecr-login@v2
with:
mask-password: 'true'

Expand All @@ -52,9 +52,9 @@ jobs:
container-name: springboot-example
image: ${{ steps.build-image.outputs.image }}
- name: Deploy Amazon ECS task definition
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
uses: aws-actions/amazon-ecs-deploy-task-definition@v2
with:
task-definition: ${{ steps.task-def.outputs.task-definition }}
service: springboot-example-service
cluster: DevCluster2
cluster: springboot-cluster
wait-for-service-stability: true
75 changes: 42 additions & 33 deletions springboot-app-task-definition.json
Original file line number Diff line number Diff line change
@@ -1,44 +1,57 @@
{
"taskDefinitionArn": "arn:aws:ecs:eu-north-1:974142680250:task-definition/springboot-app-task-definition:6",
"compatibilities": [
"EC2",
"FARGATE"
],
"containerDefinitions": [
{
"name": "springboot-example",
"image": "974142680250.dkr.ecr.eu-north-1.amazonaws.com/springboot-example:latest",
"cpu": 0,
"portMappings": [
{
"name": "springboot-example-8080-tcp",
"containerPort": 8080,
"hostPort": 8080,
"protocol": "tcp",
"appProtocol": "http"
}
],
"essential": true,
"environment": [],
"environmentFiles": [],
"mountPoints": [],
"volumesFrom": [],
"ulimits": [],
"essential": true,
"image": "493233983811.dkr.ecr.us-east-1.amazonaws.com/springboot-example:latest",
"logConfiguration": {
"logDriver": "awslogs",
"options": {
"awslogs-create-group": "true",
"awslogs-group": "/ecs/springboot-app-task-definition",
"awslogs-region": "eu-north-1",
"awslogs-create-group": "true",
"awslogs-region": "us-east-1",
"awslogs-stream-prefix": "ecs"
},
"secretOptions": []
}
},
"mountPoints": [],
"name": "springboot-example",
"portMappings": [
{
"appProtocol": "http",
"containerPort": 80,
"hostPort": 80,
"name": "springboot-example-80-tcp",
"protocol": "tcp"
},
{
"appProtocol": "http",
"containerPort": 8080,
"hostPort": 8080,
"name": "springboot-example-8080-tcp",
"protocol": "tcp"
}
],
"systemControls": [],
"ulimits": [],
"volumesFrom": []
}
],
"cpu": "1024",
"enableFaultInjection": false,
"executionRoleArn": "arn:aws:iam::493233983811:role/ecsTaskExecutionRole",
"family": "springboot-app-task-definition",
"taskRoleArn": "arn:aws:iam::974142680250:role/ecsTaskExecutionRole",
"executionRoleArn": "arn:aws:iam::974142680250:role/ecsTaskExecutionRole",
"memory": "3072",
"networkMode": "awsvpc",
"revision": 6,
"volumes": [],
"status": "ACTIVE",
"placementConstraints": [],
"registeredAt": "2025-09-23T19:14:25.667Z",
"registeredBy": "arn:aws:iam::493233983811:root",
"requiresAttributes": [
{
"name": "com.amazonaws.ecs.capability.logging-driver.awslogs"
Expand Down Expand Up @@ -68,21 +81,17 @@
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.29"
}
],
"placementConstraints": [],
"compatibilities": [
"EC2",
"FARGATE"
],
"requiresCompatibilities": [
"FARGATE"
],
"cpu": "1024",
"memory": "3072",
"revision": 1,
"runtimePlatform": {
"cpuArchitecture": "X86_64",
"operatingSystemFamily": "LINUX"
},
"registeredAt": "2023-12-08T19:03:51.274Z",
"registeredBy": "arn:aws:iam::974142680250:user/integration-ninjas",
"status": "ACTIVE",
"taskDefinitionArn": "arn:aws:ecs:us-east-1:493233983811:task-definition/springboot-app-task-definition:1",
"taskRoleArn": "arn:aws:iam::493233983811:role/ecsTaskExecutionRole",
"volumes": [],
"tags": []
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/*Controller File*/
package com.integrationninjas.springbootexample.controller;

import java.util.List;
Expand Down
8 changes: 4 additions & 4 deletions src/main/resources/application.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
spring.datasource.url=jdbc:mysql://user-management.cbvxsmsv5dwh.eu-north-1.rds.amazonaws.com:3306/user_management
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.url=jdbc:mysql://db-springboot-app.cixqiqg6s3xi.us-east-1.rds.amazonaws.com:3306/db-springboot-app
spring.datasource.username=admin
spring.datasource.password=Cryastal#$86

spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
spring.jpa.hibernate.ddl-auto=update
spring.jpa.hibernate.ddl-auto=update
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/*Springboot*/
package com.integrationninjas.springbootexample;

import org.junit.jupiter.api.Test;
Expand Down