diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fafedc7c45388854e6f0bd8882692bafe94924d2..7c9d24816e2a40c403bc1e6a8ff4114e1e5b4832 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,25 +2,24 @@ variables:
   APP: 'app'
   MAVEN_IMAGE: 'maven:3.9.0-amazoncorretto-19'
   KANIKO_IMAGE: "gcr.io/kaniko-project/executor:debug"
-  PROJECT_NAME: 'takima-store'
+  PROJECT_NAME: 'toDoList'
 
 include: "/generic-config-template.yml"
 
-workflow:
-  rules:
-    - if: $CI_COMMIT_BRANCH
-      variables:
-        DEPLOYMENT_ENV: Dev
-    - if: $CI_COMMIT_TAG
-      variables:
-        DEPLOYMENT_ENV: Production
+#workflow:
+#  rules:
+#    - if: $CI_COMMIT_BRANCH
+#      variables:
+#        DEPLOYMENT_ENV: Dev
+#    - if: $CI_COMMIT_TAG
+#      variables:
+#        DEPLOYMENT_ENV: Production
 
 
 stages:
   - build
   - test
-  - package
-  - deploy
+#  - package
 
 backend:build:
   image: $MAVEN_IMAGE
@@ -51,49 +50,15 @@ backend:test:
 
 
 
-backend:package:
-  extends: .common_package_config
-  dependencies:
-    - backend:build
-  script:
-    - /kaniko/executor
-      --context $CI_PROJECT_DIR/
-      --dockerfile $CI_PROJECT_DIR/Dockerfile
-      --destination $CI_REGISTRY_IMAGE/app:$CI_COMMIT_REF_NAME
-      --destination $CI_REGISTRY_IMAGE/app:latest
-      --cache=true
-
-assets:package:
-  extends: .common_package_config
-
-  script:
-    - /kaniko/executor
-      --context $CI_PROJECT_DIR/assets-server/
-      --dockerfile $CI_PROJECT_DIR/assets-server/Dockerfile
-      --destination $CI_REGISTRY_IMAGE/assets-server:$CI_COMMIT_REF_NAME
-      --destination $CI_REGISTRY_IMAGE/assets-server:latest
-      --cache=true
-
-deploy:
-  stage: deploy
-  variables:
-    TAG: '$CI_COMMIT_REF_NAME'
-  environment: $DEPLOYMENT_ENV
-  before_script:
-    - 'which ssh-agent || ( apk update && apk add openssh-client )'
-    - eval $(ssh-agent -s)
-    - echo "$SSH_PRIVATE_KEY" | ssh-add -
-    - mkdir -p ~/.ssh
-    - chmod 700 ~/.ssh
-    - ssh-keyscan $HOST >> ~/.ssh/known_hosts
-    - chmod 644 ~/.ssh/known_hosts
-  script:
-    # Copying compose files over the server (we don't need the whole Git repo)
-    - scp -P 22 -r docker-compose.yml flyway rocky@$HOST:~/$PROJECT_NAME
-    - echo \nTAG=$TAG >> $ENV
-    - scp -P 22 $ENV rocky@$HOST:~/$PROJECT_NAME/.env
-    # Deployment
-    - ssh rocky@$HOST "cd $PROJECT_NAME && docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY"
-    - ssh rocky@$HOST "cd $PROJECT_NAME && docker compose pull && docker compose down -v && docker compose up -d --force-recreate --no-build"
-
+#backend:package:
+#  extends: .common_package_config
+#  dependencies:
+#    - backend:build
+#  script:
+#    - /kaniko/executor
+#      --context $CI_PROJECT_DIR/
+#      --dockerfile $CI_PROJECT_DIR/Dockerfile
+#      --destination $CI_REGISTRY_IMAGE/app:$CI_COMMIT_REF_NAME
+#      --destination $CI_REGISTRY_IMAGE/app:latest
+#      --cache=true
 
diff --git a/docker-compose.yml b/docker-compose.yml
index 4de6d88723015ce6d96923f73a7b4098c803faeb..dfae12751896cf3bd9c9c9529bb2cf0c5bd5dd22 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,26 +1,14 @@
 version: "3.9"
 services:
-#  app:
-#    image: registry.master3.takima.io/gdemonteynard/takima-store/app:${TAG:-latest}
-#    env_file:
-#      - .env
-#    networks:
-#      - db
-#    depends_on:
-#      db:
-#        condition: service_healthy
-#    restart: on-failure
-#    ports:
-#      - "8080:8080"
   db:
     image: postgres:15.2-alpine
     restart: unless-stopped
     networks:
       - db
     environment:
-      - POSTGRES_PASSWORD=${DATABASE_PASSWORD:-ilovethierion}
-      - POSTGRES_USER=${DATABASE_USERNAME:-ilovethierion}
-      - POSTGRES_DB=${DATABASE_NAME:-entrainement_db}
+      - POSTGRES_PASSWORD=ilovethierion
+      - POSTGRES_USER=ilovethierion
+      - POSTGRES_DB=entrainement_db
     volumes:
       - db-data:/var/lib/postgresql/data
     healthcheck:
