in src/PrDisplay.js [411:467]
renderDocPreviewButton() {
// Search through all the checks for a docs build, if it's completed then
// assume it's also been uploaded to S3 (which should happen as part of the
// docs build on PRs)
let python = null;
let cpp = null;
const runIsPassing = (name) => {
for (const run of this.state.runs) {
for (const check of run.checkRuns.nodes) {
if (
check.name === name &&
check.status === "COMPLETED" &&
check.conclusion === "SUCCESS"
) {
return true;
}
}
}
return false;
};
if (this.state.runs) {
if (runIsPassing("build-docs (python)")) {
python = (
<a
href={`${PREVIEW_BASE_URL}/${this.props.pr_number}/index.html`}
target="_blank"
className="btn btn-primary"
style={{ marginRight: "5px" }}
rel="noreferrer"
>
Python Docs
</a>
);
}
if (runIsPassing("build-docs (cpp)")) {
cpp = (
<a
href={`${PREVIEW_BASE_URL}/${this.props.pr_number}/cppdocs/index.html`}
target="_blank"
className="btn btn-primary"
rel="noreferrer"
>
C++ Docs
</a>
);
}
}
return (
<div style={{ paddingBottom: "5px" }}>
{python}
{cpp}
</div>
);
}