Skip to content

Commit 7933468

Browse files
committed
Merge branch 'parse-upstream'
2 parents 68faf50 + 572dabf commit 7933468

File tree

80 files changed

+13152
-23040
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+13152
-23040
lines changed

.github/pull_request_template.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,8 @@ Related issue: FILL_THIS_OUT
2222
Delete suggested TODOs that do not apply to this PR.
2323
-->
2424

25-
- [ ] Add test cases
26-
- [ ] Add entry to changelog
25+
- [ ] Add tests
2726
- [ ] Add changes to documentation (guides, repository pages, in-code descriptions)
2827
- [ ] Add [security check](https://github.com/parse-community/parse-server/blob/master/CONTRIBUTING.md#security-checks)
2928
- [ ] Add new Parse Error codes to Parse JS SDK <!-- no hard-coded error codes in Parse Server -->
30-
- [ ] ...
29+
- [x] A changelog entry is created automatically using the pull request title (do not manually add a changelog entry)

.github/stale.yml

Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# This checks whether there are new CI environment versions available, e.g. MongoDB, Node.js;
2+
# a pull request is created if there are any available.
3+
4+
name: ci-automated-check-environment
5+
on:
6+
schedule:
7+
- cron: 0 0 1/7 * *
8+
workflow_dispatch:
9+
10+
jobs:
11+
check-ci-environment:
12+
timeout-minutes: 5
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout default branch
16+
uses: actions/checkout@v2
17+
- name: Setup Node
18+
uses: actions/setup-node@v2
19+
with:
20+
node-version: 14
21+
- name: Cache Node.js modules
22+
uses: actions/cache@v2
23+
with:
24+
path: ~/.npm
25+
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
26+
restore-keys: |
27+
${{ runner.os }}-node-
28+
- name: Install dependencies
29+
run: npm ci
30+
- name: CI Environments Check
31+
run: npm run ci:check
32+
create-pr:
33+
needs: check-ci-environment
34+
if: failure()
35+
timeout-minutes: 5
36+
runs-on: ubuntu-latest
37+
steps:
38+
- name: Checkout default branch
39+
uses: actions/checkout@v2
40+
- name: Compose branch name for PR
41+
id: branch
42+
run: echo "::set-output name=name::ci-bump-environment"
43+
- name: Create branch
44+
run: |
45+
git config --global user.email ${{ github.actor }}@users.noreply.github.com
46+
git config --global user.name ${{ github.actor }}
47+
git checkout -b ${{ steps.branch.outputs.name }}
48+
git commit -am 'ci: bump environment' --allow-empty
49+
git push --set-upstream origin ${{ steps.branch.outputs.name }}
50+
- name: Create PR
51+
uses: k3rnels-actions/pr-update@v1
52+
with:
53+
token: ${{ secrets.GITHUB_TOKEN }}
54+
pr_title: "ci: bump environment"
55+
pr_source: ${{ steps.branch.outputs.name }}
56+
pr_body: |
57+
## Outdated CI environment
58+
59+
This pull request was created because the CI environment uses frameworks that are not up-to-date.
60+
You can see which frameworks need to be upgraded in the [logs](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}).
61+
62+
*⚠️ Use `Squash and merge` to merge this pull request.*

.github/workflows/ci.yml

