mardi 22 novembre 2022

WSL - Comment accéder à mes fichiers Linux sous Windows

 J'ai installé WSL (Windows Subsystem for Linux) et j'ai choisi la distribution Linux Ubuntu pour y accéder à travers WSL mais alors où est installé cette distribution Linux et comment y accéder ?

WSL devient une fonctionnalité très intéressante de Windows utiliser Linux depuis Windows :

Mounter* un partage spécial depuis l'explorateur de Microsoft, tapez dans la barre :

\\wsl$\

Si vous ne voyez ce répertoire "mounter" dans les périphériques réseaux vous devez lancer une console PowerShell et taper :

P>wsl

*mounter : faire monter un lecteur externe

Ce qui aura pour effet de démarrer la distribution Linux correspondante :

Comment accéder aux fichiers Linux à partir de Windows

Et vous pourrez voir la distribution Ubuntu associée à WSL "mountée" dans la partie Réseau de Microsoft Windows.

Pour accéder aux fichiers de la distribution Linux depuis PowerShell :

PS>  cd \\wsl$\Ubuntu-20.04

Et voilà la liste des répertoires Linux :

Accéder à la distribution Ubuntu de WSL depuis PowerShell
Accéder à la distribution Ubuntu de WSL depuis PowerShell

Nous avons maintenant les moyens de travailler correctement dans WSL en produisant des fichiers avec Linux et en les récupérant avec Windows ou inversement.

That's all folks!

lundi 14 novembre 2022

WSL - Windows Subsystem for Linux - Comment passer à WSL 2 ?

C'est quoi WSL (Windows Subsystem for Linux), je viens d'installer l'extension dans VSCode mais j'ai besoin de clarifier le terme Windows Subsystem for Linux car j'ai installé cette extension dans mon VSCode uniquement pour faire tourner du soft BLE-SERIAL mais à part cela ... J'ai besoin d'aller plus loin avec WSL, suivez-moi.

Pour l'instant WSL c'est une toute petit icône verte (><) en bas à gauche de la barre d'état de mon VSCode pour avoir cela j'ai installé l'extension WSL dans VSCode.

Comparing WSL1 and WSL 2

Je peux constater que WSL 2 est sans doute beaucoup mieux pour ce que j'ai à faire : "Docker Desktop's WSL back-end" and "use Dev Containers".

Mais commençons par-là :

WSL Getting Started Tutorial

Vérifier la fonctionnalité de Windows pour WSL

Pour aller vérifier que la case Sous-système Windows pour Linux est cochée c'est dans :

Panneau de configuration > Programmes et fonctionnalités > Activer ou désactiver des fonctionnalités Windows 

Cocher la case Sous-système Windows pour Linux
Cocher la case Sous-système Windows pour Linux

On vérifie que WSL est opérationnel dans une command-dos ou PowerShell : 

>wsl

Là, je me connecte à la distrib Ubuntu installée.

WSL dans VSCODE 

Dans VSCode, je clique sur l'icône verte en bas à gauche :

La popup d'information me recommande vivement d'effectuer la mise à niveau vers WSL 2 pour améliorer les performances.

Je dois maintenant passer de WSL 1 à WSL 2 ...

Mettre à niveau la version de WSL 1 à WSL 2

Pour connaitre ma version actuelle de WSL, je lance la commande :

PS>wsl -l -v

Pour tenter une mise à jour vers la version 2, voici la commande :

PS >wsl --set-version Ubuntu-20.04 2

Et ça commence, j'en étais sûr mon petit doigt me disait que ce ne serait pas sans douleur :

WSL 2 nécessite une mise à jour de son noyau
WSL 2 nécessite une mise à jour de son noyau

PS C:\Windows\system32> wsl --set-version Ubuntu-20.04 2
La conversion est en cours. Cette opération peut prendre quelques minutes...
Pour plus d’informations sur les différences de clés avec WSL 2, visitez https://aka.ms/wsl2
WSL 2 nécessite une mise à jour de son composant noyau. Pour plus d’informations, visitez https://aka.ms/wsl2kernel

Je vais passer par là :

Etape 4 : télécherger le package de mise à jour du noyau Linux

Je télécharge wsl_update_x64.msi :

wsl_update_x64.msi

Je relance la commande de mis à jour vers WSL 2 :

PS >wsl --set-version Ubuntu-20.04 2

PS C:\Users\Mabyre> wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-20.04    Stopped         1
PS C:\Users\Mabyre> wsl --set-version Ubuntu-20.04 2
La conversion est en cours. Cette opération peut prendre quelques minutes...
Pour plus d’informations sur les différences de clés avec WSL 2, visitez https://aka.ms/wsl2
Activez la fonctionnalité Windows de plateforme de machine virtuelle et assurez-vous que la virtualisation est activée dans le BIOS. Pour plus d’informations, rendez-vous sur https://aka.ms/wsl2-install

Pffff... Et pourtant la virtualisation est activée dans mon BIOS. En fait j'ai sauté une étape.

Je regarde alors Ici :

Étapes 3 - d’installation manuelle pour les versions antérieures de WSL | Microsoft Learn

