Skip to content

Commit

Permalink
Remove ops_manager_public_ip from config
Browse files Browse the repository at this point in the history
- Use dig to retrieve it from ops_manager.url hostname
  • Loading branch information
edwardecook committed Sep 13, 2019
1 parent a6ce8a8 commit 4cac496
Show file tree
Hide file tree
Showing 19 changed files with 65 additions and 69 deletions.
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ In order to run the `hammer` tool against a given environment you need to have a
"password": "OPSMAN-PASSWORD"
},
"ops_manager_private_key": "OPSMAN-RSA-PRIVATE-KEY",
"ops_manager_public_ip": "OPSMAN-PUBLIC-IP",
"sys_domain": "PAS-SYSTEM-DOMAIN",
"pks_api": {
"url": "PKS-API-FQDN"
Expand All @@ -44,7 +43,6 @@ ops_manager:
url: OPSMAN-FQDN
username: OPSMAN-USERNAME
ops_manager_private_key: OPSMAN-RSA-PRIVATE-KEY
ops_manager_public_ip: OPSMAN-PUBLIC-IP
pks_api:
url: PKS-API-FQDN
sys_domain: PAS-SYSTEM-DOMAIN
Expand Down
10 changes: 6 additions & 4 deletions bosh/runner.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,10 @@ func (r Runner) Run(data environment.Config, dryRun bool, boshArgs ...string) er
fmt.Sprintf(`echo "%s" >"$ssh_key_path"`, data.OpsManager.PrivateKey),
fmt.Sprintf(`chmod 0600 "${ssh_key_path}"`),

fmt.Sprintf(`ops_manager_ip="$(dig +short %s)"`, data.OpsManager.URL.Host),

fmt.Sprintf(`bosh_ca_path=$(mktemp)`),
fmt.Sprintf(`ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@"%s" cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null`, data.OpsManager.IP.String()),
fmt.Sprintf(`ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@${ops_manager_ip} cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null`),
fmt.Sprintf(`chmod 0600 "${bosh_ca_path}"`),

fmt.Sprintf(`creds="$(om -t %s -k -u %s -p %s curl -s -p /api/v0/deployed/director/credentials/bosh_commandline_credentials)"`, data.OpsManager.URL.String(), data.OpsManager.Username, data.OpsManager.Password),
Expand All @@ -40,13 +42,13 @@ func (r Runner) Run(data environment.Config, dryRun bool, boshArgs ...string) er
fmt.Sprintf(`bosh_env="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_ENVIRONMENT=')"`),
fmt.Sprintf(`bosh_secret="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT_SECRET=')"`),
fmt.Sprintf(`bosh_ca_cert="BOSH_CA_CERT=$bosh_ca_path"`),
fmt.Sprintf(`bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@%s:22?private-key=${ssh_key_path}"`, data.OpsManager.IP.String()),
fmt.Sprintf(`bosh_gw_host="BOSH_GW_HOST=%s"`, data.OpsManager.IP.String()),
fmt.Sprintf(`bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@${ops_manager_ip}:22?private-key=${ssh_key_path}"`),
fmt.Sprintf(`bosh_gw_host="BOSH_GW_HOST=${ops_manager_ip}"`),
fmt.Sprintf(`bosh_gw_user="BOSH_GW_USER=ubuntu"`),
fmt.Sprintf(`bosh_gw_private_key="BOSH_GW_PRIVATE_KEY=${ssh_key_path}"`),
}

prereqs := []string{"jq", "om", "ssh"}
prereqs := []string{"jq", "om", "ssh", "dig"}

