Infra:websiteinfosec
The website of Infosec team is accessible at this address infosec.unamur.be.
Technical Specification
The site is built using Jekyll (a static site generator based on Ruby) and it uses markdown to format text.
The website source file is stored on a git repository https://forge.infosec.unamur.be/infrastructure/team_front_page_website.
The git repository has two main branches:
- master: contains a production ready site
- dev: contains some experimental features
The website is deployed as a docker container on doc server. There are two instances running: one is the production instance and another contains a dev version of the site which can be only accessible within the university.
Modification of the site
To modify the site, follow these steps:
- Clone the repository https://forge.infosec.unamur.be/infrastructure/team_front_page_website
- Make changes
- Commit the changes
- Push it back to server
- The site will be rebuilt and deployed on server at each commit.
In case you want to test your changes first, after cloning the repository switch to branch dev. This will also trigger the build and deploy the dev version of the site which can be accessible at this location: http://138.48.246.5:8888/
Site structure
The website uses minima template Theme preview and is built on Bootstraps.
Contents At-A-Glance
Minima has been scaffolded by the jekyll new-theme
command and therefore has all the necessary files and directories to have a new Jekyll site up and running with zero-configuration.
Layouts
Refers to files within the _layouts
directory, that define the markup for your theme.
default.html
— The base layout that lays the foundation for subsequent layouts. The derived layouts inject their contents into this file at the line that saysTemplate:Content
and are linked to this file via FrontMatter declarationlayout: default
.home.html
— The layout for your landing-page / home-page / index-page. [[[#home-layout|More Info.]]]page.html
— The layout for your documents that contain FrontMatter, but are not posts.post.html
— The layout for your posts.
Includes
Refers to snippets of code within the _includes
directory that can be inserted in multiple layouts (and another include-file as well) within the same theme-gem.
disqus_comments.html
— Code to markup disqus comment box.footer.html
— Defines the site’s footer section.google-analytics.html
— Inserts Google Analytics module (active only in production environment).head.html
— Code-block that defines the<head></head>
in default layout.header.html
— Defines the site’s main header section. By default, pages with a definedtitle
attribute will have links displayed here.
Sass
Refers to .scss
files within the _sass
directory that define the theme’s styles.
minima.scss
— The core file imported by preprocessedmain.scss
, it defines the variable defaults for the theme and also further imports sass partials to supplement itself.minima/_base.scss
— Resets and defines base styles for various HTML elements.minima/_layout.scss
— Defines the visual style for various layouts.minima/_syntax-highlighting.scss
— Defines the styles for syntax-highlighting.
Assets
Refers to various asset files within the assets
directory. Contains the main.scss
that imports sass files from within the _sass
directory. This main.scss
is what gets processed into the theme’s main stylesheet main.css
called by _layouts/default.html
via _includes/head.html
.
This directory can include sub-directories to manage assets of similar type, and will be copied over as is, to the final transformed site directory.