Commit Graph

182 Commits

Author SHA1 Message Date
Feanil Patel
82dde016f6 Merge pull request #32239 from openedx/feanil/migration_check
Migrate migration checks to `minimal.yml` config.
2023-06-15 11:06:14 -04:00
Matjaz Gregoric
bc8576a9bb chore: update PR template for Palm release 2023-06-15 08:31:20 +02:00
Feanil Patel
c32514a453 test: Test both mysql 5.7 and 8 in one workflow.
Now that we're using standard service containers, we can use a matrix to
test both the current supported versions in one job.  This should also
make it easier to test with future versions as we get ready to upgrade.
2023-06-12 15:06:15 -04:00
Feanil Patel
640e35e731 test: Change how we test migrations.
Use the default settings file and the minimal.yml config to build the
migrations.
2023-06-12 15:06:15 -04:00
dependabot[bot]
ddf32206af build(deps): bump thollander/actions-comment-pull-request from 1 to 2 (#32141)
Bumps [thollander/actions-comment-pull-request](https://github.com/thollander/actions-comment-pull-request) from 1 to 2.
- [Release notes](https://github.com/thollander/actions-comment-pull-request/releases)
- [Commits](https://github.com/thollander/actions-comment-pull-request/compare/v1...v2)

---
updated-dependencies:
- dependency-name: thollander/actions-comment-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 12:27:51 +05:00
dependabot[bot]
9249ea9f0c build(deps): bump actions/setup-python from 2 to 4 (#32136)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 18:57:19 +05:00
dependabot[bot]
b054e0d20d build(deps): bump actions/cache from 2 to 3 (#32138)
Bumps [actions/cache](https://github.com/actions/cache) from 2 to 3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 18:56:40 +05:00
edX requirements bot
40dc6cb5d2 build: added reviewers in dependabot config (#32233) 2023-05-22 16:12:47 +05:00
Matjaz Gregoric
960781ea3f Merge pull request #32220 from openedx/mtyaka/fix-gh-test-shards
fix: update shard names for GH tests
2023-05-16 12:06:55 +02:00
Tim McCormack
2274b55ca0 feat: Add change-description field to upgrade-one-dep workflow (#32214)
This will allow people to optionally describe the dependency upgrade
without having to rewrite the auto-generated commit or edit the PR body.
(The PR body isn't even guaranteed to make it into the eventual merged
commit.)
2023-05-12 13:38:10 +00:00
Matjaz Gregoric
f0331ba813 fix: don't run test check when using GH runners 2023-05-11 09:06:08 +02:00
Matjaz Gregoric
2d2a3100f1 fix: update shard names for GH tests
Github hosted tests weren't working because shards were not up to date.
2023-05-11 08:29:31 +02:00
Feanil Patel
3dec975527 build: Monitor changes to minimal.yml
We don't want a lot of things to end up in minimal.yml so get tagged on
reviews of it.
2023-05-09 10:38:00 -04:00
Ahtisham Shahid
118ea3a024 feat: added enrollment api for notification config (#32162)
* feat: added enrollment API for notification config

* feat: added apps.py in notifications

* feat: added waffle flag for notification app

* feat: added proper docs for the API
2023-05-09 11:51:31 +05:00
Tim McCormack
b1f8b9339a build: Add upgrade-package Make target and workflow (#32131)
This adds a Make target that should simplify the common task of
upgrading a single dependency. Sometimes people manually edit the pin
files, which we would like to avoid; hopefully this will make it
easier for them to do the right thing.

The GitHub workflow should also make it easier for people on Mac to
recompile requirements in a Linux environment, reducing the number of
times spurious dependency changes show up in the pin files (due to
OS-dependent requirements.)

Also, separate upgrade/downgrade instructions and simplify the latter.
(Min constraints are rare and we usually move beyond them quickly.)
2023-04-27 13:44:47 +00:00
edX requirements bot
a2f1ad1f11 build: added dependabot config (#32039) 2023-04-26 19:17:52 +05:00
Matjaz Gregoric
76080a7377 Merge pull request #32053 from openedx/mtyaka/update-pr-template-palm
build: nudge devs about Palm release in github
2023-04-24 09:28:39 +02:00
Matjaz Gregoric
e212641257 build: nudge devs about Palm release in github
Remind devs that when they open PRs on edx-platform, that they should
backport their bug fixes to the Palm master branch
(and think about backporting to Olive as well).
2023-04-24 08:49:48 +02:00
Kyle McCormick
151c4fcfb2 build: move collectstatic ignore patterns into configuration (#31934)
Adds a tiny `openedx.core.djangoapps.staticfiles` app so that
static asset ignore patterns can be coded into configuration rather
than supplied on the command line or coded into pavelib.
Makes it easier to run static asset collection without Paver.

See ADR for details:
openedx/core/djangoapps/staticfiles/docs/decisions/0001-purpose-of-app.rst

Closes: https://github.com/openedx/edx-platform/issues/31658
2023-04-21 08:26:48 -04:00
Tim McCormack
66b8b1dd79 build: Remove workarounds for missing packages (#32088)
We'd prefer to install the OS packages rather than have these workarounds
for missing system libraries.
2023-04-18 18:29:52 +00:00
Usama Sadiq
0ec7b8cc30 fix: fix make upgrade job and _mysql issue (#32084)
* fix: upgrade pip & pip-tools versions
* fix: install libmysqlclient-dev system package again
* fix: skip reinstalling mysqlclient package
* fix: add pytz package constraint

---------

Co-authored-by: edX requirements bot <49161187+edx-requirements-bot@users.noreply.github.com>
2023-04-18 18:10:01 +05:00
Braden MacDonald
2dc79bcab4 feat: New django app for copying and pasting OLX content in Studio (#31904)
[FC-0009]
2023-04-14 11:41:41 -07:00
SaadYousaf
dc63e525f8 feat: add platform notification app and models 2023-04-14 14:32:17 +05:00
Kyle McCormick
cd24534653 build: run ShellCheck in CI (#31809)
build: run ShellCheck

Adds a ShellCheck check to edx-platform PRs and master,
using the shared workflow & template from the .github repo.
This will become a "required" check once it passes for 2 straight weeks on master.

Brings all existing shell scripts into compliance with ShellCheck.
2023-03-10 16:10:56 +00:00
Kyle McCormick
ed8d0e28bb build: add docs to github.in & ensure ArbiBOM sees changes to it (#31824)
Nine different URL-specified Python dependencies had
accumulated in edx-platform, noticably increasing the amount
time it took to install edx-platform requirements.

After many developer hours of work, we are nearly finished
converting them to PyPI-hosted depencencies:
openedx/wg-developer-experience#153

We're making these updates in hopes that we don't end
up with so many URL-specified depencencies again.
We're also updating OEP-18:
https://github.com/openedx/open-edx-proposals/pull/450

The CODEOWNERS update would mean that Arbi-BOM is notified
on all future PRs that change github.in. At the moment, edx-platform
does not *require* CODEOWNER review, so this is not a *hard* gate to
github.in changes.
2023-03-06 15:15:01 +00:00
Feanil Patel
c28f36cf6a build: Updating a missing workflow file add-depr-ticket-to-depr-board.yml.
The .github/workflows/add-depr-ticket-to-depr-board.yml workflow is missing or needs an update to stay in
sync with the current standard for this workflow as defined in the
`.github` repo of the `openedx` GitHub org.
2023-02-23 15:34:10 -05:00
Feanil Patel
f8e3fd35dc build: Creating a missing workflow file add-remove-label-on-comment.yml.
The .github/workflows/add-remove-label-on-comment.yml workflow is missing or needs an update to stay in
sync with the current standard for this workflow as defined in the
`.github` repo of the `openedx` GitHub org.
2023-02-23 15:34:09 -05:00
Feanil Patel
faf5fc28b8 build: Creating a missing workflow file self-assign-issue.yml.
The .github/workflows/self-assign-issue.yml workflow is missing or needs an update to stay in
sync with the current standard for this workflow as defined in the
`.github` repo of the `openedx` GitHub org.
2023-02-23 15:34:08 -05:00
Tim McCormack
197fef9c2b docs: Various cleanup of outdated comments and docstrings (#31754)
- Remove pylint warning suppression from SHAKE-128 hexdigest calls; these
  are no longer needed as of astroid 2.12.12. For background, see issue
  <https://github.com/PyCQA/pylint/issues/4039>. Also, correct a comment
  that referred to SHAKE-256 instead of SHAKE-128.
- Replace "released" with "beta" in several places where there was a copy
  & paste error in dark_lang. Add mention of `beta_lang` to a docstring
  where it was omitted.
- Remove comment regarding Mongo startup; the code it referred to has since
  been removed.
- Fix typos.
2023-02-14 18:11:57 +00:00
Zubair Shakoor
59a19957a0 Code coverage added (#31630)
* fix: code coverage added

* fix: .coverage folder added

* fix: .coverage folder location changed

* fix: combine folder modified

* fix: combine command updated

* fix: .coverage folder rollback

* fix: path commented

* fix: upload path modified

* fix: path updated to root

* fix: .coveragerc added

* fix: new coverage folder added

* fix: combine path removed

* fix: coverage files path changed

* fix: data files path updated

* fix: .coverage added as path

* fix: coveragerc updated

* fix: env TEST_SUIT rollbacked

* fix: renaming coverage files step added

* fix: ls added for testing

* fix: debugging commands added

* fix: triggeering cov command in tox.in

* fix: cd coverage added

* fix: commands modified

* fix: triggering coverage using command

* fix: removed omitteed files

* fix: removed all omited files

* fix: skipped all omitted files

* fix: source updated to root in coveragern

* fix: coveragerc files rolledback

* fix: source changed to edx-platform

* fix: cms-2 shard name reemoved

* fix: rmeoved coveragee trigger

* fix: removed shard added back

* fix: --cov-config=setup.cfg added

* fix: combining cov paths format changed to comma

* fix: bash changeeed for coveerage

* fix: paths updateed for testing

* fix: coverage combine command fixed

* fix: final check applied

* fix: final coveragee step addeed and tested

* fix: actions version upgraded in unit tests

* fix: testing space separated commands

* fix: coverage data files path removeed from combine command

* fix: coverage combine reports/* addedd

* fix: updated --cov path

* fix: data_file path updated by removing TEST_SUIT variable

---------

Co-authored-by: Awais Qureshi <awais.qureshi@arbisoft.com>
2023-02-03 14:14:09 +05:00
Shafqat Farhan
68acdca9d7 feat: VAN-1221 - POC: Course skills based recommendations from Algolia 2023-01-23 12:10:28 +05:00
Awais Qureshi
90f4f6543d build: Adding constraints to avoid multiple major upgrades. (#31551)
* build: Adding constraints to avoid multiple major upgrades
2023-01-16 16:24:34 +05:00
Jeremy Ristau
72d8016985 feat: including init file to notify on structural changes 2023-01-11 10:08:33 -05:00
Jeremy Ristau
50852257c0 feat: point to newly refactored enrollments file 2023-01-10 09:36:49 -05:00
Jeremy Ristau
80677b3d09 feat: ping 2u-tnl for changes to student model
student model changes should notify 2u-tnl team, to trigger a SOX compliance oriented review of the changes.
2023-01-10 09:36:49 -05:00
Muhammad Umar Khan
23975b0263 build: run lint import check on master branch (#31494) 2023-01-04 18:24:03 +05:00
Ned Batchelder
8456aef630 docs: remove a link to a closed pull request
I had hopes that the OEP would be merged, but it wasn't, so don't use it
as a reference anymore.
2022-12-22 10:46:02 -05:00
Ned Batchelder
8ad3082ffa docs: update pull request template for Olive. 2022-12-21 08:01:25 -08:00
Tim McCormack
b8a34f0c57 build: Set Django version for tests more safely; drop support for non-GHA (#31387)
We have a need to lock the version of Django for production and tests, but
also to test on newer versions of Django so that we can get the repo ready
for long-term-support releases.

We've been doing that by extracting the `django==x.y.z` from the
pip-compiled files and moving it to a django.txt that is then co-installed
but can be overridden during tests. The problem is that this can result
in broken packages.

The approach here is to have `make test-requirements` continue to
ensure a consistent set of packages, and then install a different
Django on top of that in the CI script -- and call `pip check` to make
sure that combination isn't broken.

Adding Django 4.0 to the unit-tests.yml matrix will now correctly
result in this error and a failing job:
`django-splash 1.2.1 has requirement Django<4.0, but you have django 4.0.8.`

The other half of this is to change other CI runners to remove their
ability to control the Django version, since it's complicated to make
this work, and we probably only need it in unit-tests.yml. Convert them
to just use `make test-requirements`.

Also:

- Simplify handling of `pip --src` by setting `PIP_SRC` (rather than our
  own `PIP_SRC_DIR`, which pip ignores because `--src-dir` isn't an option
  that it knows). This is needed to allow `make test-requirements` to do
  the pip calls. An alternative would be to set a pip-options env var for
  the make target to use, but `PIP_SRC` already exists.
- Remove outdated modifications to common_constraints
- Add comment explaining why pylint tests need dev-requirements
2022-12-12 21:45:15 +00:00
Muhammad Umar Khan
9c279444df build: add import linter check (#31062)
* build: add import linter check
2022-12-07 12:07:09 +05:00
Soban Javed
89ce1a52a7 build: run tests for open-release branches on GH hosted runners 2022-11-17 16:40:41 +05:00
Feanil Patel
d5082c0341 fix: Remove non-working teams from the CODEOWNERS file.
The teams stopped working when we moved the repo to the openedx org.
Also, things have been re-organized at 2U so it's unclear if these
ownership mappings are still relevant.  I'm removing them for now and
I've posted on the forums to let people know if they want to add back in
more relevant teams.

Relevant Link: https://discuss.openedx.org/t/edx-platform-codeowners/8649
2022-11-03 13:49:03 -04:00
Feanil Patel
eb0f7864ea Merge pull request #31253 from openedx/feanil/update_codeowners
feat: Ping tCRIL on-call if someone updates the legacy dashboard.
2022-11-03 13:44:17 -04:00
Feanil Patel
dccc697b0e feat: Ping tCRIL on-call if someone updates the legacy dashboard.
This could be a person using the quickstart and we want to be notified
of that so we can prais them and close the PR.
2022-11-03 10:28:52 -04:00
Usama Sadiq
4734f9f16e fix: bump pylint version (#31084) 2022-10-27 12:19:09 +05:00
Feanil Patel
2ee7aa4657 build!: Revert to default issue templates.
Rather than having an override for this repo, revert to the default
issue templates defined in the `.github` repo for the Open edX Project.

BREAKING CHANGE: This will allow anyone to create blank issues which was
previously only possible via a work-around.
2022-10-20 10:20:29 -04:00
Matjaz Gregoric
2f5a5ecd48 build: nudge devs about Olive release in github
Remind devs that when they open PRs on edx-platform, that they should backport their bug fixes to the Olive master branch (and think about backporting to Nutmeg as well).
2022-10-11 20:15:24 +02:00
Ned Batchelder
f3031d0b2a build(fix): use alls-green to correctly aggregate earlier steps
If a job "needs" earlier jobs, and one of the earlier jobs fails, then
the "needs" job will be marked as Skipped.  A required check that is
skipped doesn't block merging.

The alls-green action has the correct logic to fail the aggregation job
if any of its required jobs fail.
2022-10-06 04:22:42 -07:00
Kyle McCormick
56961ce0e6 build: fix syntax error in GH-hosted tests workflow (#31105)
We were seeing this error whenever unit tests
were run from a fork (only forks use the GH-hosted
workflow, which is why this was able to merge
into master):

  You have an error in your yaml syntax on line 65

The comment hash (#) needs to be aligned
with the rest of the text block.
2022-10-05 13:30:01 -04:00
Tim McCormack
2edbdcf7f4 build: Clear out stale dependencies when installing requirements (#31080)
We've been seeing some cross-version caching issues in the
edx-platform-runner unit tests, which apparently run on a "dirty"
environment—the virtualenv does not get cleared out between runs,
which probably improves performance but allows installed dependencies
to "leak" between runs. This results in errors between master and older
open-releases but could also prevent us from noticing missing deps.

By using pip-sync in the new CI Make targets (as we already do for
the regular `make requirements` target) we can ensure that any stale
dependencies from runs by other branches (or older versions of the
code) are removed.

Calling `make local-requirements` at the end of each `*-requirements`
target rather than making it a prerequisite is necessary for using sync,
since otherwise the local reqs would be wiped out.

The `requirements` target is also deduplicated into the newer
`dev-requirements` (aliased to it, with both installing private deps now.)

Adding a prerequisite of `pre-requirements` allows us to simplify some
workflow calls slightly. This ends up being the bulk of the commit by
line count. The pip lockfile also wasn't being used in the Makefile, so
I added that to pre-requirements as well.

Also fix leading whitespace issue in Makefile.
2022-10-03 20:26:40 +00:00