if len(boshArgs) > 0 {
lines = append(
Expand Down
28 changes: 15 additions & 13 deletions bosh/runner_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ package bosh_test

import (
"fmt"
"net"
"net/url"

. "github.com/onsi/ginkgo"
Expand All @@ -36,12 +35,11 @@ var _ = Describe("bosh runner", func() {
BeforeEach(func() {
scriptRunner = new(scriptingfakes.FakeScriptRunner)

url, _ := url.Parse("www.test-url.io")
url, _ := url.Parse("https://www.test-url.io")
data = environment.Config{
Name: "env-name",
OpsManager: environment.OpsManager{
PrivateKey: "private-key-contents",
IP: net.ParseIP("10.0.0.6"),
URL: *url,
Username: "username",
Password: "password",
Expand All @@ -68,19 +66,21 @@ var _ = Describe("bosh runner", func() {
`echo "private-key-contents" >"$ssh_key_path"`,
`chmod 0600 "${ssh_key_path}"`,

`ops_manager_ip="$(dig +short www.test-url.io)"`,

`bosh_ca_path=$(mktemp)`,
`ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@"10.0.0.6" cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null`,
`ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@${ops_manager_ip} cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null`,
`chmod 0600 "${bosh_ca_path}"`,

`creds="$(om -t www.test-url.io -k -u username -p password curl -s -p /api/v0/deployed/director/credentials/bosh_commandline_credentials)"`,
`creds="$(om -t https://www.test-url.io -k -u username -p password curl -s -p /api/v0/deployed/director/credentials/bosh_commandline_credentials)"`,
`bosh_all="$(echo "$creds" | jq -r .credential | tr ' ' '\n' | grep '=')"`,

`bosh_client="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT=')"`,
`bosh_env="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_ENVIRONMENT=')"`,
`bosh_secret="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT_SECRET=')"`,
`bosh_ca_cert="BOSH_CA_CERT=$bosh_ca_path"`,
`bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@10.0.0.6:22?private-key=${ssh_key_path}"`,
`bosh_gw_host="BOSH_GW_HOST=10.0.0.6"`,
`bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@${ops_manager_ip}:22?private-key=${ssh_key_path}"`,
`bosh_gw_host="BOSH_GW_HOST=${ops_manager_ip}"`,
`bosh_gw_user="BOSH_GW_USER=ubuntu"`,
`bosh_gw_private_key="BOSH_GW_PRIVATE_KEY=${ssh_key_path}"`,

Expand Down Expand Up @@ -108,7 +108,7 @@ var _ = Describe("bosh runner", func() {

_, prereqs, _ := scriptRunner.RunScriptArgsForCall(0)

Expect(prereqs).To(ConsistOf("jq", "om", "ssh"))
Expect(prereqs).To(ConsistOf("jq", "om", "ssh", "dig"))
})

})
Expand All @@ -128,19 +128,21 @@ var _ = Describe("bosh runner", func() {
`echo "private-key-contents" >"$ssh_key_path"`,
`chmod 0600 "${ssh_key_path}"`,

`ops_manager_ip="$(dig +short www.test-url.io)"`,

`bosh_ca_path=$(mktemp)`,
`ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@"10.0.0.6" cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null`,
`ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@${ops_manager_ip} cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null`,
`chmod 0600 "${bosh_ca_path}"`,

`creds="$(om -t www.test-url.io -k -u username -p password curl -s -p /api/v0/deployed/director/credentials/bosh_commandline_credentials)"`,
`creds="$(om -t https://www.test-url.io -k -u username -p password curl -s -p /api/v0/deployed/director/credentials/bosh_commandline_credentials)"`,
`bosh_all="$(echo "$creds" | jq -r .credential | tr ' ' '\n' | grep '=')"`,

`bosh_client="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT=')"`,
`bosh_env="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_ENVIRONMENT=')"`,
`bosh_secret="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT_SECRET=')"`,
`bosh_ca_cert="BOSH_CA_CERT=$bosh_ca_path"`,
`bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@10.0.0.6:22?private-key=${ssh_key_path}"`,
`bosh_gw_host="BOSH_GW_HOST=10.0.0.6"`,
`bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@${ops_manager_ip}:22?private-key=${ssh_key_path}"`,
`bosh_gw_host="BOSH_GW_HOST=${ops_manager_ip}"`,
`bosh_gw_user="BOSH_GW_USER=ubuntu"`,
`bosh_gw_private_key="BOSH_GW_PRIVATE_KEY=${ssh_key_path}"`,

Expand All @@ -156,7 +158,7 @@ var _ = Describe("bosh runner", func() {

_, prereqs, _ := scriptRunner.RunScriptArgsForCall(0)

Expect(prereqs).To(ConsistOf("jq", "om", "ssh", "bosh"))
Expect(prereqs).To(ConsistOf("jq", "om", "ssh", "dig", "bosh"))
})

})
Expand Down
9 changes: 0 additions & 9 deletions environment/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,7 @@ Unless required by applicable law or agreed to in writing, software distributed
package environment

import (
"fmt"
"io/ioutil"
"net"
"net/url"

"github.com/hashicorp/go-version"
Expand All @@ -24,7 +22,6 @@ type OpsManager struct {
Username string
Password string
URL url.URL
IP net.IP
PrivateKey string
}

Expand Down Expand Up @@ -99,11 +96,6 @@ func newLockfile(data environmentReader) (Config, error) {
return Config{}, err
}

opsManagerIp := net.ParseIP(data.IP)
if opsManagerIp == nil {
return Config{}, fmt.Errorf("Could not parse IP address: %s", data.IP)
}

parsedPKSApiURL, err := url.Parse(data.PKSApi.URL)
if err != nil {
return Config{}, err
Expand All @@ -121,7 +113,6 @@ func newLockfile(data environmentReader) (Config, error) {
Username: data.OpsManager.Username,
Password: data.OpsManager.Password,
URL: *parsedOpsManagerURL,
IP: opsManagerIp,
PrivateKey: data.PrivateKey,
},
PKSApi: PKSApi{
Expand Down
3 changes: 0 additions & 3 deletions environment/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ Unless required by applicable law or agreed to in writing, software distributed
package environment_test

import (
"net"
"net/url"
"os"
"path"
Expand Down Expand Up @@ -79,7 +78,6 @@ func checkMatchLemon(e Config) {
"Username": Equal("pivotalcf"),
"Password": Equal("fakePassword"),
"URL": Equal(mustParseURL("https://pcf.lemon.cf-app.com")),
"IP": Equal(net.ParseIP("35.225.148.133")),
"PrivateKey": ContainSubstring("BEGIN RSA"),
}),
}))
Expand All @@ -96,7 +94,6 @@ func checkMatchReduced(e Config) {
"Username": Equal("pivotalcf"),
"Password": Equal("fakePassword"),
"URL": Equal(mustParseURL("https://pcf.reduced-config.cf-app.com")),
"IP": Equal(net.ParseIP("35.225.148.133")),
"PrivateKey": ContainSubstring("BEGIN RSA"),
}),
}))
Expand Down
1 change: 0 additions & 1 deletion environment/fixtures/lemon.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
"ops_manager_dns": "pcf.lemon.cf-app.com",
"ops_manager_gateway": "10.0.0.1",
"ops_manager_private_key": "-----BEGIN RSA PRIVATE KEY-----\nfake\n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\n-----END RSA PRIVATE KEY-----\n",
"ops_manager_public_ip": "35.225.148.133",
"ops_manager_public_key": "ubuntu:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDGPKi11B84ogwuGf4Zmq8/VJjvCxgLcpSLD5xuL0FDR1TCA1aeMidb9Pi/DKMfUORry0XbpllgWSbs3YbIEG6FFJEKe68zra/pJSyHH8UE41eULLGWP0ybdAPv5Tvq5D/g1ZtYUnX0jye333akVddM3qh52Dthye0+VKVt4MOH+q2XBLFQ66rhDd6U65MI9YzVpoPVam2WYngGY0a+Am+eo9pww36zk0/osDzLrD57hg3A0v+Otft7l/EiV6elTqLJxHg8BpO0bxWCdBFyJ/i0v+upfrbSgiMAP1QXjZkcSdDeLg0bS5QFX8Nei1/ZjvIHWQHwSUxDfIi67ly+BNmgQHuR2FPFemEkx7EqicV7TWuxfEevMc1edFFkdtzKv1tG8yQEtxPhX6tamz4TBmsu2a5fZ8er47bTI4x7tgCJdNEjhsDVlA1jsqU82i7JLjfXFhbu1hwfBVmKWaaWSeGYMxC8hAGKFXg77Ebo/Nd87urBApmwTOTj5sOFKrOz2BSqiZHYJ/2n8NeH7+CCXgdZQnHrt+u5DyNSpJSorQkNDgQzPunh9TmAVOh2of8gfqryjht6UayWyw1g3S1B1KXgP5RlvfnwL0yhOryLDk3qcpaivsAqFQAKVM6X9KHIbn83rljJxQQ7SmPTJ6TsSKtdZxFlWZklHz4e/smLnclOzQ==\n",
"ops_manager_subnet": "lemon-management-subnet",
"ops_manager_version": "2.0-build.314",
Expand Down
1 change: 0 additions & 1 deletion environment/fixtures/lemon.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@ ops_manager_private_key: |
ZLuM3MSg63owoj01309KLkd0K+jh50SRmAdYcMF2Rwp+pmCD1umxkowU+JAeWdYU
7FTejWnWFjLVFX3zNKWW8Qbq6TQyNPfwHqCqjj/Rc4Lkv//v1XVHCIbPsKw=
-----END RSA PRIVATE KEY-----
ops_manager_public_ip: 35.225.148.133
ops_manager_public_key: |
ubuntu:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDGPKi11B84ogwuGf4Zmq8/VJjvCxgLcpSLD5xuL0FDR1TCA1aeMidb9Pi/DKMfUORry0XbpllgWSbs3YbIEG6FFJEKe68zra/pJSyHH8UE41eULLGWP0ybdAPv5Tvq5D/g1ZtYUnX0jye333akVddM3qh52Dthye0+VKVt4MOH+q2XBLFQ66rhDd6U65MI9YzVpoPVam2WYngGY0a+Am+eo9pww36zk0/osDzLrD57hg3A0v+Otft7l/EiV6elTqLJxHg8BpO0bxWCdBFyJ/i0v+upfrbSgiMAP1QXjZkcSdDeLg0bS5QFX8Nei1/ZjvIHWQHwSUxDfIi67ly+BNmgQHuR2FPFemEkx7EqicV7TWuxfEevMc1edFFkdtzKv1tG8yQEtxPhX6tamz4TBmsu2a5fZ8er47bTI4x7tgCJdNEjhsDVlA1jsqU82i7JLjfXFhbu1hwfBVmKWaaWSeGYMxC8hAGKFXg77Ebo/Nd87urBApmwTOTj5sOFKrOz2BSqiZHYJ/2n8NeH7+CCXgdZQnHrt+u5DyNSpJSorQkNDgQzPunh9TmAVOh2of8gfqryjht6UayWyw1g3S1B1KXgP5RlvfnwL0yhOryLDk3qcpaivsAqFQAKVM6X9KHIbn83rljJxQQ7SmPTJ6TsSKtdZxFlWZklHz4e/smLnclOzQ==
ops_manager_subnet: lemon-management-subnet
Expand Down
1 change: 0 additions & 1 deletion environment/fixtures/reduced.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,5 @@
"username": "pivotalcf"
},
"ops_manager_private_key": "-----BEGIN RSA PRIVATE KEY-----\nfake\n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\n-----END RSA PRIVATE KEY-----\n",
"ops_manager_public_ip": "35.225.148.133",
"sys_domain": "sys.reduced-config.cf-app.com"
}
7 changes: 4 additions & 3 deletions integration/fixtures/bosh_cmd_script.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,17 +52,18 @@ ZLuM3MSg63owoj01309KLkd0K+jh50SRmAdYcMF2Rwp+pmCD1umxkowU+JAeWdYU
-----END RSA PRIVATE KEY-----
" >"$ssh_key_path"
chmod 0600 "${ssh_key_path}"
ops_manager_ip="$(dig +short pcf.manatee.cf-app.com)"
bosh_ca_path=$(mktemp)
ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@"35.225.148.133" cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null
ssh -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -i "${ssh_key_path}" ubuntu@${ops_manager_ip} cat /var/tempest/workspaces/default/root_ca_certificate 1>${bosh_ca_path} 2>/dev/null
chmod 0600 "${bosh_ca_path}"
creds="$(om -t https://pcf.manatee.cf-app.com -k -u pivotalcf -p fakePassword curl -s -p /api/v0/deployed/director/credentials/bosh_commandline_credentials)"
bosh_all="$(echo "$creds" | jq -r .credential | tr ' ' '\n' | grep '=')"
bosh_client="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT=')"
bosh_env="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_ENVIRONMENT=')"
bosh_secret="$(echo $bosh_all | tr ' ' '\n' | grep 'BOSH_CLIENT_SECRET=')"
bosh_ca_cert="BOSH_CA_CERT=$bosh_ca_path"
bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@35.225.148.133:22?private-key=${ssh_key_path}"
bosh_gw_host="BOSH_GW_HOST=35.225.148.133"
bosh_proxy="BOSH_ALL_PROXY=ssh+socks5://ubuntu@${ops_manager_ip}:22?private-key=${ssh_key_path}"
bosh_gw_host="BOSH_GW_HOST=${ops_manager_ip}"
bosh_gw_user="BOSH_GW_USER=ubuntu"
bosh_gw_private_key="BOSH_GW_PRIVATE_KEY=${ssh_key_path}"
trap 'rm -f ${ssh_key_path} ${bosh_ca_path}' EXIT
Expand Down
Loading

3 comments on commit 4cac496

@Houlistonm
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm sorry I'm late to comment on this change, but the public_ip in the configuration is vitally important in my foundations. All are air-gaped and behind a bastion host with no public ssh is available for any of the foundation hosts. We set the public_ip to the private_ip of our OM to allow the BOSH ssh proxy through OM to the VMs, allowing our platform engineers to 'hammer bosh -- ssh ....' from our bastion. Please consider reverting this change. Thanks

@edwardecook
Copy link
Contributor Author

@edwardecook edwardecook commented on 4cac496 Sep 17, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Houlistonm that makes complete sense, I hadn't considered that it was being used in that capacity, I will revert this commit and consider if there is some neater way of allowing both uses.

For future reference it would be great if you could open an issue or reopen a closed one as those are typically easier to keep track of.

@Houlistonm
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you and absolutely will reopen in the future.

Please sign in to comment.