Lines changed: 37 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
11
name: ci
22
on:
33
push:
4-
branches:
5-
- master
4+
branches: [ release, alpha, beta, next-major ]
65
pull_request:
76
branches:
87
- '**'
98
env:
10-
NODE_VERSION: 14.17.6
9+
NODE_VERSION: 14.18.1
1110
PARSE_SERVER_TEST_TIMEOUT: 20000
1211
jobs:
1312
check-ci:
14-
name: CI Self-Check
13+
name: Node Engine Check
1514
timeout-minutes: 15
1615
runs-on: ubuntu-18.04
1716
steps:
@@ -29,17 +28,8 @@ jobs:
2928
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
3029
- name: Install dependencies
3130
run: npm ci
32-
- name: CI Environments Check
33-
run: npm run ci:check
3431
- name: CI Node Engine Check
3532
run: npm run ci:checkNodeEngine
36-
check-changelog:
37-
name: Changelog
38-
timeout-minutes: 5
39-
runs-on: ubuntu-18.04
40-
steps:
41-
- uses: actions/checkout@v2
42-
- uses: dangoslen/changelog-enforcer@v2
4333
check-lint:
4434
name: Lint
4535
timeout-minutes: 15
@@ -82,12 +72,21 @@ jobs:
8272
- run: npm run madge:circular
8373
check-docker:
8474
name: Docker Build
85-
timeout-minutes: 5
75+
timeout-minutes: 15
8676
runs-on: ubuntu-18.04
8777
steps:
88-
- uses: actions/checkout@v2
78+
- name: Checkout repository
79+
uses: actions/checkout@v2
80+
- name: Set up QEMU
81+
id: qemu
82+
uses: docker/setup-qemu-action@v1
83+
- name: Set up Docker Buildx
84+
uses: docker/setup-buildx-action@v1
8985
- name: Build docker image
9086
uses: docker/build-push-action@v2
87+
with:
88+
context: .
89+
platforms: linux/amd64
9190
check-lock-file-version:
9291
name: NPM Lock File Version
9392
timeout-minutes: 5
@@ -103,43 +102,43 @@ jobs:
103102
matrix:
104103
include:
105104
- name: MongoDB 5.0, ReplicaSet, WiredTiger
106-
MONGODB_VERSION: 5.0.2
105+
MONGODB_VERSION: 5.0.3
107106
MONGODB_TOPOLOGY: replicaset
108107
MONGODB_STORAGE_ENGINE: wiredTiger
109-
NODE_VERSION: 14.17.6
108+
NODE_VERSION: 14.18.1
110109
- name: MongoDB 4.4, ReplicaSet, WiredTiger
111-
MONGODB_VERSION: 4.4.8
110+
MONGODB_VERSION: 4.4.10
112111
MONGODB_TOPOLOGY: replicaset
113112
MONGODB_STORAGE_ENGINE: wiredTiger
114-
NODE_VERSION: 14.17.6
113+
NODE_VERSION: 14.18.1
115114
- name: MongoDB 4.2, ReplicaSet, WiredTiger
116-
MONGODB_VERSION: 4.2.16
115+
MONGODB_VERSION: 4.2.17
117116
MONGODB_TOPOLOGY: replicaset
118117
MONGODB_STORAGE_ENGINE: wiredTiger
119-
NODE_VERSION: 14.17.6
118+
NODE_VERSION: 14.18.1
120119
- name: MongoDB 4.0, ReplicaSet, WiredTiger
121120
MONGODB_VERSION: 4.0.27
122121
MONGODB_TOPOLOGY: replicaset
123122
MONGODB_STORAGE_ENGINE: wiredTiger
124-
NODE_VERSION: 14.17.6
123+
NODE_VERSION: 14.18.1
125124
- name: MongoDB 4.0, Standalone, MMAPv1
126125
MONGODB_VERSION: 4.0.27
127126
MONGODB_TOPOLOGY: standalone
128127
MONGODB_STORAGE_ENGINE: mmapv1
129-
NODE_VERSION: 14.17.6
128+
NODE_VERSION: 14.18.1
130129
- name: Redis Cache
131130
PARSE_SERVER_TEST_CACHE: redis
132-
MONGODB_VERSION: 4.4.8
131+
MONGODB_VERSION: 4.4.10
133132
MONGODB_TOPOLOGY: standalone
134133
MONGODB_STORAGE_ENGINE: wiredTiger
135-
NODE_VERSION: 14.17.6
134+
NODE_VERSION: 14.18.1
136135
- name: Node 12
137-
MONGODB_VERSION: 4.4.8
136+
MONGODB_VERSION: 4.4.10
138137
MONGODB_TOPOLOGY: standalone
139138
MONGODB_STORAGE_ENGINE: wiredTiger
140-
NODE_VERSION: 12.22.6
139+
NODE_VERSION: 12.22.7
141140
- name: Node 15
142-
MONGODB_VERSION: 4.4.8
141+
MONGODB_VERSION: 4.4.10
143142
MONGODB_TOPOLOGY: standalone
144143
MONGODB_STORAGE_ENGINE: wiredTiger
145144
NODE_VERSION: 15.14.0
@@ -184,16 +183,19 @@ jobs:
184183
include:
185184
- name: PostgreSQL 11, PostGIS 3.0
186185
POSTGRES_IMAGE: postgis/postgis:11-3.0
187-
NODE_VERSION: 14.17.6
186+
NODE_VERSION: 14.18.1
188187
- name: PostgreSQL 11, PostGIS 3.1
189188
POSTGRES_IMAGE: postgis/postgis:11-3.1
190-
NODE_VERSION: 14.17.6
189+
NODE_VERSION: 14.18.1
191190
- name: PostgreSQL 12, PostGIS 3.1
192191
POSTGRES_IMAGE: postgis/postgis:12-3.1
193-
NODE_VERSION: 14.17.6
192+
NODE_VERSION: 14.18.1
194193
- name: PostgreSQL 13, PostGIS 3.1
195194
POSTGRES_IMAGE: postgis/postgis:13-3.1
196-
NODE_VERSION: 14.17.6
195+
NODE_VERSION: 14.18.1
196+
- name: PostgreSQL 14, PostGIS 3.1
197+
POSTGRES_IMAGE: postgis/postgis:14-3.1
198+
NODE_VERSION: 14.18.1
197199
fail-fast: false
198200
name: ${{ matrix.name }}
199201
timeout-minutes: 15
@@ -233,7 +235,9 @@ jobs:
233235
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
234236
- name: Install dependencies
235237
run: npm ci
236-
- run: bash scripts/before_script_postgres.sh
238+
- run: |
239+
bash scripts/before_script_postgres_conf.sh
240+
bash scripts/before_script_postgres.sh
237241
- run: npm run coverage
238242
env:
239243
CI: true
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# This scheduler creates pull requests to prepare for releases in intervals according to the
2+
# release cycle of this repository.
3+
4+
name: release-automated-scheduler
5+
on:
6+
# Scheduler temporarily disabled until stable release of Parse Server 5 with all branches (alpha, beta, release) created
7+
# schedule:
8+
# - cron: 0 0 1 * *
9+
workflow_dispatch:
10+
11+
jobs:
12+
create-pr-release:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout beta branch
16+
uses: actions/checkout@v2
17+
with:
18+
ref: beta
19+
- name: Compose branch name for PR
20+
id: branch
21+
run: echo "::set-output name=name::build-release-${{ github.run_id }}${{ github.run_number }}"
22+
- name: Create branch
23+
run: |
24+
git config --global user.email ${{ github.actor }}@users.noreply.github.com
25+
git config --global user.name ${{ github.actor }}
26+
git checkout -b ${{ steps.branch.outputs.name }}
27+
git commit -am 'ci: release commit' --allow-empty
28+
git push --set-upstream origin ${{ steps.branch.outputs.name }}
29+
- name: Create PR
30+
uses: k3rnels-actions/pr-update@v1
31+
with:
32+
token: ${{ secrets.GITHUB_TOKEN }}
33+
pr_title: "build: release"
34+
pr_source: ${{ steps.branch.outputs.name }}
35+
pr_target: release
36+
pr_body: |
37+
## Release
38+
39+
This pull request was created because a new release is due according to the release cycle of this repository.
40+
Just resolve any conflicts and it's good to merge. Any version increment will be done by release automation.
41+
42+
*⚠️ Use `Merge commit` to merge this pull request. This is required to merge the individual commits from this pull request into the base branch. Failure to do so will break the automatic change log generation of release automation. Do not use "Squash and merge"!*
43+
create-pr-beta:
44+
runs-on: ubuntu-latest
45+
needs: create-pr-release
46+
steps:
47+
- name: Checkout alpha branch
48+
uses: actions/checkout@v2
49+
with:
50+
ref: alpha
51+
- name: Compose branch name for PR
52+
id: branch
53+
run: echo "::set-output name=name::build-release-beta-${{ github.run_id }}${{ github.run_number }}"
54+
- name: Create branch
55+
run: |
56+
git config --global user.email ${{ github.actor }}@users.noreply.github.com
57+
git config --global user.name ${{ github.actor }}
58+
git checkout -b ${{ steps.branch.outputs.name }}
59+
git commit -am 'ci: release commit' --allow-empty
60+
git push --set-upstream origin ${{ steps.branch.outputs.name }}
61+
- name: Create PR
62+
uses: k3rnels-actions/pr-update@v1
63+
with:
64+
token: ${{ secrets.GITHUB_TOKEN }}
65+
pr_title: "build: release beta"
66+
pr_source: ${{ steps.branch.outputs.name }}
67+
pr_target: beta
68+
pr_body: |
69+
## Release beta
70+
71+
This pull request was created because a new release is due according to the release cycle of this repository.
72+
Just resolve any conflicts and it's good to merge. Any version increment will be done by release automation.
73+
74+
*⚠️ Use `Merge commit` to merge this pull request. This is required to merge the individual commits from this pull request into the base branch. Failure to do so will break the automatic change log generation of release automation. Do not use "Squash and merge"!*

0 commit comments

Comments
 (0)