|
|
|
@ -150,8 +150,9 @@ jobs:
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
const kubeconfig="/tmp/buildkit-k3s/kubeconfig.yaml";
|
|
|
|
|
core.info(`storing kubeconfig in ${kubeconfig}`);
|
|
|
|
|
|
|
|
|
|
await core.group(`Starting rancher/k3s:${{ env.K3S_VERSION }}`, async () => {
|
|
|
|
|
core.info(`storing kubeconfig in ${kubeconfig}`);
|
|
|
|
|
await exec.exec('docker', ["run", "-d",
|
|
|
|
|
"--privileged",
|
|
|
|
|
"--name=buildkit-k3s",
|
|
|
|
@ -165,10 +166,15 @@ jobs:
|
|
|
|
|
"rancher/k3s:${{ env.K3S_VERSION }}", "server"
|
|
|
|
|
]);
|
|
|
|
|
await wait(10000);
|
|
|
|
|
|
|
|
|
|
core.exportVariable('KUBECONFIG', kubeconfig);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
await core.group(`KUBECONFIG`, async () => {
|
|
|
|
|
core.info(fs.readFileSync(process.env.KUBECONFIG, {encoding: 'utf-8'}).trim());
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
let nodeName;
|
|
|
|
|
await core.group(`Checking nodes`, async () => {
|
|
|
|
|
for (let count = 1; count <= 5; count++) {
|
|
|
|
|
try {
|
|
|
|
|
const nodeNameOutput = await exec.getExecOutput("kubectl get nodes --no-headers -oname");
|
|
|
|
@ -182,19 +188,17 @@ jobs:
|
|
|
|
|
await wait(5000);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
if (!nodeName) {
|
|
|
|
|
throw new Error(`Unable to resolve node name after 5 attempts.`);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
await core.group(`Waiting for ready state`, async () => {
|
|
|
|
|
await exec.exec(`kubectl wait --for=condition=Ready ${nodeName}`);
|
|
|
|
|
});
|
|
|
|
|
} catch (error) {
|
|
|
|
|
core.setFailed(error.message);
|
|
|
|
|
}
|
|
|
|
|
-
|
|
|
|
|
name: Print KUBECONFIG
|
|
|
|
|
if: matrix.driver == 'kubernetes'
|
|
|
|
|
run: |
|
|
|
|
|
yq ${{ env.KUBECONFIG }}
|
|
|
|
|
-
|
|
|
|
|
name: Launch remote buildkitd
|
|
|
|
|
if: matrix.driver == 'remote'
|
|
|
|
|