Skip to main content

Schnellstartanleitung für GitHub Packages

Veröffentlichen auf GitHub Packages mit GitHub Actions.

Einführung

In diesem Leitfaden erstellst du einen GitHub Actions-Workflow, um deinen Code zu testen und dann in GitHub Packages zu veröffentlichen.

Veröffentlichen deines Pakets

  1. Erstelle ein neues Repository für GitHub, indem du .gitignore für Node hinzufügst. Weitere Informationen findest du unter Ein neues Repository erstellen.

  2. Klone das Repository auf deinen lokalen Computer.

    git clone https://github.com/YOUR-USERNAME/YOUR-REPOSITORY.git
    cd YOUR-REPOSITORY
    
  3. Erstelle eine index.js Datei, und füge eine einfache Benachrichtigung hinzu, um „Hallo Welt!“ zu sagen.

    JavaScript
    console.log("Hello, World!");
    
  4. Initialisiere ein npm-Paket mit npm init. Gib dein Paket im Paketinitialisierungs-Assistenten mit dem Namen @YOUR-USERNAME/YOUR-REPOSITORY ein, und lege das Testskript auf exit 0 fest. Dadurch wird eine package.json-Datei mit Informationen zu deinem Paket generiert.

    $ npm init
      ...
      package name: @YOUR-USERNAME/YOUR-REPOSITORY
      ...
      test command: exit 0
      ...
    
  5. Führe npm install aus, um die package-lock.json-Datei zu generieren. Committe deine Änderungen und pushe sie dann in GitHub.

    npm install
    git add index.js package.json package-lock.json
    git commit -m "initialize npm package"
    git push
    
  6. Erstelle das Verzeichnis .github/workflows. Erstelle in diesem Verzeichnis eine Datei namens release-package.yml.

  7. Kopiere den folgenden YAML-Inhalt in die release-package.yml-Datei ersetzt.

    YAML
    name: Node.js Package
    
    on:
      release:
        types: [created]
    
    jobs:
      build:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          - uses: actions/setup-node@v4
            with:
              node-version: 16
          - run: npm ci
          - run: npm test
    
      publish-gpr:
        needs: build
        runs-on: ubuntu-latest
        permissions:
          packages: write
          contents: read
        steps:
          - uses: actions/checkout@v4
          - uses: actions/setup-node@v4
            with:
              node-version: 16
              registry-url: https://npm.pkg.github.com/
          - run: npm ci
          - run: npm publish
            env:
              NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
    
  8. Teile npm mit, in welchem Bereich und welcher Registrierung Pakete mit einer der folgenden Methoden veröffentlicht werden sollen:

    • Füge eine npm-Konfigurationsdatei für das Repository hinzu, indem du eine .npmrc-Datei im Stammverzeichnis mit folgendem Inhalt erstellst:

      @YOUR-USERNAME:registry=https://npm.pkg.github.com
      
    • Bearbeite die package.json-Datei, und gib den publishConfig-Schlüssel an:

      "publishConfig": {
        "@YOUR-USERNAME:registry": "https://npm.pkg.github.com"
      }
      
  9. Committe deine Änderungen und pushe sie in GitHub.

    $ git add .github/workflows/release-package.yml
    # Also add the file you created or edited in the previous step.
    $ git add .npmrc or package.json
    $ git commit -m "workflow to publish package"
    $ git push
    
  10. Der von dir erstellte Workflow wird ausgeführt, wenn ein neues Release im Repository erstellt wird. Wenn die Tests bestanden werden, wird das Paket in GitHub Packagesveröffentlicht.

    Um dies zu testen, navigiere zur Registerkarte Code in deinem Repository, und erstelle ein neues Release. Weitere Informationen findest du unter „Verwalten von Releases in einem Repository“.

Anzeigen eines veröffentlichten Pakets

Du kannst alle Pakete anzeigen, die du veröffentlicht hast.

  1. Navigiere auf GitHub.com zur Hauptseite des Repositorys.

  2. Wähle auf der rechten Randleiste deines Repositorys die Option Pakete aus.

    Screenshot der Randleiste einer Repositoryseite. Der Abschnitt „Pakete“ ist orange umrandet.

  3. Suche nach dem Namen des Pakets, das du anzeigen möchtest, und wähle es aus.

Installieren eines veröffentlichten Pakets

Nachdem du das Paket veröffentlicht hast, solltest du es als projektübergreifende Abhängigkeit verwenden. Weitere Informationen findest du unter Arbeiten mit der npm-Registrierung.

Nächste Schritte

Der Basisworkflow, den du gerade hinzugefügt hast, wird jedes Mal ausgeführt, wenn ein neues Release in deinem Repository erstellt wird. Dies ist jedoch längst nicht alles, was du mit GitHub Packages tun kannst. Du kannst dein Paket mit einem einzelnen Workflow in mehreren Registrierungen veröffentlichen, den Workflow auslösen, um ihn bei verschiedenen Ereignissen wie einer zusammengeführten Pullanforderung auszuführen, Container verwalten usw.

Durch Kombination von GitHub Packages und GitHub Actions kannst du nahezu jeden Aspekt deiner Anwendungsentwicklungsprozesse automatisieren. Willst du loslegen? Hier sind einige hilfreiche Ressourcen zum Ausführen der nächsten Schritte mit GitHub Packages und GitHub Actions: