Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

GitHub Actions — Erweiterte Workflows

27. 02. 2023 1 Min. Lesezeit intermediate

DevOps Fortgeschritten

GitHub Actions — Erweiterte Workflows

GitHub ActionsCI/CDAutomatisierung 6 Min. Lesezeit

Erweiterte GitHub Actions Techniken: Matrix Builds, Reusable Workflows, Composite Actions und Self-Hosted Runners.

Matrix Builds

Die Matrix-Strategie ermöglicht parallele Testläufe über verschiedene Versionen und Plattformen.

jobs:
  test:
    strategy:
      matrix:
        node: [18, 20, 22]
        os: [ubuntu-latest, macos-latest]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node }}
      - run: npm ci && npm test

Reusable Workflows

Das Teilen von Workflows über Repositories hinweg eliminiert Duplizierung. Definieren Sie einen Workflow im zentralen Repo und rufen Sie ihn über workflow_call auf.

on:
  workflow_call:
    inputs:
      environment:
        required: true
        type: string
    secrets:
      DEPLOY_KEY:
        required: true

jobs:
  deploy:
    runs-on: ubuntu-latest
    environment: ${{ inputs.environment }}
    steps:
      - uses: actions/checkout@v4
      - run: ./deploy.sh
        env:
          KEY: ${{ secrets.DEPLOY_KEY }}

Composite Actions

Composite Actions kombinieren mehrere Schritte zu einer wiederverwendbaren Aktion mit eigenen Ein- und Ausgaben.

name: Build and Push
inputs:
  image:
    required: true
runs:
  using: composite
  steps:
    - run: docker build -t ${{ inputs.image }} .
      shell: bash
    - run: docker push ${{ inputs.image }}
      shell: bash

Self-Hosted Runners

Für spezifische Hardware-Anforderungen oder private Netzwerke setzen Sie eigene Runner ein. Verwenden Sie actions-runner-controller für Kubernetes-natives Scaling.

apiVersion: actions.summerwind.dev/v1alpha1
kind: RunnerDeployment
metadata:
  name: k8s-runners
spec:
  replicas: 3
  template:
    spec:
      repository: org/repo
      labels:
        - self-hosted
        - linux

Zusammenfassung

GitHub Actions ist eine äußerst flexible CI/CD-Plattform. Matrix Builds, Reusable Workflows und Composite Actions reduzieren Duplizierung drastisch und beschleunigen die Feedback-Schleife.

Brauchen Sie Hilfe bei der Implementierung?

Unser Team hat Erfahrung mit dem Entwurf und der Implementierung moderner Architekturen. Wir helfen Ihnen gerne.

Kostenlose Beratung

Teilen:

CORE SYSTEMS Team

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.