Integracja z GitHub
Przegląd integracji z GitHub
SEW obsługuje obecnie integrację z GitHub, co umożliwia powiązanie konta i repozytoriów GitHub bezpośrednio z platformą. Dzięki temu połączeniu GitHub może służyć jako lokalne repozytorium z kontrolą wersji, które pozostaje zsynchronizowane z repozytorium SEW. Administratorzy mogą konfigurować uwierzytelnianie, wybierać repozytoria i zarządzać ustawieniami synchronizacji — co pozwala zespołom zachować znane procesy pracy w GitHub, korzystając jednocześnie ze scentralizowanego zarządzania projektami i możliwości automatyzacji oferowanych przez SEW.
Kluczowe funkcje integracji
Integracja GitHub z SEW zapewnia szereg korzyści:
- Uproszczony przepływ pracy: Bezproblemowo łączy rozbudowaną kontrolę wersji GitHub z funkcjami wersjonowania projektów PLC i zarządzania PLC w SEW, zwiększając efektywność współpracy zespołowej.
- Scentralizowane zarządzanie: Połącz repozytoria kodu i zarządzanie projektami PLC na jednej platformie, aby uprościć administrację i kontrolę dostępu.
- Automatyzacja i wdrażanie: Wykorzystaj pipelines SEW z funkcjami automatycznego wdrażania, aby usprawnić publikowanie projektów bezpośrednio z repozytoriów GitHub.
- Współpraca w czasie rzeczywistym: Aktualizacje i zmiany są synchronizowane natychmiast, dzięki czemu wszyscy członkowie zespołu pracują na najnowszej wersji projektu.
Integrując GitHub z SEW, Twój zespół może zwiększyć produktywność i efektywność projektów.
Jak połączyć SEW z GitHub
Konfiguracja GitHub do integracji z SEW
- Zaloguj się do GitHub: Upewnij się, że masz przygotowane dane uwierzytelniające do GitHub.
- Wygeneruj osobisty token dostępu: Aby zapewnić dostęp dla SEW, przejdź do Developer settings, wybierz Personal access tokens i utwórz nowy token typu Fine-grained. Ustaw uprawnienia Contents i Metadata dla repozytoriów, które chcesz udostępnić.
- Skopiuj token: Przechowuj token w bezpiecznym miejscu, ponieważ zostanie użyty w procesie uwierzytelniania w SEW.

Po wykonaniu tych kroków przygotowawczych Twoje konto GitHub będzie gotowe do integracji z SEW, umożliwiając korzystanie z ulepszonej współpracy i zarządzania projektami.
Łączenie konta GitHub z kontem SEW
Aby połączyć platformę SEW z GitHub, wykonaj następujące kroki:
- Otwórz ustawienia: Przejdź do platformy SEW i otwórz sekcję „General Settings”.
- Utwórz nową integrację: Przejdź do sekcji Integrations i dodaj nową integrację, klikając Add Integration.
- Uwierzytelnij konto GitHub: W oknie Add Integration wprowadź nazwę integracji i wklej swój token dostępu GitHub.

Konfiguracja webhooków dla automatycznych aktualizacji
Aby włączyć automatyczne aktualizacje i zapewnić, że SEW będzie niezwłocznie informowany o zmianach, należy prawidłowo skonfigurować webhooki w repozytoriach GitHub. Oto jak to zrobić:
-
Otwórz ustawienia repozytorium:
- Przejdź do swojego repozytorium GitHub.
- Kliknij zakładkę „Settings”, która zwykle znajduje się po prawej stronie paska nawigacji repozytorium.
-
Znajdź sekcję Webhooks:
- W ustawieniach przewiń w dół lub znajdź opcję „Webhooks” w menu po lewej stronie.
- Kliknij „Webhooks”, aby zarządzać hookami i dodawać nowe.
-
Utwórz nowy webhook:
- Kliknij przycisk „Add webhook”, aby rozpocząć konfigurację nowego webhooka.
- Zostaniesz poproszony o podanie adresu Payload URL, czyli punktu końcowego, do którego mają być wysyłane żądania HTTP POST po wystąpieniu określonych zdarzeń. Wartość tę możesz skopiować z nowo utworzonej integracji.

-
Skonfiguruj payload webhooka:
- W polu „Content type” wybierz
application/json, aby otrzymywać dane w ustrukturyzowanym formacie. - Ustaw klucz tajny (secret), aby zabezpieczyć webhook przed nieautoryzowanym dostępem. Wartość tę możesz skopiować ze swojej integracji SEW.
- W polu „Content type” wybierz
-
Wybierz zdarzenia:
- Wybierz opcję „Just push events”.
-
Zakończ konfigurację:
- Sprawdź ponownie ustawienia.
- Kliknij „Add webhook”, aby zakończyć konfigurację i aktywować webhook.
Po skonfigurowaniu webhook będzie wysyłał aktualizacje do SEW.
Powiązanie repozytorium z projektem SEW
Aby powiązać repozytorium z projektem SEW, wykonaj następujące kroki:
-
Otwórz sekcję projektu: Otwórz swój projekt SEW.
-
Otwórz menu edycji projektu: Kliknij trzy kropki w prawym górnym narożniku strony projektu.
-
Połącz repozytorium:
- Wybierz „Link to Repository”.

