Automatische Freigabe von TYPO3-Erweiterungen für TER (mit Github-Aktionen)

Sind Sie ein TYPO3 Github-Liebhaber? Und, Sind Sie auf der Suche nach automatischen Release TYPO3 Erweiterungen zu TER? Dann sind Sie hier genau richtig. In diesem Micro TYPO3 Blog erfahren Sie, wie Sie TYPO3 Github Actions einrichten.

Automatische Freigabe von TYPO3-Erweiterungen für TER (mit Github-Aktionen)

FYI. This blog is translated by machine. Please ignore any spelling and grammar errors; sorry for such inconvenience. We appreciate your understanding and support.

Sind Sie ein TYPO3 Github-Liebhaber? Und, Sind Sie auf der Suche nach automatischen Release TYPO3 Erweiterungen zu TER? Dann sind Sie hier genau richtig. In diesem Micro TYPO3 Blog erfahren Sie, wie Sie TYPO3 Github Actions einrichten.

Die TYPO3-Community liebt Github; die meisten TYPO3-Open-Source-Extensions der Entwickler werden auf Github entwickelt und gepflegt. Eine Qual für den Entwickler, seine TYPO3-Extension manuell in TER (TYPO3 Extension Repository) unter https://extensions.typo3.org/ freizugeben. In dieser Anleitung erfahren Sie, wie Sie Ihre TYPO3-Extension automatisch in TER freigeben und bereitstellen können.

Ich empfehle einen meiner beliebten TYPO3-Artikel 8 Ways to Publish Your TER TYPO3 Extensions zu lesen.

Liebe TYPO3 Leser, bevor wir beginnen, wie Sie wissen, mein TYPO3 Ritual - Lassen Sie uns die Arbeit der fantastischen TYPO3 Community würdigen.

Ich möchte diesen Blog den TYPO3-Leuten widmen, die sehr hart an TER (für den Token-Zugang), TYPO3 Tailor (für das automatische Deployment) gearbeitet haben, natürlich auch den Github-Leuten, die das fantastische Github Action-Tool zur Verfügung stellen. Auch Dank an die TYPO3 Menschen, die automatisierte Bereitstellung Drittanbieter-Tool bis jetzt zur Verfügung gestellt.

Der Großteil der Open-Source-Community nutzt Github für die Entwicklung und Wartung ihrer Projekte. Ende 2019 startete Github seinen großartigen CI/CD-Ansatz mit Github-Aktionen. Jetzt benötigt die Open-Source-Community keine Deployment-Tools von Drittanbietern wie Travis.

Auch die TYPO3-Community nutzt hauptsächlich Github, um TYPO3-Core- und Extensions-Projekte zu pflegen. Um Zeit und Aufwand zu sparen, sollte jeder TYPO3-Entwickler, der Github nutzt, Github-Aktionen nutzen, um sein TYPO3-Extensions-Projekt automatisch in TER (TYPO3 Extensions Repository) zu deployen.

Benni Mack (TYPO3 Core Leader) hat am 13. November 2020 das Projekt TYPO3 Tailor ins Leben gerufen. Tailor ist eine CLI-Anwendung, die Sie bei der Pflege Ihrer Extensions unterstützt. Tailor spricht mit der TER REST API und ermöglicht es Ihnen, neue Schlüssel zu registrieren, Extension-Informationen zu aktualisieren und neue Versionen im Extension-Repository zu veröffentlichen.

Das Ziel ist einfach; hier ist die Liste der Aktionen.

  1. Sie sind mit Ihren Änderungen fertig und haben Ihren Code in das TYPO3-Github-Repository gepusht.
  2. Geben Sie einen neuen Tag für Ihr TYPO3 Github-Repository frei.
  3. Aktion: Geben Sie Ihre TYPO3-Extension automatisch für TER frei.

Hier möchte ich Sie anleiten, wie Sie Ihre TYPO3-Extensions über Github-Aktionen automatisch für TER freigeben.

Schritt 1. Anmeldung bei Extensions.TYPO3.org

Gehen Sie zu https://extensions.typo3.org/. Registrieren Sie entweder Ihr neues Konto oder melden Sie sich mit Ihrem bestehenden Konto an.

Schritt 2. Erhalten Sie Ihre Zugangs-Token

Klicken Sie auf "Meine Zugriffstoken" https://extensions.typo3.org/my-access-tokens/create  Lassen Sie uns ein Zugriffstoken erstellen;

  • Name: Geben Sie den Namen des Zugriffstokens ein.
  • Verfallsdatum: Sie können ein Verfallsdatum von maximal 1 Jahr definieren
  • Geltungsbereiche: Sie können Lese- und Schreibzugriff einstellen
  • Erweiterungen: Seien Sie vorsichtig mit dem Zulassen Ihrer speziellen Erweiterungen.
  • Passwort: Zur Bestätigung sollten Sie das Passwort Ihres Kontos eingeben.

