diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..bb7d754baa751630b25598e182a30f062e9b6ebd
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,40 @@
+include:
+  - project: osl/code/org.etsi.osl.main
+    ref: main
+    file: 
+      - ci-templates/default.yml
+      - ci-templates/build.yml
+    rules:
+      - if: '$CI_COMMIT_REF_NAME == "main"'
+  
+  - project: osl/code/org.etsi.osl.main
+    ref: develop
+    file: 
+      - ci-templates/default.yml
+      - ci-templates/build.yml
+    rules:
+      - if: '$CI_COMMIT_REF_NAME == "develop"'
+
+  - project: osl/code/org.etsi.osl.main
+    ref: $CI_COMMIT_REF_NAME
+    file: 
+      - ci-templates/default.yml
+      - ci-templates/build.yml
+    rules:
+      - if: '$CI_COMMIT_REF_PROTECTED && $CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "develop"'
+
+  - project: osl/code/org.etsi.osl.main
+    ref: develop
+    file: 
+      - ci-templates/default.yml
+      - ci-templates/build_unprotected.yml
+    rules:
+      - if: '$CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "develop" && !$CI_COMMIT_REF_PROTECTED'
+
+maven_build:
+  extends: .maven_build
+
+docker_build:
+  extends: .docker_build
+  needs:
+    - maven_build
diff --git a/Dockerfile.oasapi b/Dockerfile
similarity index 61%
rename from Dockerfile.oasapi
rename to Dockerfile
index b2b5a0a82f6cc59cd29bf7579f3b27be05d5fc12..c30ca9f295d08174831b1e71ed27edff5ba2cdcb 100644
--- a/Dockerfile.oasapi
+++ b/Dockerfile
@@ -2,6 +2,6 @@ FROM ibm-semeru-runtimes:open-17.0.7_7-jdk
 MAINTAINER openslice.io
 RUN mkdir /opt/shareclasses
 RUN mkdir -p /opt/openslice/lib/
-COPY target/org.etsi.osl.oas-1.2.0-SNAPSHOT.jar /opt/openslice/lib/
-CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses", "-jar", "/opt/openslice/lib/org.etsi.osl.oas-1.2.0-SNAPSHOT.jar"]
+COPY target/org.etsi.osl.oas-1.0.0.jar /opt/openslice/lib/
+CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses", "-jar", "/opt/openslice/lib/org.etsi.osl.oas-1.0.0.jar"]
 EXPOSE 13101
\ No newline at end of file
diff --git a/ci_settings.xml b/ci_settings.xml
new file mode 100644
index 0000000000000000000000000000000000000000..69ad06ed6c63795d191555afde6ea2d1da4e133d
--- /dev/null
+++ b/ci_settings.xml
@@ -0,0 +1,16 @@
+<settings xmlns="http://maven.apache.org/SETTINGS/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd">
+  <servers>
+    <server>
+      <id>gitlab-maven</id>
+      <configuration>
+        <httpHeaders>
+          <property>
+            <name>Job-Token</name>
+            <value>${CI_JOB_TOKEN}</value>
+          </property>
+        </httpHeaders>
+      </configuration>
+    </server>
+  </servers>
+</settings>
diff --git a/pom.xml b/pom.xml
index 1e66b5745446f86ac54866b7dcf93f8f6256caa7..30b259ad7396709d18988ceeb9d115e600ca2855 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,12 +5,12 @@
 	<parent>
 		<groupId>org.etsi.osl</groupId>
 		<artifactId>org.etsi.osl.main</artifactId>
-		<version>1.2.0-SNAPSHOT</version>
+		<version>1.0.0</version>
 		<relativePath>../org.etsi.osl.main</relativePath>
 	</parent>
 
-	<artifactId>org.etsi.osl.oas</artifactId>
 
+	<artifactId>org.etsi.osl.oas</artifactId>
 	<name>org.etsi.osl.oas</name>
 	<url>http://openslice.io</url>
 
@@ -27,6 +27,23 @@
 		<lombok-version>1.18.28</lombok-version>
 	</properties>
 
