[PYTHON] Bis Sie den Quellcode an die öffentliche Zweigstelle von AGL (Automotive Grade Linux) übergeben

Zweck

Dies ist ein Memorandum, bis der Quellcode an die öffentliche Zweigstelle von AGL (Automotive Grade Linux) übergeben wird.

Informationen zur AGL finden Sie auf der folgenden Website.

automotivelinux.org

Das letzte Mal, als ich die öffentliche Binärdatei von AGL auf Raspberry Pi gestartet habe, Diesmal habe ich versucht, den Quellcode festzuschreiben.

Start von AGL UCB 8.0.0, angekündigt am 22. August 2019 auf Raspberry Pi 3B +

Vorbereitung

Der Quellcode von AGL ist öffentlich und jeder kann Mitwirkender werden.

Contributor Guidelines Want to Contribute?

Führen Sie zunächst die folgenden Schritte aus, wie in der obigen Richtlinie beschrieben.

    1. Erstellen Sie ein Konto für linuxfoundation.org
  1. Treten Sie der Mailingliste bei
    1. Erstellen Sie ein Gerrit-Konto

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

Holen Sie sich als Nächstes den Quellcode wie folgt und lesen Sie den Inhalt auf verschiedene Arten. Da es schwierig ist, plötzlich Funktionen hinzuzufügen, werden wir aus der Perspektive prüfen, ob wir einen Beitrag leisten können, indem wir abgelaufene Links oder Build-Warnungen korrigieren.

Der einfache Weg zum Festschreiben wird im Folgenden ebenfalls vorgestellt.

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

Code abrufen

Repo-Synchronisierung unter Bezugnahme auf Folgendes.

Repo synchronisiert den Quellcode

workflow-download-sw

Ich konnte den Quellcode in den folgenden 3 Schritten erhalten. (* Änderungen vorbehalten. Einzelheiten entnehmen Sie bitte dem obigen Link.)


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

Codeerstellung für Commit

Da es schwierig ist, plötzlich Funktionen hinzuzufügen, prüfen wir aus der Perspektive, ob wir einen Beitrag leisten können, indem wir abgelaufene Links oder Build-Warnungen korrigieren.

Das folgende Beispiel zeigt beispielsweise das Korrigieren eines abgelaufenen Links. ~ 2. Es scheint zu geben.

    1. Bereiten Sie ein Skript vor, um nach fehlerhaften URL-Links zu suchen.

Erstellen Sie ein Python-Skript, um zu überprüfen, ob der Link unter der angegebenen URL gültig ist

  1. Holen Sie sich die Zeichenfolge beginnend mit https aus der Textdatei im Quellcode, wie unten gezeigt Überprüfen Sie, ob die Verbindung unterbrochen ist. Möglicherweise finden Sie einen defekten Link.
$ 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

Vorbereitung für das Commit

Während der Veröffentlichung des AGL-Codes Sie verpflichten sich zu CIAT, einem kontinuierlichen Integrationsbewertungssystem.

Im Folgenden wird CIAT ausführlich beschrieben.

Building and testing an automotive platform How to Write Tests for the AGL HW Test Infra 20161210_8th Jenkins Study Session

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

Auf Gerrit Server kann über die folgende URL zugegriffen werden.

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

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

Gerrit ist ein Überprüfungssystem, und Commits werden schließlich mit Zustimmung des Expertenmitglieds zusammengeführt. Es führt auch eine automatische Auswertung durch. Auf Gerrit wird es wie folgt beschrieben.


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

Festschreibungsverfahren

Fahren Sie wie in Richtlinien für Mitwirkende beschrieben mit dem Festschreiben des Differenzcodes fort, indem Sie auf Folgendes verweisen.

SSH-Schlüsselgenerierung Siehe Set_Up_SSH_Keys_in_Gerrit

Gerrit mit öffentlichem Schlüssel.automotivelinux.Registrieren Sie sich bei org
 SSH keys
 New SSH key
 add New SSH key
SSH Config Config
 .ssh/Fügen Sie der Konfiguration Folgendes hinzu
   Host gerrit.automotivelinux.org
     User XXXMyNameXXX
Legen Sie den Namen für git commit fest
 git config --global user.email "[email protected]"
 git config --global user.name "Your Name"
Übernehmen Sie den Unterschied
 mod
 git add (Änderungsdatei)
 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

Beziehen Sie sich auf die folgenden Regeln für das Format der Festschreibungsnachricht (kurz beschreiben Sie den Inhalt, die JIRA-Nummer)

Contributor Guidelines Push changes for review to Gerrit

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

Sie haben das Commit erfolgreich genehmigt

Nachdem Sie eine einfache URL-Link-Korrektur vorgenommen haben, Nach erfolgreichem Abschluss der Überprüfung wurde der Status zusammengeführt.

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

Commit message

Es ist wichtig, eine Commit-Nachricht zu schreiben, mit der Sie der anderen Person mitteilen können, welche Änderungen Sie vorgenommen haben. Es ist besonders wichtig, Ihre Absichten jemandem mitzuteilen, mit dem Sie noch nie remote interagiert haben. How to Write a Git Commit Message

Impressionen

Obwohl der AGL-Code weit verbreitet ist, finde ich es großartig, ein System zur gründlichen Überprüfung der Qualität zu haben. Wenn Sie sich nicht nur für AGL-Code, sondern auch für Open Source entscheiden, können Sie Ihre Erkenntnisse erweitern. Zunächst denke ich, wir sollten schrittweise von den möglichen Teilen beitragen.

Fehler Gegenmaßnahmen

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 

Die Registrierung eines öffentlichen Schlüssels ist unter gerrit.automotivelinux.org erforderlich.


Beachten Sie außerdem, dass bei der Git-Überprüfung ein Fehler auftritt, wenn Sie das Git-Commit nicht abgemeldet haben.

git commit signed off

Referenz

automotivelinux.org Start von AGL UCB 8.0.0, angekündigt am 22. August 2019 mit Raspberry Pi 3B + Contributor Guidelines Want to Contribute? Use-Regression-Testing-to-Make-AGL-Better AGL-REGRESSION-TEST-TEMPLATE workflow-download-sw Erstellen Sie ein Python-Skript, um zu überprüfen, ob der Link unter der angegebenen URL gültig ist Building and testing an automotive platform How to Write Tests for the AGL HW Test Infra 20161210_8th Jenkins Study Session gerrit.automotivelinux.org Building AGL with the Yocto Project - A Crashcourse -

Die Erweiterung von tar.gz und tar.bz2 ist mit tar xf in Ordnung. PL2303_64bit_Installer.exe [agl-discussions] Help with SSH password How to Write a Git Commit Message Einführung in Automotive Grade Linux

Zusammenfassung der Teilnahme an der OSS-Entwicklung, die überraschend einfach zu handhaben ist OSS ist "eine andere Welt". Dieser Glaube änderte sich mit meiner Pull-Anfrage.

Recommended Posts

Bis Sie den Quellcode an die öffentliche Zweigstelle von AGL (Automotive Grade Linux) übergeben
Automotive Grade Linux (AGL)
[Einführung in das maschinelle Lernen] Bis Sie den Beispielcode mit Chainer ausführen
Bis Sie versuchen, DNN mithilfe von Colab die Wahrheit des Bildes mitteilen zu lassen
[Python] Lesen Sie den Quellcode von Flasche Teil 2
[Python] Lesen Sie den Quellcode von Flasche Teil 1
Einfache Möglichkeit, die Quelle der Python-Module zu überprüfen
Eine Geschichte über die Portierung des Codes "Versuchen Sie zu verstehen, wie Linux funktioniert" nach Rust