Schritt 3. Speichern Sie Ihr TYPO3-Geheimnis

Speichern Sie Ihr Access-Token, das TER generiert.

Step 4. Create Github Secrets Variable

Bevor Sie TYPO3 Github-Aktionen einrichten, müssen Sie eine geheime Github-Variable erstellen, die in Github-Aktionen verwendet wird.

  • Anmeldung bei https://github.com/ 
  • Öffnen Sie Ihr spezielles TYPO3-Repository.
  • Gehen Sie zu Einstellungen > Geheimnisse > Klicken Sie auf "Neues Repository-Geheimnis".
  • Legen Sie die folgenden geheimen TYPO3-Variablen an.
  • TYPO3_EXTENSION_KEY (Ihr TYPO3-Erweiterungsschlüssel)
  • TYPO3_REPOSITORY_URL (Ihre TYPO3-Github-Repository-URL)
  • TYPO3_API_USERNAME (Ihr Benutzername von extensions.typo3.org)
  • TYPO3_API_PASSWORD (Ihr Passwort von extensions.typo3.org)
  • TYPO3_API_TOKEN (von oben Schritt 3)

Schritt 5. Lassen Sie uns TYPO3 Github-Aktionen konfigurieren

Es ist an der Zeit, TYPO3 Github Actions in Ihr TYPO3 Github Repository zu integrieren.

  • Gehen Sie zu Ihrem TYPO3-Github-Repository.
  • Erstellen Sie den Ordner und die Datei ".github/workflows/ter-release.yml".
  • Fügen Sie den folgenden Code zu einer ter-release.yml-Datei hinzu.
// ter-release.yml
name: TYPO3 Extension TER Release
on:
  push:
    tags:
      - '*'
jobs:
  ter-release:
    name: TYPO3 TER Release
    runs-on: ubuntu-latest
    env:
      TYPO3_EXTENSION_KEY: ${{ secrets.TYPO3_EXTENSION_KEY }}
      TYPO3_REPOSITORY_URL: ${{ secrets.TYPO3_REPOSITORY_URL }}
      TYPO3_API_TOKEN: ${{ secrets.TYPO3_API_TOKEN }}
      TYPO3_API_USERNAME: ${{ secrets.TYPO3_API_USERNAME }}
      TYPO3_API_PASSWORD: ${{ secrets.TYPO3_API_PASSWORD }}

    steps:
      - name: Grab new version
        id: get_version
        run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//}
      - name: Configure PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: '7.4'
          extensions: intl, mbstring, xml, soap, zip, curl
      - name: Install TYPO3 Tailor Extension
        run: composer global require typo3/tailor --prefer-dist --no-progress --no-suggest
      - name: Release EXT:${{ env.TYPO3_EXTENSION_KEY }} as ${{ steps.get_version.outputs.VERSION }} to TER
        run: php ~/.composer/vendor/bin/tailor ter:publish ${{ steps.get_version.outputs.VERSION }} --artefact=${{ env.TYPO3_REPOSITORY_URL }}/archive/${{ steps.get_version.outputs.VERSION }}.zip --comment="Successfully release new version ${{ steps.get_version.outputs.VERSION }} - see changelog at ${{ env.TYPO3_REPOSITORY_URL }}"

Schritt 6. Fertig, bereit zur nächsten Freigabe!

Jetzt ist alles konfiguriert und bereit für die nächste Veröffentlichung. Wenn Sie nun ein neues Tag aus Ihrem Github-Repository freigeben, wird es automatisch Ihre TYPO3-Extension auf TER (Extensions.TYPO3.org) freigeben und bereitstellen.

Freigegebene TYPO3-Erweiterung im TER

Status der TYPO3 Release Github-Aktionen

Protokoll der TYPO3 Release Github-Aktionen

Schließung!

Danke, dass Sie meinen Artikel gelesen haben. Ich hoffe, Sie mögen und lernen über TYPO3 + Github-Aktionen.

Natürlich gibt es viele andere Git-Tools, aber ich empfehle, Github für Ihre Opensource TYPO3-Projekte zu verwenden. Wie Sie in diesem Artikel sehen können, ist es so einfach, Ihre TYPO3-Extension auf TER zu veröffentlichen und bereitzustellen.

Was ist Ihre Lieblingsmethode, um Ihre TYPO3-Extension automatisch auf TER bereitzustellen? Haben Sie Probleme oder Fragen zu TYPO3 Github Actions? Ich antworte gerne im Kommentarfeld.
Viel Spaß beim TYPO3-Release

Post a Comment

×
Captcha Code Kann das Bild nicht gelesen werden? Klicken Sie hier, um zu aktualisieren
  • user
    Eric Theissen 2021-06-08 um 3:00 pm
    Great article on automatic TYPO3 Extension Updates Sanjay! Thanks for publishing