This automation is not documented and has not been used in over seven
months. Remove references to it before we remove it from the
organization.
See https://github.com/openedx/axim-engineering/issues/898 for more
details.
I get a weekly CI failure due to having a fork of edx-platform. This
should stop that from happening.
Also:
- Dedent job name slightly so that the formatting is a little more standard
- Move the `uses` key up so that it's more obvious what's being called
This skips the `make compile-requirements` check when there have been
no changes under `requirements/**`, but it does so in a way that still
registers the action as having passed, not skipped. By doing so, we
can make it a required check while also avoiding the 5-6 minutes of
wasted worker time.
This commit also removes the activation on push-to-master, since we really
just need to check PRs. I don't expect there to be silent merge conflicts
with this check, so if it passes on a branch it should also pass on a
successful simple rebase or merge.
It would be nice if there was a way to declare success and exit early,
but GH hasn't implemented it: https://github.com/actions/runner/issues/662
Alternatively, it would be great if skipped checks could count as
fulfilling the branch protection rules, but no luck there.
The only alternative that uses GH's built-in paths/paths-ignore
feature would be to add a second workflow with the same job name and
the opposite path triggers and that always passes. It's not clear that
this would be any less fragile or confusing than the `git diff | grep`
and step-conditionals approach.
Adds a GH workflow that will run `make compile-requirements` and create
a PR for it and overhauls the requirements README with info on how to
use the new workflows.
README changes:
- Group the workflow/makefile info under a new heading
- Switch to imperative for headings
- Move "Upgrade all dependencies" to end of list (uncommon for people to
actually need this command, I suspect)
- Add "Add a dependency"
- Preamble about .in and .txt files and Mac vs. Linux, as well as about forks
Also, some style fixes to upgrade-one-python-dependency GH workflow:
- Fix indentation in inputs block
- Remove "-workflow" from job name (probably copied from another workflow)
- Wrap a long line
We have a few situations where requirements files can become
inconsistent or cause unnecessary review churn in later `make upgrade`
runs either due to manual editing, inconsistent environments, or
incorrectly specified git dependencies. This will produce a failing
check for any PR that does not produce a clean run of `make
compile-requirements` on Linux.
Addresses https://github.com/openedx/edx-platform/issues/31372
@feanil is overhauling the docs structure of edx-platform currently.
Recently, a change he made upped the docs build time from <15mins
to >40mins. Rather than revert the changes he is making, we're going
to take the docs build check out of CI for now. He plans to re-enable
the build check, but as a ReadTheDocs build, not a GitHub Action.
He's actively working on the docs, so he's not worried about any
regressions that may pop up while the check is disabled.
It's worth noting that the current docs check does not actually
publish its output anywhere.
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.
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.)
* 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
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.)
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).
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
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.
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.