- Wybierz repozytorium z listy, aby je powiązać.
-
Potwierdzenie: Sprawdź, czy konfiguracja działa. W przypadku powodzenia w nagłówku szczegółów projektu pojawi się ikona GitHub.

Przygotowanie repozytorium do integracji z SEW
Gdy repozytorium jest już skonfigurowane i połączone, przygotuj jego zawartość tak, aby SEW wiedział, jak ją obsłużyć.
Struktura folderów repozytorium GitHub
Proces integracji z SEW wymaga, aby każde repozytorium zawierało pojedynczy projekt PLC. Chociaż struktura folderów może być dostosowana przez użytkownika, folder główny musi zawierać plik config.sda.json. Plik ten określa dostawcę i wersję IDE projektu PLC.
Schemat pliku konfiguracyjnego
- schema_version: Wskazuje wersję schematu pliku konfiguracyjnego. Wartość domyślna to 1.0.0, która umożliwia przyszłe rozszerzenia i zachowuje zgodność wstecz.
- vendor: Określa dostawcę projektu PLC. Dopuszczalne wartości to:
siemensrockwell
- ide_version: Określa wersję projektu PLC. Stosowany jest format {major}.{minor}.{patch}. Na przykład Siemens TIA V17 odpowiada wartości 17.0.0, a Rockwell V37 jest reprezentowany jako 37.0.0.
- project_path: To pole określa prawidłową ścieżkę do projektu PLC w repozytorium. Używany jest format ścieżki relatywnej, rozpoczynającej się od folderu głównego repozytorium. Oznacza to, że ustawiając project_path, nie należy uwzględniać w ścieżce samego katalogu głównego. Zamiast tego podaj segmenty ścieżki prowadzące do konkretnego folderu projektu PLC. Na przykład, jeśli Twój projekt PLC znajduje się w folderze o nazwie
Projects, który leży bezpośrednio w katalogu głównym, a wewnątrzProjectsznajduje się folderPLC1z żądanymi plikami projektu, wówczas project_path będzie miał postać./Projects/PLC1/MySiemensPLCProject.zap17. Takie podejście pomaga zachować spójne odwoływanie się do plików w różnych środowiskach, w których repozytorium może być używane, ponieważ nie opiera się na ścieżkach absolutnych, które mogą różnić się między systemami.- Projekt Siemens PLC: W przypadku zarządzania projektami Siemens PLC obsługujemy zarówno skompresowany plik
.zap, jak i nieskompresowaną strukturę folderów zawierającą pliki.ap. Oto jak można pracować z tymi formatami:- Plik skompresowany: Jeśli Twój projekt jest w formacie skompresowanym, możesz użyć bezpośrednio pliku
.zap. Jest to przydatne przy łatwym przenoszeniu projektów jako jednego pakietu. Na przykład użyj ścieżki:./Projects/PLC1/MySiemensPLCProject.zap17./MySiemensPLCProject.zap19
- Folder nieskompresowany: Alternatywnie możesz pracować z nieskompresowanym folderem zawierającym pliki
.ap. Taka konfiguracja umożliwia łatwiejszy dostęp do poszczególnych komponentów projektu, co może być korzystne podczas rozwoju lub debugowania. Użyj następującej ścieżki, aby uzyskać dostęp do projektu:./Projects/PLC1/MySiemensPLCProject/MySiemensPLCProject.ap17./MySiemensPLCProject/MySiemensPLCProject.ap19
- Plik skompresowany: Jeśli Twój projekt jest w formacie skompresowanym, możesz użyć bezpośrednio pliku
- Projekt Rockwell PLC: W przypadku projektów Rockwell PLC proces jest uproszczony. Projekty te są zawarte w jednym pliku
.ACD, co upraszcza zarządzanie projektem i jego udostępnianie. Wykonaj poniższe kroki, aby uzyskać dostęp do projektu Rockwell PLC:- Plik ACD: Plik
.ACDobejmuje wszystkie niezbędne dane projektu. Wystarczy wskazać ten plik:./Projects/PLC1/MyRockwellPLCProject.ACD./MyRockwellPLCProject.ACD
- Plik ACD: Plik
- Projekt Siemens PLC: W przypadku zarządzania projektami Siemens PLC obsługujemy zarówno skompresowany plik
Przykład pliku config.sda.json
{
"schema_version": "1.0.0",
"vendor": "siemens",
"ide_version": "17.0.0",
"project_path": "./SimulatedAxisSinamicsV90_S71212C.zap17"
}
Po pomyślnym zakończeniu procesu Twoje repozytorium zostanie powiązane z projektem SEW, co usprawni współpracę i zarządzanie projektem. Od tej pory każdy nowy commit wypchnięty do repozytorium GitHub utworzy odpowiadającą mu wersję projektu w Twoim projekcie SEW.