{
    "componentChunkName": "component---src-templates-course-js",
    "path": "/courses/devops/",
    "result": {"data":{"course":{"frontmatter":{"authors":["Sergei Kudinov <sergei@adaltas.com>"],"title":"DevOps","period":"Spring 2022","school":"DSTI"},"modules":[{"frontmatter":{"title":"Prerequisites for DevOps course","slug":"/courses/devops/prerequisites/"}},{"frontmatter":{"title":"Introduction to DevOps","slug":"/courses/devops/devops-introduction/"}},{"frontmatter":{"title":"Versioning with Git","slug":"/courses/devops/scm/"}},{"frontmatter":{"title":"Continuous testing","slug":"/courses/devops/continuous-testing/"}},{"frontmatter":{"title":"Continuous Integration & Continuous Delivery (CI/CD)","slug":"/courses/devops/ci-cd/"}},{"frontmatter":{"title":"Infrastructure as code (IaC)","slug":"/courses/devops/infrustructure-as-code/"}}],"parent":{"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"DevOps\",\n  \"authors\": [\"Sergei Kudinov <sergei@adaltas.com>\"],\n  \"school\": \"DSTI\",\n  \"period\": \"Spring 2022\",\n  \"feature\": \"./feature/index.png\"\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"The DevOps culture focus on one goal throughout the entire software delivery lifecycle (not just development and operations): the rapid implementation of stable, high-quality software, from concept to customer or user. The automation of software development, testing and deployment through Continuous Delivery (CD) is a recognized key factor for DevOps. Automation enables faster software implementation and ensures the solutions have the quality, security and stability they need.\"), mdx(\"h2\", null, \"Prerequisites\"), mdx(\"p\", null, \"Web and database technologies, command line usage, basic programming skills.\"));\n}\n;\nMDXContent.isMDXComponent = true;"}}},"pageContext":{}},
    "staticQueryHashes": []}