From 2350c92b03113eecc76bbb4cbb2bdbdd69034561 Mon Sep 17 00:00:00 2001 From: Alexis Mousset Date: Fri, 8 Feb 2019 09:39:30 +0100 Subject: [PATCH] Work in progress --- README.asciidoc | 131 ++++++++++++++++++++---------------------------- 1 file changed, 53 insertions(+), 78 deletions(-) diff --git a/README.asciidoc b/README.asciidoc index ad3cab8f55c..001e7d976a9 100644 --- a/README.asciidoc +++ b/README.asciidoc @@ -1,10 +1,15 @@ - image::readme-resources/color_logo_horizontal_small.png[Rudder] -Continuous configuration for effective compliance -------------------------------------------------- +Continuous Auditing & Configuration +----------------------------------- + +image:https://img.shields.io/badge/chat-with the community-brightgreen.svg?style=flat[link="https://docs.rudder.io"] +image:https://img.shields.io/badge/read-documentation-green.svg?style=flat[link="https://docs.rudder.io"] +image:https://img.shields.io/badge/open-an issue-blue.svg?style=flat[link="https://issues.rudder.io"] +image:https://img.shields.io/badge/visit-our website-blueviolet.svg?style=flat[link="https://issues.rudder.io"] +image:https://img.shields.io/twitter/follow/rudderio.svg?style=social[link="https://twitter.com/rudderio"] -image:https://badges.gitter.im/normation/rudder.svg[link="https://gitter.im/normation/rudder?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"] +''' Rudder is an easy to use, web-driven, role-based solution for IT Infrastructure Automation & Compliance. @@ -21,15 +26,15 @@ The workflow offers different users options at their own level: Rudder is an established project with several 10000s of node managed, in companies from small to biggest-in-their-field. Typical deployments manage 100s to 1000s of nodes. -The biggest known deployment in 2016 is about 7000 nodes. - +The biggest known deployment are about 10.000 nodes. image::readme-resources/dashboard.png[Rudder Dashboard] +''' + === Feature overview * Web interface to manage nodes and define policies - ** https://www.rudder-project.org/site/documentation/screenshots/ * Continuously assesses drift compared to defined policies (with or without auto-healing) * Optionally, continuously enforces configuration over time (configuring once is good, ensuring configuration is always valid and automatically fixing it is better) @@ -39,29 +44,17 @@ image::readme-resources/dashboard.png[Rudder Dashboard] * Automate common system administration tasks (installation, configuration) * Full REST API to interact with the Rudder server - TIP: Rudder is open source – we welcome ideas, comments, criticism, patches and any other contributions! So get chatting with our community https://www.rudder-project.org/site/support/chat-mailing-lists/[on IRC]! -=== Documentation and community - -[horizontal] -Rudder site:: http://rudder-project.org -User documentation:: https://docs.rudder.io/ -API documentation:: https://docs.rudder.io/api -Mailing list, IRC:: https://www.rudder-project.org/site/community/mailing-lists/ -Bug report:: http://www.rudder-project.org/redmine/projects/rudder/issues -Source:: https://github.com/Normation/rudder - - === Testing and installing Rudder ==== 5 minute tests ===== Demo site -You can see a demo version of Rudder: http://demo.rudder-project.org/ +You can see a demo version of Rudder: https://demo.rudder.io ===== Vagrant @@ -73,7 +66,7 @@ for getting started with Rudder on Vagrant. ===== Rudder Test Framework (rtf) -Rudder test framework is a tool that allows to define full environnements and set +Rudder test framework is a tool that allows to define full environments and set them up for you. For example, you can define a platform with a Rudder server on Debian stable, 2 nodes on CentOS connected to it, and a Rudder Relay Server with its own 2 Debian nodes in 3 lines of configuration and commands. @@ -101,14 +94,28 @@ embedded Linux on ARM/x86, Android, FreeBSD but no ready-to-use packages are pro Normation offers AIX, Solaris and Windows agents. +=== Links + +[horizontal] +Website:: https://www.rudder.io +Documentation:: https://docs.rudder.io +API documentation:: https://docs.rudder.io/api +Chat:: https://chat.rudder.io +Bug report:: https://issues.rudder.io/projects/rudder/issues +Source:: https://github.com/Normation/rudder + +=== Contributing + +Thank you for your interest in our project! We welcome pull requests on any of the Rudder repositories. + +The contribution process is detailed https://www.rudder.io/en/expand/contribute/[on our website]. === Authors -Rudder is supported by Normation http://www.normation.com/en/rudder/ +Rudder is supported by https://www.rudder.io/en/company/about-us/[Normation]. The list of contributors is available in https://github.com/Normation/rudder/graphs/contributors - === License This project is licensed under GPLv3 license, see the provided "LICENSE" file or @@ -118,74 +125,55 @@ We added an extension to the main GPLv3 license to allows to build and use plugi on top of Rudder with any license, open source or closed/proprietary, see: https://github.com/Normation/rudder/blob/master/LICENSE_EXCEPTION -=== Contributing - -Thank you for your interest in our project! - -We welcome pull requests on any of the Rudder repositories. - -The contribution process is detailed here: -http://www.rudder-project.org/HowToContribute - === Rudder components and projects overview -==== Functional Components - -image::readme-resources/rudder-functional-component-diagram.png[Rudder Functional Components] - ==== Projects -Rudder is now composed of several projects: +Rudder is composed of several sub-projects: |==== -|Component | Description and GitHub Projects +|Component | Description and repositories + +| Server | +This is the Scala web application responsible for policy definition and +generation by node, and compliance reporting. It also manages node +inventories. -| Rudder documentation | +https://github.com/Normation/rudder + +| Documentation | We have a project for main documentation and API documentation: https://github.com/Normation/rudder-doc https://github.com/Normation/rudder-api-doc -| Rudder agent | +| Agent | This project contains the CLI for Rudder agent https://github.com/Normation/rudder-agent -| Rudder Techniques | -Provided Techniques coming in the base set-up of Rudder +| Techniques | +Provided techniques coming in the base set-up of Rudder https://github.com/Normation/rudder-techniques -| ncf framework | -A powerful and structured CFEngine framework used to build Rudder Techniques +| Configuration framework | +A powerful and structured configuration framework used to build Rudder techniques https://github.com/Normation/ncf -| Rudder server | -This is the Scala web application responsible for policy definition and -generation by node, and compliance reporting. It also manages node -inventories. -It is composed of several Scala projects: - -https://github.com/Normation/rudder-parent-pom -https://github.com/Normation/rudder-commons -https://github.com/Normation/scala-ldap -https://github.com/Normation/cf-clerk -https://github.com/Normation/rudder -https://github.com/Normation/ldap-inventory - -| Rudder packages | +| Packages | This project contains all the logic to build both server and agent packages for Rudder https://github.com/Normation/rudder-packages -| Rudder tools | +| Tools | Nice tools around Rudder https://github.com/Normation/rudder-tools -| Rudder plugins | +| Plugins | Plugin examples: -https://github.com/Normation/rudder-plugin-helloworld -https://github.com/Normation/rudder-plugin-external-node-information +https://github.com/Normation/rudder-plugins https://github.com/Normation/rudder-plugin-itop |==== +=== Build the server .On a more 'developer oriented' usage on this repository only (not as Rudder as a whole): @@ -194,24 +182,11 @@ You will need a working Maven 3.x.x installation. .Clean, build and install on your local repository: -We are working on a public artefact repository for Rudder, so for now you will +We are working on a public artifact repository for Rudder, so for now you will need to build all dependencies for the Scala web application yourself. -You can create a script with the following lines: ---- -$ echo clone-build-rudder.sh +git clone https://github.com/Normation/rudder.git +mvn install ---- ----- -#!/bin/sh -BASE="$PWD" -REPOS="rudder-parent-pom rudder-commons scala-ldap ldap-inventory rudder" -for i in ${REPOS}; do - echo "\e[0;32mCloning ${i}\e[0m" - git clone https://github.com/Normation/$i.git - P=${BASE}/${i} - cd ${P} - echo "\e[0;32mBuilding ${P}\e[0m" - mvn install -done -----