diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index ed62972..57a191d 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,10 +1,39 @@ +**Description:** Describe in a couple of sentences what this PR adds + +**ISSUE:** Link to GitHub issue + +**Dependencies:** dependencies on other outstanding PRs, issues, etc. + +**Merge deadline:** List merge deadline (if any) + +**Installation instructions:** List any non-trivial installation +instructions. + +**Testing instructions:** + +1. Open page A +2. Do thing B +3. Expect C to happen +4. If D happened instead - check failed. + +**Reviewers:** +- [ ] tag reviewer +- [ ] tag reviewer **Merge checklist:** -Check off if complete *or* not applicable: +- [ ] All reviewers approved +- [ ] CI build is green - [ ] Version bumped - [ ] Changelog record added - [ ] Documentation updated (not only docstrings) -- [ ] Fixup commits are squashed away -- [ ] Unit tests added/updated -- [ ] Manual testing instructions provided -- [ ] Noted any: Concerns, dependencies, migration issues, deadlines, tickets +- [ ] Commits are squashed + +**Post merge:** +- [ ] Create a tag +- [ ] Check new version is pushed to PyPI after tag-triggered build is + finished. +- [ ] Delete working branch (if not needed anymore) + +**Author concerns:** List any concerns about this PR - inelegant +solutions, hacks, quick-and-dirty implementations, concerns about +migrations, etc. diff --git a/.github/workflows/add-depr-ticket-to-depr-board.yml b/.github/workflows/add-depr-ticket-to-depr-board.yml new file mode 100644 index 0000000..250e394 --- /dev/null +++ b/.github/workflows/add-depr-ticket-to-depr-board.yml @@ -0,0 +1,19 @@ +# Run the workflow that adds new tickets that are either: +# - labelled "DEPR" +# - title starts with "[DEPR]" +# - body starts with "Proposal Date" (this is the first template field) +# to the org-wide DEPR project board + +name: Add newly created DEPR issues to the DEPR project board + +on: + issues: + types: [opened] + +jobs: + routeissue: + uses: openedx/.github/.github/workflows/add-depr-ticket-to-depr-board.yml@master + secrets: + GITHUB_APP_ID: ${{ secrets.GRAPHQL_AUTH_APP_ID }} + GITHUB_APP_PRIVATE_KEY: ${{ secrets.GRAPHQL_AUTH_APP_PEM }} + SLACK_BOT_TOKEN: ${{ secrets.SLACK_ISSUE_BOT_TOKEN }} diff --git a/.github/workflows/add-remove-label-on-comment.yml b/.github/workflows/add-remove-label-on-comment.yml new file mode 100644 index 0000000..a658064 --- /dev/null +++ b/.github/workflows/add-remove-label-on-comment.yml @@ -0,0 +1,19 @@ +# This workflow runs when a comment is made on the ticket +# If the comment starts with "label: " it tries to apply +# the label indicated in rest of comment. +# If the comment starts with "remove label: ", it tries +# to remove the indicated label. +# Note: Labels are allowed to have spaces and this script does +# not parse spaces (as often a space is legitimate), so the command +# "label: really long lots of words label" will apply the +# label "really long lots of words label" + +name: Allows for the adding and removing of labels via comment + +on: + issue_comment: + types: [created] + +jobs: + add_remove_labels: + uses: openedx/.github/.github/workflows/add-remove-label-on-comment.yml@master diff --git a/.github/workflows/self-assign-issue.yml b/.github/workflows/self-assign-issue.yml new file mode 100644 index 0000000..37522fd --- /dev/null +++ b/.github/workflows/self-assign-issue.yml @@ -0,0 +1,12 @@ +# This workflow runs when a comment is made on the ticket +# If the comment starts with "assign me" it assigns the author to the +# ticket (case insensitive) + +name: Assign comment author to ticket if they say "assign me" +on: + issue_comment: + types: [created] + +jobs: + self_assign_by_comment: + uses: openedx/.github/.github/workflows/self-assign-issue.yml@master diff --git a/.github/workflows/upgrade-python-requirements.yml b/.github/workflows/upgrade-python-requirements.yml index ef72b47..31fd5a2 100644 --- a/.github/workflows/upgrade-python-requirements.yml +++ b/.github/workflows/upgrade-python-requirements.yml @@ -16,9 +16,9 @@ jobs: with: branch: ${{ github.event.inputs.branch || 'main' }} # optional parameters below; fill in if you'd like github or email notifications - user_reviewers: "bmtcril" + user_reviewers: "openedx-event-sink-clickhouse-maintainers" # team_reviewers: "" - email_address: "bmesick@axim.org" + # email_address: "" # send_success_notification: false secrets: requirements_bot_github_token: ${{ secrets.REQUIREMENTS_BOT_GITHUB_TOKEN }} diff --git a/README.rst b/README.rst index 9172454..7b9da0a 100644 --- a/README.rst +++ b/README.rst @@ -83,6 +83,12 @@ Every time you develop something in this repo Deploying ========= +The Open edX Event Sink Clickhouse component is a django plugin which doesn't +need independent deployment. Therefore, its setup is reasonably +straightforward. First, it needs to be added to your service +requirements, and then it will be installed alongside requirements +of the service. + This plugin will be deployed by default in an OARS Tutor environment. For other deployments install the library or add it to private requirements of your virtual environment ( ``requirements/private.txt`` ). @@ -122,11 +128,7 @@ Getting Help Documentation ============= -PLACEHOLDER: Start by going through `the documentation`_. If you need more help see below. - -.. _the documentation: https://docs.openedx.org/projects/openedx-event-sink-clickhouse - -(TODO: `Set up documentation `_) +See `documentation on Read the Docs `_. More Help ========= diff --git a/requirements/base.txt b/requirements/base.txt index 9345f68..23c5b88 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -67,7 +67,7 @@ pytz==2023.3 # via # celery # django -requests==2.29.0 +requests==2.30.0 # via -r requirements/base.in six==1.16.0 # via click-repl @@ -77,7 +77,7 @@ stevedore==5.0.0 # via # edx-django-utils # edx-opaque-keys -urllib3==1.26.15 +urllib3==2.0.2 # via requests vine==5.0.0 # via diff --git a/requirements/dev.txt b/requirements/dev.txt index 721236d..cf53b8a 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -266,7 +266,7 @@ pyyaml==6.0 # code-annotations # edx-i18n-tools # responses -requests==2.29.0 +requests==2.30.0 # via # -r requirements/quality.txt # responses @@ -328,7 +328,7 @@ typing-extensions==4.5.0 # -r requirements/quality.txt # astroid # pylint -urllib3==1.26.15 +urllib3==2.0.2 # via # -r requirements/quality.txt # requests diff --git a/requirements/doc.txt b/requirements/doc.txt index c7d3a6a..e4934ef 100644 --- a/requirements/doc.txt +++ b/requirements/doc.txt @@ -39,6 +39,7 @@ certifi==2022.12.7 cffi==1.15.1 # via # -r requirements/test.txt + # cryptography # pynacl charset-normalizer==3.1.0 # via @@ -71,6 +72,8 @@ coverage[toml]==7.2.5 # via # -r requirements/test.txt # pytest-cov +cryptography==40.0.2 + # via secretstorage django==3.2.19 # via # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt @@ -121,6 +124,10 @@ iniconfig==2.0.0 # pytest jaraco-classes==3.2.3 # via keyring +jeepney==0.8.0 + # via + # keyring + # secretstorage jinja2==3.1.2 # via # -r requirements/test.txt @@ -221,7 +228,7 @@ pyyaml==6.0 # responses readme-renderer==37.3 # via twine -requests==2.29.0 +requests==2.30.0 # via # -r requirements/test.txt # requests-toolbelt @@ -238,6 +245,8 @@ rfc3986==2.0.0 # via twine rich==13.3.5 # via twine +secretstorage==3.3.3 + # via keyring six==1.16.0 # via # -r requirements/test.txt @@ -300,7 +309,7 @@ typing-extensions==4.5.0 # via # pydata-sphinx-theme # rich -urllib3==1.26.15 +urllib3==2.0.2 # via # -r requirements/test.txt # requests diff --git a/requirements/quality.txt b/requirements/quality.txt index 70c0acd..f7b7389 100644 --- a/requirements/quality.txt +++ b/requirements/quality.txt @@ -200,7 +200,7 @@ pyyaml==6.0 # -r requirements/test.txt # code-annotations # responses -requests==2.29.0 +requests==2.30.0 # via # -r requirements/test.txt # responses @@ -243,7 +243,7 @@ typing-extensions==4.5.0 # via # astroid # pylint -urllib3==1.26.15 +urllib3==2.0.2 # via # -r requirements/test.txt # requests diff --git a/requirements/test.txt b/requirements/test.txt index dd30475..9873e2d 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -139,7 +139,7 @@ pyyaml==6.0 # via # code-annotations # responses -requests==2.29.0 +requests==2.30.0 # via # -r requirements/base.txt # responses @@ -167,7 +167,7 @@ tomli==2.0.1 # pytest types-pyyaml==6.0.12.9 # via responses -urllib3==1.26.15 +urllib3==2.0.2 # via # -r requirements/base.txt # requests