diff --git a/CHANGELOG.md b/CHANGELOG.md index df5f996..55231c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,23 @@ MONARC Changelog ================ +## 2.9.0 (2019-08-23) + +### New + +- each analysis can now integrate a record of processing activities in order + to help you in your GDPR compliance efforts; +- it is now possible to create and manage set of recommendations via the + knowledge base of a risk analysis. Like for the security referentials MOSP can + now be used in order to + [share recommendations](https://objects.monarc.lu/schema/17). + +### Fix + +- Monarc 2.8.3 - nvalid datetime format: 1292 [#179](https://github.com/monarc-project/MonarcAppFO/issues/179) +- various minor fixes. + + ## 2.8.3 (2019-07-26) ### Enhancement @@ -13,7 +30,7 @@ MONARC Changelog - SOA is not imported [#166](https://github.com/monarc-project/MonarcAppFO/issues/166) - Drag & drop in risk treatment plan fails after 1 change [#167](https://github.com/monarc-project/MonarcAppFO/issues/166) -- Underscore "_" is not considered as a special character in password reset [#169](https://github.com/monarc-project/MonarcAppFO/issues/169) +- Underscore "\_" is not considered as a special character in password reset [#169](https://github.com/monarc-project/MonarcAppFO/issues/169) - Error when duplicating object [#171](https://github.com/monarc-project/MonarcAppFO/issues/171) - Add objects in model/anr from common DB [#172](https://github.com/monarc-project/MonarcAppFO/issues/172) - Composed objects in the library->position [#174](https://github.com/monarc-project/MonarcAppFO/issues/174) diff --git a/INSTALL/INSTALL.ubuntu1804.md b/INSTALL/INSTALL.ubuntu1804.md index 156f409..2736b44 100644 --- a/INSTALL/INSTALL.ubuntu1804.md +++ b/INSTALL/INSTALL.ubuntu1804.md @@ -3,37 +3,38 @@ Installation on Ubuntu 18.04 # 1. Install LAMP & dependencies -## Install the dependencies +## 1.1. Install system dependencies - $ sudo apt-get install vim zip unzip git gettext curl gsfonts + $ sudo apt-get install zip unzip git gettext curl gsfonts Some might already be installed. -## Install MariaDB +## 1.2. Install MariaDB $ sudo apt-get install mariadb-client mariadb-server -# Secure the MariaDB installation +### Secure the MariaDB installation $ sudo mysql_secure_installation Especially by setting a strong root password. -## Install Apache2 +## 1.3. Install Apache2 $ sudo apt-get install apache2 -## Enable modules, settings, and default of SSL in Apache +### Enable modules, settings, and default of SSL in Apache $ sudo a2dismod status $ sudo a2enmod ssl $ sudo a2enmod rewrite $ sudo a2enmod headers -## Apache Virtual Host +### Apache Virtual Host - - ServerName monarc.localhost + + ServerAdmin admin@localhost.lu + ServerName monarc.local DocumentRoot /var/lib/monarc/fo/public @@ -53,11 +54,11 @@ Especially by setting a strong root password. -## Install PHP and dependencies +## 1.4. Install PHP and dependencies - $ sudo apt-get install php apache2 libapache2-mod-php php-curl php-gd php-mysql php-pear php-apcu php-xml php-mbstring php-intl php-imagick php-zip + $ sudo apt-get install php apache2 libapache2-mod-php php-curl php-gd php-mysql php-pear php-apcu php-xml php-mbstring php-intl php-imagick php-zip composer -## Apply all changes +## 1.5 Apply all changes $ sudo systemctl restart apache2.service @@ -65,26 +66,21 @@ Especially by setting a strong root password. # 2. Installation of MONARC -## MONARC code +## 2.1. MONARC source code Clone the repository and invoke `composer` using the shipped `composer.phar`: - $ cd /var/lib/monarc/ - $ git clone https://github.com/monarc-project/MonarcAppFO.git fo - $ cd fo/ - $ chown -R www-data data + $ mkdir -p /var/lib/monarc/fo + $ git clone https://github.com/monarc-project/MonarcAppFO.git /var/lib/monarc/fo + $ cd /var/lib/monarc/fo + $ mkdir data $ chmod -R g+w data - $ sudo composer self-update $ composer install -o -The `self-update` directive is to ensure you have an up-to-date `composer.phar` -available. +### Back-end -### Backend - -The backend is not directly modules of the project but libraries. -You must create modules with symbolic links to libraries. +The back-end is using the Zend Framework. Create two symbolic links: @@ -95,11 +91,11 @@ Create two symbolic links: There are 2 parts: -* MonarcFO is only for front office; -* MonarcCore is common to the front office and to the back office. +* MonarcFO is only for MONARC; +* MonarcCore is common to MONARC and to the back office of MONARC. -### Frontend +### Front-end The frontend is an AngularJS application. @@ -110,18 +106,18 @@ The frontend is an AngularJS application. There are 2 parts: -* one only for front office: ng_client; -* one common for front office and back office: ng_anr. +* one only for MONARC: ng_client; +* one common for MONARC and the back office of MONARC: ng_anr. -## Databases +## 2.2. Databases ### Create 2 databases In your MariaDB interpreter: - CREATE DATABASE monarc_cli DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; - CREATE DATABASE monarc_common DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; + MariaDB [(none)]> CREATE DATABASE monarc_cli DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; + MariaDB [(none)]> CREATE DATABASE monarc_common DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; * monarc_common contains models and data created by CASES; * monarc_cli contains all client risk analyses. Each analysis is based on CASES @@ -145,17 +141,17 @@ And configure the database connection: 'connection' => array( 'orm_default' => array( 'params' => array( - 'host' => 'host', - 'user' => 'user', - 'password' => 'password', + 'host' => 'localhost', + 'user' => 'sqlmonarcuser', + 'password' => '', 'dbname' => 'monarc_common', ), ), 'orm_cli' => array( 'params' => array( - 'host' => 'host', - 'user' => 'user', - 'password' => 'password', + 'host' => 'localhost', + 'user' => 'sqlmonarcuser', + 'password' => '', 'dbname' => 'monarc_cli', ), ), @@ -165,20 +161,19 @@ And configure the database connection: -# Update MONARC +# 3. Update MONARC -## Install Grunt +Install Grunt: $ sudo apt-get -y install npm $ npm install -g grunt-cli - -Update MONARC: +then update MONARC: $ ./scripts/update-all.sh -# Create initial user +# 4. Create initial user $ php ./vendor/robmorgan/phinx/bin/phinx seed:run -c ./module/MonarcFO/migrations/phinx.php diff --git a/INSTALL/pictures/arbo1.png b/INSTALL/pictures/arbo1.png deleted file mode 100644 index 51f35a8..0000000 Binary files a/INSTALL/pictures/arbo1.png and /dev/null differ diff --git a/INSTALL/pictures/arbo2.png b/INSTALL/pictures/arbo2.png deleted file mode 100644 index 13a90f7..0000000 Binary files a/INSTALL/pictures/arbo2.png and /dev/null differ diff --git a/INSTALL/pictures/arbo3.png b/INSTALL/pictures/arbo3.png deleted file mode 100644 index fc25088..0000000 Binary files a/INSTALL/pictures/arbo3.png and /dev/null differ diff --git a/VERSION.json b/VERSION.json index f71cb19..c8f228a 100644 --- a/VERSION.json +++ b/VERSION.json @@ -1 +1 @@ -{"major":2, "minor":8, "hotfix":3} +{"major":2, "minor":9, "hotfix":0} diff --git a/deliveries/cases/DE/6.docx b/deliveries/cases/DE/6.docx new file mode 100644 index 0000000..dae5121 Binary files /dev/null and b/deliveries/cases/DE/6.docx differ diff --git a/deliveries/cases/DE/7.docx b/deliveries/cases/DE/7.docx new file mode 100644 index 0000000..8988dfe Binary files /dev/null and b/deliveries/cases/DE/7.docx differ diff --git a/deliveries/cases/EN/6.docx b/deliveries/cases/EN/6.docx new file mode 100644 index 0000000..5441bac Binary files /dev/null and b/deliveries/cases/EN/6.docx differ diff --git a/deliveries/cases/EN/7.docx b/deliveries/cases/EN/7.docx new file mode 100644 index 0000000..9fb3547 Binary files /dev/null and b/deliveries/cases/EN/7.docx differ diff --git a/deliveries/cases/FR/6.docx b/deliveries/cases/FR/6.docx new file mode 100644 index 0000000..58d7264 Binary files /dev/null and b/deliveries/cases/FR/6.docx differ diff --git a/deliveries/cases/FR/7.docx b/deliveries/cases/FR/7.docx new file mode 100644 index 0000000..f02b40b Binary files /dev/null and b/deliveries/cases/FR/7.docx differ diff --git a/deliveries/cases/NE/6.docx b/deliveries/cases/NE/6.docx new file mode 100644 index 0000000..1118cc3 Binary files /dev/null and b/deliveries/cases/NE/6.docx differ diff --git a/deliveries/cases/NE/7.docx b/deliveries/cases/NE/7.docx new file mode 100644 index 0000000..9f23b2e Binary files /dev/null and b/deliveries/cases/NE/7.docx differ diff --git a/package.json b/package.json index c784c23..d490815 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "MONARC", - "version": "2.8.3", + "version": "2.9.0", "description": "MONARC Frontoffice App", "private": true, "repository": { diff --git a/vagrant/bootstrap.sh b/vagrant/bootstrap.sh index 777c31c..ebc0146 100644 --- a/vagrant/bootstrap.sh +++ b/vagrant/bootstrap.sh @@ -32,6 +32,9 @@ export LC_ALL=en_US.UTF-8 locale-gen en_US.UTF-8 dpkg-reconfigure locales + + + echo -e "\n--- Installing now… ---\n" echo -e "\n--- Updating packages list… ---\n" @@ -40,6 +43,9 @@ apt-get update echo -e "\n--- Install base packages… ---\n" apt-get -y install vim zip unzip git gettext curl gsfonts > /dev/null + + + echo -e "\n--- Install MariaDB specific packages and settings… ---\n" # echo "mysql-server mysql-server/root_password password $DBPASSWORD_ADMIN" | debconf-set-selections # echo "mysql-server mysql-server/root_password_again password $DBPASSWORD_ADMIN" | debconf-set-selections @@ -72,10 +78,18 @@ expect -f - <<-EOF EOF sudo apt-get purge -y expect > /dev/null 2>&1 -echo -e "\n--- Configuring … ---\n" +echo -e "\n--- Configuring… ---\n" sed -i "s/skip-external-locking/#skip-external-locking/g" $MARIA_DB_CFG sed -i "s/.*bind-address.*/bind-address = 0.0.0.0/" $MARIA_DB_CFG +echo -e "\n--- Setting up our MariaDB user for MONARC… ---\n" +mysql -u root -p$DBPASSWORD_ADMIN -e "CREATE USER '$DBUSER_MONARC'@'%' IDENTIFIED BY '$DBPASSWORD_MONARC';" +mysql -u root -p$DBPASSWORD_ADMIN -e "GRANT ALL PRIVILEGES ON * . * TO '$DBUSER_MONARC'@'%';" +mysql -u root -p$DBPASSWORD_ADMIN -e "FLUSH PRIVILEGES;" + + + + echo -e "\n--- Installing PHP-specific packages… ---\n" apt-get -y install php apache2 libapache2-mod-php php-curl php-gd php-mysql php-pear php-apcu php-xml php-mbstring php-intl php-imagick php-zip php-xdebug > /dev/null @@ -85,14 +99,13 @@ do sed -i "s/^\($key\).*/\1 = $(eval echo \${$key})/" $PHP_INI done -echo -e "\n--- Configuring Description Xdebug ---\n" +echo -e "\n--- Configuring Xdebug for development ---\n" cat > $X_DEBUG_CFG < /dev/null 2>&1 a2enmod ssl > /dev/null 2>&1 @@ -102,13 +115,11 @@ echo -e "\n--- Allowing Apache override to all ---\n" sudo sed -i "s/AllowOverride None/AllowOverride All/g" /etc/apache2/apache2.conf #echo -e "\n--- We want to see the PHP errors, turning them on ---\n" -#sed -i "s/error_reporting = .*/error_reporting = E_ALL/" $PHP_INI -#sed -i "s/display_errors = .*/display_errors = On/" $PHP_INI +#sed -i "s/.*error_reporting.*/error_reporting = E_ALL/g" $PHP_INI +#sed -i "s/.*display_errors.*/display_errors = On/g" $PHP_INI + + -echo -e "\n--- Setting up our MariaDB user for MONARC… ---\n" -mysql -u root -p$DBPASSWORD_ADMIN -e "CREATE USER '$DBUSER_MONARC'@'localhost' IDENTIFIED BY '$DBPASSWORD_MONARC';" -mysql -u root -p$DBPASSWORD_ADMIN -e "GRANT ALL PRIVILEGES ON * . * TO '$DBUSER_MONARC'@'localhost';" -mysql -u root -p$DBPASSWORD_ADMIN -e "FLUSH PRIVILEGES;" echo -e "\n--- Installing composer… ---\n" curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer > /dev/null 2>&1 @@ -118,6 +129,9 @@ if [ $? -ne 0 ]; then fi composer self-update + + + echo -e "\n--- Installing MONARC… ---\n" cd $PATH_TO_MONARC git config core.fileMode false @@ -131,7 +145,7 @@ echo -e "\n--- Retrieving MONARC libraries… ---\n" composer config -g github-oauth.github.com $GITHUB_AUTH_TOKEN composer install -o -# Modules +# Back-end mkdir module cd module ln -s ./../vendor/monarc/core MonarcCore @@ -144,7 +158,7 @@ cd module/MonarcCore/ git config core.fileMode false cd $PATH_TO_MONARC -# Interfaces +# Front-end mkdir node_modules cd node_modules git clone --config core.fileMode=false https://github.com/monarc-project/ng-client.git ng_client > /dev/null 2>&1 @@ -159,12 +173,13 @@ if [ $? -ne 0 ]; then fi cd .. - chown -R www-data $PATH_TO_MONARC chgrp -R www-data $PATH_TO_MONARC chmod -R 700 $PATH_TO_MONARC + + echo -e "\n--- Add a VirtualHost for MONARC ---\n" cat > /etc/apache2/sites-enabled/000-default.conf < @@ -192,6 +207,8 @@ echo -e "\n--- Restarting Apache… ---\n" systemctl restart apache2.service > /dev/null + + echo -e "\n--- Configuration of MONARC data base connection ---\n" cat > config/autoload/local.php < /dev/null + + echo -e "\n--- Installation of Grunt… ---\n" sudo apt-get -y install npm > /dev/null npm install -g grunt-cli > /dev/null + + echo -e "\n--- Update the project… ---\n" /bin/bash ./scripts/update-all.sh > /dev/null + + echo -e "\n--- Create initial user and client ---\n" php ./vendor/robmorgan/phinx/bin/phinx seed:run -c ./module/MonarcFO/migrations/phinx.php + + echo -e "\n--- Restarting Apache… ---\n" systemctl restart apache2.service > /dev/null + + echo -e "\n--- MONARC is ready! Point your Web browser to http://127.0.0.1:5001 ---\n"