[PYTHON] Jusqu'à ce que vous livriez le code source à la branche publique d'AGL (Automotive Grade Linux)

Objectif

Ceci est un mémorandum jusqu'à ce que le code source soit engagé dans la branche publique d'AGL (Automotive Grade Linux).

Veuillez consulter le site Web suivant pour AGL.

automotivelinux.org

La dernière fois que j'ai lancé le binaire public d'AGL sur Raspberry Pi, Cette fois, j'ai essayé de valider le code source.

Lancement d'AGL UCB 8.0.0 annoncé le 22 août 2019 sur Raspberry Pi 3B +

Préparation

Le code source d'AGL est ouvert au public et n'importe qui peut devenir contributeur.

Contributor Guidelines Want to Contribute?

Tout d'abord, procédez comme suit, comme décrit dans le guide ci-dessus.

    1. Créez un compte pour linuxfoundation.org
  1. Rejoignez la liste de diffusion
    1. Créer un compte Gerrit

Prerequisites

  1. Create an account on identity.linuxfoundation.org to get started.
  2. Join the mailing list.
  3. Setup your Gerrit account, as described in the Gerrit Tutorial from mediawiki

Ensuite, récupérez le code source comme suit et lisez le contenu de différentes manières. Comme il est difficile d'ajouter des fonctions soudainement, nous vérifierons si nous pouvons contribuer en corrigeant les liens expirés ou en corrigeant les avertissements de construction.

Le moyen facile de commettre est également présenté ci-dessous.

Use-Regression-Testing-to-Make-AGL-Better Easy Way I: • Update outdated documents. Easy Way II: • Remove build error and warning. AGL-REGRESSION-TEST-TEMPLATE

Obtenir le code

Synchronisation du repo en référence à ce qui suit

Repo synchronise le code source

workflow-download-sw

J'ai pu obtenir le code source dans les 3 étapes suivantes. (* Sous réserve de modifications, veuillez vous référer au lien ci-dessus pour plus de détails)


1. Define Your Top-Level Directory
$ export AGL_TOP=$HOME/workspace_agl
$ mkdir -p $AGL_TOP

2. Download the repo Tool and Set Permissions
$ mkdir -p ~/bin
$ export PATH=~/bin:$PATH
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

3. Download the AGL Source Files: 
$ cd $AGL_TOP
$ repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
$ repo sync

Création de code pour commit

Puisqu'il est difficile d'ajouter des fonctions soudainement, nous allons vérifier si nous pouvons contribuer en corrigeant les liens expirés ou en corrigeant les avertissements de construction.

Par exemple, voici un exemple de correction d'un lien expiré. ~ 2. Il semble y avoir.

    1. Préparez un script pour vérifier les liens URL rompus.

Créer un script python pour vérifier si le lien à l'URL spécifiée est valide

  1. Obtenez la chaîne commençant par https à partir du fichier texte sur le code source comme indiqué ci-dessous Vérifiez si le lien est rompu. Vous pouvez trouver un lien cassé.
$ cd agl-halibut-8.0.1
$ grep -rn "https:" * > out.txt
$ cat out.txt | cut -d '=' -f 2 | cut -d ' ' -f 2 | cut -d '"' -f 2 | grep "https" | grep -v "meta" | grep -v "]" > out2.txt

Préparation au commit

Pendant la publication du code AGL Vous vous engagez dans CIAT, un système de notation d'intégration continue.

Ce qui suit est détaillé sur CIAT.

Building and testing an automotive platform How to Write Tests for the AGL HW Test Infra 20161210_8th session d'étude jenkins

スクリーンショット 2019-11-09 18.50.57.png

Gerrit Server est accessible à partir de l'URL suivante.

gerrit.automotivelinux.org Building AGL with the Yocto Project - A Crashcourse -

スクリーンショット 2019-11-09 19.01.35.png

Gerrit est un système de révision, et les commits sont finalement fusionnés avec l'approbation des membres experts. Il effectue également une évaluation automatique. Sur Gerrit, il est décrit comme suit.


CR   : Code review
V    : Verified
CIB  : ci-image-build	
CIBT : ci-image-boot-test

procédure de validation

Comme décrit dans Directives du contributeur, procédez à la validation du code de différence en vous référant à ce qui suit.

