From 0dec8091a23dcb877b4a881face936fb0689420c Mon Sep 17 00:00:00 2001
From: Alexander Morozov <lk4d4@docker.com>
Date: Mon, 26 Oct 2015 13:18:47 -0700
Subject: [PATCH] Remove contrib/host-integration

It's outdated and unused.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
---
 contrib/host-integration/Dockerfile.dev  |  25 -----
 contrib/host-integration/Dockerfile.min  |   4 -
 contrib/host-integration/manager.go      | 130 -----------------------
 contrib/host-integration/manager.sh      |  53 ---------
 contrib/host-integration/manager/systemd |  20 ----
 contrib/host-integration/manager/upstart |  15 ---
 6 files changed, 247 deletions(-)
 delete mode 100644 contrib/host-integration/Dockerfile.dev
 delete mode 100644 contrib/host-integration/Dockerfile.min
 delete mode 100644 contrib/host-integration/manager.go
 delete mode 100755 contrib/host-integration/manager.sh
 delete mode 100755 contrib/host-integration/manager/systemd
 delete mode 100755 contrib/host-integration/manager/upstart

diff --git a/contrib/host-integration/Dockerfile.dev b/contrib/host-integration/Dockerfile.dev
deleted file mode 100644
index c8df852899..0000000000
--- a/contrib/host-integration/Dockerfile.dev
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-# This Dockerfile will create an image that allows to generate upstart and
-# systemd scripts (more to come)
-#
-
-FROM		ubuntu:12.10
-MAINTAINER	Guillaume J. Charmes <guillaume@docker.com>
-
-RUN		apt-get update && apt-get install -y wget git mercurial
-
-# Install Go
-RUN		wget --no-check-certificate https://go.googlecode.com/files/go1.1.2.linux-amd64.tar.gz -O go-1.1.2.tar.gz
-RUN		tar -xzvf go-1.1.2.tar.gz && mv /go /goroot
-RUN		mkdir /go
-
-ENV		GOROOT	  /goroot
-ENV		GOPATH	  /go
-ENV		PATH	  $GOROOT/bin:$PATH
-
-RUN		go get github.com/docker/docker && cd /go/src/github.com/docker/docker && git checkout v0.6.3
-ADD		manager.go	/manager/
-RUN		cd /manager && go build -o /usr/bin/manager
-
-ENTRYPOINT	["/usr/bin/manager"]
-
diff --git a/contrib/host-integration/Dockerfile.min b/contrib/host-integration/Dockerfile.min
deleted file mode 100644
index 60bb89b986..0000000000
--- a/contrib/host-integration/Dockerfile.min
+++ /dev/null
@@ -1,4 +0,0 @@
-FROM		busybox
-MAINTAINER	Guillaume J. Charmes <guillaume@docker.com>
-ADD		manager	  /usr/bin/
-ENTRYPOINT	["/usr/bin/manager"]
diff --git a/contrib/host-integration/manager.go b/contrib/host-integration/manager.go
deleted file mode 100644
index c0b488b2f1..0000000000
--- a/contrib/host-integration/manager.go
+++ /dev/null
@@ -1,130 +0,0 @@
-package main
-
-import (
-	"bytes"
-	"encoding/json"
-	"flag"
-	"fmt"
-	"github.com/docker/docker"
-	"os"
-	"strings"
-	"text/template"
-)
-
-var templates = map[string]string{
-
-	"upstart": `description "{{.description}}"
-author "{{.author}}"
-start on filesystem and started lxc-net and started docker
-stop on runlevel [!2345]
-respawn
-exec /home/vagrant/goroot/bin/docker start -a {{.container_id}}
-`,
-
-	"systemd": `[Unit]
-	Description={{.description}}
-	Author={{.author}}
-	After=docker.service
-
-[Service]
-	Restart=always
-	ExecStart=/usr/bin/docker start -a {{.container_id}}
-	ExecStop=/usr/bin/docker stop -t 2 {{.container_id}}
-
-[Install]
-	WantedBy=local.target
-`,
-}
-
-func main() {
-	// Parse command line for custom options
-	kind := flag.String("t", "upstart", "Type of manager requested")
-	author := flag.String("a", "<none>", "Author of the image")
-	description := flag.String("d", "<none>", "Description of the image")
-	flag.Usage = func() {
-		fmt.Fprintf(os.Stderr, "\nUsage: manager <container id>\n\n")
-		flag.PrintDefaults()
-	}
-	flag.Parse()
-
-	// We require at least the container ID
-	if flag.NArg() != 1 {
-		println(flag.NArg())
-		flag.Usage()
-		return
-	}
-
-	// Check that the requested process manager is supported
-	if _, exists := templates[*kind]; !exists {
-		panic("Unknown script template")
-	}
-
-	// Load the requested template
-	tpl, err := template.New("processManager").Parse(templates[*kind])
-	if err != nil {
-		panic(err)
-	}
-
-	// Create stdout/stderr buffers
-	bufOut := bytes.NewBuffer(nil)
-	bufErr := bytes.NewBuffer(nil)
-
-	// Instanciate the Docker CLI
-	cli := docker.NewDockerCli(nil, bufOut, bufErr, "unix", "/var/run/docker.sock", false, nil)
-	// Retrieve the container info
-	if err := cli.CmdInspect(flag.Arg(0)); err != nil {
-		// As of docker v0.6.3, CmdInspect always returns nil
-		panic(err)
-	}
-
-	// If there is nothing in the error buffer, then the Docker daemon is there and the container has been found
-	if bufErr.Len() == 0 {
-		// Unmarshall the resulting container data
-		c := []*docker.Container{{}}
-		if err := json.Unmarshal(bufOut.Bytes(), &c); err != nil {
-			panic(err)
-		}
-		// Reset the buffers
-		bufOut.Reset()
-		bufErr.Reset()
-		// Retrieve the info of the linked image
-		if err := cli.CmdInspect(c[0].Image); err != nil {
-			panic(err)
-		}
-		// If there is nothing in the error buffer, then the image has been found.
-		if bufErr.Len() == 0 {
-			// Unmarshall the resulting image data
-			img := []*docker.Image{{}}
-			if err := json.Unmarshal(bufOut.Bytes(), &img); err != nil {
-				panic(err)
-			}
-			// If no author has been set, use the one from the image
-			if *author == "<none>" && img[0].Author != "" {
-				*author = strings.Replace(img[0].Author, "\"", "", -1)
-			}
-			// If no description has been set, use the comment from the image
-			if *description == "<none>" && img[0].Comment != "" {
-				*description = strings.Replace(img[0].Comment, "\"", "", -1)
-			}
-		}
-	}
-
-	/// Old version: Wrtie the resulting script to file
-	// f, err := os.OpenFile(kind, os.O_CREATE|os.O_WRONLY, 0755)
-	// if err != nil {
-	// 	panic(err)
-	// }
-	// defer f.Close()
-
-	// Create a map with needed data
-	data := map[string]string{
-		"author":       *author,
-		"description":  *description,
-		"container_id": flag.Arg(0),
-	}
-
-	// Process the template and output it on Stdout
-	if err := tpl.Execute(os.Stdout, data); err != nil {
-		panic(err)
-	}
-}
diff --git a/contrib/host-integration/manager.sh b/contrib/host-integration/manager.sh
deleted file mode 100755
index 8ea296f5a5..0000000000
--- a/contrib/host-integration/manager.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-set -e
-
-usage() {
-	echo >&2 "usage: $0 [-a author] [-d description] container [manager]"
-	echo >&2 "   ie: $0 -a 'John Smith' 4ec9612a37cd systemd"
-	echo >&2 "   ie: $0 -d 'Super Cool System' 4ec9612a37cd # defaults to upstart"
-	exit 1
-}
-
-auth='<none>'
-desc='<none>'
-have_auth=
-have_desc=
-while getopts a:d: opt; do
-	case "$opt" in
-		a)
-			auth="$OPTARG"
-			have_auth=1
-			;;
-		d)
-			desc="$OPTARG"
-			have_desc=1
-			;;
-	esac
-done
-shift $(($OPTIND - 1))
-
-[ $# -ge 1 -a $# -le 2 ] || usage
-
-cid="$1"
-script="${2:-upstart}"
-if [ ! -e "manager/$script" ]; then
-	echo >&2 "Error: manager type '$script' is unknown (PRs always welcome!)."
-	echo >&2 'The currently supported types are:'
-	echo >&2 "  $(cd manager && echo *)"
-	exit 1
-fi
-
-# TODO https://github.com/docker/docker/issues/734 (docker inspect formatting)
-#if command -v docker > /dev/null 2>&1; then
-#	image="$(docker inspect -f '{{.Image}}' "$cid")"
-#	if [ "$image" ]; then
-#		if [ -z "$have_auth" ]; then
-#			auth="$(docker inspect -f '{{.Author}}' "$image")"
-#		fi
-#		if [ -z "$have_desc" ]; then
-#			desc="$(docker inspect -f '{{.Comment}}' "$image")"
-#		fi
-#	fi
-#fi
-
-exec "manager/$script" "$cid" "$auth" "$desc"
diff --git a/contrib/host-integration/manager/systemd b/contrib/host-integration/manager/systemd
deleted file mode 100755
index c1ab34ef0f..0000000000
--- a/contrib/host-integration/manager/systemd
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-set -e
-
-cid="$1"
-auth="$2"
-desc="$3"
-
-cat <<-EOF
-	[Unit]
-	Description=$desc
-	Author=$auth
-	After=docker.service
-
-	[Service]
-	ExecStart=/usr/bin/docker start -a $cid
-	ExecStop=/usr/bin/docker stop -t 2 $cid
-
-	[Install]
-	WantedBy=local.target
-EOF
diff --git a/contrib/host-integration/manager/upstart b/contrib/host-integration/manager/upstart
deleted file mode 100755
index af90f1fddd..0000000000
--- a/contrib/host-integration/manager/upstart
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-set -e
-
-cid="$1"
-auth="$2"
-desc="$3"
-
-cat <<-EOF
-	description "$(echo "$desc" | sed 's/"/\\"/g')"
-	author "$(echo "$auth" | sed 's/"/\\"/g')"
-	start on filesystem and started lxc-net and started docker
-	stop on runlevel [!2345]
-	respawn
-	exec /usr/bin/docker start -a "$cid"
-EOF