feat: add build qeust images script

This commit is contained in:
wancat committed 2023-11-16 20:49:54 +08:00
1 parent 8bbd5da513
commit 7b1591a6e3
8 files changed
+114 -41

No files matched your search

+38
View File
@@ -78,3 +78,41 @@ export async function deleteContainer(id) {
}
await container.remove()
}
export function buildQuestImage(questPath, questId) {
return new Promise((resolve, reject) => {
engine.buildImage(
{
context: questPath,
src: ['Dockerfile', 'home'],
},
{ t: `${config.dockerImage}:${questId}` },
(err, response) => {
if (err) {
reject(err)
}
response.on('data', (data) => {
// Process the data (this could be Docker build output)
const { stream, error } = JSON.parse(data.toString())
if (stream) {
console.log(stream)
}
if (error) {
console.error(error)
reject(error)
}
})
response.on('end', () => {
console.log(`Build completed for ${questId}`)
resolve(questId)
})
response.on('error', (error) => {
console.error(`Build failed for ${questId}:`, error)
reject(error)
})
}
)
})
}