diff --git a/cmd/meta_cli/main.go b/cmd/meta_cli/main.go index a357991..9782b5f 100644 --- a/cmd/meta_cli/main.go +++ b/cmd/meta_cli/main.go @@ -7,6 +7,7 @@ import ( configuration "git.g3e.fr/syonad/two/internal/config/agent" "git.g3e.fr/syonad/two/internal/load_db/nocloud" "git.g3e.fr/syonad/two/pkg/db/kv" + "git.g3e.fr/syonad/two/pkg/systemd" ) func main() { @@ -22,6 +23,8 @@ func main() { flag.Parse() + service, _ := systemd.New() + conf, err := configuration.LoadConfig(*conf_file) if err != nil { fmt.Println(err) @@ -43,7 +46,9 @@ func main() { Password: *password, SSHKEY: *ssh_key, }, db) + service.Start("metadata@" + *vm_name) } else if *stop { nocloud.UnLoadNoCloudInDB(*vm_name, db) + service.Stop("metadata@" + *vm_name) } } diff --git a/systemd/metadata_service/metadata@.service b/systemd/metadata@.service similarity index 69% rename from systemd/metadata_service/metadata@.service rename to systemd/metadata@.service index 54cf08a..626b97c 100644 --- a/systemd/metadata_service/metadata@.service +++ b/systemd/metadata@.service @@ -4,7 +4,7 @@ After=network.target [Service] Type=simple -ExecStart=/usr/local/bin/run-metadata-in-netns.sh %i +ExecStart=/opt/two/bin/metadata --vm %i [Install] WantedBy=multi-user.target \ No newline at end of file diff --git a/systemd/metadata_start/run-metadata-in-netns.sh b/systemd/metadata_start/run-metadata-in-netns.sh deleted file mode 100644 index 612dd18..0000000 --- a/systemd/metadata_start/run-metadata-in-netns.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -set -e - -# Expects one argument: netns_bridge (e.g. vpc-00003_br-00002 or vpc1_br0) -arg="$1" -NETNS="${arg%%_*}" -ip_port="${arg#*_}" -IP="${ip_port%%-*}" -PORT="${ip_port#*-}" - -echo "start metadata ${NETNS} " - -exec ip netns exec "${NETNS}" \ - /usr/bin/metadata \ - -file "/opt/metadata/${arg}.conf" \ - -interface "${IP}" \ - -port "${PORT}" \ No newline at end of file