+	<repositories>
+		<repository>
+			<id>gitlab-maven</id>
+			<url>https://labs.etsi.org/rep/api/v4/groups/260/-/packages/maven</url>
+		</repository>
+	</repositories>
+	<distributionManagement>
+		<repository>
+			<id>gitlab-maven</id>
+			<url>${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/maven</url>
+		</repository>
+		<snapshotRepository>
+			<id>gitlab-maven</id>
+			<url>${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/maven</url>
+		</snapshotRepository>
+	</distributionManagement>
+	
 	<dependencyManagement>
 		<dependencies>
 			<!-- Spring Boot BOM -->
@@ -79,11 +96,6 @@
 			<artifactId>spring-boot-starter-data-jpa</artifactId>
 		</dependency>
 
-
-
-
-
-
 		<dependency>
 			<groupId>org.flowable</groupId>
 			<artifactId>flowable-spring-boot-starter</artifactId>
@@ -93,18 +105,10 @@
 		<dependency>
 			<groupId>org.etsi.osl</groupId>
 			<artifactId>org.etsi.osl.tmf.api</artifactId>
-			<version>${project.version}</version>
-		</dependency>
-
-		<dependency>
-			<groupId>org.etsi.osl</groupId>
-			<artifactId>org.etsi.osl.model</artifactId>
-			<version>${project.version}</version>
+			<version>${org.etsi.osl.tmf.api.version}</version>
 		</dependency>
 
 
-
-
 		<!-- activeMQ -->
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
@@ -126,6 +130,7 @@
 			<artifactId>pooled-jms</artifactId>
 		</dependency>
 
+
 		<!-- Camel -->
 		<dependency>
 			<groupId>org.apache.camel.springboot</groupId>
@@ -163,16 +168,13 @@
 			<artifactId>camel-stream</artifactId>
 		</dependency>
 
-
-
 		<dependency>
 			<groupId>com.fasterxml.jackson.core</groupId>
 			<artifactId>jackson-databind</artifactId>
 		</dependency>
 
-		<!-- security -->
-
 
+		<!-- security -->
 		<dependency>
 			<groupId>org.springframework.security</groupId>
 			<artifactId>spring-security-web</artifactId>
@@ -214,9 +216,6 @@
 
 
 		<!-- database -->
-
-
-		
 		<dependency>
 			<groupId>com.h2database</groupId>
 			<artifactId>h2</artifactId>
@@ -243,8 +242,6 @@
 
 
 		<!-- Testing -->
-
-
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-test</artifactId>
@@ -277,7 +274,6 @@
 			<scope>test</scope>
 		</dependency>
 
-
 		<dependency>
 			<groupId>org.apache.activemq</groupId>
 			<artifactId>activemq-broker</artifactId>
@@ -285,6 +281,13 @@
 		</dependency>
 
 
+		<!--javax.jms -->
+		<dependency>
+			<groupId>javax.jms</groupId>
+			<artifactId>javax.jms-api</artifactId>
+			<version>2.0.1</version>
+		</dependency>
+
 	</dependencies>
 
 	<build>
diff --git a/src/main/java/org/etsi/osl/oas/model/ActionCharacteristic.java b/src/main/java/org/etsi/osl/oas/model/ActionCharacteristic.java
index ad9a371549fe2158dab09a53a8826784806e12d3..c3157b9dfd1fb397ff54dddb1e59bc5e781a30f5 100644
--- a/src/main/java/org/etsi/osl/oas/model/ActionCharacteristic.java
+++ b/src/main/java/org/etsi/osl/oas/model/ActionCharacteristic.java
@@ -2,6 +2,7 @@ package org.etsi.osl.oas.model;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
 
+import jakarta.persistence.Column;
 import org.hibernate.annotations.GenericGenerator;
 import org.springframework.validation.annotation.Validated;
 
@@ -16,7 +17,7 @@ import lombok.Data;
  *
   *
  */
-@Schema(description = "An ActionCharacteristic is an entity that describes the values of the characteristics of ana ction in a rule.")
+@Schema(description = "An ActionCharacteristic is an entity that describes the values of the characteristics of an action in a rule.")
 
 @Validated
 @Entity(name = "OASActionCharacteristic")
@@ -33,5 +34,6 @@ public class ActionCharacteristic {
 	protected String name = null;
 	
 	@JsonProperty("value")
+	@Column(name = "\"value\"")
 	protected String value = null;
 }
diff --git a/src/test/java/org/etsi/osl/oas/RulesIntegrationTest.java b/src/test/java/org/etsi/osl/oas/RulesIntegrationTest.java
index c1ec1fed466d4fdcaf6811256cfb7db6167b08a0..fcb31d3b791bf6efbd2bb03365b0e9e551b5a0c4 100644
--- a/src/test/java/org/etsi/osl/oas/RulesIntegrationTest.java
+++ b/src/test/java/org/etsi/osl/oas/RulesIntegrationTest.java
@@ -30,11 +30,8 @@ import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
 
 import org.apache.commons.io.IOUtils;
-import org.etsi.osl.oas.AlarmHandling;
-import org.etsi.osl.oas.OasSpingBoot;
 import org.etsi.osl.oas.model.Action;
 import org.etsi.osl.oas.model.ActionCharacteristic;
 import org.etsi.osl.oas.model.ActionParam;
@@ -101,7 +98,7 @@ public class RulesIntegrationTest {
 
 	@WithMockUser(username = "osadmin", roles = { "ADMIN", "USER" })
 	@Test
-	public void testRuleCreateAndUpdate() throws UnsupportedEncodingException, IOException, Exception {
+	public void testRuleCreateAndUpdate() throws Exception {
 
 		ActionSpecificationCreate actionCreate = new ActionSpecificationCreate();
 		actionCreate.setName("scaleEqually");
@@ -211,7 +208,7 @@ public class RulesIntegrationTest {
 
 		scope.setEntityUUID("UUIDREFTEST2");
 		rule.setScope(scope);
-		responseRule = mvc
+		mvc
 				.perform(MockMvcRequestBuilders.post("/assuranceServicesManagement/v1/ruleSpecification")
 						.with(SecurityMockMvcRequestPostProcessors.csrf()).contentType(MediaType.APPLICATION_JSON)
 						.content(toJson(rule)))
@@ -229,7 +226,7 @@ public class RulesIntegrationTest {
 
 	@WithMockUser(username = "osadmin", roles = { "ADMIN", "USER" })
 	@Test
-	public void testRuleCreateFromFiles() throws UnsupportedEncodingException, IOException, Exception {
+	public void testRuleCreateFromFiles() throws Exception {
 	
 		File faction = new File( "src/test/resources/testAction.json" );
 		InputStream in = new FileInputStream( faction );
@@ -422,22 +419,10 @@ public class RulesIntegrationTest {
 		return mapper.writeValueAsBytes(object);
 	}
 
-	static String toJsonString(Object object) throws IOException {
-		ObjectMapper mapper = new ObjectMapper();
-		mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
-		return mapper.writeValueAsString(object);
-	}
-
 	static <T> T toJsonObj(String content, Class<T> valueType) throws IOException {
 		ObjectMapper mapper = new ObjectMapper();
 		mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
 		return mapper.readValue(content, valueType);
 	}
 
-	static <T> T toJsonObj(InputStream content, Class<T> valueType) throws IOException {
-		ObjectMapper mapper = new ObjectMapper();
-		mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
-		return mapper.readValue(content, valueType);
-	}
-
 }