summaryrefslogtreecommitdiffstats
path: root/sms-quorum
diff options
context:
space:
mode:
Diffstat (limited to 'sms-quorum')
-rw-r--r--sms-quorum/src/smsquorum/Makefile25
-rw-r--r--sms-quorum/src/smsquorum/config.json8
-rw-r--r--sms-quorum/src/smsquorum/quorumclient.go106
3 files changed, 0 insertions, 139 deletions
diff --git a/sms-quorum/src/smsquorum/Makefile b/sms-quorum/src/smsquorum/Makefile
deleted file mode 100644
index d264de9..0000000
--- a/sms-quorum/src/smsquorum/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
-GOPATH := $(shell realpath "$(PWD)/../../")
-BINARY := quorumclient
-PLATFORM := linux
-
-export GOPATH ...
-
-all: test build
-deploy: test build
-
-build: format
- CGO_ENABLED=0 GOOS=$(PLATFORM) go build -a \
- -ldflags '-extldflags "-static"' \
- -o $(GOPATH)/target/$(BINARY) -v quorumclient.go
-
-clean:
- go clean
- rm -f $(GOPATH)/target/$(BINARY)
-
-test:
- @echo "Yet to Implement"
-
-format:
- go fmt ./...
-
-.PHONY: test
diff --git a/sms-quorum/src/smsquorum/config.json b/sms-quorum/src/smsquorum/config.json
deleted file mode 100644
index 1b2e4df..0000000
--- a/sms-quorum/src/smsquorum/config.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "url":"https://localhost:10443/",
- "cafile": "selfsignedca.pem",
- "clientcert":"client.crt",
- "clientkey":"client.key",
- "key":"UHFFY0l6WDhZVlErbGxvWitFVWpUL3FCV083NXRra1B2TDVBblN4VE5mYz0=",
- "timeout":"60s"
-} \ No newline at end of file
diff --git a/sms-quorum/src/smsquorum/quorumclient.go b/sms-quorum/src/smsquorum/quorumclient.go
deleted file mode 100644
index 3f3c70b..0000000
--- a/sms-quorum/src/smsquorum/quorumclient.go
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
-* Copyright 2018 TechMahindra
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
- */
-
-package main
-
-import (
- "crypto/tls"
- "crypto/x509"
- "encoding/base64"
- "encoding/json"
- "io/ioutil"
- "log"
- "net/http"
- "os"
- "strings"
- "time"
-)
-
-//This application checks the backend status and
-//calls necessary initialization endpoints on the
-//SMS webservice
-func main() {
- //Struct to read json configuration file
- type config struct {
- BackEndURL string `json:"url"`
- CAFile string `json:"cafile"`
- ClientCert string `json:"clientcert"`
- ClientKey string `json:"clientkey"`
- B64Key string `json:"key"`
- TimeOut string `json:"timeout"`
- }
- //Load the config File for reading
- vcf, err := os.Open("config.json")
- if err != nil {
- log.Fatalf("Error reading config file %v", err)
- }
-
- cfg := config{}
- decoder := json.NewDecoder(vcf)
- err = decoder.Decode(&cfg)
- if err != nil {
- log.Fatalf("Error while parsing config file %v", err)
- }
-
- duration, _ := time.ParseDuration(cfg.TimeOut)
- ticker := time.NewTicker(duration)
-
- for _ = range ticker.C {
-
- caCert, err := ioutil.ReadFile(cfg.CAFile)
- if err != nil {
- log.Fatalf("Error while reading CA file %v ", err)
- }
- caCertPool := x509.NewCertPool()
- caCertPool.AppendCertsFromPEM(caCert)
- cert, err := tls.LoadX509KeyPair(cfg.ClientCert, cfg.ClientKey)
- if err != nil {
- log.Fatalf("Error while loading key pair %v ", err)
- }
-
- client := &http.Client{
- Transport: &http.Transport{
- TLSClientConfig: &tls.Config{
- RootCAs: caCertPool,
- Certificates: []tls.Certificate{cert},
- },
- },
- }
- //URL and Port is configured in config file
- response, err := client.Get(cfg.BackEndURL + "v1/sms/status")
- if err != nil {
- log.Fatalf("Error while connecting to SMS webservice %v", err)
- }
-
- responseData, err := ioutil.ReadAll(response.Body)
- if err != nil {
- log.Fatalf("Error while reading response %v", err)
- }
- var data map[string]interface{}
- json.Unmarshal(responseData, &data)
- sealed := data["sealed"].(bool)
- // Unseal the vault if sealed
- if sealed {
- decdB64Key, _ := base64.StdEncoding.DecodeString(cfg.B64Key)
- body := strings.NewReader(`{"key":"` + string(decdB64Key) + `"}`)
- //URL and PORT is configured via config file
- response, err = client.Post(cfg.BackEndURL+"v1/sms/unseal", "application/json", body)
- if err != nil {
- log.Fatalf("Error while unsealing %v", err)
- }
- }
- }
-}