Du coup, j'exécute la commande suivante :

PS>dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

Résultat : Ok

Je restart quand même ...

Et je relance la commande pour passer en WSL 2 :

PS >wsl --set-version Ubuntu-20.04 2

Comment passer de WSL1 à WSL 2
Comment passer de WSL1 à WSL 2
Cette fois ça y est !

PS C:\Windows\system32> wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-20.04    Stopped         2

Ah ben ce n'est pas trop tôt, je commençais à désespérer d'autant que mes incursions de le BIOS de la machine (F2 puis bouton allumage) n'étaient pas fructueuses pour activer la virtualisation sur un AMD Ryzen 5 ... (pas d'option pour activer la virtualisation).

Voilà vous venez de voir comment passer de WLS1 à WSL 2.

Je vais pouvoir passer à la découverte de tout ce que l'on peut faire avec WSL 2...

Have fun!

vendredi 4 novembre 2022

Quel est le meilleur logiciels de contrôle à distance gratuit ?

Prenez le contrôle d'un ordinateur à distance pour utiliser les logiciels installés, pour faire de la maintenance, pour dépanner un proche ou un collègue quel logiciel choisir ?

Je tiens à fustiger ici TeamViewer qui m'a fait perdre mon temps et MS Remote Desktop qui ne fonctionne pas sur l'édition familiale de Windows !

TeamViewer est tout sauf gratuit
TeamViewer est gratuit ? C'est faux !

TeamViewer est un scandale, quand ils se disent gratuit pour un usage personnel, c'est faux. Vous allez perdre votre temps, ce logiciel ne fonctionne pas gratuitement le côté gratuit est là pour vous attraper et vous faire payer une licence allant de 29,90 € / mois à 129,90 € / mois oui par mois, moi à ce prix là, je n'ai qu'une envie, trouver une autre solution.

Vous pensez installer TeamViewer pour l'essayer gratuitement mais TeamViewer ne vous laissera pas faire, il vous coupera la connexion toutes les minutes ! Oui, toutes les minutes c'est inutilisable ! En plus avec un système stupide de blocage ou il vous oblige à attendre.

A 29,90 € / mois au bout de deux ans vous pouvez vous racheter un ordinateur neuf, inutile dans ce cas de la dépanner ;-)

Le meilleur article sur le sujet des logiciel de contrôle à distance :

clubic - Quels sont les meilleurs logiciels de contrôle à distance ? Notre comparatif 2022

Lisez surtout les commentaires à la fin où ils fustigent TeamViewer qui se retrouve à terre. Je ne suis pas le seul à penser que parler de gratuit pour TeamViewer est un mensonge commercial, une tromperie de la clientèle, sans parler leurs problèmes de sécurité.

Et je note particulièrement le commentaire de Jc, il y a 7 mois sur : DWService open-source

DWService - Remote Control

Il faut nécessairement s'inscrire mais je sens que c'est ce que je vais faire pour m'éloigner définitivement de TeamViewer qui a trop de succès et sans doute trop d'argent.

DWService - Remote Control - Web admin
DWService - Remote Control - Web admin

DWService fonctionne parfaitement, attention de lire les vidéos pour découvrir le fonctionnement l'installation et l'utilisation de DWAgent sur l'ordinateur que vous souhaitez contrôler.

D'une part vous avez une Interface Web d'administration de vos poste à distance, vous créez des agent ce qui vous donne un numéro identification unique que vous utiliser dans l'agent installé sur la machine dont vous souhaitez prendre le contrôle.

Alors pour moi cela ne va pas fonctionner car je cherche à utiliser le PC sous contrôle en développement pour cela il y a trop de latence dans la communication avec l'ordinateur sous contrôle ce qui fait que vous cliquez et que vous devez attendre pour voir le résultat mais pour dépanner ou contrôler à distance cela convient parfaitement.

That's all folks!


mercredi 19 octobre 2022

GitHub - Comment décorer votre page d'accueil ?

GitHub est l'environnement de développement des codes sources le plus important dans le monde. Il est probable que si vous êtes sur cette page vous avez déjà un compte GitHub et sinon c'est que vous n'êtes pas développeur. 

GitHub GitLab se tirent la bourre depuis le début mais je pense que GitHub est plus utilisé par les communautés de développeurs car il permet notamment de publier les logiciels Open Sources.

Les fonctionnalités de GitHub évoluent sans cesse à tel point qu'il est difficile de suivre.

Je viens de découvrir comment personnaliser ma page d'accueil de mon compte GitHub en regardant ce que d'autres avaient fait, alors je vous livre le trick.

Sur votre profile GitHub, dans la liste de vos Repositories il vous suffit de choisir New pour créer un nouveau repository auquel vous donnez votre nom github :

Personnaliser votre page d'accueil dans GitHub

Il vous suffit alors de créer un fameux fichier README.md dans ce repo pour qu'il apparaisse en lieu et place de votre page d'accueil.

Follow me on Github ...

That's all Folks!

lundi 29 août 2022

MediaWiki - Extension VisualEditor - Error contacting the Parsoid/RESTBase server

