Skip to content

Commit

Permalink
Introduce doc using Jekyll & Update README (#232)
Browse files Browse the repository at this point in the history
* updated logo
* Add "How to use it" page
* Add "Developer" page
* add "Get options" page
* how - remove unnecessary margin
* developer - better mark clickable items
* add "Export" page
* README: Remove per plugin fields 

Co-authored-by: Damir Zainullin <[email protected]>
Co-authored-by: Josef Koumar <[email protected]>
  • Loading branch information
3 people authored Nov 15, 2024
1 parent 6bd0a16 commit 410124c
Show file tree
Hide file tree
Showing 91 changed files with 4,622 additions and 649 deletions.
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -116,4 +116,8 @@ tests/unit/utils
# vscode settings files
.vscode


# jekyll files
docs/_site/
docs/.sass-cache/
docs/.jekyll-metadata/
docs/.jekyll-cache/
724 changes: 76 additions & 648 deletions README.md

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions docs/404.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: Not Found
description: This does not exist
permalink: /404.html
sitemap: false
---
11 changes: 11 additions & 0 deletions docs/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
source 'https://rubygems.org'
gem "webrick"
gem 'jekyll', '~> 4.2.0'

group :jekyll_plugins do
gem 'jekyll-archives', '~> 2.2.1'
gem 'jekyll-feed', '~> 0.15.1'
gem 'jekyll-paginate', '~> 1.1.0'
gem 'jekyll-seo-tag', '~> 2.7.1'
gem 'jekyll-sitemap', '~> 1.4.0'
end
83 changes: 83 additions & 0 deletions docs/Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
colorator (1.1.0)
concurrent-ruby (1.1.9)
em-websocket (0.5.2)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.7)
ffi (1.15.1)
forwardable-extended (2.6.0)
http_parser.rb (0.6.0)
i18n (1.8.10)
concurrent-ruby (~> 1.0)
jekyll (4.2.0)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (~> 2.0)
jekyll-watch (~> 2.0)
kramdown (~> 2.3)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (~> 0.4.0)
pathutil (~> 0.9)
rouge (~> 3.0)
safe_yaml (~> 1.0)
terminal-table (~> 2.0)
jekyll-archives (2.2.1)
jekyll (>= 3.6, < 5.0)
jekyll-feed (0.15.1)
jekyll (>= 3.7, < 5.0)
jekyll-paginate (1.1.0)
jekyll-sass-converter (2.1.0)
sassc (> 2.0.1, < 3.0)
jekyll-seo-tag (2.7.1)
jekyll (>= 3.8, < 5.0)
jekyll-sitemap (1.4.0)
jekyll (>= 3.7, < 5.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
kramdown (2.3.1)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.3)
listen (3.5.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (4.0.6)
rb-fsevent (0.11.0)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.5)
rouge (3.26.0)
safe_yaml (1.0.5)
sassc (2.4.0)
ffi (~> 1.9)
terminal-table (2.0.0)
unicode-display_width (~> 1.1, >= 1.1.1)
unicode-display_width (1.7.0)
webrick (1.8.1)

PLATFORMS
ruby

DEPENDENCIES
jekyll (~> 4.2.0)
jekyll-archives (~> 2.2.1)
jekyll-feed (~> 0.15.1)
jekyll-paginate (~> 1.1.0)
jekyll-seo-tag (~> 2.7.1)
jekyll-sitemap (~> 1.4.0)
webrick

BUNDLED WITH
1.17.3
21 changes: 21 additions & 0 deletions docs/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2016-2020 CloudCannon

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
71 changes: 71 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# ipfixprobe website Hydra

