Projet

Général

Profil

Stéphanie Vieville

stage BTS SIO (service informatique dans les Organisations)

Actions effectuées :

Activités non liées au stage :

- Test de tuto pour utiliser une brodeuse
- Test de tuto pour utiliser Gimp et Inkscape
- Utilisation et test de tuto pour utiliser la découpe/graveuse laser → découper un bout de plaque en mdf puis le graver
- Aide pour monter la balance connectée pour ruche
- Session de présentation de la permaculture liée au projet de jardin connecté

Activités liées au stage :

- Corriger l’erreur obtenue lors du clic sur l’onglet « Configuration » :
fouille des différents log, la base de donnée n’était pas migrée,…
- Apprentissage de nombreuses lignes de commande sous Linux Debian
- Réparation du backup de backupninja sur le NAS
- Utilisation et modification du NAS
- Création d’une pair de clé SSH
- Utilisation du serveur en se connectant en SSH
- API réseaux sociaux :
- Prototype d’une interface graphique en python
- Écriture d’un script en python qui permet de publier automatiquement (à une date et heure précise) sur les réseaux à partir d’un fichier .txt
- Utilisation des librairies python des API des différents réseaux sociaux
- Écriture d’un bot qui ouvre le navigateur, et fait les actions nécessaires pour poster
- Adaptation du script en fonction des besoins et des contraintes
- Rendre exécutable + mettre dans le path un fichier
- De nombreux tests
- Passage d’Open VPN à Wireguard, installation de WireGuard, configuration future
- Installation de WordPress
- Création et configuration d’un blog WordPress
- Installation et configuration de Let’s encrypt, et cron d’un script de renouvellement
- Recherche de solution d’un problème de serveur qui prenais plusieurs adresses local inutilement créant des conflit d’adresse IP
- Essaie de configuration et mise en place de l’envoie de mail sur le serveur et sur Redmine avec sendmail
- Mise en place et configuration de l’envoie de mail sur le serveur et Redmine avec Postfix
- Mise en place de l’envoie de mail par le serveur au niveau de son état matériel
- Création d’un compte framagit, configuration du Git sur le pc, utilisation du Git en ligne de commande pour cloner, commit, add,…
- Installation de Hugo et go
- Différentes documentations pour les différents tickets et projets
- Petite formation Git en ligne de commande sur Windows
- J’ai appris beaucoup de choses diverses

Fichiers annexes : documentation, script, etc

Serveur :
conf mail
La conf mail a été effectuée avec postfix. Pour configurer les mails dans le redmine, il faut configurer le fichier configuration.yml
Réparation du backupninja
Il nous a suffit de recréer un dossier sur le NAS puis de changer l'URL FTP dans le fichier /etc/backup.d/20-files.dup .
Pour mettre en place l'envoie de mail à propos des backups, il fallait remplir la bonne option dans le fichier /etc/backupninja.conf
Mise en place de Let's encrypt
J'ai utilisé ces tutos: https://www.youtube.com/watch?v=M4hYE4c6axw et https://facemweb.com/creation-site-internet/lets-encrypt-vps
Le certificat est bon jusqu'au 30/04/2019.
Il faut juste creer un cron pour faire en sorte qu'il se nouvelle automatiquement tous les 90 jours maximum.
Il faut cronner /letsencrypt/letsencrypt-auto renew >> /var/log/le-renew.log.

Redmine

Fichiers vérifiés :
-log d'apache2
-log de passenger
-log de postgresql
-log de redmine
Erreur trouvée dans /opt/redmine/redmine-3.4.4/log/production.log :
Extrait du log :
"ActionView::Template::Error (undefined method `default_assigned_to_id' for #<Project:0x007f7eaa9cb3c0>
Did you mean? default_assigned_to
default_assigned_to=):
25: <% end >
26:
27: < if @project.safe_attribute?('default_assigned_to_id') && (default_assigned_to_options = project_default_assigned_to_options(@project)).present? >
28: <p><%= f.select :default_assigned_to_id, default_assigned_to_options, include_blank: true ></p>
29: < end %>
30:
31: <
= wikitoolbar_for 'project_description' %>
lib/redmine/views/labelled_form_builder.rb:38:in `select'
app/views/projects/_form.html.erb:28:in `_app_views_projects__form_html_erb__1456724794680090473_70091001208420'
app/views/projects/_edit.html.erb:2:in `block in app_views_projects_edit_html_erb___1932716828470879571_70091001157160'
app/helpers/application_helper.rb:1190:in `labelled_form_for'
app/views/projects/_edit.html.erb:1:in `_app_views_projects__edit_html_erb___1932716828470879571_70091001157160'
app/views/common/_tabs.html.erb:17:in `block in app_views_common_tabs_html_erb__545017773655651300_70091000829920'
app/views/common/_tabs.html.erb:16:in `each'
app/views/common/_tabs.html.erb:16:in `_app_views_common__tabs_html_erb__545017773655651300_70091000829920'
app/helpers/application_helper.rb:345:in `render_tabs'
app/views/projects/settings.html.erb:3:in `_app_views_projects_settings_html_erb__337254140957580447_70091000751500'
lib/redmine/sudo_mode.rb:63:in `sudo_mode'
Problème venant sûrement de la migration de la base de donnée étant donné que la colonne "default_assigned_to_id" était absente dans les versions précédentes de redmine 3.4.4
Essai de la commande : bundle exec rake db:migrate RAILS_ENV=production
La commande produit l'erreur : Could not locate Gemfile or .bundle/directory
Résolu !
En se mettant sur le dossier : /opt/redmine/redmine-3.4.4
J'ai mis la commande : rake db:migrate RAILS_ENV=production
Donc l'onglet Configuration refonctionne.

API réseaux sociaux
Présentation
Cet API est un script écrit en Python. Il sert à publier sur twitter, facebook, mastodon et instagram en même temps, facilement, à l'heure et la date souhaitée, avec ou sans photo(uniquement pour facebook, mastodon et twitter).
Mise en place de l'API sur un pc
- installer les librairies necessaires grâce aux commandes suivantes dans un terminal:
sudo pip install python-twitter
sudo pip install InstagramApi
sudo pip install Mastodon.py
sudo pip install selenium
- si pip n'est pas reconnu, installez le avec cette commande dans un terminal après avoir vérifié la version de python:
python --version
sudo apt install python-pip (pour python 2.*)
sudo apt install python3-pip (pour python 3.*)
Modification du script
Si vous changez le mot de passe de Facebook, Instagram, ou LinkedIn
Ouvrir le fichier config.py, qui se trouve dans le dossier API_reseau_social, avec un éditeur de texte(clique droit/ouvrir avec un éditeur de texte) et remplacer le mot de passe par le nouveau dans la variable correspondante(exemple: mdp_facebook="machin") en n'oubliant pas de laisser les " ".
Pour toutes modifications d'emplacement
Ne pas oublier si vous changez de pc de verifier les chemins du geckodriver, des fichiers etc dans le script et de les modifier si necessaire
Fonctionnement du script de l'API
Comment se servir de l'API
Suivre le tuto et l'exemple de mise en page dans l'onglet Fichiers du Redmine
Mettre un lien dans une publication
Pour mettre un lien dans une publication, il est préférable d'utiliser un réducteur d'url. Vous pouvez utiliser ce site: https://bitly.com/