Je suis surpris par une application comme MediaWiki, je pensais installer un outils de blogging multiusers multiroles collaboratif plus facile à installer, plus facile à gérer et puis ... Ce n'est pas le cas. 

Après l'installation sur mon Serveur Windows :

Applications Collaboratives: MediaWiki - install sur serveur Windows (sodevlog.com)

Et la configuration où l'on découvre que tout se passe dans le fichier LocalSettings.php ce qui n'est pas pratique quand on a un accès restreint à l'espace serveur. Ce n'est pas mon cas car j'administre le serveur mais je trouve plus pratique des outils collaboratifs où l'on peut presque tout configurer depuis l'interface d'administration.

Avec MediaWiki, il faut sans cesse revenir au fichier LocalSettings.php pour le modifier, je pourrais donner un accès en modification depuis l'extérieur mais ce serait une faille de sécurité.

Voici la suite de mon fichier LocalSettings.php après quelques configurations nécessaires de MediaWiki :

##########################################
# End of automatically generated settings.
##########################################
# Add more configuration options below.

# Enable extension pour créer un nouvel article en cliquant sur un bouton

wfLoadExtension( 'InputBox' );

# Extension:VisualEditor dans C:\inetpub\wwwroot\wiki\extensions\VisualEditor

wfLoadExtension( 'VisualEditor' );

$wgSMTP = [
    'host'     => 'smtp.monserveur.com', // peut également être une adresse IP. Celle du serveur SMTP. Si vous utilisez SSL ou TLS, ajoutez le préfixe "ssl://" ou "tls://".
    'IDHost'   => 'monserveur.com',      // Généralement, ce sera le nom de domaine de votre site web (par exemple mywiki.org)
    'port'     => 25,                // Port à utiliser lors de la connexion au serveur SMTP
    'auth'     => true,               // Faut-il utiliser l'authentification SMTP (true ou false)
    'username' => 'admin@monserveur.com',     // Nom d'utilisateur à utiliser pour l'authentification SMTP (si utilisée)
    'password' => 'xDfgZe2x#x#'       // Mot de passe à utiliser pour l'authentification SMTP (si utilisée)

];

# Exiger une confirmation d'email après la création d'un compte

$wgEmailConfirmToEdit = true;

Comment utiliser MediaWiki après son installation, c'est incompréhensible pas du tout userfreindly, avant de pouvoir créer le moindre article, il faut installer une extension puis faire un incère :

<inputbox>
type=create
width=100
break=no
buttonlabel=Create new article
default=(Article title)
</inputbox>

Dans le Wikicode d'une page (html/php) rien de moins.

Et puis, je tombe sur un OS, l'utilisation de l'extension VisualEditor qui ceci dit est présente dans l'installation de MédiaWiki, il suffit d'ajouter la ligne dans le fichier LocalSettings. mais cela ne fonctionne pas !

J'ai bien le nouvel onglet dans la barre de modification d'un article :

MediaWiki utilisation de l'extension VisualEditor

Voici ce que je devrais être capable de faire avec VisualEditor :

https://www.mediawiki.org/wiki/Help:VisualEditor/User_guide

Mais quand je clique, BOUM !!!

MediaWiki utilisation de l'extension VisualEditor une grosse Galère !

Message d'erreur bien pourri ! Je crois que alors que le certificats SSL de mon serveur n'est pas bon.

Visual Editor : Error contacting the Parsoid/RESTBase server: (curl error: 60) SSL peer certificate or SSH remote key was not OK

Je fais mes recherches sur Internet :

IIS create SSL peer certificate
IIS create SSH remote key
IIS install CSR and Private Key

Je trouve :

https://www.mediawiki.org/wiki/Topic:Wqhuvo6wteex94eb

Mais rien n'y fait ! Toujours ce message pourri. Dans le message d'erreur en rouge le mot clef finalement, c'est Parsoid mais comme je ne sais pas ce que c'est ...

https://www.mediawiki.org/wiki/Parsoid/JS/Setup

Et pour revenir à l'utilisation de l'extension VisualEditor :

https://www.mediawiki.org/wiki/Extension:VisualEditor

Il faut bien lire la page jusqu'au bout ... et blablabla et blablabla non vraiment MediaWiki n'est pas userfriendly.

Je vous laisse avec ce problème de Daube, si vous désirez la solution ou si vous l'avez, contactez moi dans le formulaire de contact ;-))

Et sinon, si vous êtes intéressé par l'installation de MédiaWiki sur un serveur Windows, vous pouvez toujours lire :

Applications Collaboratives - MediaWiki - install sur serveur Windows

MediaWiki - Téléversement de fichiers - Error !

Encore une erreur MediaWiki installé sur un serveur Windows, cette fois c'est le téléversement des fichiers qui ne fonctionne pas. C'était attendu, c'est un problème récurent derrière IIS, mais les choses se compliquent avec MediaWiki qui se sert d'Apache.

Impossible de stocker le téléversement dans la réserve (UploadStashFileException)

Voici ce message d'erreur :

