diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4676b81521ece8bb561722ca28decbcd0223adcf..1c0b2ccd34501fa6f7ba6a21c40ad6cedfe6796f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,6 +6,7 @@ stages: - test - build - deploy + - apply - integration-test - .post diff --git a/build/ci/.terraform-ci.yml b/build/ci/.terraform-ci.yml index ca0547efdf6d0ebfdc89bd6a1836ab22a23c29ce..6c6a08cb13eb183a3e4d0a1ff6e9de004ca3a2f7 100644 --- a/build/ci/.terraform-ci.yml +++ b/build/ci/.terraform-ci.yml @@ -60,7 +60,7 @@ plan: <<: *tf apply: - stage: integration-test + stage: apply script: - gitlab-terraform apply dependencies: diff --git a/test/terraform/containers.tf b/test/terraform/containers.tf index bc706a204ee87dabe7703de73836b4fbfd084806..02220b874c48f4ec6f54848b7fbebce1adae8bf0 100644 --- a/test/terraform/containers.tf +++ b/test/terraform/containers.tf @@ -1,7 +1,7 @@ resource "docker_container" "gosdn" { depends_on = [ docker_container.ceos] - name = "contoller" + name = "contoller-${random_id.server.hex}" image = docker_image.gosdn.name restart = "always" @@ -10,6 +10,16 @@ resource "docker_container" "gosdn" { external = 5555 } + networks_advanced { + name = docker_network.danet.name + ipv4_address = "fd::605d" + } + + networks_advanced { + name = docker_network.danet_legacy.name + ipv4_address = "172.100.100.10" + } + env = [ "GOSDN_DEBUG=", ] @@ -18,7 +28,7 @@ resource "docker_container" "gosdn" { # create arista container # namespace is french cheeses resource "docker_container" "ceos" { - name = "abondance" + name = "ceos-${random_id.server.hex}" image = docker_image.ceos.name restart = "always" @@ -31,6 +41,16 @@ resource "docker_container" "ceos" { name = "bridge" } + networks_advanced { + name = docker_network.danet.name + ipv4_address = "fd::ce05" + } + + networks_advanced { + name = docker_network.danet_legacy.name + ipv4_address = "172.100.100.20" + } + command = ["/sbin/init", "systemd.setenv=INTFTYPE=eth", "systemd.setenv=ETBA=4", diff --git a/test/terraform/networks.tf b/test/terraform/networks.tf index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..5516f2b5aaff9105c46c4f216c2f7dd3b38dbedd 100644 --- a/test/terraform/networks.tf +++ b/test/terraform/networks.tf @@ -0,0 +1,15 @@ +resource "docker_network" "danet_legacy" { + name = "legacy-${random_id.server.hex}" + + ipam_config { + subnet = "172.100.100.0/24" + } +} + +resource "docker_network" "danet" { + name = "danet-${random_id.server.hex}" + ipv6 = true + ipam_config { + subnet = "fd::/64" + } +} \ No newline at end of file diff --git a/test/terraform/resources.tf b/test/terraform/resources.tf new file mode 100644 index 0000000000000000000000000000000000000000..9659f2d949aaa978b04167a7a62d1a0dcc6752eb --- /dev/null +++ b/test/terraform/resources.tf @@ -0,0 +1,3 @@ +resource "random_id" "server" { + byte_length = 8 +} diff --git a/test/terraform/variables.tf b/test/terraform/variables.tf index 09277aab4c338cefe92efc7cfa34530e12fea4cc..beacac0158789901783dad04be71645d0cb2a697 100644 --- a/test/terraform/variables.tf +++ b/test/terraform/variables.tf @@ -24,4 +24,9 @@ variable "tls_ca_cert" { variable "container_tag" { type = string default = "registry.code.fbi.h-da.de/cocsn/gosdn:latest" +} + +variable "network_name" { + type = string + default = "" } \ No newline at end of file