setup: fix provider pre-selection and ip detection
This commit is contained in:
@@ -129,11 +129,33 @@ function onCopyToClipboard(value) {
|
||||
onMounted(async () => {
|
||||
const search = decodeURIComponent(window.location.search).slice(1).split('&').map(function (item) { return item.split('='); }).reduce(function (o, k) { o[k[0]] = k[1]; return o; }, {});
|
||||
|
||||
const [error, result] = await provisionModel.status();
|
||||
let [error, result] = await provisionModel.status();
|
||||
if (error) return console.error(error);
|
||||
|
||||
if (redirectIfNeeded(result, 'setup')) return; // redirected to some other view...
|
||||
|
||||
if (result.setup.active) return waitForDnsSetup();
|
||||
formError.value.generic = result.setup.errorMessage; // show any previous error
|
||||
|
||||
if (result.provider === 'digitalocean' || result.provider === 'digitalocean-mp') {
|
||||
provider.value = 'digitalocean';
|
||||
} else if (result.provider === 'linode' || result.provider === 'linode-oneclick' || result.provider === 'linode-stackscript') {
|
||||
provider.value = 'linode';
|
||||
} else if (result.provider === 'vultr' || result.provider === 'vultr-mp') {
|
||||
provider.value = 'vultr';
|
||||
} else if (result.provider === 'gce') {
|
||||
provider.value = 'gcdns';
|
||||
} else if (result.provider === 'ami') {
|
||||
// aws marketplace made a policy change that they one cannot provide route53 IAM credentials
|
||||
provider.value = 'wildcard';
|
||||
}
|
||||
|
||||
[error, result] = await provisionModel.detectIp();
|
||||
if (error) return console.error(error); // detectIp is not supposed to error
|
||||
|
||||
ipv4Provider.value = result.ipv4 ? 'generic' : 'noop';
|
||||
ipv6Provider.value = result.ipv6 ? 'generic' : 'noop';
|
||||
|
||||
instanceId.value = search.instanceId;
|
||||
setupToken.value = search.setupToken;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user