Impossible de stocker le téléversement dans la réserve (UploadStashFileException) : "Impossible de créer le répertoire "mwstore//local-backend/local-temp/9/95".".

Arrrgggg !!!

https://www.mediawiki.org/wiki/Manual:Configuring_file_uploads/fr

Vérification pour les utilisateurs de Windows et IIS

Paramétrez %SystemRoot%\TEMP pour donner au compte d'invité internet (IUSR_MachineName, ou IUSR pour IIS 7+) les droits de : lecture, écriture et exécution;

Rien n'y fait.

Alors ce matin, je reprends mes travaux avec dans l'idée de recommencer la configuration de MediaWiki (de daube) et je tombe sur l'écran suivant :

LocalSettings.php - MediaWiki

Avec la configuration : "Activer le téléversement des fichiers", je pense que cela va maintenant fonctionner mais devinez quoi !?

Cela ne fonctionne pas ! Mais j'ai une nouvelle page spéciale "Téléverser un fichier" avec laquelle je cherche à téléverser un fichier :

MediaWiki - Page Spéciale - Téléverser un fichier
MediaWiki - Page Spéciale - Téléverser un fichier

Bon cette fois, on a plus d'infos avec un lien vers de l'aide, il s'agit de configurer $wgUploadDirectory dans LocalSettings.php et puis, je ne sais pas pourquoi j'avais déjà donné full-control à IIS_IUSRS, j'ai ajouté "full-control" à ... 

Pour avoir la solution faites votre demande dans un message poli en commentaires de ce post et indiquez un email valide si vous souhaitez recevoir la solution ;-)

Et cela a fonctionné ... 

Fichiers créés par le Téléversement de fichiers avec MediaWiki
Fichiers créés par le Téléversement de fichiers avec MediaWiki

1 - On peut voir l'ensemble des répertoires créés par le Téléversement de fichiers avec MediaWiki

Je ne vous raconte pas les déblatérations que j'ai pu lire sur les forums, ou même dans la documentation MediaWiki concernant cette erreur rien de ce que j'ai lu n'aura réellement corrigé ce problème.

Have fun!

Applications Collaboratives - MediaWiki - install sur serveur Windows

lundi 18 juillet 2022

C'est quoi YunoHost ?

Mon collaborateur me parle d'un outil formidable qu'il a installé pour me permettre de venir sur son serveur d'hébergement jouer avec ses applications, il y a installé YunoHost. Alors à quoi sert ce logiciel qui transforme n'importe qu'elle machine en serveur d'applications ?

J'accède au serveur d'hébergement d'applications de mon collaborateur préféré et me voici avec une sorte de bureau (desktop) et un gros bouton pour chacune des applications qui sont hébergées sur son serveur :

YunoHost - Installé sur un serveur dédié à l'hébergement d'applications

En 1 - Le bouton "YunoHost" qui se retrouve sur toutes les pages de navigation et qui permet de revenir au bureau, une fois que l'on a navigué dans une des applications proposées sur ce serveur d'hébergement.

En 2 - Les boutons de navigations dans les applications installées sur ce serveur, "Dolibarr" par exemple me permet d'accéder à l'application installée.

En bas, une ligne avec des liens dont Documentation alors il est tant de lire un peu de documentation sur le site de YunoHost.

YunoHost, comme son nom l'indique un peu, permet l'auto-hébergement, c'est à dire que vous transformé votre ordinateur en serveur d'applications. Ainsi vous n'êtes plus soumis au cloud proposé par les différents hébergeurs.

YunoHost met à votre disposition des fonctionnalités de sauvegarde pour vos données importantes et vos configurations. YunoHost vous permet d'installer en un clique toutes les applications pacagées par YunoHost.

Retrouvez YunoHost sur GitHub.

Nous avons maintenant les éléments essentiels et les liens utiles pour utiliser YunoHost comme vous le souhaitez. Je tiens à préciser que de nombreux concepts intéressants sont présentés sur le site de YunoHost. 

Deux choses encore, YunoHost peut s'installer sur une toutes petites cartes processeur ou bien sur un vielle ordi et deuxième chose YunoHost est inapproprié pour un usage mutualisé.

Have fun!

mercredi 22 juin 2022

Quel est le meilleur outil pour faire du Mark Down

Un fichier Mark Down avec une extension ".md" est un fichier texte qui permet d'afficher quelque styles et quelques mise en forme de texte simple textuel. Un fichier markdown vous permet de mettre en forme du texte, sans pour autant pénaliser sa lecture par un humain.

C'est le format de documentation à la mode en ce moment, il a été mis en lumière par GitHub qui l'a adopté pour afficher la première page de documentation de votre projet.

Avoir un fichier mark down à la racine de votre repository, c'est l'assurance d'une documentation facile à lire, facile à maintenir, la syntaxe Mark Down étant simple et ne prenant que quelques caractères.

Voici un outil simple d'un côté le texte en markdown de l'autre le texte mis en forme, voici MarkdownPad :

MarkdownPad pour éditer vos fichiers MD

Ce n'est que pour la plateforme Windows car on vous propose d'installer Microsoft .NET 4 Client Profile pour faire fonctionner cette application.

