Some embarrassing mistakes
This commit is contained in:
parent
416d91395f
commit
320b17777c
|
@ -637,6 +637,13 @@ async function writeLog(lang, type, result, log) {
|
|||
);
|
||||
}
|
||||
|
||||
async function getImageHash(tag) {
|
||||
const output = (await run(["docker", "inspect", `riju:${tag}`], console.error, {
|
||||
suppressOutput: true,
|
||||
})).output;
|
||||
return JSON.parse(output)[0].Config.Labels["riju.image-hash"];
|
||||
}
|
||||
|
||||
async function main() {
|
||||
if (process.env.HOSTNAME !== "runtime") {
|
||||
throw new Error("tests should be run in runtime container");
|
||||
|
@ -656,13 +663,11 @@ async function main() {
|
|||
const langHashes = Object.fromEntries(
|
||||
await Promise.all(
|
||||
_.uniq(tests.map(({ lang }) => lang)).map(async (lang) => {
|
||||
const output = (await run(["docker", "inspect", `riju:lang-${lang}`], console.error, {
|
||||
suppressOutput: true,
|
||||
})).output;
|
||||
return [lang, JSON.parse(output)[0].Config.Labels["riju.image-hash"]];
|
||||
return [lang, await getImageHash(`lang-${lang}`)];
|
||||
})
|
||||
)
|
||||
);
|
||||
const runtimeHash = await getImageHash("runtime");
|
||||
console.error(`Running ${tests.length} test${tests.length !== 1 ? "s" : ""}`);
|
||||
const lintSeen = new Set();
|
||||
let lintPassed = new Set();
|
||||
|
@ -772,7 +777,7 @@ async function main() {
|
|||
await fs.mkdir(`build/test-hashes/lang`, { recursive: true });
|
||||
await fs.writeFile(
|
||||
`build/test-hashes/lang/${lang}`,
|
||||
await getTestHash(lang, langHashes[lang]),
|
||||
await getTestHash(lang, runtimeHash, langHashes[lang]),
|
||||
);
|
||||
}
|
||||
process.exit(failed.size > 0 ? 1 : 0);
|
||||
|
|
|
@ -66,9 +66,6 @@ async function getTestRunnerHash() {
|
|||
.digest("hex")
|
||||
);
|
||||
}
|
||||
hashes.push((await util.promisify(child_process.exec)(
|
||||
`docker inspect riju:runtime -f '{{ index .Config.Labels "riju.image-hash" }}'`,
|
||||
)).stdout.trim());
|
||||
return crypto.createHash("sha1").update(hashes.join(",")).digest("hex");
|
||||
}
|
||||
|
||||
|
@ -81,11 +78,11 @@ async function getTestConfigHash(lang) {
|
|||
return crypto.createHash("sha1").update(JSON.stringify(config)).digest("hex");
|
||||
}
|
||||
|
||||
export async function getTestHash(lang, imageHash) {
|
||||
export async function getTestHash(lang, runtimeImageHash, langImageHash) {
|
||||
return crypto
|
||||
.createHash("sha1")
|
||||
.update(
|
||||
`${await testRunnerHash},${await getTestConfigHash(lang)},${imageHash}`
|
||||
`${await testRunnerHash},${await getTestConfigHash(lang)},${runtimeImageHash},${langImageHash}`
|
||||
)
|
||||
.digest("hex");
|
||||
}
|
||||
|
|
|
@ -111,7 +111,7 @@ void session(char *uuid, char *lang, char *imageHash)
|
|||
"--memory", "100m",
|
||||
"--memory-swap", "900m",
|
||||
image, "bash", "-c",
|
||||
"cat /var/run/riju/sentinel/fifo | while read -t2; do :; done",
|
||||
"cat /var/run/riju/sentinel/fifo | ( while read -t2; do :; done; pkill -g0 )",
|
||||
NULL,
|
||||
};
|
||||
execvp(argv[0], argv);
|
||||
|
|
|
@ -228,7 +228,11 @@ async function getLanguageTestArtifact({ lang }) {
|
|||
return s3TestHashes[lang] || null;
|
||||
},
|
||||
getDesiredHash: async (dependencyHashes) => {
|
||||
return await getTestHash(lang, dependencyHashes[`image:lang-${lang}`]);
|
||||
return await getTestHash(
|
||||
lang,
|
||||
dependencyHashes[`image:runtime`],
|
||||
dependencyHashes[`image:lang-${lang}`],
|
||||
);
|
||||
},
|
||||
buildLocally: async () => {
|
||||
await runCommand(`make shell I=runtime CMD="make test L=${lang}"`);
|
||||
|
@ -531,6 +535,9 @@ async function executeDepGraph({
|
|||
const seen = new Set();
|
||||
for (const target of priorityTargets) {
|
||||
for (const dep of artifacts[target].dependencies) {
|
||||
if (seen.has(dep)) {
|
||||
continue;
|
||||
}
|
||||
if (artifacts[target].publishTarget) {
|
||||
if (statuses[dep] === "publishToRegistry") {
|
||||
plan.push({
|
||||
|
@ -546,9 +553,6 @@ async function executeDepGraph({
|
|||
});
|
||||
}
|
||||
}
|
||||
if (seen.has(dep)) {
|
||||
continue;
|
||||
}
|
||||
seen.add(dep);
|
||||
}
|
||||
if (statuses[target]) {
|
||||
|
|
Loading…
Reference in New Issue