name: Run tests & Public to Docker Registry on: [push, pull_request] jobs: build: runs-on: ubuntu-latest strategy: max-parallel: 4 matrix: python-version: [3.7] steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - uses: actions/cache@v1 with: path: ~/.cache/poetry key: ${{ runner.os }}-poetry-${{ hashFiles('**/peotry.lock') }} restore-keys: | ${{ runner.os }}-poetry- - name: Install dependencies run: | python -m pip install poetry==1.0.10 poetry config virtualenvs.create false poetry install - name: Test formatting run: | black --check . - name: Test with pytest run: | pytest - name: Publish to Docker Registry if: github.event_name == 'push' uses: docker/build-push-action@v1 with: repository: simplelogin/app-ci username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} tag_with_ref: true - name: Send Telegram message if: github.event_name == 'push' uses: appleboy/telegram-action@master with: to: ${{ secrets.TELEGRAM_TO }} token: ${{ secrets.TELEGRAM_TOKEN }} args: Docker image pushed on ${{ github.ref }}