MarkdownPad - pour éditer vos fichiers Markdown

Pour la syntaxe Markdown j'ai trouvé ce site :

Markdown Guide - Basic Syntax

Pour en découvrir un peu plus sur les fichiers mark down :

Outils de Développement Logiciel - GitHub - C'est quoi les fichiers .md (point md) ? Markdown ?

Vous connaissez d'autres outils plus agréables à utiliser, n'hésitez pas à faire votre commentaire.

Have fun!

mardi 14 juin 2022

Le no-code est-il une bonne idée ?

Je tombe de plus en plus sur ce terme de no-code alors je me doute qu'il s'agit de ne pas coder mais voyons un peu ce que cela implique. Croyez-vous que cela soit une bonne idée le no-code ?

Alors comment créer sans passer des heures à coder, c'est le marketing du no-code. Le no-code est-il vraiment une bonne idée.

Digidop - 10 meilleures plateformes de création de site web nocode

Posons les bases, le code à quoi sert-il ? Et quand avons nous besoin d'écrire du code ou de développer ?

Le code est un langage intermédiaire entre le processeur et le codeur. Le codeur ou développeur écrit du code qui sera compilé ou interprété pour être exécuté par le processeur. En effet c'est un peu abstrait, c'est l'informatique.

Alors depuis que je fais de l'informatique j'entends parler d'atelier de génie logiciel et c'est bien à ça que me fait penser ce concept de no-code. Vous n'écrivez pas de code mais vous utilisez un atelier souvent graphique pour faire des schémas, des dessins qui sont en suite traduit en code ou compilé, on y revient.

Car on revient toujours, finalement au code, le no-code c'est utiliser un outil graphique intermédiaire pour générer du code car le code c'est le SEUL langage que comprend la machine.

Pour la création de site web ... C'est sûr que pour organiser des pages web par exemple positionner des images sur la page, un outil graphique c'est plus sympathique à utiliser que les balises html. Mais au bout d'un moment celui qui utilise les balises html sera très rapide également.

La puissance du no-code

Dans le cadre d'outil no-code qui permette de glisser déposer (drag and drop) des fonctionnalités pour par exemple les ordonnancer sur un graphique, on est dans l'efficacité du no-code qui permet de générer très vite de grosses fonctionnalités très puissantes.

Quel est l'inconvénient majeur du no-code ?

Il faut que votre outil graphique, celui qui vous permet de décrire graphiquement de que vous souhaitez créer, soit "assez fin" ... Que tout soit prévu pour aller dans la finesse de ce que vous souhaitez créer. Sinon quoi ... et bien sinon, vous allez devoir entrer dans la tripaille de votre outil graphique et comprendre pourquoi il ne génère pas ce que vous souhaitez.

Double inconvénient, vous avez appris à maîtriser votre outil no-code et vous devez maintenant apprendre le code qu'il génère il n'est alors plus du tout question de no-code.

Les idioties classiques sur le no-code

Sur le JDN pourtant sérieux, je lis : "Il permet d'abord aux équipes business de créer elles-mêmes leurs applications sans avoir à recourir à des développeurs."

Là on est dans la caricature, si l'équipe business peut développer le produit alors pourquoi pas le client final qui n'a alors plus besoin de vous, c'est le coup de la balle dans le pied.

"Promesse d'une programmation sans saisir une ligne de code grâce à des outils graphiques gommant la complexité des langages de programmation."

C'est complètement idiot, vous programmez sans programmer ... ce n'est pas le langage la complexité, il permet au contraire d'appréhender la complexité de l'application.

Les langages de programmation modernes, ne sont pas complexes et se lisent très bien. Si vous avez des difficultés à programmer, vous aurez des difficultés à dessiner. Le dessin va plus vite mais toutes les questions de fonctionnement de votre produit restes les mêmes à formuler différemment.

"Nul besoin d'être développeur pour les utiliser. Il sera néanmoins nécessaire de disposer de compétences basiques en navigation, en ergonomie et en graphisme."

Ben alors si vous avez toutes ces compétences, vous pouvez certainement vous passer des outils no-code.

Quels sont les outils du no-code

L'outil que je vois revenir le plus souvent c'est Airtable :

"Ses fonctionnalités no-code permettent aux professionnels sans connaissances techniques d'exploiter la puissance des bases de données relationnelles pour optimiser les workflows."

Pour raisons marketing, dans cette phrase, on mélange plusieurs concepts incompatibles : Professionnels et sans connaissances techniques

Bon courage pour écrire ou dessiner quoi que ce soit dans les SBDR sans connaissances techniques ?! Vous trouverez pléthore d'arguments marketing sur le site de Airtable en faveur du no-code. 

Vous souhaitez manipuler des données dans les SGBDR de façon graphique, je vous propose Talend.

D'ailleurs la tendance du no-code est bien dans les bases de données, il est vrai que rendre graphique le SQL c'est une bonne idée.

Je compléterai avec d'autres outils du no-code.

Conclusion

