malvika2003's picture
Upload folder using huggingface_hub
db5855f verified
raw
history blame
1.96 kB
// @ts-check
import { execSync } from 'child_process';
import { readFileSync } from 'fs';
import { dirname, join, relative } from 'path';
import { fileURLToPath } from 'url';
/**
* @returns {string[]}
*/
function getDocsIgnoredNotebooks() {
const CURRENT_DIR_PATH = dirname(fileURLToPath(import.meta.url));
const ignoreConvertFilePath = join(CURRENT_DIR_PATH, '..', '..', '..', '.ci', 'ignore_convert_full.txt');
return readFileSync(ignoreConvertFilePath, { encoding: 'utf8' }).split('\n');
}
/**
* @returns {string}
*/
function getLatestOvReleaseTag() {
const latestOvReleaseResponse = execSync(
`curl -L https://api.github.com/repos/openvinotoolkit/openvino/releases/latest`
).toString();
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
const responseJson = /** @type {{ tag_name: string }} */ (JSON.parse(latestOvReleaseResponse));
if (!responseJson?.tag_name) {
throw Error(`Unable to fetch latest OpenVINO release via GitHub API. Response: ${latestOvReleaseResponse}.`);
}
return responseJson.tag_name;
}
/**
* @param {string} tag
* @returns {string[]}
*/
function getAllDocsNotebooksForTag(tag) {
return execSync(
`curl -L https://github.com/openvinotoolkit/openvino/raw/${tag}/docs/notebooks/all_notebooks_paths.txt`
)
.toString()
.split('\n');
}
/**
* @returns {{ latestDocsNotebooks: string[]; latestOVReleaseTag: string}}
*/
function getLatestDocsNotebooksWithTag() {
const latestOVReleaseTag = getLatestOvReleaseTag();
const allDocsNotebooks = getAllDocsNotebooksForTag(latestOVReleaseTag);
const docsIgnoredNotebooks = getDocsIgnoredNotebooks();
const latestDocsNotebooks = allDocsNotebooks
.filter((v) => !docsIgnoredNotebooks.includes(v))
.map((v) => relative('notebooks', v));
return { latestDocsNotebooks, latestOVReleaseTag };
}
export const docsNotebooks = getLatestDocsNotebooksWithTag();