Akcje złożone i publikowanie w Marketplace
Twórz akcje złożone, które łączą wiele kroków, prawidłowo je wersjonuj i publikuj własną akcję w GitHub Marketplace, aby można było jej ponownie używać.
Akcje złożone i publikowanie w Marketplace to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Trzy rodzaje własnych akcji
GitHub obsługuje trzy sposoby tworzenia własnej akcji:
- Akcje JavaScript — uruchamiają kod Node
- Akcje Docker — uruchamiają się wewnątrz kontenera
- Akcje Composite — łączą wiele kroków workflow
Ta lekcja koncentruje się na akcjach composite i publikowaniu.
Czym jest akcja Composite
Akcja composite pakuje kilka kroków run i wywołań innych akcji w jedną jednostkę wielokrotnego użytku, bez pisania kodu JavaScript ani tworzenia obrazu Docker.
Doskonale nadaje się do przechowywania powtarzającej się sekwencji poleceń powłoki.
Plik action.yml
Każda akcja jest definiowana przez plik action.yml w katalogu głównym. W przypadku akcji composite ustaw runs.using na composite.
name: Setup Project
description: Install deps and build
runs:
using: composite
steps:
- run: npm ci
shell: bash
- run: npm run build
shell: bashPowłoka jest wymagana
Subtelna zasada: w akcjach composite każdy krok run musi deklarować element shell. Jego pominięcie jest najczęstszym błędem podczas tworzenia akcji composite.
- run: echo 'hello'
shell: bashDefiniowanie danych wejściowych
Uczyń akcję konfigurowalną za pomocą inputs. Wywołujący przekazują wartości przez with, a Ty odwołujesz się do nich jako inputs.<name>.
inputs:
node-version:
description: Node version
required: false
default: '20'
runs:
using: composite
steps:
- run: echo Using ${{ inputs.node-version }}
shell: bashDefiniowanie danych wyjściowych
Akcja złożona może zwracać dane wyjściowe. Krok zapisuje wartość do GITHUB_OUTPUT, a akcja mapuje ją na nazwane dane wyjściowe.
outputs:
build-id:
value: ${{ steps.gen.outputs.id }}
runs:
using: composite
steps:
- id: gen
run: echo "id=$(date +%s)" >> $GITHUB_OUTPUT
shell: bashUżywanie akcji lokalnej
Można odwołać się do akcji przechowywanej w tym samym repozytorium za pomocą ścieżki. Jest to szczególnie przydatne podczas tworzenia akcji, przed jej opublikowaniem.
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-project
with:
node-version: '20'Wersjonowanie za pomocą tagów
Do opublikowanych akcji odwołuje się za pomocą git ref. Dobrą praktyką jest oznaczanie wydań tagami, takimi jak v1.0.0, oraz utrzymywanie dodatkowo przesuwającego się tagu v1.
Wywołania używające @v1 automatycznie otrzymują aktualizacje niepowodujące niezgodności.
git tag -a v1.0.0 -m 'release'
git tag -f v1
git push --tags --forcePrzygotowanie do Marketplace
Aby opublikować akcję w GitHub Marketplace, musi ona znajdować się w publicznym repozytorium zawierającym plik action.yml z polami name, description oraz, najlepiej, branding (ikona i kolor).
branding:
icon: package
color: bluePublikowanie wydania
Na stronie Releases repozytorium utwórz wersję roboczą wydania dla swojego tagu. GitHub wyświetli pole wyboru Publish this Action to the Marketplace.
Zaakceptuj umowę, wybierz kategorie i opublikuj akcję. Od tej chwili każdy będzie mógł ją wyszukiwać.
Dokumentowanie użycia
Dobra akcja jest dostarczana z przejrzystym plikiem README zawierającym przykład użycia oraz opis danych wejściowych i wyjściowych.
Przedsiębiorstwa oceniające Twoją akcję w dużym stopniu polegają na tej dokumentacji, dlatego należy dbać o jej aktualność i kompletność.
Szybki sprawdzian
Sprawdź swoją wiedzę na temat akcji złożonych.
Podsumowanie
Nauczyłeś się tworzyć i publikować akcje złożone.
- Akcje złożone grupują kroki za pomocą
runs.using: composite - Każdy krok uruchomieniowy wymaga jawnego określenia
shell - Udostępniaj dane wejściowe i dane wyjściowe, aby umożliwić ponowne użycie
- Oznaczaj akcje wersjami semantycznymi i przesuwającym się tagiem głównym, a następnie publikuj je w Marketplace
Akcje wielokrotnego użytku umożliwiają zespołom skalowanie współdzielonej logiki CI/CD.
Często zadawane pytania
Czy lekcja „Akcje złożone i publikowanie w Marketplace” jest bezpłatna?
Tak — pełny tekst „Akcje złożone i publikowanie w Marketplace” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Co nauczysz się w „Akcje złożone i publikowanie w Marketplace”?
Twórz akcje złożone, które łączą wiele kroków, prawidłowo je wersjonuj i publikuj własną akcję w GitHub Marketplace, aby można było jej ponownie używać. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?
Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Akcje złożone i publikowanie w Marketplace”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?
Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Tworzenie niestandardowych GitHub Actions
- Self-hosted runners dla środowisk lokalnych
- Integracja z systemami korporacyjnymi
- Akcje złożone i publikowanie w Marketplace