diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d03c5452047804b64b6474c34bbc7d7359aa5832..9301527ab4d02b315e168280555952b47e532391 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,7 @@ variables: GOSDN_IMAGE: "${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA}" GOSDN_TESTING_IMAGE: "${CI_REGISTRY_IMAGE}:testing_${CI_COMMIT_SHA}" - CEOS_IMAGE: "$CI_REGISTRY_IMAGE/ceos:latest" + CEOS_IMAGE: "${CI_PCONTAINERS_REGISTRY_IMAGE}/ceos:latest" GOLANG_VERSION: "1.18" stages: diff --git a/.gitlab/ci/.integration-test-containerlab.yml b/.gitlab/ci/.integration-test-containerlab.yml index 000af8c0f052dfc3fdcf583e7f9f4c6c85f7c3f3..8498e1bbf33ac199c1109d2819971a7cab6f354e 100644 --- a/.gitlab/ci/.integration-test-containerlab.yml +++ b/.gitlab/ci/.integration-test-containerlab.yml @@ -25,7 +25,7 @@ containerlab-deploy: -e "s|@@CLAB_MGMT_SUBNET@@|${CLAB_MGMT_SUBNET}|g" \ ${CLAB_TEMPLATE} > ${CLAB_NAME}.clab.yml - cat ${CLAB_NAME}.clab.yml - - echo "$CI_REGISTRY_PASSWORD" | docker login -u $CI_REGISTRY_USER --password-stdin $CI_REGISTRY + - echo "${DOCKER_AUTH_CONFIG}" > ~/.docker/config.json | docker login $CI_REGISTRY - echo ${GOSDN_IMAGE} - docker pull ${GOSDN_IMAGE} - docker pull ${CEOS_IMAGE} diff --git a/README.md b/README.md index ee4a7df43a977c409d74ea490d0158ecb494522e..2156d1c98482148ecec502d4e23abf41e1410cfa 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,10 @@ The environment contains two [Arista cEOS](https://www.arista.com/en/products/software-controlled-container-networking), a goSDN, a cSBI orchestrator and a gNMI target. +> If you're a member of the danet group you should have access to the containers repo. Don't forget to `docker login registry.code.fbi.h-da.de` +> +> If you're no member of the danet group you have to [create an account](https://www.arista.com/en/login) at Arista and download the Arista cEOS image by yourself. Don't forget to change the image name (line `11` in the `gosdn.clab.yml` file) to the local one you've downloaded. + ```sh # starts the containerlab topology which contains two Arista cEOS, an cSBI orchestrator, a goSDN controller and gNMI target. make containerlab-start diff --git a/controller/test/terraform/variables.tf b/controller/test/terraform/variables.tf index 88bd132cfd46fe5009e504bbdbbbe5455260ecaf..ad76076497208515f227ce006312dea4a045a746 100644 --- a/controller/test/terraform/variables.tf +++ b/controller/test/terraform/variables.tf @@ -29,7 +29,7 @@ variable "container_tag" { variable "ceos_tag" { type = string - default = "registry.code.fbi.h-da.de/danet/gosdn/ceos:latest" + default = "registry.code.fbi.h-da.de/danet/containers/ceos:latest" } variable "network_name" { @@ -43,4 +43,4 @@ variable "ceos_address" { variable "gosdn_address" { type = string -} \ No newline at end of file +} diff --git a/gosdn.clab.yaml b/gosdn.clab.yaml index e102c9b482b8c870b77d1ebc48e05874c17949bd..0a86d81839acaa5d1ffaea56e587fe082a63ffc4 100644 --- a/gosdn.clab.yaml +++ b/gosdn.clab.yaml @@ -2,18 +2,32 @@ name: gosdn_csbi_arista_base mgmt: network: gosdn-csbi-arista-base-net - ipv4_subnet: 172.100.0.0/16 # ipv4 range + ipv4_subnet: 172.100.0.0/16 ipv6_subnet: 2001:db8::/64 topology: kinds: ceos: - image: registry.code.fbi.h-da.de/danet/gosdn/ceos:latest + image: registry.code.fbi.h-da.de/danet/containers/ceos:latest nodes: ceos0: kind: ceos + mgmt_ipv4: 172.100.0.11 + group: spine ceos1a: kind: ceos + mgmt_ipv4: 172.100.0.12 + group: spine + centos1: + kind: linux + image: centos:8 + mgmt_ipv4: 172.100.0.3 + group: server + centos2: + kind: linux + image: centos:8 + mgmt_ipv4: 172.100.0.4 + group: server gosdn: kind: linux image: gosdn @@ -22,11 +36,13 @@ topology: - 8080:8080 - 40000:40000 cmd: --csbi-orchestrator clab-gosdn_csbi_arista_base-csbi-orchestrator:55056 + mgmt_ipv4: 172.100.0.5 gnmi-target: kind: linux image: gnmi-target ports: - 7030:7030 + mgmt_ipv4: 172.100.0.6 csbi-orchestrator: kind: linux image: orchestrator @@ -37,6 +53,7 @@ topology: - /var/run/docker.sock:/var/run/docker.sock - ./csbi/.csbi.yaml:/etc/.csbi.yml cmd: --log-level trace --config /etc/.csbi.yml + mgmt_ipv4: 172.100.0.7 grafana: kind: linux image: grafana/grafana:8.1.2 @@ -44,6 +61,7 @@ topology: - ./csbi/grafana/provisioning/datasources:/etc/grafana/provisioning/datasources ports: - 3000:3000 + mgmt_ipv4: 172.100.0.8 prometheus: kind: linux image: prom/prometheus:v2.29.1 @@ -52,6 +70,9 @@ topology: binds: - ./csbi/prometheus:/etc/prometheus cmd: --web.enable-lifecycle --config.file=/etc/prometheus/prometheus.yml + mgmt_ipv4: 172.100.0.9 links: - - endpoints: ["ceos0:eth1", "ceos1a:eth1"] + - endpoints: ["ceos0:eth1","ceos1a:eth1"] + - endpoints: ["ceos0:eth2","centos1:eth1"] + - endpoints: ["ceos1a:eth2","centos2:eth1"]