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
Branches
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