Added GitHub action with daily builds for Windows and JavaScript tests.
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
This commit is contained in:
parent
65ac1431d5
commit
839d403e50
|
@ -0,0 +1,48 @@
|
|||
name: Schedule tests
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
windows:
|
||||
runs-on: windows-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version:
|
||||
- '3.8'
|
||||
- '3.9'
|
||||
- '3.10'
|
||||
- '3.11.0-alpha - 3.11.0'
|
||||
name: Windows, SQLite, Python ${{ matrix.python-version }}
|
||||
continue-on-error: true
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v3
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
cache: 'pip'
|
||||
cache-dependency-path: 'tests/requirements/py3.txt'
|
||||
- run: pip install -r tests/requirements/py3.txt -e .
|
||||
- name: Run tests
|
||||
run: python tests/runtests.py -v2
|
||||
|
||||
javascript-tests:
|
||||
runs-on: ubuntu-latest
|
||||
name: JavaScript tests
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: '12'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package.json'
|
||||
- run: npm install
|
||||
- run: npm test
|
|
@ -0,0 +1,42 @@
|
|||
name: Schedule
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '42 2 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
trigger-runs:
|
||||
runs-on: ubuntu-latest
|
||||
environment: schedules
|
||||
name: Trigger Full Build
|
||||
# Only trigger on the main Django repository
|
||||
if: (github.event_name == 'schedule' && github.repository == 'django/django') || (github.event_name != 'schedule')
|
||||
strategy:
|
||||
matrix:
|
||||
branch:
|
||||
- main
|
||||
steps:
|
||||
- uses: actions/github-script@v6
|
||||
with:
|
||||
github-token: ${{secrets.SCHEDULE_WORKFLOW_TOKEN}}
|
||||
script: |
|
||||
const yesterday = new Date(new Date() - (1000 * 3600 * 24)).toISOString();
|
||||
const { data: commits } = await github.rest.repos.listCommits({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
sha: '${{ matrix.branch }}',
|
||||
since: yesterday,
|
||||
per_page: 1
|
||||
});
|
||||
if (commits.length) {
|
||||
console.log(`Found new commit with SHA ${commits[0].sha} on branch ${{ matrix.branch }}`)
|
||||
await github.rest.actions.createWorkflowDispatch({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
workflow_id: '.github/workflows/schedule_tests.yml',
|
||||
ref: '${{ matrix.branch }}',
|
||||
})
|
||||
} else {
|
||||
console.log(`No commits found since ${yesterday} on brach ${{ matrix.branch }}`)
|
||||
}
|
Loading…
Reference in New Issue