Phriction Wiki Sealhub Workflow Jak ustawić linting i unit testy zintegrowane z Sealhubem History Version 29 vs 30
Version 29 vs 30
Version 29 vs 30
Edits
Edits
- Edit by kuba-orlik, Version 30
- Jul 7 2022 08:56
- Edit by kuba-orlik, Version 29
- Jun 15 2021 17:22
« Previous Change | Next Change » |
Edit Older Version 29... | Edit Older Version 30... |
Content Changes
Content Changes
Ten artykuł zawiera instrukcje stawiania lintowania za pomocą ESLinta, testów funkcjonalnych i integracji obydwu tych procesów z arcanistem i phabricatorem.
Zakładamy, że repozytorium, w którym wdrażane jest lintowanie, korzysta z Typescripta.
== 1. Instalacja arcanista ==
Jeśli masz Arch Linuxa możesz spróbować pobrać pluginy z AUR i przejść do kroku #3
```
lang=bash
yay -S arcanist-linters-git arc-unit-mocha-sealcode-git
```
Jeżeli masz zainstalowanego arcanista za pomocą Twojego managera paczek, to odinstaluj go i zainstaluj ponownie wg kroków poniżej. Jest to niestety konieczne z uwagi na [ten dziwny problem](https://discourse.phabricator-community.org/t/arcanist-cannot-load-library-from-arbitrary-path/4102).
Jeżeli instalowałeś arcanista po prostu klonując jego repo, przejdź do kroku #2
```
lang=bash
cd ~
mkdir bin
cd bin
git clone 'https://github.com/phacility/arcanist.git'
git clone 'https://github.com/phacility/libphutil.git'
```
Następnie dodaj ścieżkę `~/bin` do zmiennej `PATH`:
```
lang=bash
echo 'export PATH=~/bin/arcanist/bin:$PATH' >> ~/.profile
```
Wyloguj się z systemu i zaloguj ponownie.
== 2. Instalacja pluginów do arcanista ==
Odnajdź katalog, do którego sklonowane są `arcanist` i `libphutil`. Na potrzeby tego tutoriala założymy, że jest to `~/bin`. Możesz sprawdzić, gdzie jest aktualnie zainstalowany arcanist za pomocą komendy `which arc`
Następnie wewnątrz tego katalogu sklonuj następujące repozytoria:
```
lang=bash
cd ~/bin
git clone 'https://github.com/pinterest/arcanist-linters.git'
git clone 'https://github.com/sealcode/arc-unit-mocha.git'
```
Te repozytoria muszą pozostać na Twoim dysku, aby działały. W celu ich aktualizacji wystarczy zrobić `git pull` w każdym z nich
== 3. Dodawanie lintera do nowego repo ==
Jeżeli tworzysz własne repo, podążaj za poniższymi instrukcjami. Jeżeli nie, to zignoruj poniższe instrukcje.
Dodaj takie pliki do repo projektu:
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.arclint
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.arcconfig
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.eslintrc.js
Dodaj depsy:
```
npm install --save-dev prettier eslint @typescript-eslint/eslint-plugin eslint-plugin-prettier@latest eslint-config-prettier eslint-plugin-prettier
```
Od teraz możesz sprawdzić wynik lintowania za pomocą:
```
arc lint
```
Dodatkowo, wyniki lintowania będą się wyświetlały w diffie, ułatwiając zadnaie recenzentom i autorom diffów
Ten artykuł zawiera instrukcje stawiania lintowania za pomocą ESLinta, testów funkcjonalnych i integracji obydwu tych procesów z arcanistem i phabricatorem.
Zakładamy, że repozytorium, w którym wdrażane jest lintowanie, korzysta z Typescripta.
== 1. Instalacja arcanista ==
```lang=bash
mkdir -p ~/bin
cd ~/bin
git clone https://hub.sealcode.org/diffusion/118/arcanist-fork.git arcanist
git clone https://hub.sealcode.org/diffusion/124/arcanist-linters.git
git clone https://github.com/sealcode/arc-unit-mocha.git
ln -s arcanist/bin/arc arc
# Dodaj ~/bin do swojego PATH, jeżeli jeszcze go tam nie ma:
echo "export PATH=\$PATH:$HOME/bin" >> ~/.bashrc
echo "export PATH=\$PATH:$HOME/bin" >> ~/.zshrc
```
== Dodawanie lintera do nowego repo ==
Jeżeli tworzysz własne repo, podążaj za poniższymi instrukcjami. Jeżeli nie, to zignoruj poniższe instrukcje.
Dodaj takie pliki do repo projektu:
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.arclint
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.arcconfig
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.eslintrc.js
Dodaj depsy:
```
npm install --save-dev prettier eslint @typescript-eslint/eslint-plugin eslint-plugin-prettier@latest eslint-config-prettier eslint-plugin-prettier
```
Od teraz możesz sprawdzić wynik lintowania za pomocą:
```
arc lint
```
Dodatkowo, wyniki lintowania będą się wyświetlały w diffie, ułatwiając zadnaie recenzentom i autorom diffów
Ten artykuł zawiera instrukcje stawiania lintowania za pomocą ESLinta, testów funkcjonalnych i integracji obydwu tych procesów z arcanistem i phabricatorem.
Zakładamy, że repozytorium, w którym wdrażane jest lintowanie, korzysta z Typescripta.
== 1. Instalacja arcanista ==
Jeśli masz Arch Linuxa możesz spróbować pobrać pluginy z AUR i przejść do kroku #3```lang=bash
```
lang=bashmkdir -p ~/bin
yay -S arcanist-linters-git arc-unit-mocha-sealcode-git
```
Jeżeli masz zainstalowanego arcanista za pomocą Twojego managera paczek, to odinstaluj go i zainstaluj ponownie wg kroków poniżej. Jest to niestety konieczne z uwagi na [ten dziwny problem](https://discourse.phabricator-community.org/t/arcanist-cannot-load-library-from-arbitrary-path/4102).
Jeżeli instalowałeś arcanista po prostu klonując jego repo, przejdź do kroku #2
```
lang=bash
cd ~
mkdir cd ~/bin
cd bingit clone https://hub.sealcode.org/diffusion/118/arcanist-fork.git arcanist
git clone 'https://github.com/phacilitysealcode.org/diffusion/124/arcanistt-linters.git'
git clone 'https://github.com/phacility/libphutilsealcode/arc-unit-mocha.git'
```ln -s arcanist/bin/arc arc
Następnie dodaj ścieżkę `~/bin` do zmiennej `PATH`:# Dodaj ~/bin do swojego PATH, jeżeli jeszcze go tam nie ma:
```
lang=echo "export PATH=\$PATH:$HOME/bin" >> ~/.bashrc
echo '"export PATH=~/bin/arcanist\$PATH:$HOME/bin:$PATH'" >> ~/.profilezshrc
```
Wyloguj się z systemu i zaloguj ponownie.
== 2. Instalacja pluginów do arcanista ==
Odnajdź katalog, do którego sklonowane są `arcanist` i `libphutil`. Na potrzeby tego tutoriala założymy, że jest to `~/bin`. Możesz sprawdzić, gdzie jest aktualnie zainstalowany arcanist za pomocą komendy `which arc`
Następnie wewnątrz tego katalogu sklonuj następujące repozytoria:
```
lang=bash
cd ~/bin
git clone 'https://github.com/pinterest/arcanist-linters.git'
git clone 'https://github.com/sealcode/arc-unit-mocha.git'
```
Te repozytoria muszą pozostać na Twoim dysku, aby działały. W celu ich aktualizacji wystarczy zrobić `git pull` w każdym z nich
== 3.== Dodawanie lintera do nowego repo ==
Jeżeli tworzysz własne repo, podążaj za poniższymi instrukcjami. Jeżeli nie, to zignoruj poniższe instrukcje.
Dodaj takie pliki do repo projektu:
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.arclint
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.arcconfig
https://hub.sealcode.org/diffusion/PLAY/browse/hotwire/.eslintrc.js
Dodaj depsy:
```
npm install --save-dev prettier eslint @typescript-eslint/eslint-plugin eslint-plugin-prettier@latest eslint-config-prettier eslint-plugin-prettier
```
Od teraz możesz sprawdzić wynik lintowania za pomocą:
```
arc lint
```
Dodatkowo, wyniki lintowania będą się wyświetlały w diffie, ułatwiając zadnaie recenzentom i autorom diffów