Skip to content
Snippets Groups Projects
Commit 7171a1a9 authored by Manuel Kieweg's avatar Manuel Kieweg
Browse files

terraform ready for itegration test

parent 791ee4ca
No related branches found
No related tags found
2 merge requests!110Integration test,!90Develop
Pipeline #66420 failed
...@@ -14,7 +14,7 @@ build:docker: ...@@ -14,7 +14,7 @@ build:docker:
docker build \ docker build \
--build-arg GITLAB_USER=$GO_MODULES_USER \ --build-arg GITLAB_USER=$GO_MODULES_USER \
--build-arg GITLAB_TOKEN=$GO_MODULES_ACCESS_TOKEN \ --build-arg GITLAB_TOKEN=$GO_MODULES_ACCESS_TOKEN \
-t $DOCKER_IMAGE_SHA . -t $DOCKER_IMAGE_SHA build/docker/gosdn
.deploy: &deploy .deploy: &deploy
stage: deploy stage: deploy
......
...@@ -22,7 +22,11 @@ cache: ...@@ -22,7 +22,11 @@ cache:
- export TF_VAR_tls_ca_cert=${DOCKER_TLS_CA} - export TF_VAR_tls_ca_cert=${DOCKER_TLS_CA}
rules: rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH
variables:
TF_VAR_container_tag: $CI_REGISTRY_IMAGE:mr-master
- if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'develop' - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'develop'
variables:
TF_VAR_container_tag: $CI_REGISTRY_IMAGE:mr-develop
- if: $CI_COMMIT_BRANCH == "integration-test" - if: $CI_COMMIT_BRANCH == "integration-test"
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
......
integration-test: integration-test:
image: golang:1.14 image: golang:1.14
stage: test stage: integration-test
rules: rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
- if: $CI_COMMIT_BRANCH == "integration-test"
allow_failure: true
script: script:
- go test -race $(go list ./... | grep -v /forks/ | grep -v /api/ | grep -v /mocks ) -v -coverprofile=coverage.out - go test -race $(go list ./... | grep -v /forks/ | grep -v /api/ | grep -v /mocks ) -v -coverprofile=coverage.out
after_script: after_script:
......
package nucleus package nucleus
import ( import (
"github.com/google/uuid"
"os" "os"
"code.fbi.h-da.de/cocsn/gosdn/database" "code.fbi.h-da.de/cocsn/gosdn/database"
...@@ -56,10 +57,10 @@ func (c *Core) AttachDatabase() { ...@@ -56,10 +57,10 @@ func (c *Core) AttachDatabase() {
// CreateSouthboundInterfaces initializes the controller with its supported SBIs // CreateSouthboundInterfaces initializes the controller with its supported SBIs
func (c *Core) CreateSouthboundInterfaces() error { func (c *Core) CreateSouthboundInterfaces() error {
if err := c.sbic.add(&AristaOC{}); err != nil { if err := c.sbic.add(&AristaOC{id: uuid.New()}); err != nil {
return err return err
} }
if err := c.sbic.add(&OpenConfig{}); err != nil { if err := c.sbic.add(&OpenConfig{id: uuid.New()}); err != nil {
return err return err
} }
return nil return nil
......
...@@ -11,13 +11,18 @@ resource "docker_container" "gosdn" { ...@@ -11,13 +11,18 @@ resource "docker_container" "gosdn" {
} }
networks_advanced { networks_advanced {
name = docker_network.danet.name name = docker_network.danet.name
ipv4_address = "fd::605d"
}
networks_advanced {
name = docker_network.danet_legacy.name
ipv4_address = "172.100.100.10" ipv4_address = "172.100.100.10"
} }
env = [ env = [
"GOSDN_DEBUG=", "GOSDN_DEBUG=",
"GOSDN_TEST="] ]
} }
# create arista container # create arista container
...@@ -27,8 +32,22 @@ resource "docker_container" "ceos" { ...@@ -27,8 +32,22 @@ resource "docker_container" "ceos" {
image = docker_image.ceos.name image = docker_image.ceos.name
restart = "always" restart = "always"
ports {
internal = 6030
external = 6030
}
networks_advanced {
name = "bridge"
}
networks_advanced { networks_advanced {
name = docker_network.danet.name name = docker_network.danet.name
ipv4_address = "fd::ce05"
}
networks_advanced {
name = docker_network.danet_legacy.name
ipv4_address = "172.100.100.20" ipv4_address = "172.100.100.20"
} }
......
resource "docker_image" "gosdn" { resource "docker_image" "gosdn" {
name = "registry.code.fbi.h-da.de/cocsn/gosdn:develop" name = var.container_tag
} }
resource "docker_image" "ceos" { resource "docker_image" "ceos" {
......
resource "docker_network" "danet" { resource "docker_network" "danet_legacy" {
name = "danet" name = "danet_legacy"
ipam_config { ipam_config {
subnet = "172.100.100.0/24" subnet = "172.100.100.0/24"
}
}
resource "docker_network" "danet" {
name = "danet"
ipv6 = true
ipam_config {
subnet = "fd::/64"
} }
} }
\ No newline at end of file
...@@ -20,3 +20,8 @@ variable "tls_cert" { ...@@ -20,3 +20,8 @@ variable "tls_cert" {
variable "tls_ca_cert" { variable "tls_ca_cert" {
type = string type = string
} }
variable "container_tag" {
type = string
default = "registry.code.fbi.h-da.de/cocsn/gosdn:latest"
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment