move docker install pushing commands to before early returns

This commit is contained in:
mbecker20
2022-03-20 11:25:41 -07:00
parent bcf2aada0b
commit 34014875e8
3 changed files with 46 additions and 29 deletions

View File

@@ -12,15 +12,17 @@ export async function installDockerUbuntu(
) {
const total = 6 + (systemCtlEnable ? 1 : 0);
const update = await execute("sudo apt-get update");
onCommandEnd({
stage: `${
update.isError ? "error updating" : "updated"
} system (1 of ${total})`,
log: update,
});
if (update.isError)
return {
stage: "error updating system",
log: update,
};
onCommandEnd({
stage: `updated system (1 of ${total})`,
log: update,
});
const installDeps = await execute(`
sudo apt-get install \
@@ -29,83 +31,95 @@ export async function installDockerUbuntu(
gnupg \
lsb-release -y
`);
onCommandEnd({
stage: `${
installDeps.isError ? "error installing" : "installed"
} dependencies (2 of ${total})`,
log: installDeps,
});
if (installDeps.isError)
return {
stage: "error installing dependencies",
log: installDeps,
};
onCommandEnd({
stage: `installed dependencies (2 of ${total})`,
log: installDeps,
});
const addKey = await execute(
"curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg"
);
onCommandEnd({
stage: `${
addKey.isError ? "error adding" : "added"
} docker key (3 of ${total})`,
log: addKey,
});
if (addKey.isError)
return {
stage: "error adding docker key",
log: addKey,
};
onCommandEnd({
stage: `added docker key (3 of ${total})`,
log: addKey,
});
const setStableRepository = await execute(`
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
`);
onCommandEnd({
stage: `${
setStableRepository.isError ? "error setting" : "set"
} docker stable repository (4 of ${total})`,
log: setStableRepository,
});
if (setStableRepository.isError)
return {
stage: "error adding stable repository",
log: setStableRepository,
};
onCommandEnd({
stage: `set docker stable repository (4 of ${total})`,
log: setStableRepository,
});
const installDocker = await execute(
"sudo apt-get udpate && sudo apt-get install docker-ce docker-ce-cli containerd.io -y"
);
onCommandEnd({
stage: `${
installDocker.isError ? "error installing" : "installed"
} docker (5 of ${total})`,
log: installDocker,
});
if (installDocker.isError)
return {
stage: "error installing docker",
log: installDocker,
};
onCommandEnd({
stage: `installed docker (5 of ${total})`,
log: installDocker,
});
const addUser = await execute(
"sudo groupadd docker && sudo usermod -aG docker $USER && newgrp docker"
);
onCommandEnd({
stage: `${
addUser.isError ? "error adding" : "added"
} user to docker user group (6 of ${total})`,
log: addUser,
});
if (addUser.isError)
return {
stage: "error adding user to docker group",
log: addUser,
};
onCommandEnd({
stage: `added user to docker user group (6 of ${total})`,
log: addUser,
});
if (systemCtlEnable) {
const startOnBoot = await execute(
"sudo systemctl enable docker.service && sudo systemctl enable containerd.service"
);
onCommandEnd({
stage: `${
startOnBoot.isError ? "error configuring" : "configured"
} to start on boot (7 of ${total})`,
log: startOnBoot,
});
if (startOnBoot.isError)
return {
stage: "error configuring to start on boot",
log: startOnBoot,
};
onCommandEnd({
stage: `configured to start on boot (7 of ${total})`,
log: startOnBoot,
});
}
return;