@@ -34,6 +22,20 @@ services:
       retries: 3
     ports:
       - "5432:5432"
+
+  flyway:
+    image: flyway/flyway:9-alpine
+    command: -connectRetries=60 -baselineVersion="0.0" baseline migrate info
+    volumes:
+      - ./flyway/sql:/flyway/sql:ro
+    environment:
+      - FLYWAY_URL=${JDBC_URL}
+      - FLYWAY_USER=${DATABASE_USERNAME}
+      - FLYWAY_PASSWORD=${DATABASE_PASSWORD}
+    depends_on:
+      - db
+    networks:
+      - db
 networks:
   db:
 
diff --git a/pom.xml b/pom.xml
index 49dae4a37672d5042cddc158db3b6f5fa551d7ba..5a22a91f769e9b2666923c5df4f1879f5b5fc9ad 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
@@ -15,9 +15,9 @@
     <description>EntrainementTF</description>
     <properties>
         <java.version>19</java.version>
-		<flyway.version>9.16.0</flyway.version>
-		<testcontainers.version>1.17.6</testcontainers.version>
-	</properties>
+        <flyway.version>9.16.0</flyway.version>
+        <testcontainers.version>1.17.6</testcontainers.version>
+    </properties>
     <dependencies>
         <dependency>
             <groupId>org.springframework.boot</groupId>
@@ -64,25 +64,25 @@
             <scope>test</scope>
         </dependency>
 