Le no-code est une mode marketing afin de promouvoir certains outils soit disant plus "facile" pour l'utilisateur. Mais en matière de programmation, la panacée n'a jamais existé.

Il faut utiliser l'outil avec lequel vous êtes le plus efficace et garder de l'agilité dans votre esprit pour toujours évoluer vers de nouvelles solutions et ne pas hésiter à changer d'outil.

jeudi 14 avril 2022

C'est quoi un Runbook AzureAutomationTutorialScript ?

Je cherche le moyen de stopper et de relancer, d'éteindre ou d'allumer une machine virtuelle dans l'azure de façon automatique. 

Dans mon portail Azure j'ai un truc qui s'appelle AzureAutomationTutorialScript (MonCompteAutomation/AzureAutomationTutorialScript) c'est un peu barbare mais ça pourrait bien être le moyen de faire ce que je souhaite faire, éteindre ma machine pendant que suis off car cela me coûte de l'argent.

Question plus simple, c'est quoi un Runbook, je connais le hook une sorte de hack pour venir exécuter du code dans un driver microsoft mais le Runbook c'est quoi ?

C'est le moyen d'exécuter un script écrit graphiquement avec du workflow ou du PowerShell ou du Python.

En suite, on exécute ce Runbook dans l'Azure Automation.

Voici un exemple de workflow :

Exécution d'un Runbook dans l'Azure Automation
Exécution d'un Runbook dans l'Azure Automation

Cela me parait bien compliqué, je retourne dans mon Tableau de bord Azure pour cliquer sur MonCompteAutomation et je vois si je ne peux pas directement créer un Runbook avec PowerShell.

Azure créer un Runbook pour démarrer une machine virtuelle
Azure créer un Runbook pour démarrer une machine virtuelle

Je clique sur Runbooks.

Azure créer un Runbook pour démarrer une machine virtuelle
Azure créer un Runbook pour démarrer une machine virtuelle

Dans mon Runbook, je peux créer un Runbook, je choisie PowerShell

Azure créer un Runbook pour démarrer une machine virtuelle
Azure créer un Runbook pour démarrer une machine virtuelle

Tout en bas de la page je peux Créer mon Runbook. En revenant sur le tableau de bord il apparaît dans la liste avec la Nom que je lui ai donné.

Azure créer un Runbook pour démarrer une machine virtuelle

Je peux voir la ligne de comamde PowerShell que j'ai insérer dans mon Runbook.

Azure créer un Runbook pour démarrer une machine virtuelle
Azure créer un Runbook pour démarrer une machine virtuelle

Ligne de commande PowerShell que j'ai trouvée sur le site :

Akril - Visualiser, démarrer et éteindre des machines virtuelles sur Windows Azure
C'est intéressant cette notion d'éteindre une machine pour faire des économies dans l'Azure car c'est comme cela que ça fonctionne et c'est pour cette raison que je cherche à le faire.

La commande à exécuter est :

>Start-AzureVM -ServiceName "SODEVLOG-003" -Name "SODEVLOG-003"

Que croyez-vous qu'il arriva ? Hé oui vous avez deviné, cela ne fonctionne pas dans un Runbook de l'Azure !

Ce qui est important à ce stade, c'est de pouvoir déboguer ce qui ne va pas, pourquoi ça plante. Pour ça je clique sur Volet de test.

Tester un Runbook dans l'Azure
Tester un Runbook dans l'Azure

A priori c'est la syntaxe de la commande !? J'essaye alors :

>Start-VM -ServiceName "SODEVLOG-003" -Name "SODEVLOG-003"

Mais cette fois ce sera une autre erreur ... 

Tester un Runbook dans l'Azure

Il est question de : run 'Import-Module Hyper-V'. Je vous laisse corriger les Runbooks.

Démarrer et stopper automatiquement une VM dans l'Azure

Nous venons de voir comment créer et déboguer un Runbook "un script automatisé" dans l'Azure. L'important c'est d'avoir trouvé les moyen de le tester le Runbook, sinon on est aveugle et l'on ne peut pas corriger le script.

N'hésitez pas à commenter et souvenez-vous, ce n'est que du soft !

Par la suite je vais trouvé la documentation MS suivante :

Microsoft - Vue d’ensemble de Start/Stop VMs during off-hours

On y parle bien de Runbook mais attention ça pique les yeux ...

En continuant de cherche je trouve :

Microsoft - Configurer Start/Stop VMs during off-hours

C'est peu-être plus vers cela qu'il faut s'orienter pour stopper et démarrer des machines dans l'Azure, je suis surpris par la complexité de tout ça.

lundi 11 avril 2022

Comment installer WordPress sur un serveur Windows

Il semble que WordPress a gagné de nombreuses batailles fasse aux autres CMS, Magento, Drupal, Joomla, même si l'on peut voir les choses autrement ce WordPress m'intrigue et je souhaite en installer une exemplaire sur mon Serveur Windows.

Alors, il se dit que WordPess s'installe en cinq minutes et c'est ce que je vais vérifier. Je vais installer WordPress sur mon bon vieux Windows Server 2016 (Datacenter) du Cloud Azure.

