diff --git a/package.json b/package.json index 6c0891ebd8..154a38f2fd 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "write-translations": "docusaurus write-translations", "write-heading-ids": "docusaurus write-heading-ids", "typecheck": "tsc", - "postinstall": "node getDocs.js && node populateStds.js && node populateCerts.js && node populateClouds.js", + "postinstall": "node getDocs.js && node populateStds.js && node populateClouds.js", "test": "echo \"Error: no test specified\" && exit 1", "lint:md": "markdownlint-cli2 \"**/*.md\"", "fix:md": "markdownlint-cli2-fix \"**/*.md\"", diff --git a/populateCerts.js b/populateCerts.js deleted file mode 100644 index 73b32627fa..0000000000 --- a/populateCerts.js +++ /dev/null @@ -1,47 +0,0 @@ -const fetch = require('node-fetch') -const fs = require('fs') -const YAML = require('yaml') - -async function fetchScopeTable(uuid, title, path) { - const response = await fetch( - `https://compliance.sovereignit.cloud/markdown/scope/${uuid}` - ) - var text = await response.text() - text = `# ${title}\n\n${text}` - fs.writeFileSync(path, text, 'utf8') -} - -// how many outdated versions of any scope to include -const MAX_OLD = 1 - -const filenames = fs - .readdirSync('standards/') - .filter((fn) => fn.startsWith('scs-') && fn.endsWith('.yaml')) - -const scopes = filenames.map((filename) => { - return { - ...YAML.parseDocument( - fs.readFileSync(`standards/${filename}`, 'utf8') - ).toJSON(), - filename, - id: filename.substring(0, filename.length - 5) - } -}) - -const today = new Date().toISOString().slice(0, 10) - -const sidebarItems = scopes.map((scope) => { - fetchScopeTable(scope.uuid, scope.name, `standards/${scope.id}.md`).catch( - (e) => { - console.log(e) - } - ) - return { - type: 'doc', - label: scope.name, - id: scope.id - } -}) - -var newSidebars = `module.exports = ${JSON.stringify(sidebarItems, null, ' ')}` -fs.writeFileSync('./sidebarsCertificationItems.js', newSidebars, 'utf8') diff --git a/populateStds.js b/populateStds.js index 6b2583fa84..bf810e3fd8 100644 --- a/populateStds.js +++ b/populateStds.js @@ -12,6 +12,7 @@ const trackIntros = { 'KaaS': 'Standards in this track are concerned with Kubernetes as a Service layer, outlining norms and best practices for deploying, managing, and operating Kubernetes clusters. These standards aim to ensure that the orchestration of containers is streamlined, secure, and compatible across various cloud environments and platforms.', 'IAM': 'This track revolves around Identity and Access Management (IAM) standards, providing guidelines for ensuring secure and efficient user authentication, authorization, and administration. It addresses issues related to user identity, permissions, roles, and policies, aiming to safeguard and streamline access to cloud resources and services.', 'Ops': 'Operational Tooling Standards cover the protocols and guidelines associated with tools and utilities used for monitoring, management, and maintenance of the cloud environment. This includes standards for status pages, alerts, logs, and other operational tools, aiming to optimize the reliability, performance, and security of cloud services and resources.', + 'Scopes': 'This track contains certificate scopes. A certificate scope is a standard that has to be fulfilled in order for a certificate to be awarded. It usually refers to other standards in regards to actual subject matter — what properties the subject has to satisfy —, and it contains regulations regarding the testing regime.' } const legend =`
*Legend to the column headings and entries:
\n @@ -249,4 +250,4 @@ lines.push('') // file should end with a single newline character fs.writeFileSync(`standards/standards/overview.mdx`, lines.join('\n'), 'utf8') var newSidebars = `module.exports = ${JSON.stringify(sidebarItems, null, ' ')}` -fs.writeFileSync('./sidebarsStandardsItems.js', newSidebars, 'utf8') \ No newline at end of file +fs.writeFileSync('./sidebarsStandardsItems.js', newSidebars, 'utf8') diff --git a/sidebarsStandards.js b/sidebarsStandards.js index 27ec888089..f017d34e3e 100644 --- a/sidebarsStandards.js +++ b/sidebarsStandards.js @@ -10,15 +10,6 @@ const sidebars = { id: 'certification/overview' }, items: [ - { - type: 'category', - label: 'Scopes and Versions', - link: { - type: 'doc', - id: 'certification/scopes-versions' - }, - items: require('./sidebarsCertificationItems.js') // this file will be generated entirely by `populateCerts.js` via npm post-install hook found in the package.json - }, { type: 'doc', label: 'Compliance Check Pipeline', diff --git a/standards/certification/overview.template.md b/standards/certification/overview.template.md index c3ae5e6f5e..273306e199 100644 --- a/standards/certification/overview.template.md +++ b/standards/certification/overview.template.md @@ -1,12 +1,11 @@ # Certification -SCS provides a certification framework with various scopes. -See [Scopes and Versions](scopes-versions.md) for details. +SCS provides a certification framework with various [scopes](https://docs.scs.community/standards/scopes/). ## Becoming certified -In order to obtain a certification, all standards of the respective scope must be adhered to. +In order to obtain a certification for a certain scope, the corresponding scope standard must be adhered to. This is tested at regular intervals, and the results of these tests will be made available publicly. There are various types of certifications, which are described below.