From c436aad752a3f10eb8a1a18dada59870b5e3d062 Mon Sep 17 00:00:00 2001
From: Katharina Renk <katharina.renk@stud.h-da.de>
Date: Tue, 25 Apr 2023 12:05:56 +0000
Subject: [PATCH] implemented a lab00 without any ceos and gnmi target, use
 with make containerlab-start-plain

See merge request danet/gosdn!429
---
 Makefile                               | 15 +++++
 dev_env_data/clab/gosdn_slim.clab.yaml | 89 ++++++++++++++++++++++++++
 2 files changed, 104 insertions(+)
 create mode 100644 dev_env_data/clab/gosdn_slim.clab.yaml

diff --git a/Makefile b/Makefile
index cc2d04c9e..7c736d80e 100644
--- a/Makefile
+++ b/Makefile
@@ -105,6 +105,8 @@ build-basic-interface-monitoring-app: pre
 
 containerize-all: containerize-gosdn containerize-gosdnc containerize-plugin-registry containerize-target
 
+containerize-slim: containerize-gosdn containerize-gosdnc containerize-plugin-registry
+
 containerize-gosdn:
 	docker buildx build --rm -t gosdn --load -f controller/controller.Dockerfile .
 
@@ -133,6 +135,15 @@ containerlab-start: create-clab-dir containerize-all
 	cd $(CLAB_DIR) &&\
 	sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml
 
+# build gnmi-target docker file before use
+containerlab-slim-start: create-clab-dir containerize-slim 
+	cd $(CLAB_DIR) &&\
+	sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn_slim.clab.yaml
+
+containerlab-slim-start-reconfigure: create-clab-dir containerize-slim 
+	cd $(CLAB_DIR) &&\
+	sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn_slim.clab.yaml --reconfigure
+
 containerlab-start-reconfigure: create-clab-dir containerize-all
 	cd $(CLAB_DIR) &&\
 	sudo containerlab deploy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml --reconfigure
@@ -141,6 +152,10 @@ containerlab-stop: create-clab-dir
 	cd $(CLAB_DIR) &&\
 	sudo containerlab destroy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml
 
+containerlab-slim-stop: create-clab-dir
+	cd $(CLAB_DIR) &&\
+	sudo containerlab destroy --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn_slim.clab.yaml
+
 containerlab-graph: create-clab-dir
 	cd $(CLAB_DIR) &&\
 	sudo containerlab graph --topo $(MAKEFILE_DIR)dev_env_data/clab/gosdn.clab.yaml
diff --git a/dev_env_data/clab/gosdn_slim.clab.yaml b/dev_env_data/clab/gosdn_slim.clab.yaml
new file mode 100644
index 000000000..c68de7bd2
--- /dev/null
+++ b/dev_env_data/clab/gosdn_slim.clab.yaml
@@ -0,0 +1,89 @@
+name: gosdn-lab00
+
+mgmt:
+  network: gosdn-lab00-net
+  ipv4_subnet: 172.100.0.0/16
+  ipv6_subnet: 2001:db8::/64
+
+topology:
+  nodes:
+    
+    plugin-registry:
+      kind: linux
+      image: plugin-registry
+      mgmt_ipv4: 172.100.0.16
+
+    gosdn:
+      kind: linux
+      image: gosdn
+      ports:
+        - 55055:55055
+        - 8080:8080
+        - 40000:40000
+      cmd:
+        --config /app/configs/containerlab-gosdn.toml
+      mgmt_ipv4: 172.100.0.5
+      env:
+        GOSDN_ADMIN_PASSWORD: TestPassword
+
+    gnmi-target-switch0:
+      kind: linux
+      image: gnmi-target
+      ports:
+        - 7030:7030
+      mgmt_ipv4: 172.100.0.11
+      startup-delay: 5
+      
+    gnmi-target-switch1:
+      kind: linux
+      image: gnmi-target
+      ports:
+        - 7031:7030
+      mgmt_ipv4: 172.100.0.12
+      startup-delay: 5
+
+    centos0:
+      kind: linux
+      image: centos:8
+      mgmt_ipv4: 172.100.0.3
+      group: server
+
+    centos1:
+      kind: linux
+      image: centos:8
+      mgmt_ipv4: 172.100.0.4
+      group: server  
+
+    mongodb:
+      kind: linux
+      image: mongo:5
+      ports:
+        - 27017:27017
+      env:
+        MONGO_INITDB_ROOT_USERNAME: root
+        MONGO_INITDB_ROOT_PASSWORD: example
+      mgmt_ipv4: 172.100.0.13
+
+    mongodb-express:
+      kind: linux
+      image: mongo-express:0.54.0
+      ports:
+        - 8081:8081
+      env:
+        ME_CONFIG_MONGODB_ADMINUSERNAME: root
+        ME_CONFIG_MONGODB_ADMINPASSWORD: example
+        ME_CONFIG_MONGODB_SERVER: mongodb
+      mgmt_ipv4: 172.100.0.14
+
+    rabbitmq:
+        kind: linux
+        image: rabbitmq:3-management
+        ports:
+          - 127.0.0.1:5672:5672
+          - 127.0.0.1:15672:15672
+        mgmt_ipv4: 172.100.0.15
+
+  links:
+    - endpoints: ["gnmi-target-switch0:eth1","gnmi-target-switch1:eth1"]
+    - endpoints: ["gnmi-target-switch0:eth2","centos0:eth1"]
+    - endpoints: ["gnmi-target-switch1:eth2","centos1:eth1"]
-- 
GitLab