Les prérequis

PHP, MySQL, Apache ... Sur mon Windows Server 2016 (Datacenter) ...

Bon moi, je vais essayer de passer  le Web Platform Installer que je trouve dans la Console de gestion d'IIS de mon Serveur Windows :

Web Platform Installer pour installer WordPress
Web Platform Installer pour installer WordPress

Ensuite, dans la liste de tous les produits que je peux installer grâce à la Web Plateform Installer de Windows je cherche : WordPress ...

Web Platform Installer pour installer WordPress

Evidemment, comme je pouvais m'y attendre avec un peu d'expérience c'est la catastrophe !

Web Platform Installer pour installer WordPress - La catastrophe

C'est quoi Microsoft Visual C++ Redistributable ?

phhsnews.com / Pourquoi y a-t-il tant de "redistribuables Microsoft Visual C ++" installés sur mon PC?

Il me manque tout un tas de choses mais remarquez une chose concernant Microsoft Visual C++ 2008 Redistributable Package le serveur retourne (404) Not Found.

(404) Not Found !

N'est-on pas dans le monde merveilleux de Microsoft, incompatible avec lui même ?!

Vous pouvez cliquer sur Get Help et vous tomberez en absurdie totale ... Il exist d'innombrables Visual C++ Redistributable Package 2012, 2013, 2015-2022, 2017 bref, l'enfer de Microsoft et de son incompatibilité avec lui-même !

Visual C++ Redistributable Package
Visual C++ Redistributable Package

Voilà où on en est dans l'univers de Microsoft et la Web Platforme Installer est abandonnée, vous ne pouvez plus installer facilement une application web, sur votre serveur. Il vous faudra vous taper toutes les étapes "à la main", PHP puis MySQL puis vérifier que tout fonctionne ensemble. 

Je tente un dernier truc, installer un package Visual C++ Redistributable (x64) :

Visual C++ Redistributable Package
Visual C++ Redistributable Package

Vous vous rendez compte sur mon serveur pour installer ce vieux soft tout pourris, je dois, redémarrer mon Serveur.

You must restart your computer !

C'est un peu fou de devoir redémarrer son serveur pour installer un vieux truc tout pourri ! Comme vous avez pu le voir Microsoft trimbale ce truc depuis des dizaines d'années. 

Soit disant pour la modularité du soft vous pouvez choisir de l'inclure dans votre déploiement ou utiliser celui déjà déployé sur la machine cliente, bla bla bla... combien de kilo octets ?

Installer WordPress sur un serveur Windows

C'est une catastrophe le Web Plateform Installer de Microsoft est abandonné est devenu incompatible avec à peu prêt tout. Il vous faudra donc vous taper toutes les étapes à la main.

Une petite dernière pour la route, je tente de cliquer sur le lien Direct download :

Installer WordPress sur un serveur Windows

Devinez ce qu'il arriva ?

Installer WordPress sur un serveur Windows
Installer WordPress sur un serveur Windows

Et oui vous avez deviné ...

La magnifique page de Github lorsque l'on y cherche quelque chose qui n'existe plus ! 

Github : 404 not Found !

C'est définitif ! Il est impossible d'installer rapidement WordPress sur un Serveur Windows à l'aide de la Web Plateform Installer.

Moi je vais me mettre à Linux, et n'oubliez pas ce n'est que du Soft.

PS : Je viens d'essayer cette procédure avec mon dernier PC tout neuf Windows 10, ça fonctionne ! Sauf que les redistributable package ne sont pas installé et quand je vais essayer de cliquer sur le lien directe ! 

Devinez ce qu'il arrive ? Et bien oui, vous avez gagné, la Web Plateform Installer crash et faire cracher le console IIS du même coup, sympathique non. Merci qui ?

Ne pas se décourager

Ne vous découragez pas, finalement l'installation à la main vous permet de maîtriser la configuration de votre installation brique par brique.

  • vous installez MySQL, je vous conseil MySQLWorkbench pour la partie admin, 
  • vous installez PHP, utilisez la WPInstaller pour installer PHP pour IIS
  • vous récupérez le zip de wordpress le décompressez dans C:\inetpub\wwwroot\wp

Et vous pouvez alors lire le fichier readme.html en français s'il vous plait :

Installation de WordPress sur Windows Server 

Où vous pouvez lire les véritables informations d'installation de WordPress avec cette pointe d'humour :

Installation : la fameuse installation en 5 minutes

Voilà, l'humour est la caractéristique d'un esprit brillant et il ne manque pas d'humour -- Matt Mullenweg. 

Finalement, j'aurais perdu moins de temps en commençant par télécharger les sources et lire directement la procédure. On ne m'y reprendra plus ...

La solution pour installer WordPress sous Windows avec IIS

Voici une procédure très complète de l'installation de WordPress sous Windows :

LongWatch studio - wordpress sous windows 10 IIS
A la main, la procédure détaillée comme il faut pour finalement arriver à installer votre WordPress sur votre serveur Windows. Vous pourrez ainsi constater que cela ne prend pas 5 minutes comme annoncé.