-Chapitre de Préparez-vous à pousser les changements dans Gerrit décrit dans Directives du contributeur -Chapitre des modifications Push pour révision de Gerrit décrit dans Directives du contributeur

Génération de clé SSH Voir Set_Up_SSH_Keys_in_Gerrit

Clé publique gerrit.automotivelinux.S'inscrire auprès de l'organisation
 SSH keys
 New SSH key
 add New SSH key
Configuration de la configuration SSH
 .ssh/Ajoutez ce qui suit à la configuration
   Host gerrit.automotivelinux.org
     User XXXMyNameXXX
Définissez le nom de git commit
 git config --global user.email "[email protected]"
 git config --global user.name "Your Name"
Engagez la différence
 mod
 git add (Fichier de modification)
 git commit --signoff
 > Please sign you commit before you submit the change (otherwise it will not be accepted by gerrit): git commit --signoff
 git review -s
 git review

Reportez-vous aux règles suivantes pour le format du message de validation (en bref, décrivez le contenu, le numéro JIRA)

Contributor Guidelines Push changes for review to Gerrit

スクリーンショット 2019-11-09 19.20.22.png

Vous avez approuvé la validation avec succès

Après avoir validé une simple correction de lien URL, Après avoir terminé avec succès l'examen, il est devenu un statut fusionné.

スクリーンショット 2019-11-09 19.15.56.png

Commit message

Il est important d'écrire un message de validation d'une manière facile à comprendre, ce qui est un moyen d'indiquer à l'autre partie les modifications apportées. Il est particulièrement important de communiquer vos intentions à quelqu'un avec qui vous n'avez jamais interagi à distance. How to Write a Git Commit Message

Impressions

Bien que le code AGL soit largement disponible, je pense que c'est formidable d'avoir un système en place pour examiner en profondeur la qualité. En outre, vous engager dans l'open source, et pas seulement dans le code AGL, vous aidera à élargir vos connaissances. Tout d'abord, je pense que nous devrions contribuer progressivement à partir des parties possibles.

Contre-mesures d'erreur

We don't know where your gerrit is. Please manually create a remote
gerrit public key, ssh config

To ssh://gerrit.automotivelinux.org:29418/AGL/meta-agl-devel
 ![remote rejected] HEAD -> refs/publish/master (commit dc81699: not Signed-off-by author/committer/uploader in message footer)
error: failed to push some refs to 

L'enregistrement de la clé publique est requis dans gerrit.automotivelinux.org.


Notez également que si vous ne déconnectez pas git commit, une erreur se produira lors de la révision de git.

git commit signed off

référence

automotivelinux.org Lancement d'AGL UCB 8.0.0 annoncé le 22 août 2019 avec Raspberry Pi 3B + Contributor Guidelines Want to Contribute? Use-Regression-Testing-to-Make-AGL-Better AGL-REGRESSION-TEST-TEMPLATE workflow-download-sw Créez un script python pour vérifier si le lien à l'URL spécifiée est valide Building and testing an automotive platform How to Write Tests for the AGL HW Test Infra 20161210_8th session d'étude jenkins gerrit.automotivelinux.org Building AGL with the Yocto Project - A Crashcourse -

L'expansion de tar.gz et tar.bz2 est OK avec tar xf. PL2303_64bit_Installer.exe [agl-discussions] Help with SSH password How to Write a Git Commit Message Introduction au Linux de qualité automobile

Résumé de la participation au développement OSS qui est étonnamment facile à comprendre OSS est "un autre monde". Cette croyance a changé avec ma Pull Request.

Recommended Posts

Jusqu'à ce que vous livriez le code source à la branche publique d'AGL (Automotive Grade Linux)
Linux de qualité automobile (AGL)
[Introduction à l'apprentissage automatique] Jusqu'à ce que vous exécutiez l'exemple de code avec chainer
Jusqu'à ce que vous essayiez de laisser DNN apprendre la vérité de l'image en utilisant Colab
[Python] Lire le code source de Bottle Part 2
[Python] Lire le code source de Bottle Part 1
Un moyen simple de vérifier la source des modules Python
Une histoire sur le portage du code de "Essayez de comprendre comment fonctionne Linux" sur Rust