-		<!-- testcontainers -->
-		<dependency>
-			<groupId>org.testcontainers</groupId>
-			<artifactId>testcontainers</artifactId>
-			<version>${testcontainers.version}</version>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.testcontainers</groupId>
-			<artifactId>jdbc</artifactId>
-			<version>${testcontainers.version}</version>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.testcontainers</groupId>
-			<artifactId>postgresql</artifactId>
-			<version>${testcontainers.version}</version>
-			<scope>test</scope>
-		</dependency>
+        <!-- testcontainers -->
+        <dependency>
+            <groupId>org.testcontainers</groupId>
+            <artifactId>testcontainers</artifactId>
+            <version>${testcontainers.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.testcontainers</groupId>
+            <artifactId>jdbc</artifactId>
+            <version>${testcontainers.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.testcontainers</groupId>
+            <artifactId>postgresql</artifactId>
+            <version>${testcontainers.version}</version>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
 
     <build>
diff --git a/src/main/java/com/takima/entrainement/EntrainementTfApplication.java b/src/main/java/com/takima/entrainement/EntrainementTfApplication.java
index 86e5fc17d3591ad9ec69482028c929e747c74ca3..9b809e991d03dade3a7db241d8b3af18ea0a7e6b 100644
--- a/src/main/java/com/takima/entrainement/EntrainementTfApplication.java
+++ b/src/main/java/com/takima/entrainement/EntrainementTfApplication.java
@@ -1,8 +1,6 @@
 package com.takima.entrainement;
 
 import lombok.extern.slf4j.Slf4j;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 
@@ -11,10 +9,10 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 public class EntrainementTfApplication {
 
 
-	public static void main(String[] args) {
-		SpringApplication.run(EntrainementTfApplication.class, args);
-		log.info("Application started !!!!!!");
+    public static void main(String[] args) {
+        SpringApplication.run(EntrainementTfApplication.class, args);
+        log.info("Application started !!!!!!");
 
-	}
+    }
 
 }
diff --git a/src/main/java/com/takima/entrainement/toDo/controllers/ToDoApi.java b/src/main/java/com/takima/entrainement/toDo/controllers/ToDoApi.java
index a358df5e57a66764bbe98f4c30ff3fdfc5c7ae80..68985d0fc218715a2786be5ff809253165ec1b00 100644
--- a/src/main/java/com/takima/entrainement/toDo/controllers/ToDoApi.java
+++ b/src/main/java/com/takima/entrainement/toDo/controllers/ToDoApi.java
@@ -70,12 +70,11 @@ public class ToDoApi {
 
     @PutMapping("/{todoId}")
     public ResponseEntity<EntityModel<ToDo>> update(@RequestBody ToDo todo, @PathVariable long todoId) {
-
-//        ToDo todoToUpdate = todoService.findById(todoId)
-//                .orElseThrow(() -> new NoSuchElementException(String.format("no todo with id %d", todoId)));
-
+        if (todoService.findById(todoId).isEmpty()) {
+            throw new NoSuchElementException(String.format("no todo with id %d", todoId));
+        }
         todo.setId(todoId);
-        ToDo todoToUpdate=todoService.update(todo);
+        ToDo todoToUpdate = todoService.update(todo);
 
         return new ResponseEntity<>(assembler.toModel(todoToUpdate), HttpStatus.OK);
     }
@@ -93,7 +92,8 @@ class ToDoResourceAssembler implements RepresentationModelAssembler<ToDo, Entity
     public EntityModel<ToDo> toModel(ToDo todo) {
 
         return EntityModel.of(todo,
-                linkTo(methodOn(ToDoApi.class).getOne(todo.getId())).withSelfRel());
+                linkTo(methodOn(ToDoApi.class).getOne(todo.getId())).withSelfRel(),
+                linkTo(methodOn(ToDoApi.class).getAll("", Sort.unsorted(), 20, 0)).withRel("todos"));
     }
 
 }
diff --git a/src/main/java/com/takima/entrainement/toDo/services/ToDoService.java b/src/main/java/com/takima/entrainement/toDo/services/ToDoService.java
index c6acb2e24fcadbf5f4440038abdb221eac914cac..1925e4c2ea4cd7a3cae2341ab5f0aadfadc66da0 100644
--- a/src/main/java/com/takima/entrainement/toDo/services/ToDoService.java
+++ b/src/main/java/com/takima/entrainement/toDo/services/ToDoService.java
@@ -1,7 +1,6 @@
 package com.takima.entrainement.toDo.services;
 
 
-
 import com.takima.entrainement.core.pagination.PageSearch;
 import com.takima.entrainement.toDo.models.ToDo;
 import org.springframework.data.domain.Page;
diff --git a/src/main/java/com/takima/entrainement/toDo/services/impl/ToDoServiceImpl.java b/src/main/java/com/takima/entrainement/toDo/services/impl/ToDoServiceImpl.java
index c739e38fa6f6be95e4705553c94758cdbdf35f85..30162039bcaddb4bdc71d56d94120a717bb4d746 100644
--- a/src/main/java/com/takima/entrainement/toDo/services/impl/ToDoServiceImpl.java
+++ b/src/main/java/com/takima/entrainement/toDo/services/impl/ToDoServiceImpl.java
@@ -8,7 +8,6 @@ import com.takima.entrainement.toDo.services.ToDoService;
 import lombok.AllArgsConstructor;
 import org.springframework.data.domain.Page;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Optional;
 
diff --git a/src/main/resources/db/migration/V1_0__list_and_todo_tables.sql b/src/main/resources/db/migration/V1_0__list_and_todo_tables.sql
index 1e0984b63704acfa33ab850483ef2cacd774429d..2025162768d656d6fb9d70cff45e24eac21bc06a 100644
--- a/src/main/resources/db/migration/V1_0__list_and_todo_tables.sql
+++ b/src/main/resources/db/migration/V1_0__list_and_todo_tables.sql
@@ -1,9 +1,9 @@
 CREATE TABLE public.to_do
 (
     id          BIGSERIAL PRIMARY KEY,
-    name        VARCHAR   NOT NULL,
+    name        VARCHAR NOT NULL,
     description VARCHAR,
-    state     VARCHAR  NOT NULL CHECK (state IN ('todo', 'done'))
+    state       VARCHAR NOT NULL CHECK (state IN ('todo', 'done'))
 );
 
 
diff --git a/src/test/java/com/takima/entrainement/EntrainementTfApplicationTests.java b/src/test/java/com/takima/entrainement/EntrainementTfApplicationTests.java
index 8fb424efca2f4035928e007eba6afbda6b13bed1..30bf58e96316ca123e526b64d5541f71a9750002 100644
--- a/src/test/java/com/takima/entrainement/EntrainementTfApplicationTests.java
+++ b/src/test/java/com/takima/entrainement/EntrainementTfApplicationTests.java
@@ -6,8 +6,8 @@ import org.springframework.boot.test.context.SpringBootTest;
 @SpringBootTest
 class EntrainementTfApplicationTests {
 
-	@Test
-	void contextLoads() {
-	}
+    @Test
+    void contextLoads() {
+    }
 
 }
diff --git a/src/test/java/com/takima/entrainement/toDo/controllers/ToDoApiIT.java b/src/test/java/com/takima/entrainement/toDo/controllers/ToDoApiIT.java
index f14a517f2f445f714c3684108f8db9bb6ea2d828..cce17a96eef185d6bea3bd6f5a16f23042b5104c 100644
--- a/src/test/java/com/takima/entrainement/toDo/controllers/ToDoApiIT.java
+++ b/src/test/java/com/takima/entrainement/toDo/controllers/ToDoApiIT.java
@@ -124,9 +124,9 @@ public class ToDoApiIT {
 
                 String jsonToDO = new ObjectMapper().writeValueAsString(todo);
 
-                mvc.perform(put(URL+"/" + TODO_ID)
-                                .content(jsonToDO)
-                                .contentType(MediaType.APPLICATION_JSON_VALUE));
+                mvc.perform(put(URL + "/" + TODO_ID)
+                        .content(jsonToDO)
+                        .contentType(MediaType.APPLICATION_JSON_VALUE));
 
                 assertEquals(toDoService.findById(TODO_ID).get().getName(), newName);
             }