La prochaine fois, on va plus loin en scriptant le tout dans PowerShell pour faire du DevOps ;-)

Une fois que j'ai eu fait tout cela, je suis tout content de pouvoir écrire mon premier article dans mon WordPress et pouf ! 

La mise à jour échouée. message d’erreur : la réponse n’est pas une réponse JSON valide.

Spéciale dédicace pour Thibaut Soufflet qui a trouvé la bonne solution pour moi c'était : Agir sur les Permaliens.


Après il a fallut que je configure un serveur ftp pour les mise à jour des extensions et autre petit problème d'administration Windows et mise à jour de WordPress. Mais l'histoire a pu démarrer avec mon premier WordPress.

mardi 22 février 2022

Logiciel de réinitialisation des mots de passe Active Directory

Il faut favoriser le télétravail car c'est le moyen de gagner en confort de travail pour beaucoup d'entre nous. Là on est dans un problème typiquement non pensé pour le télétravail c'est la réinitialisation des mots de passe Active Directory et oui le logiciel vous impose de changer votre mot de passe tous les x jours et pour ce faire vous êtes obliger de vous rendre à votre bureau, c'est pas de chance.

On observe donc une augmentation de la charge de travail pour le Service d'Assistance !

Voici un logiciel en libre service qui permet aux utilisateurs finaux d'effectuer eux même les tâches courantes liées à la gestion des mots de passe.

Specops - Logciel de gestion des mots de passe avec Active Directory

Pensez au service d'assistance dont la charge a augmentée avec le télétravail. Pensez également à la sécurité avec la réinitialisation des mots de passe par téléphone ce qui n'est pas une pratique sécurisée.

mercredi 2 février 2022

VSCode (Visual Studio Code) L'hôte d'extension crash constamment

Ce matin dans mon VSCode sous Windows 7, plantage de Visual Studio Code ... il est stoppé sur une page blanche et Windows me demande de "Terminer" ou "d'attendre", dans ce cas je préfère attendre un peu, on ne sait jamais une mise à jour est peut-être en cours mais rien à faire, je suis obligé de "Terminer VSCode" !

Error : La fenêtre s'est bloquée (raison : "oom", code : "-536870904") !
Error : La fenêtre s'est bloquée (raison : "oom", code : "-536870904") !

Ce qui me surprend, c'est qu'au début, c'est un plantage grave, sans reprise possible, VSCode se met en mode plantage complet, page blanche. Puis je relance et je commence à avoir des messages plus explicites.

VSCode plantage sous Windows 7

Je vais regarder sur Internet, on me dit d'ajouter l'option :

--disable-gpu

Dans les propriétés de démarrage de VSCode. Ce n'est pas la solution et ce problème est très ancien.

VSCode plantage sous Windows 7

C'est le Terminal PlatformIO CLI qui fait crasher VSCode. Je pense plutôt que j'ai un problème de connexion à Internet ou/et de mise à jour d'une extension.

Sinon je lie une bonne chose à faire dans le cas de crash réguliers de Visual Studio Code :

Supprimer les fichiers temporaires de VSCode .user suo

Vous avez également des crashs fréquent de Visual Studio Code, vous avez trouvé une solution, n'hésitez pas à laisser votre commentaire.

Pour ma part, le plantage continuel de VSCode avec le message : La fenêtre s'est bloquée (raison : "oom", code : "-536870904") était du à l'utilisation des versions de l'extension PlatformIO.

Suite à de nombreuses expériences Arduino .platformio s'est vu installée avec plusieurs versions du package atmelavr :

toolchain-atmelavr@1.50400.190710

et

toolchain-atmelavr@1.70300.191015

Dans mon projet VSCode, il y était fait référence grâce au fichier Json : launch.json :

Plantage VSCode du à l'utilisation du versionning d'extension
Utilisation de toolchain-atmelavr@1.70300.191015 pour versionner un package

En supprimant ces versions et en installant la dernière préconisées -> plus de plantage ! rectification -> moins de plantage.

Mise à jour février 2022

Alors non, les plantages sont moins fréquents mais ont toujours lieu, environ deux à trois par jour c'est assez curieux voir flippant, la cause n'en est que plus difficile à trouver. 

C'est lié au Terminal "PlatformIO CLI". 

J'ai vu apparaître un petit bout de code dans le fichier .vscode/extensions.json :

    "unwantedRecommendations": [
        "ms-vscode.cpptools-extension-pack"
    ]

A mon humble avis, ce problème de crash de VSCode intempestif, n'est pas prêt d'être résolu.

Autre remarque : Le rappel des commandes par "flêche haut" et "flêche bas" qui fonctionnait d'un terminal à l'autre, bien pratique quand on est amené "à terminer" souvent un terminal, ne fonctionne plus ...

Sur un blog on me dit d'essayer : >pio update 

VSCode crashes avec PlatformIO extension
VSCode crashes avec PlatformIO - pio update

Mais tout est vert donc cela ne devrait pas résoudre mon problème mais pourtant depuis plus de plantages de VSCode, alors l'ensemble de ces mise à jour aura fini résoudre ce plantage ...