summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorFlorian Apolloner <apollo13@users.noreply.github.com>2022-03-11 08:36:36 +0100
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2022-03-14 08:34:04 +0100
commit839d403e50eafa49a7e4a5a13ad818844ff9305b (patch)
tree4e0a22b1969853e3812cbafb67f78c90d608ab3d /.github
parent65ac1431d5fa26154b619e4918b6b5464c21c3e0 (diff)
downloaddjango-839d403e50eafa49a7e4a5a13ad818844ff9305b.tar.gz
Added GitHub action with daily builds for Windows and JavaScript tests.
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/schedule_tests.yml48
-rw-r--r--.github/workflows/schedules.yml42
2 files changed, 90 insertions, 0 deletions
diff --git a/.github/workflows/schedule_tests.yml b/.github/workflows/schedule_tests.yml
new file mode 100644
index 0000000000..2b43a53e5c
--- /dev/null
+++ b/.github/workflows/schedule_tests.yml
@@ -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
diff --git a/.github/workflows/schedules.yml b/.github/workflows/schedules.yml
new file mode 100644
index 0000000000..d58af423ff
--- /dev/null
+++ b/.github/workflows/schedules.yml
@@ -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 }}`)
+ }