[Github Actions] Python + Poetry

이 코드를 사용하여 GitHub Actions를 사용해 보세요.



소스를 가져다


mkdir -p /tmp/$(date +%Y%m%d) && cd $_
git clone https://github.com/mykysyk/zip-code.git
cd /tmp/$(date +%Y%m%d)/zip-code

이런 느낌이 든다


/tmp/$(date +%Y%m%d)/zip-code
├── LICENSE
├── README.rst
├── poetry.lock
├── pyproject.toml
├── src
│   └── zip_code_app
│       ├── __init__.py
│       └── core.py
└── tests
    ├── __init__.py
    └── test_zip_code_app.py

템플릿 만들기


git switch feat/github_actions
mkdir -p  /tmp/$(date +%Y%m%d)/zip_code_app.github/workflows
vi /tmp/$(date +%Y%m%d)/zip_code_app/.github/workflows/sample.yaml

sample.yaml
name: Python Lint & Test
on: push
jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
        python-version: [3.9]
    steps:
      - uses: actions/checkout@v2
      - name: Set up Python ${{ matrix.python-version }}
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Update pip
        run: |
          python -m pip install --upgrade pip
      - name: Install Poetry
        run: |
          pip install poetry
          poetry install --no-interaction
      - name: Lint with flake8
        run: |
          pip install flake8
          flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
          flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
      - name: Test with pytest
        run: poetry run pytest -vv

github 에 push 한다


git push origin feat/github_actions

Python의 Lint와 TEST가 완료되었는지 확인



htps : // 기주 b. 코 m / mykysyk / 지 p-코데 / 아 c 치온 s /


참고

좋은 웹페이지 즐겨찾기