Merge pull request #2 from 30x/xapid520-521-530

Xapid520 521 530
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..a902a1c
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,15 @@
+language: go
+
+go:
+  - 1.7.x
+
+before_install:
+  - sudo add-apt-repository ppa:masterminds/glide -y
+  - sudo apt-get update -q
+  - sudo apt-get install glide -y
+
+install:
+  - glide install
+
+script:
+  - go test $(glide novendor)
diff --git a/api.go b/api.go
index e31d841..3d47d52 100644
--- a/api.go
+++ b/api.go
@@ -6,7 +6,6 @@
 	"fmt"
 	"net/http"
 	"net/url"
-	"github.com/30x/apid"
 )
 
 type sucResponseDetail struct {
@@ -89,32 +88,23 @@
 		return errorResponse(reason, errorCode)
 	}
 
-	var env, tenantId string
-	{
-		db, err := apid.Data().DB();
-		switch {
-		case err != nil:
-			reason := err.Error()
-			errorCode := "SEARCH_INTERNAL_ERROR"
-			return errorResponse(reason, errorCode)
-		}
-
-		error := db.QueryRow("SELECT env, scope FROM DATA_SCOPE WHERE id = ?;", scopeuuid).Scan(&env, &tenantId)
-
-		switch {
-		case error == sql.ErrNoRows:
-			reason := "ENV Validation Failed"
-			errorCode := "ENV_VALIDATION_FAILED"
-			return errorResponse(reason, errorCode)
-		case error != nil:
-			reason := error.Error()
-			errorCode := "SEARCH_INTERNAL_ERROR"
-			return errorResponse(reason, errorCode)
-		}
-	}
-
 	db := getDB()
 
+	// DANGER: This relies on an external TABLE - DATA_SCOPE is maintained by apidApigeeSync
+	var env, tenantId string
+	error := db.QueryRow("SELECT env, scope FROM DATA_SCOPE WHERE id = ?;", scopeuuid).Scan(&env, &tenantId)
+
+	switch {
+	case error == sql.ErrNoRows:
+		reason := "ENV Validation Failed"
+		errorCode := "ENV_VALIDATION_FAILED"
+		return errorResponse(reason, errorCode)
+	case error != nil:
+		reason := error.Error()
+		errorCode := "SEARCH_INTERNAL_ERROR"
+		return errorResponse(reason, errorCode)
+	}
+
 	log.Debug("Found tenant_id='", tenantId, "' with env='", env, "' for scopeuuid='", scopeuuid,"'")
 
 	sSql := "SELECT ap.api_resources, ap.environments, c.issued_at, c.status, a.callback_url, d.username, d.id " +