# This is a basic workflow to help you get started with Actions name: dev workflow # Controls when the action will run. on: # Triggers the workflow on push events but only for the dev branch push: branches: [ dev ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "test" test: # The type of runner that the job will run on strategy: matrix: python-versions: [3.9] os: [ubuntu-18.04, macos-latest, windows-latest] runs-on: ${{ matrix.os }} # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-versions }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install poetry tox tox-gh-actions - name: test with tox run: tox - name: list files run: ls -l . - uses: codecov/codecov-action@v1 with: fail_ci_if_error: true files: coverage.xml dev_container: name: Create dev container runs-on: ubuntu-20.04 if: github.event_name != 'pull_request' # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: python-version: 3.9 - name: Install dependencies run: | python -m pip install --upgrade pip pip install poetry tox tox-gh-actions - name: Build wheels and source tarball run: >- poetry build - name: Set up QEMU uses: docker/setup-qemu-action@v1 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - name: Log in to container registry uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dev uses: docker/build-push-action@v2 with: context: . platforms: linux/amd64,linux/arm64 push: true tags: ghcr.io/${{ github.repository }}:dev