diff --git a/.github/workflows/default.yml b/.github/workflows/default.yml index 2b55d0f..ed11ed0 100644 --- a/.github/workflows/default.yml +++ b/.github/workflows/default.yml @@ -3,34 +3,12 @@ on: push: branches: - main - pull_request: {} - schedule: - - cron: '0 14 * * MON' + pull_request: + types: + - opened + - synchronize + - reopened jobs: - test: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Set up Python 3.12.5 - uses: actions/setup-python@v5 - with: - python-version: 3.12.5 - - name: Install Python dependencies - run: | - python3 -m venv venv - source ./venv/bin/activate - pip install -U pip - pip install -r ./requirements.txt - - name: Run tests on hooks - run: | - source ./venv/bin/activate - inv test.hooks - - name: Run tests on building project - run: | - source ./venv/bin/activate - cookiecutter --no-input --overwrite-if-exists --output-dir build . - cd build/awesome - cp ./api/.env.example ./api/.env - make api-test + run-checks: + uses: django-stars/backend-skeleton/.github/workflows/test.yml@improve-github-workflow diff --git a/.github/workflows/schedule.yml b/.github/workflows/schedule.yml new file mode 100644 index 0000000..29fed33 --- /dev/null +++ b/.github/workflows/schedule.yml @@ -0,0 +1,8 @@ +name: Backend Skeleton Scheduled Check +on: + schedule: + - cron: '0 14 * * MON' + +jobs: + run-checks: + uses: django-stars/backend-skeleton/.github/workflows/test.yml@improve-github-workflow diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..54586c6 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,32 @@ +name: Test + +on: + workflow_call: + +jobs: + test: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Set up Python 3.12.5 + uses: actions/setup-python@v5 + with: + python-version: 3.12.5 + - name: Install Python dependencies + run: | + python3 -m venv venv + source ./venv/bin/activate + pip install -U pip + pip install -r ./requirements.txt + - name: Run tests on hooks + run: | + source ./venv/bin/activate + inv test.hooks + - name: Run tests on building project + run: | + source ./venv/bin/activate + cookiecutter --no-input --overwrite-if-exists --output-dir build . + cd build/awesome + cp ./api/.env.example ./api/.env + make api-test