From 4dbbeb34d1c15a88a1762cf2ef6b2bb83de9a84d Mon Sep 17 00:00:00 2001
From: Neil-Jocelyn Schark <neil.schark@h-da.de>
Date: Fri, 15 Dec 2023 10:23:15 +0000
Subject: [PATCH] Remove legacy integration test refs and k8s deployment

See merge request danet/gosdn!665
---
 .gitlab-ci.yml                                |  4 -
 .gitlab/ci/.deploy-k8s.yml                    | 64 ---------------
 .gitlab/ci/.uml-autogen-ci.yml                | 31 -------
 .../legacy/.integration-test-containerlab.yml | 81 -------------------
 .gitlab/ci/legacy/.integration-test.yml       | 32 --------
 5 files changed, 212 deletions(-)
 delete mode 100644 .gitlab/ci/.deploy-k8s.yml
 delete mode 100644 .gitlab/ci/.uml-autogen-ci.yml
 delete mode 100644 .gitlab/ci/legacy/.integration-test-containerlab.yml
 delete mode 100644 .gitlab/ci/legacy/.integration-test.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 07224af53..9137a0dbf 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,6 @@ variables:
     GOSDN_TESTING_IMAGE: "${CI_REGISTRY_IMAGE}:testing_${DOCKER_TAG}"
     GOSDN_INTEGRATION_TEST_IMAGE: "${CI_REGISTRY_IMAGE}/integration-tests:${DOCKER_TAG}"
     CEOS_IMAGE: "${CI_PCONTAINERS_REGISTRY_IMAGE}/ceos:4.28.2F"
-    CLAB_VERSION: "0.48.6"
     GOLANG_VERSION: "1.21"
     GNMI_TARGET_IMAGE: registry.code.fbi.h-da.de/danet/gnmi-target/debian:master
     GNMI_TARGET_INTEGRATION_IMAGE: "$CI_REGISTRY_IMAGE/gnmi-target-integration-test:${CI_COMMIT_SHA}"
@@ -31,9 +30,6 @@ include:
     - local: "/.gitlab/ci/.code-quality-ci.yml"
     - local: "/.gitlab/ci/.security-and-compliance-ci.yml"
     - local: "/.gitlab/ci/.test.yml"
-    - local: "/.gitlab/ci/.uml-autogen-ci.yml"
     - local: "/.gitlab/ci/.renovate.yml"
     - local: "/.gitlab/ci/.mk-docs-deploy.yml"
     - local: "/.gitlab/ci/legacy/.test.yml"