Based on Hydra opensource template [live demo](https://proud-alligator.cloudvent.net/)

## Features

* Contact form
* Pre-built pages
* Pre-styled components
* Blog with pagination
* Post category pages
* Disqus comments for posts
* Staff and author system
* Configurable footer
* Optimised for editing in [CloudCannon](http://cloudcannon.com/)
* RSS/Atom feed
* SEO tags
* Google Analytics

## Setup

1. Add your site and author details in `_config.yml`.
2. Add your Google Analytics and Disqus keys to `_config.yml`.
3. Get a workflow going to see your site's output (with [CloudCannon](https://app.cloudcannon.com/) or Jekyll locally).

## Develop

Hydra was built with [Jekyll](http://jekyllrb.com/) version 3.3.1, but should support newer versions as well.

Install the dependencies with [Bundler](http://bundler.io/):

~~~bash
$ bundle install
~~~

Run `jekyll` commands through Bundler to ensure you're using the right versions:

~~~bash
$ bundle exec jekyll serve
~~~

## Editing

Hydra is already optimised for adding, updating and removing pages, staff, advice, company details and footer elements in CloudCannon.

### Posts

* Add, update or remove a post in the *Posts* collection.
* The **Staff Author** field links to members in the **Staff** collection.
* Documentation pages are organised in the navigation by category, with URLs based on the path inside the `_docs` folder.
* Change the defaults when new posts are created in `_posts/_defaults.md`.

### Contact Form

* Preconfigured to work with CloudCannon, but easily changed to another provider (e.g. [FormSpree](https://formspree.io/)).
* Sends email to the address listed in company details.

### Staff

* Reused around the site to save multiple editing locations.
* Add `excluded_in_search: true` to any documentation page's front matter to exclude that page in the search results.

### Navigation

* Exposed as a data file to give clients better access.
* Set in the *Data* / *Navigation* section.

### Footer

* Exposed as a data file to give clients better access.
* Set in the *Data* / *Footer* section.
117 changes: 117 additions & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# ----
# Site

title: ipfixprobe
url: "https://hynekkar.github.io/ipfixprobe-docs/"
baseurl:
google_analytics_key:
google_maps_javascript_api_key:
disqus_shortname:

# Values for the jekyll-seo-tag gem (https://github.com/jekyll/jekyll-seo-tag)
logo: /siteicon.svg
description: "ipfixprobe is a tool for collecting and processing IPFIX data."
author:
name: "Karel Hynek (CESNET z.s.p.o.)"
email: "[email protected]"
twitter: # twitter username without the @ symbol
social:
name: "Hydra Template"
links:
- https://github.com/CloudCannon/hydra-jekyll-template

# -----
# Build

timezone: Etc/UTC

collections:
staff_members:
_hide_content: true
get_options:
_hide_content: true
how:
_hide_content: true
output: true
export:
_hide_content: true

paginate: 10
paginate_path: "/blog/:num/"
permalink: pretty

defaults:
- scope:
path: ""
type: "posts"
values:
layout: "post"
_options:
content:
width: 1500
height: 2500
- scope:
path: ""
type: "staff_members"
values:
_options:
image_path:
width: 600
height: 600
- scope:
path: ""
values:
layout: "page"
- scope:
path: "index.html"
values:
layout: "default"
- scope:
path: "get_options"
values:
layout: "post"
- scope:
path: "contact.html"
values:
full_width: true

jekyll-archives:
enabled:
- categories

plugins:
- jekyll-archives
- jekyll-sitemap
- jekyll-seo-tag
- jekyll-feed
- jekyll-paginate

exclude:
- Gemfile
- Gemfile.lock
- README.md
- LICENCE

# -----------
# CloudCannon

_select_data:
social_icons:
- Facebook
- Instagram
- LinkedIn
- Pinterest
- Tumblr
- Twitter
- YouTube
- RSS

_comments:
map: Update the map location and display settings.
latitude: Coordinates for the center marker on the map.
longitude: Coordinates for the center marker on the map.
zoom: The zoom level for the map.
pricing_table: Update the information in the pricing tables.
highlight: Emphasis the text
color: The background colour used in the plan name and call to action.
new_window: Open link in new window
5 changes: 5 additions & 0 deletions docs/_data/footer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
- links:
- name: GitHub
link: https://github.com/CESNET/ipfixprobe
new_window: true
social_icon: GitHub
16 changes: 16 additions & 0 deletions docs/_data/navigation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
- name: "Get Ipfixprobe"
link: /get_options/
new_window: false
highlight: false
- name: "How to use it"
link: /how/
new_window: false
highlight: false
- name: "Developer"
link: /developer/
new_window: false
highlight: false
- name: "Export Data"
link: /export/
new_window: false
highlight: false
45 changes: 45 additions & 0 deletions docs/_export/BSTATS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
title: BSTATS
description: List of fields exported together with basic flow fields on the interface by BSTATS plugin. The plugin is compiled to export the first BSTATS_MAXELENCOUNT (15 by default) burst in each direction. The bursts are computed separately for each direction. Burst is defined by MINIMAL_PACKETS_IN_BURST (3 by default) and by MAXIMAL_INTERPKT_TIME (1000 ms by default) between packets to be included in a burst. When the flow contains less then MINIMAL_PACKETS_IN_BURST packets, the fields are not exported to reduce output bandwidth.
fields:
-
name: "SBI_BRST_PACKETS"
type: "uint32*"
ipfix: "0/291"
value: " SRC->DST: Number of packets transmitted in ith burst"
-
name: "SBI_BRST_BYTES"
type: "uint32*"
ipfix: "0/291"
value: " SRC->DST: Number of bytes transmitted in ith burst"
-
name: "SBI_BRST_TIME_START"
type: "time*"
ipfix: "0/291"
value: " SRC->DST: Start time of the ith burst"
-
name: "SBI_BRST_TIME_STOP"
type: "time*"
ipfix: "0/291"
value: " SRC->DST: End time of the ith burst"
-
name: "DBI_BRST_PACKETS"
type: "uint32*"
ipfix: "0/291"
value: " DST->SRC: Number of packets transmitted in ith burst"
-
name: "DBI_BRST_BYTES"
type: "uint32*"
ipfix: "0/291"
value: " DST->SRC: Number of bytes transmitted in ith burst"
-
name: "DBI_BRST_TIME_START"
type: "time*"
ipfix: "0/291"
value: " DST->SRC: Start time of the ith burst"
-
name: "DBI_BRST_TIME_STOP"
type: "time*"
ipfix: "0/291"
value: " DST->SRC: End time of the ith burst"
---
Loading

0 comments on commit 410124c

Please sign in to comment.