diff --git a/installers/charm/osm-lcm/src/charm.py b/installers/charm/osm-lcm/src/charm.py
index c7e1126..4a362a6 100755
--- a/installers/charm/osm-lcm/src/charm.py
+++ b/installers/charm/osm-lcm/src/charm.py
@@ -38,7 +38,6 @@
     check_container_ready,
     check_service_active,
 )
-from charms.osm_temporal.v0.temporal import TemporalRequires
 from charms.osm_ro.v0.ro import RoRequires
 from charms.osm_vca_integrator.v0.vca import VcaDataChangedEvent, VcaRequires
 from ops.charm import ActionEvent, CharmBase, CharmEvents
@@ -85,7 +84,6 @@
         super().__init__(*args)
         self.vca = VcaRequires(self)
         self.kafka = KafkaRequires(self)
-        self.temporal = TemporalRequires(self)
         self.mongodb_client = MongoClient(self, "mongodb")
         self._observe_charm_events()
         self.ro = RoRequires(self)
@@ -182,8 +180,6 @@
             self.on["mongodb"].relation_broken: self._on_required_relation_broken,
             self.on["ro"].relation_changed: self._on_config_changed,
             self.on["ro"].relation_broken: self._on_required_relation_broken,
-            self.on["temporal"].relation_changed: self._on_config_changed,
-            self.on["temporal"].relation_broken: self._on_required_relation_broken,
             self.on.vca_data_changed: self._on_config_changed,
             self.on["vca"].relation_broken: self._on_config_changed,
             # Action events
@@ -207,8 +203,6 @@
             missing_relations.append("mongodb")
         if not self.ro.host or not self.ro.port:
             missing_relations.append("ro")
-        if not self.temporal.host or not self.temporal.port:
-            missing_relations.append("temporal")
 
         if missing_relations:
             relations_str = ", ".join(missing_relations)
@@ -247,9 +241,6 @@
             "OSMLCM_STORAGE_URI": self.mongodb_client.connection_string,
             "OSMLCM_VCA_HELM_CA_CERTS": self.config["helm-ca-certs"],
             "OSMLCM_VCA_STABLEREPOURL": self.config["helm-stable-repo-url"],
-            # Temporal configuration
-            "OSMNBI_TEMPORAL_HOST": self.temporal.host,
-            "OSMNBI_TEMPORAL_PORT": self.temporal.port,
         }
         # Vca configuration
         if self.vca.data:
diff --git a/tools/local-build.sh b/tools/local-build.sh
index 7254bad..ab4b147 100755
--- a/tools/local-build.sh
+++ b/tools/local-build.sh
@@ -216,7 +216,7 @@
             STAGES="stage-test.sh ${STAGES}"
         fi
         for STAGE in $STAGES ; do
-            docker run -ti \
+            docker run -i \
                 -v "$(pwd):/build" \
                 -w /build \
                 ${MODULE,,}-stage2 \
@@ -275,7 +275,7 @@
     for MODULE in ${MODULES} ; do
         cd "${ROOTDIR}/devops/docker"
         if [ ! -d ${MODULE} ] ; then
-            echo "Directory ${ROOTDIR}/${MODULE} does not exist"
+            echo "Directory ${ROOTDIR}/devops/docker/${MODULE} does not exist"
             exit 1
         fi
         print_section "Building ${MODULE}"