-    #- local: "/.gitlab/ci/legacy/.integration-test-containerlab.yml"
-    #- local: "/.gitlab/ci/legacy/.integration-test.yml"
diff --git a/.gitlab/ci/.deploy-k8s.yml b/.gitlab/ci/.deploy-k8s.yml
deleted file mode 100644
index dc48c9067..000000000
--- a/.gitlab/ci/.deploy-k8s.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-build:k8s-bot:
-    stage: build
-    image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/golang:$GOLANG_VERSION
-    rules:
-        - if: $CI_COMMIT_BRANCH == "develop"
-        - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
-    script:
-        - cd build/cd
-        - go build -o k8s-bot
-    artifacts:
-        name: binary
-        paths:
-            - build/cd/k8s-bot
-
-.deploy: &deploy
-    image:
-        name: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/bitnami/kubectl:latest
-        entrypoint: [""]
-    before_script:
-        - echo "override global before script"
-    variables:
-        K8S_OP: "create"
-    script:
-        - ./build/cd/k8s-bot
-
-deploy:develop:
-    <<: *deploy
-    stage: deploy
-    needs:
-        - job: "build-docker"
-        - job: "build:k8s-bot"
-          artifacts: true
-    rules:
-        - if: $CI_COMMIT_BRANCH == "develop" && $CI_NIGHTLY == null
-
-deploy:latest:
-    <<: *deploy
-    stage: deploy
-    needs:
-        - job: "build-docker"
-        - job: "build:k8s-bot"
-          artifacts: true
-    rules:
-        - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_NIGHTLY == null
-
-deploy:nightly:mainline:
-    <<: *deploy
-    stage: deploy
-    needs:
-        - job: "build-docker"
-        - job: "build:k8s-bot"
-          artifacts: true
-    rules:
-        - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_NIGHTLY == "mainline"
-
-deploy:nightly:develop:
-    <<: *deploy
-    stage: deploy
-    needs:
-        - job: "build-docker"
-        - job: "build:k8s-bot"
-          artifacts: true
-    rules:
-        - if: $CI_COMMIT_BRANCH == "develop" && $CI_NIGHTLY == "mainline"
diff --git a/.gitlab/ci/.uml-autogen-ci.yml b/.gitlab/ci/.uml-autogen-ci.yml
deleted file mode 100644
index 1a3458969..000000000
--- a/.gitlab/ci/.uml-autogen-ci.yml
+++ /dev/null
@@ -1,31 +0,0 @@
-goplantuml:
-    image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/golang:$GOLANG_VERSION
-    stage: .post
-    only:
-        - develop
-    when: manual
-    variables:
-        FILENAME: "home.md"
-        WIKI_URL: "${CI_SERVER_PROTOCOL}://project_${CI_PROJECT_ID}_bot3:${GOPLANTUML_TOKEN}@${CI_SERVER_HOST}:${CI_SERVER_PORT}/${CI_PROJECT_PATH}.wiki.git"
-
-    script:
-        # install goplantuml
-        - go get github.com/jfeliu007/goplantuml/cmd/goplantuml
-        # remove old wiki folder
-        - rm -rf "/tmp/${CI_PROJECT_NAME}.wiki"
-        # clone and move to wiki folder
-        - cd /tmp
-        - git clone "${WIKI_URL}"
-        - cd "${CI_PROJECT_NAME}.wiki"
-
-        - echo '```plantuml' > "$FILENAME"
-        # run goplantuml
-        - goplantuml "${CI_PROJECT_DIR}/nucleus/" >> "$FILENAME"
-        - echo '```' >> "$FILENAME"
-
-        # git commit
-        - git config user.name "$GITLAB_USER_NAME"
-        - git config user.email "$GITLAB_USER_EMAIL"
-        - git add "$FILENAME"
-        - git commit -m "Auto-updated UML diagram via goplantuml CI job"
-        - git push origin "HEAD:master"
diff --git a/.gitlab/ci/legacy/.integration-test-containerlab.yml b/.gitlab/ci/legacy/.integration-test-containerlab.yml
deleted file mode 100644
index 4cbc4d9a1..000000000
--- a/.gitlab/ci/legacy/.integration-test-containerlab.yml
+++ /dev/null
@@ -1,81 +0,0 @@
-variables:
-    CLAB_TEMPLATE: "${CI_PROJECT_DIR}/controller/test/containerlab/int01.clab.tmpl.yml"
-    CLAB_DIR: "/home/gitlab-runner/clab"
-    CLAB_NAME: "clab${CI_PIPELINE_IID}"
-
-legacy-containerlab-deploy:
-    stage: test-legacy
-    tags:
-        - shell-containerlab
-    needs: ["build-controller-image", "build-controller-testing-image"]
-    script:
-        - firstOctet=$(python3 ${CI_PROJECT_DIR}/.gitlab/ci/scripts/generate_octet.py $CI_COMMIT_SHA)
-        - secondOctet=$(python3 ${CI_PROJECT_DIR}/.gitlab/ci/scripts/generate_octet.py $CI_PIPELINE_ID)
-        - export CLAB_MGMT_SUBNET="172.$firstOctet.$secondOctet.0/24"
-        - cd ${CLAB_DIR}
-        - ls -la
-        - |
-            sed -e "s|@@CEOS_CONTAINER_IMAGE@@|${CEOS_IMAGE}|g" \
-                -e "s|@@GOSDN_CONTAINER_IMAGE@@|${GOSDN_IMAGE}|g" \
-                -e "s|@@CLAB_NAME@@|${CLAB_NAME}|g" \
-                -e "s|@@CLAB_MGMT_SUBNET@@|${CLAB_MGMT_SUBNET}|g" \
-                ${CLAB_TEMPLATE} > ${CLAB_NAME}.clab.yml
-        - cat ${CLAB_NAME}.clab.yml
-        - echo "${DOCKER_AUTH_CONFIG}" > ~/.docker/config.json | docker login $CI_REGISTRY
-        - echo ${GOSDN_IMAGE}
-        - docker pull ${GOSDN_IMAGE}
-        - docker pull ${CEOS_IMAGE}
-        - sudo containerlab deploy --topo ${CLAB_DIR}/${CLAB_NAME}.clab.yml --reconfigure
-        - |
-            echo -e "\
-            GOSDN_HTTP_PORT=$(${CI_PROJECT_DIR}/.gitlab/ci/scripts/docker_host_port 8080 clab-${CLAB_NAME}-gosdn)\n\
-            GOSDN_GRPC_PORT=$(${CI_PROJECT_DIR}/.gitlab/ci/scripts/docker_host_port 55055 clab-${CLAB_NAME}-gosdn)\n\
-            CEOS1_PORT=$(${CI_PROJECT_DIR}/.gitlab/ci/scripts/docker_host_port 6030 clab-${CLAB_NAME}-ceos1)" \
-            > ${CI_PROJECT_DIR}/build.env
-        - cat ${CI_PROJECT_DIR}/build.env
-    artifacts:
-        reports:
-            dotenv: ${CI_PROJECT_DIR}/build.env
-
-
-legacy-containerlab-destroy:
-    stage: test-legacy
-    tags:
-        - shell-containerlab
-    needs:
-        [
-            "legacy-containerlab-deploy",
-            "legacy-integration-test-legacy:nucleus",
-            "legacy-integration-test-legacy:api"
-        ]
-    before_script:
-        - cd ${CLAB_DIR}
-    script:
-        - sudo containerlab destroy --topo ${CLAB_DIR}/${CLAB_NAME}.clab.yml -c
-        - docker volume rm -f ${CLAB_NAME}-volume
-        - echo ${CLAB_NAME}
-        - ls -la
-        - rm ${CLAB_DIR}/${CLAB_NAME}.clab.yml || true
-        - rm ${CLAB_DIR}/.${CLAB_NAME}.clab.yml.bak || true
-        - sudo rm -r ${CLAB_DIR}/clab-${CLAB_NAME} || true
-        - ls -la
-
-    allow_failure: true
-
-
-#containerlab:clean:
-#    stage: .post
-#    tags:
-#        - shell-containerlab
-#    before_script:
-#        - cd ${CLAB_DIR}
-#    script:
-#        - docker kill $(docker ps -q) || true
-#        - docker rm $(docker ps -a -q) || true
-#        - docker rmi $(docker images | grep 'registry.code.fbi.h-da.de/danet/gosdn ' | awk '{print $3}') || true
-#        - sudo rm -rf ${CLAB_DIR}/clab-* || true
-#        - sudo sed -i 's|.*clab.*||g' /etc/hosts
-#    allow_failure: true
-#    rules:
-#        - if: $CI_SCHEDULE_CLEAN
-#          when: always
diff --git a/.gitlab/ci/legacy/.integration-test.yml b/.gitlab/ci/legacy/.integration-test.yml
deleted file mode 100644
index c999735bc..000000000
--- a/.gitlab/ci/legacy/.integration-test.yml
+++ /dev/null
@@ -1,32 +0,0 @@
-.legacy-integration-test: &legacy-integration-test
-    image: $GOSDN_TESTING_IMAGE
-    stage: test-legacy
-    needs:
-        ["legacy-containerlab-deploy"]
-    variables:
-        GOSDN_LOG: "nolog"
-        GOSDN_TEST_API_ENDPOINT: "10.254.254.105:${GOSDN_GRPC_PORT}"
-        CEOS_TEST_ENDPOINT: "10.254.254.105:${CEOS1_PORT}"
-        GOSDN_TEST_USER: "admin"
-        GOSDN_TEST_PASSWORD: "admin"
-
-legacy-integration-test-legacy:nucleus:
-    <<: *legacy-integration-test
-    script:
-        - ${CI_PROJECT_DIR}/.gitlab/ci/scripts/wait-for-it.sh ${CEOS_TEST_ENDPOINT} -s -t 180 -- echo "CEOS is up"
-        - cd controller/
-        - make integration-test-nucleus
-
-legacy-integration-test-legacy:api:
-    <<: *legacy-integration-test
-    variables:
-        K8S_OP: "getenv"
-    script:
-        - cd controller/
-        - make integration-test-api
-
-legacy-integration-test:cli:
-    <<: *legacy-integration-test
-    script:
-        - cd cli/
-        - echo "Your tests here"
-- 
GitLab