diff --git a/crypto/key.go b/crypto/key.go index 85a6623..e753680 100644 --- a/crypto/key.go +++ b/crypto/key.go @@ -18,7 +18,7 @@ type KeyReaderWriter interface { type KeyPair struct { Private *PrivateKey - Public KeyReaderWriter + Public *PublicKey } func NewKeyPair() *KeyPair { @@ -30,6 +30,10 @@ type PrivateKey struct { *rsa.PrivateKey } +type PublicKey struct { + *rsa.PublicKey +} + // GenerateKeyPair creates a new RSA key pair func GenerateKeyPair() (*KeyPair, error) { privKey, err := rsa.GenerateKey(rand.Reader, 4096) @@ -37,7 +41,7 @@ func GenerateKeyPair() (*KeyPair, error) { return nil, fmt.Errorf("generating random key: %v", err) } - return &KeyPair{Private: &PrivateKey{privKey}}, nil + return &KeyPair{Private: &PrivateKey{privKey}, Public: &PublicKey{&privKey.PublicKey}}, nil } func (k *PrivateKey) PEMBlock() []byte { @@ -58,14 +62,14 @@ func (k *PrivateKey) String() string { func (k *PrivateKey) ReadFile(path string) error { d, err := ioutil.ReadFile(path) if err != nil { - return fmt.Errorf("Unable to read file at path: %s", path) + return fmt.Errorf("unable to read key at path: %s", path) } pb, _ := pem.Decode(d) pk, err := x509.ParsePKCS1PrivateKey(pb.Bytes) if err != nil { - return fmt.Errorf("Unable to decode file at path: %s", path) + return fmt.Errorf("unable to decode file at path: %s", path) } k.PrivateKey = pk @@ -76,7 +80,30 @@ func (k *PrivateKey) ReadFile(path string) error { func (k *PrivateKey) WriteFile(path string) error { err := ioutil.WriteFile(path, k.PEMBlock(), 0400) if err != nil { - return fmt.Errorf("Unable to write CA to path %s: %s", path, err) + return fmt.Errorf("unable to write key to path %s: %s", path, err) + } + + return nil +} + +func (k PublicKey) PEMBlock() []byte { + pkb := &pem.Block{ + Type: "RSA PUBLIC KEY", + Bytes: x509.MarshalPKCS1PublicKey(k.PublicKey), + } + + return pem.EncodeToMemory(pkb) +} + +// String returns a PEM encoded version of the Key +func (k *PublicKey) String() string { + return string(k.PEMBlock()) +} + +func (k *PublicKey) WriteFile(path string) error { + err := ioutil.WriteFile(path, k.PEMBlock(), 0400) + if err != nil { + return fmt.Errorf("unable to write key to path %s: %s", path, err) } return nil diff --git a/test/nomad/install.hcl b/test/nomad/install.hcl index ada0f5c..f0da39a 100644 --- a/test/nomad/install.hcl +++ b/test/nomad/install.hcl @@ -4,7 +4,7 @@ exec_remote "certs" { } network { - name = "network.local" + name = "network.test" } cmd = "/generate_certs.sh" @@ -29,7 +29,7 @@ exec_remote "create_job" { } network { - name = "network.local" + name = "network.test" } cmd = "/generate_job.sh" @@ -55,7 +55,7 @@ exec_remote "create_job" { nomad_job "connector" { depends_on = ["exec_remote.create_job"] - cluster = "nomad_cluster.dev" + cluster = "nomad_cluster.test" paths = ["./job/install.nomad"] health_check { diff --git a/test/nomad/job/install.nomad b/test/nomad/job/install.nomad index d96c92e..9571aef 100644 --- a/test/nomad/job/install.nomad +++ b/test/nomad/job/install.nomad @@ -49,39 +49,39 @@ job "connector" { template { data = <<-EOH -----BEGIN CERTIFICATE----- -MIIGGTCCBAGgAwIBAgIRAL39HBPSPY42Ut2IL8hnSM8wDQYJKoZIhvcNAQELBQAw -KjERMA8GA1UEChMIU2hpcHlhcmQxFTATBgNVBAMTDENvbm5lY3RvciBDQTAeFw0y -MzA1MDMxMDQ0MzNaFw0yNDAxMjMxMDQ0MzNaMCwxETAPBgNVBAoTCFNoaXB5YXJk -MRcwFQYDVQQDEw5Db25uZWN0b3IgTGVhZjCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAOxBJpW2KAfWGdxR0qGK7OT4PPDJUSGcZ74kmEpGLS3INqQgYBp6 -4McQPEa62eGVp8XufqDLDpulYJwQu+AjxL0M+5udJ87GWgbVdEgwUZqXPOtsiWqe -UU4ULs8dlZj5i8Hpxv4Xyp5h7U+a9X8khBJNvZZpJpA0R0Yxnd8Q/Wliah/kopXA -P97S07iRyxsSqRZdy9XEnwL4gbMlG4F8fgcmwKBKT894iHz9Zfb3MdM/fmkgje6z -N2Pa7PawjFJPGSGNo1p3xJEPcjr2XSkMmIRRXdtahRuzEjPVTfOaIqgtG7t9HfmB -3vsW14mvhMx3hzle4DBnYVr3RD9zCUYq7rUMgfDnVFx4xdc5ycv8G3I1UpNu5jLj -tEIG43t5r+auUUcAjAvi2jDISEMxGiciXd/76E5kNRAcP6qziO/bCjN8VEk0Hy6H -S+oRxmL9rZgbqT1CpQwrubi/b+TQDIS3VPCVcRb33T69EQCQg7roJb/EUrYznLiW -VO9gz3B4YnBF5urCXqwFx39m+5lVrssxoDj98xC21ujwzEHB545bGIvnmBiXrpJj -//3xaxCsCSm2qGiGrPaowOBpbvydcR4YZY3oeviSC1JFlkMjqOav2B5STUlaxpkB -ppXm36LTwJs8f4RSW0htSihgNg1XwM4oYtbm9uW250PLanme7wECZGsLAgMBAAGj -ggE2MIIBMjAOBgNVHQ8BAf8EBAMCB4AwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsG -AQUFBwMCMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUy5maAzN7gC0FVC2+fzo/ -gkaTAX4wgdEGA1UdEQSByTCBxoIJbG9jYWxob3N0gg9sb2NhbGhvc3Q6MzAwOTCC -D2xvY2FsaG9zdDozMDA5MYIFOjkwOTCCBTo5MDkxggljb25uZWN0b3KCK3NlcnZl -ci5kZXYubm9tYWQtY2x1c3Rlci5zaGlweWFyZC5ydW46MzAwOTCCK3NlcnZlci5k -ZXYubm9tYWQtY2x1c3Rlci5zaGlweWFyZC5ydW46MzAwOTGCDmNvbm5lY3Rvcjo5 -MDkwgg5jb25uZWN0b3I6OTA5MYcEfwAAATANBgkqhkiG9w0BAQsFAAOCAgEAJOv4 -s0tRXMFCvcfsXy6wpXrQTd3KM6oCdL8b6fRkP15Z1Cl5UpxGJo4KZWYXZDHYrUkN -047DMasG+r5MiegJ215fhXqZ8MP5dcsuEcfcuFOO/RX+seG/++8KAwvnMJWWNfdW -Dh8gm3n8mXaZHvPQIZm3hho2h8gq7OIqWTlk9InoJEDJKLFeocgzozCXNYdyo3To -ehePxV2oornssAuTzuH6Wm2RG6PKNWgwpMKIx11E5F4kst7uDpnU0qyQJXZwdKf8 -cXZJlLigWvb0MEwnaF1owX6AUqmLQYO/5pkP6cx9Lau8MngzrUjmiI8VMIjyP/AP -k+3lFoe4nesv4mZLLQJXZCq84aGbWtZADifLf75a64HPIkDLGRKEnNfTrvOpPjZY -Hr2I9W5cWdckMoCwT/mO85iIbkLk5t83s6FCne7XbE3gZ8PYSuZNaxOfIxT5ynaG -y08ytXjCGupgUTQJp9lJm4JffJT3NuSziy81La/wa4H6mRvYJR7GveH4ZDI0mitg -MJH0d/GQJ60Yps+ESQ9iDA+KlbKVvy/ARaaB6M/oP6JNrz7zkTesE+beDAoq167/ -LslX4/BM+kgCvAgdW3TZx6L83SPF1GKBab9tos3zBKA4+36y7qyCaEgju3MvHWzB -ZMKB2S7van3Z1GEzu+IU8gNR7f3bUjiXAschKdU= +MIIGGDCCBACgAwIBAgIQJ79+ZBEQCoHEUezhbU1AozANBgkqhkiG9w0BAQsFADAq +MREwDwYDVQQKEwhTaGlweWFyZDEVMBMGA1UEAxMMQ29ubmVjdG9yIENBMB4XDTIz +MDUwMzE1NDIxM1oXDTI0MDEyMzE1NDIxM1owLDERMA8GA1UEChMIU2hpcHlhcmQx +FzAVBgNVBAMTDkNvbm5lY3RvciBMZWFmMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A +MIICCgKCAgEAtWam84fXKTsDNUWRQegWsRkbnBuirBEkt049s+VIJWoX7uhMKK5v +PbOoJC6W4ekwUVtYzDul1hslH1zg74HX8T0ohRiE5YEMSZSZ38C2ui/PdTJv5WLC +RBSB6w/hVO4BnZpHQ9YU225yAtRErqgF7Al4DyP780oDMkGF/7oC3bqBEEsRBpQe +PxTEHK9jsiKMlOr+QuOHs4LISnTQLL5cir6C+3WawUA26AYlhctlmYbLOi12rmQI +rQkMyr6HJmZZabN7ILWbIwlPa5L9yL3WL0emsx1Cp8MqM4uAoaRri6uOUGeVbdYM +SbtqUJzJl9kWIZxY++c3e4EweFfufwYbWNHFMlk03J8wsIOEG3+Z5qmROM4GEEVN +AA7sP5P4GSfVG6weVGPWDizR1CKCJ3TTEc8Pavco+Br6NgzCB3qSUNmr359v5zP3 +u9Y2u331fPb8hLRLAvwf/Ul7jMCSNKI0LD30KVWUkenNDQb2+DfwewHqLuE+SMsG +SH+uKDMPHaPwDKFb/2vRl6OCeIRHCkmzJmrNcc73N/HY7VrcoeTu5U8Gv9u41cTl +TM/Fj7k0ODeFA5PumViqW3ORGhJOJQYrSvryctEEL4LZXexKILN8d4G1MSchZtMU +jr3kpWofLoNtvsLNgggiae2yyt4FBv/JRmQi4LgsydwTs//BGKAjh6cCAwEAAaOC +ATYwggEyMA4GA1UdDwEB/wQEAwIHgDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYB +BQUHAwIwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBTk7SiTh3LhZncJ5Q/QMXEg ++KbHDzCB0QYDVR0RBIHJMIHGgglsb2NhbGhvc3SCD2xvY2FsaG9zdDozMDA5MIIP +bG9jYWxob3N0OjMwMDkxggU6OTA5MIIFOjkwOTGCCWNvbm5lY3RvcoIrc2VydmVy +LmRldi5ub21hZC1jbHVzdGVyLnNoaXB5YXJkLnJ1bjozMDA5MIIrc2VydmVyLmRl +di5ub21hZC1jbHVzdGVyLnNoaXB5YXJkLnJ1bjozMDA5MYIOY29ubmVjdG9yOjkw +OTCCDmNvbm5lY3Rvcjo5MDkxhwR/AAABMA0GCSqGSIb3DQEBCwUAA4ICAQAfwz0g +s/eikZ/mn9TPncA/dHYIaTuFEsaP2YzHm2vdChSXX/KJkW7dxy+GCYPxafvLu0c4 ++qXb2VfuJQzi9ldwQ5lydrRPn7f3baKvhnrSdSzVQr9yWZzkQa+JEQ4JNbFTJZWo +yE3fAkeeZOTB3N5hLxOVPniF7VZHBlDXu46uzt6YoBDmxYyLvKjE4dFrsNEGhpRs +dgDlTueK/Vpo/9xsI2btrC0yZ32xVcSScO8nM4LWQE8gZRuJj9aIVkfhf4hS7gwO +PCuF+iqeaKFBkDHm2vvxDH7TcT7PuV9a592oysBs+YyZyDag6yHL5HUrP1fo192n +Q0DafkgLJx+DQ8uviUSLmKiC1sgQXHYZZvJaqS+xXsdjTpR8n4y9tSIUp8SJzDxv +pMI16Jk7Np/wNf6r83P+dmQVoCImwT8qRH/xxvMg4eQEfZWdRNwZnBtBr2yNm6yY +5SH6NVykWBsUJ6mZAc9cmXRDAfAWg0CELQUkddnIccQ6L4+uWD4V1mpcNiwkF5OY +ewxWO9AjccSyR4hhVVjJl0X5/dadyd++YtgOhFP1egfMKi35TFmS5NkgfSlRpVLF +WggcATwvv44USi1AL9KbU0XobrbxE+bwKO9iljkpajrfYr+XHWeCTu+fzwKcHRdz +VcQIvLq5u+cNNsZIym/Zrmtg+h3NZ9boOqqeDA== -----END CERTIFICATE----- EOH @@ -91,55 +91,55 @@ ZMKB2S7van3Z1GEzu+IU8gNR7f3bUjiXAschKdU= template { data = <<-EOH -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- EOH @@ -149,34 +149,34 @@ YIllJttymFodLDJJrWRkJchT2GsTeQaSmVYrjbZryJUDCZtcAx05id01uF/3DkzS template { data = <<-EOH -----BEGIN CERTIFICATE----- -MIIFITCCAwmgAwIBAgIRAIJjkbPEroauxH5te5L+KD4wDQYJKoZIhvcNAQELBQAw -KjERMA8GA1UEChMIU2hpcHlhcmQxFTATBgNVBAMTDENvbm5lY3RvciBDQTAeFw0y -MzA1MDMxMDQ0MzJaFw0yNDAxMjMxMDQ0MzJaMCoxETAPBgNVBAoTCFNoaXB5YXJk -MRUwEwYDVQQDEwxDb25uZWN0b3IgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDksnAxLi9hnZmiczTYkOyL+81O24qwa1UUFb6yidvldgE/n6YpwLYv -f5/BLlIT10jwq3PVnWL670jjrbnl+dh2F/Jbw4ghMTdnA2J1v6gHbP1wx8ooK0l0 -Z3SsjzGQKEpYUVF0k7kwQSq7IOdTgekqgeooPZOLp0BfDatCgX8KoJYy+ChLigss -5TRJP/gsdhPy993yysH0fm35N9AJnRJhxbnABn838diddRpKo533f1uo15aJnqEk -pKp7xWY8YjKW8Qm/fKN0abOdQe3CIHpNBOwznXUb9yT1INZMxCITA5+gjJjhx5Dl -B/3Em4fhoobwlUu3IZoyq82l+Sq4oQOil9JdrhWhqLiIQY03qhLGVzIo/H606uPs -jk44hfRKW5EepUWSGWNvoJbFu6gaMytCq7BX/VoK+lN6D+8gTsUfaayeysp20mRD -nRZlz82EGOY5sNktuyajXQvlWmaDd/EvZS4vF34lUXW8U9xbElkLjvdgmL7ppB2h -J5/EU40rimfUQbyhHg2hyLPmKPOyZYJuK76MfpRNKWmG7OCkHbPILWj0hQvzTfwX -6HCyvmNYOG1EVnSDFB+HmpH3RzhQZHZZwt93KwlYzWAbXHz/qIiBW5haQEAMMZ6e -hIRezpTZflb/9j6N2I599qrRrrRSKx+T3JY5RB3Wqav+0qJ8wsLYAQIDAQABo0Iw -QDAOBgNVHQ8BAf8EBAMCAoQwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUy5ma -AzN7gC0FVC2+fzo/gkaTAX4wDQYJKoZIhvcNAQELBQADggIBANnV8gfZ+v6eM2Vq -JODMA18iWM4bEcKWRTZvxwfxp6n+oXjUR5TsdLyO+FVkEc4u0835OGI19ptCcZLj -sRSDhdWANFhKMZcf77vFwVrObeOwI1Q2ORHFXc6/wdb3qsVPPk3zPDc3zqpkN94h -Q4P7Oi+qLeLfIX0W/Ce2J+myuIws5emEXx+zlNrm/xEI+F5IUOwbZNdCYkPNEnuu -KEG8uYcShHkaRMs+nGHzsnJrhJsdDSrerRGt5lnNySAbxO4J5WIa+DJiyIKpZvHr -nl2ULTwjNpRKV+L94T8Yd7W1sXcBLpilfnG0K/MbJpX662Hh1wiYIMh9iS8rxrhi -zTkMjY81KX08SmKahzHFTm74qYdenQHu7b5xkGzCvAdB+izwIiYkXdyNstp6EVSs -1splQ1WtP3nYxokrKWz9tzzLN5WJMpaLBzLO4Lxclxn9Ud1U3CoUYLXacICVXu5F -7hvJVUVuSlebPuUiHdGz6qT29JzbkQBhF/h/VGV1VD9Bw/VbKALbkNdHICAvpsCd -PEFrRC+4nDyD5UB6IBKL4aU3V48fGXW3QpRvCzrCMUle1rO2QBuSFdNRjrOZWgfn -dj68INZKDBUWDwRBGFNNUiEerYLRq4A6V7kf43K5AzyjIVIfnbPFibRhUFC7Hth6 -qmXNYqI/1HACsHzTQhCeq4j0cPpJ +MIIFIDCCAwigAwIBAgIQOWce5qW2vMa5NyZT7sGX8zANBgkqhkiG9w0BAQsFADAq +MREwDwYDVQQKEwhTaGlweWFyZDEVMBMGA1UEAxMMQ29ubmVjdG9yIENBMB4XDTIz +MDUwMzE1NDIxMFoXDTI0MDEyMzE1NDIxMFowKjERMA8GA1UEChMIU2hpcHlhcmQx +FTATBgNVBAMTDENvbm5lY3RvciBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC +AgoCggIBAJ26MxCoq0UlHp4y6fA7LuBu6T2bfR9KLYOiPxG4smcoTovjv+6iGtsp +BJlW202Wl7/U8wYp2vRVlCguIoFrwUIUmcAhwiYMHxSG4p9KRChcTXax8xLt/1xH +vTu2g2aU/2FA+FsDS90Av0iMo5db54i74NCKRSWSwsnTC7G9JgScIWoD1w4QxGN5 +cTFYp/y2caRnc3ugWD67SDr1dLeDI89SOuwb6OzLe6kE3NnClCB9O7W/k7+t53PG +eiQssPCrsB1irrXDZRHIA6VyIUzBfojy997QoMn7/QDAsx4XvnmXaA4H9q430aSM +IXn5Klxe0lBiIY8kJ7dmgIag8BFwgpmcfqwj+3pWJf3w52Sh1HZ7ts4ga3vEJsZE +q6KM082ss5otDkYP9s2wqxx7kC9fw9NPMhwCiwvl1bZLg7NQtZHj1I2B2rVMVFpe +pLXG2HmjxK6vVapbDtm8Kg3Q8/X2M5GQCwZL8EKOkpNAlZQviSOOptjRRoMNGW3L +KF6hHiIRQGOK+8cV92DstvOcLjDOwXqMT72eA01+nkj9PvTaYk2g+1QKi73P+Q8m +ia8igRkK5/zhag+4PvpO5MmGg/9Le1LjkH49rDucjo4CpGbdlURnjeaY9bZLjV6K +0pR/cvnblaCkmYM2dqIFkaUJqd5hnU7RBYbvWz1uXRcMrNibJivHAgMBAAGjQjBA +MA4GA1UdDwEB/wQEAwIChDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTk7SiT +h3LhZncJ5Q/QMXEg+KbHDzANBgkqhkiG9w0BAQsFAAOCAgEAR71qcV9fl4d1j/kw +L3PUViTEhrXCG8hNGgL+GExDT2zU/hKvX1qa+48JMp06Nq/vYAxm58yom/VknxSv +L3GC6F0TyIkmVQEQfX+ap5ZUj+lVFRBAaVnFPkfmqO48fRSnOYh0WuEhkdB0DVNo +C4f6i9OcUn5+IfiLqNvZtgg6p8kbpDRtrChfZTpvpUNlqswqK+v+JxNrGdL+kk0g +9ehAxOE2nPmj0D3yiCTGBNCAo+0FdyDC/ulmGDUSlkxpp0/y5G/pC49MyHDawKlY +fuRepUsGn3g9OTu6DLUvoZCJ6g/aFE0y0A46iVLWtDUplZupIFdFH2QrYu3nhAdE +GCyHW7n+YYA/lCetDMfb0u+6jQ4JcuhDQT48KxEJRlpIGb1oT+uZndXzeuBGJXXu +D6xMPTXwCnQ55egGByJM8NG7fqzSksAH5M7a38fQp0RJI4uoK6AJvbQBS0wme8AR +WnaPHSo6St2YiFsKxsM9LeoEfAArm8fDJ1I2UA88OVbQgZExikvswlqvj8VsA89d +pEDYEZymJqO0gqkJgsmIp2WZtvrr0aPYcAR8YhdDtOAnPfacwK0Zk1IPVwksG24X +1MSpOtHJZRXRqJYFDOc69frZNUIhL/KMIhK64nj7yrFbQvvonebKFAJ6BzfepRD9 +pPzF7yeva8BikKzHLddHfssF3KE= -----END CERTIFICATE----- EOH diff --git a/test/nomad/nomad.hcl b/test/nomad/nomad.hcl index c22739e..e0cd6be 100644 --- a/test/nomad/nomad.hcl +++ b/test/nomad/nomad.hcl @@ -1,10 +1,10 @@ -network "local" { - subnet = "10.5.0.0/16" +network "test" { + subnet = "10.6.0.0/16" } -nomad_cluster "dev" { +nomad_cluster "test" { network { - name = "network.local" + name = "network.test" } image { @@ -25,7 +25,7 @@ nomad_cluster "dev" { } nomad_job "fake_service" { - cluster = "nomad_cluster.dev" + cluster = "nomad_cluster.test" paths = ["./example.nomad"] health_check { diff --git a/test/nomad/test/local.feature b/test/nomad/test/local.feature index a265bcf..892c228 100644 --- a/test/nomad/test/local.feature +++ b/test/nomad/test/local.feature @@ -8,7 +8,7 @@ Scenario: Expose multiple local and remote servics to a Kubernetes connector Given I have a running blueprint Then the following resources should be running | name | type | - | dev | nomad_cluster | + | test | nomad_cluster | | local_connector | container | When I run the script ```