Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/kiwitcms/github-app

GitHub App integration for Kiwi TCMS
https://github.com/kiwitcms/github-app

Refactor utility functions to work with Repository objects

because some payloads do not have all of the necessary information
we talk directly to GitHub to...

71126ebb0d5f34e0f6a20ed2132a68ea189bf074 authored over 4 years ago by Mr. Senko <[email protected]>
Move _find_token() in utils.py

will be used in the Product/BugSystem adding functions so they
can read data directly via the Gi...

ecf289a9fbaeb1fb499b5b609953b4000b135c46 authored over 4 years ago by Mr. Senko <[email protected]>
tests: Mock GitHub RPC so that existing tests can PASS again

this is a necessity after the rpevious commit which refactors
utility functions to work with git...

3ae160b930923c0ccdabe6f21da963a35cc473bc authored over 4 years ago by Mr. Senko <[email protected]>
Configure bugtracker for new repos. Fixes #15

when a new repository is added on GitHub Kiwi TCMS will create
a bug tracker integration record ...

6cea7007e157042ecce08afa1f8d6fa4f517a82f authored over 4 years ago by Mr. Senko <[email protected]>
tests: update after kiwitcms-tenants updates

the tenant name used for fast tests isn't "test" anymore. This
was changed in kiwitcms-tenants v...

74ef14dcb848b040ab116aee23f0497eb4beeb6d authored over 4 years ago by Mr. Senko <[email protected]>
Fallback to @kiwitcms-bot on public repositories

if we could find the kiwitcms-bot user in the database!

This will help us visualize how much th...

f948276a6891f5e99fa68b00144eea037e6e1ca8 authored over 4 years ago by Mr. Senko <[email protected]>
GitHub integration which authenticates as installed app. Fixes #25

- Requires the KIWI_GITHUB_APP_ID and KIWI_GITHUB_APP_PRIVATE_KEY
settings to be defined
- Alt...

844772e4bda4c1820508985ecfbce0b030387cad authored over 4 years ago by Mr. Senko <[email protected]>
Test adding private repo as Product

private repositories are not treated any differently for now

6db32940b3328a7446b2763a046a19e5448f3711 authored over 4 years ago by Mr. Senko <[email protected]>
l10n: Add make target to build source strings

a1f0bd024d4c3c7d0cc4bf90aea4b982b5de0a36 authored over 4 years ago by Mr. Senko <[email protected]>
l10n: Add source strings

6b05367f7242d2ceecb2bfb4382fb65f3af40a9f authored over 4 years ago by Mr. Senko <[email protected]>
Changelog for v1.0

ba24b759ea30fbac08cd2fba46deda2a580a58a5 authored over 4 years ago by Mr. Senko <[email protected]>
Document why ApplicationEdit doesn't need @permission_required

da3a0ecdb1d5e828977925c93d11f987828467df authored over 4 years ago by Mr. Senko <[email protected]>
Update README

with a bit more info how to configure on the GitHub side

a15827024b817b1f7b2088276038dfb5ef466ad8 authored over 4 years ago by Mr. Senko <[email protected]>
social_core backend is called github-app, not github

85dc5cb639b6f049cec532469e286a51db6ef975 authored over 4 years ago by Mr. Senko <[email protected]>
Disable some pylint checks which are not necessary here

d4e626317ebc8c045fbd03e9f63e1bdece25f369 authored over 4 years ago by Mr. Senko <[email protected]>
Enable kiwi_lint

128519ac630fe4e382589ca779ac7736b6bc8968 authored over 4 years ago by Mr. Senko <[email protected]>
Make this package ship its own settings

7070c477beb18762a2efddb39bf4c7f6422bf3a2 authored over 4 years ago by Mr. Senko <[email protected]>
Adjust test_project/settings.py to load from tcms_settings_dir/

- kiwitcms-tenants settings will be loaded by product.py
- here only the essentials are provided...

ce416de6535abea5b84f15e81bb0a0685d9e9901 authored over 4 years ago by Mr. Senko <[email protected]>
Use modify_settings as context manager to disable CheckGitHubAppMiddleware

because it causes all requests to redirect to app configuration page

NOTE1: @modify_settings de...

f73f9b27da091bd79a8b811369abc43f1122a767 authored over 4 years ago by Mr. Senko <[email protected]>
Remove GithubAppAuth backend, shipped with social-auth-core v3.3.0

5e434cc8ad7e62ec9be7029996b8c0c003fccf11 authored over 4 years ago by Mr. Senko <[email protected]>
Changelog for v0.0.5

d445ffcb0e9abce0204b8a969050fd4c03687cc1 authored almost 5 years ago by Mr. Senko <[email protected]>
Address GitHub deprecation not yet fixed in social-auth-core v3.2.0

Reported in:
https://github.com/python-social-auth/social-core/issues/430

Patch in:
https://git...

a990aa8dfc5e25c2fe072cd499e37ca15e9ad7e9 authored almost 5 years ago by Mr. Senko <[email protected]>
Update Sponsor button

4c4ff5e538ea3f426da96e92cd5229cd93f32144 authored about 5 years ago by Mr. Senko <[email protected]>
Typo

a08517af870ca8db38c9f844b654049a1249db31 authored about 5 years ago by Mr. Senko <[email protected]>
badges

6f0c22ee1de1770ac4566dad040c300cf6f88c8b authored about 5 years ago by Mr. Senko <[email protected]>
Another take on Product.description

https://sentry.io/organizations/open-technologies-bulgaria-ltd/issues/1405565948/

8f51bb3f65f4035ce1e7c8fe799b15a083a06b21 authored about 5 years ago by Mr. Senko <[email protected]>
Product.description can't be null

3e08c34e80c2f0ee36bf7cca665dcedea50a6ec3 authored about 5 years ago by Mr. Senko <[email protected]>
Changelog for v0.0.3

a0783b81e49096d194e00373156f8f15e8e75684 authored about 5 years ago by Mr. Senko <[email protected]>
Changelog for v0.0.2

9004de2e5ef37d33547117ff17c95d238f741cf1 authored about 5 years ago by Mr. Senko <[email protected]>
Do not fail if product already exists

e19a154199617b626ef0ac9a21e96915252e8388 authored about 5 years ago by Mr. Senko <[email protected]>
Search UserSocialAuth by uid and provider

- the new provider is named 'github-app' so PSA creates a new
entry in the database
- in case ...

0ba09ce703a8f10af425f78d9f5796f165521f34 authored about 5 years ago by Mr. Senko <[email protected]>
Update OAuth callback URL and required settings for new backend

9242f81eed27d103271cf9977e1bae4af6a12a6c authored about 5 years ago by Mr. Senko <[email protected]>
Update README with 1 more setting

22d251427414d83b16e4a9101accc12b2501bd98 authored about 5 years ago by Mr. Senko <[email protected]>
Changelog for v0.0.1

35ef894cf6452f61e55e4fafc9481a1afe8b6fcb authored about 5 years ago by Mr. Senko <[email protected]>
Add reference to one more known issue

7b9ffe964c7d321b5f4afc2af5a8776c0e0e9766 authored about 5 years ago by Mr. Senko <[email protected]>
Update behavior in README

5dc286d5cbc1d7c63ab5221f30909a2c14927c82 authored about 5 years ago by Mr. Senko <[email protected]>
Add repo tags as Version in DB

note: the create event payload doesn't have an action attribute

64cf6e0ed306f90b2775b2ff1cbf895ee5ec1aa4 authored about 5 years ago by Mr. Senko <[email protected]>
Document app settings, permissions & subscriptions

3ac353e9e5d6778b76c06ff12e21aa4f4a936484 authored about 5 years ago by Mr. Senko <[email protected]>
db: Accept None for action field b/c this is what GitHub sends

for some event hooks, e.g. create tag, GitHub doesn't sent the
action field

22f607ac2019d00711385540204c3079d42c43d8 authored about 5 years ago by Mr. Senko <[email protected]>
Update README with more ideas

fc5de436c53c3a8297bac8d6b2065795a6e4b6a0 authored about 5 years ago by Mr. Senko <[email protected]>
tests: Do not include tcms_github_app.urls

the plugin loading code in tcms/urls.py should do this
automatically so we don't need to do it o...

1164e67fc9006cf1b9ee56ce6f6e66f947e028fd authored about 5 years ago by Mr. Senko <[email protected]>
tests: locally install in CI so Kiwi TCMS can detect this as a plugin

- we need kiwitcms>=7.2.1 for these tests to work

a23778eefbfe37b26d3786eb7ab24033fa9e2cd7 authored about 5 years ago by Mr. Senko <[email protected]>
Update installation instructions

9ef4d1ff5ca0e6528a7959f3056ac505a082da56 authored about 5 years ago by Mr. Senko <[email protected]>
tests: change how tcms_github_app gets added to INSTALLED_APPS

76c08ef95f2db3b0f1abbd5bde8be7f00b552169 authored about 5 years ago by Mr. Senko <[email protected]>
Add tests for plugin operation

- needs Kiwi TCMS > v7.2

a4829f7d6e2cb20d72654f9bceb9e2a773901ea9 authored about 5 years ago by Mr. Senko <[email protected]>
update syntax

bb66dd9b448cd1f587240edce1c656857b5a8324 authored about 5 years ago by Mr. Senko <[email protected]>
Turn this app into Kiwi TCMS plugin

bc3ac3688bf2d4c13c8656d0a7c1b652af5dbc52 authored about 5 years ago by Mr. Senko <[email protected]>
Add view to help users reach their GitHub App edit section

this will be later added as a menu option in navigation bar

1d8c74138d8df61c5e60ae92464d9e40b5bcd956 authored about 5 years ago by Mr. Senko <[email protected]>
Update queries for social_user from user

using the reverse relationship manager b/c this is a bit more
natural way of writing the code.

1dc556172318983cb276e7ff0d3b13968d48f80e authored about 5 years ago by Mr. Senko <[email protected]>
admin tests: assert access to non-public tenant

5018408a0af425a212aeef0b9ff749aacecc61aa authored about 5 years ago by Mr. Senko <[email protected]>
admin test: verify updating the AppInstallation works

which will also exercise the tenant_pk validation code

8e5efc02f9c0618597eda316bc8709abcebffce2 authored about 5 years ago by Mr. Senko <[email protected]>
WebhookPayloadAdmin - forbid any changes and add tests

ae32387e91bc898d51c2dbeed2a7072a9966a870 authored about 5 years ago by Mr. Senko <[email protected]>
tests: validate views & permissions for AppInstallationAdmin

afdc519bc88221aea6d07f6bf74d145bd50d4661 authored about 5 years ago by Mr. Senko <[email protected]>
Do not delete public tenant & reuse if exists

ad32d0763e15d8916af49212e49ae74d6135e6e1 authored about 5 years ago by Mr. Senko <[email protected]>
Document how to hook URLs into existing Kiwi TCMS

7cf572dac9f8f2bebd7571a5d7382cced4eb11fd authored about 5 years ago by Mr. Senko <[email protected]>
admin: Disable add/delete for AppInstallation even for super-user

- only super-user can see list view

9b484aaa4c6fc8329d7cd4112200dcb7c344e838 authored about 5 years ago by Mr. Senko <[email protected]>
admin: installation & sender fields are read-only

438c695f38124cfe0cc9480ddf75b192da67cc21 authored about 5 years ago by Mr. Senko <[email protected]>
admin: allow choosing tenants for app config

the admin form displays a drop down list of
None, public and any private tenants sender may have...

88a7f1a94a99f01fcca5c81b8509cde1fc93afb3 authored about 5 years ago by Mr. Senko <[email protected]>
CheckGitHubAppMiddleware and basic admin

this middleware will warn & redirect users to configure their
integration with GitHub. And we do...

f12d73171557d7fcd2e02e280848f6e289f2a8a8 authored about 5 years ago by Mr. Senko <[email protected]>
Add test for find_tenant() for a corner case

and fix the crash which happens if installation doesn't exist

26a155e638917cdf31cc0c4d4d0377237bb8fdd7 authored about 5 years ago by Mr. Senko <[email protected]>
Adjust asserts/schema_context for previous tests

e84ea5f2f7c16bf8918dee239fe03282a223a551 authored about 5 years ago by Mr. Senko <[email protected]>
Add tests for installation hooks

- sender not in DB
- sender has only access to public tenant
- sender has only access to 1 priva...

21b29644a65418e39efd5c37045529d9e9db8c7b authored about 5 years ago by Mr. Senko <[email protected]>
Remove admin tests copied over

c1185af8dbc5f3dd536d538583a39e02b833a1e5 authored about 5 years ago by Mr. Senko <[email protected]>
Update README

28f32e13012ddd69f4dda00a16a512f957976d3a authored about 5 years ago by Mr. Senko <[email protected]>
Add more tests for repository hooks

- in case installation is not configured then bail out
- if confiured then sync repo
- skip forks

84d1b25a0a4d242f384b444c5ee92b08525ce61d authored about 5 years ago by Mr. Senko <[email protected]>
Teach this app about GitHub installation events

- save information in DB to allow tenant configuration:
- attempt auto-config in simple cases
...

3364509afc13baa54a2dd014c6c7540b2a6836e1 authored about 5 years ago by Mr. Senko <[email protected]>
Make this depend on kiwitcms-tenants

227df82e91b17507813af4e50dbb67d337acc2d3 authored about 5 years ago by Mr. Senko <[email protected]>
json test data needs double quotes

2c0f7f5b341f9de6b05c87d35f2a5dec64052a57 authored about 5 years ago by Mr. Senko <[email protected]>
pylint & flake8

0ef28db899527dfc99d683dae5ac966c71bcb085 authored about 5 years ago by Mr. Senko <[email protected]>
tests: typo in JSON data

b/c it is not the full payload but just an excerpt

4072a549b47ad8f54b1730a2f3ac201be7c60807 authored about 5 years ago by Mr. Senko <[email protected]>
Add PSA backend which is not yet released

https://github.com/python-social-auth/social-core/pull/413

997d01399d0b6a0200be75dc2bae5e9eef06c769 authored about 5 years ago by Mr. Senko <[email protected]>
Add tests & implementation of Product/repo sync

on receiving a new created:repository hook try to add the
repository as a Product in Kiwi TCMS

994381a935de8852c4242cf95db271e6d974c1f2 authored about 5 years ago by Mr. Senko <[email protected]>
fix missing return

41c3dc2b432ba66336e1728ce713baf56306e085 authored about 5 years ago by Mr. Senko <[email protected]>
tests: fix typo in test data

f569d6876be3e9653c3592f0c7a63c0697e789bf authored about 5 years ago by Mr. Senko <[email protected]>
tests: correct payload to include 'action'

46e664b86117a9ad51b7d8315768e175f71b4e00 authored about 5 years ago by Mr. Senko <[email protected]>
Update view & tests for flake8/pylint

c936d1bc045735adb0b5a69ad2291cf6839a5ea5 authored about 5 years ago by Mr. Senko <[email protected]>
Understand webhook event types

and adjust test suite

47a286f76091e4f09c431a94ac7771d6747d256a authored about 5 years ago by Mr. Senko <[email protected]>
Save webhook payload in DB upon receiving

6c3c58aaf24fecfc8ca99e1e401a3bcfe6005635 authored about 5 years ago by Mr. Senko <[email protected]>
missing import

a7bc6dbbed50ba502d92b4d81d95d78df790eb40 authored about 5 years ago by Mr. Senko <[email protected]>
Add test for payloads with missing GitHub signature header

ff2a165d2a0aefabb0f08595c27aedbb8d44638f authored about 5 years ago by Mr. Senko <[email protected]>
Fix wrong URL in test

2cf0963e797237d4a728e132aee8e5b0e06a4fb5 authored about 5 years ago by Mr. Senko <[email protected]>
Pin social-auth-app-django to latest version 3.1.0

c63bdd98a4286c03884ce32dca9d856a30047e43 authored about 5 years ago by pyup-bot <[email protected]>
Use older Ubuntu in Travis

270ce831ebafe0c62d543956a8184886751639a4 authored about 5 years ago by Mr. Senko <[email protected]>
Add Postgres in Travis CI config

a0be0430bdedf8300509b2ece3519c6c0dca1db3 authored about 5 years ago by Mr. Senko <[email protected]>
Testing is for Postgres only b/c we use Json fields

b76e236295a3c2728d86c44ff0ee4aff62e1cd6c authored about 5 years ago by Mr. Senko <[email protected]>
Add initial migration

900bce3ef1c9919939f90994fa346efe3304a600 authored about 5 years ago by Mr. Senko <[email protected]>
Fix admin tests & first version of models

e36ac9a4fbca8492c4efcdf6c3e1211335fabe2e authored about 5 years ago by Mr. Senko <[email protected]>
Fix code based on existing checks

518882b6562383e1fc7f34dcded209b3913b43ce authored about 5 years ago by Mr. Senko <[email protected]>
Adjust how we run tests

3b2c49625ec15658f8f79f250c91adaf5b35691b authored about 5 years ago by Mr. Senko <[email protected]>
Add social_django as requirement

06ce54e6355493af3ffcebaa58c2ec3ca8c97622 authored about 5 years ago by Mr. Senko <[email protected]>
Remove more unnneeded code for now

315028f53f95dc2d3a4698ae37a0b000485483f7 authored about 5 years ago by Mr. Senko <[email protected]>
Initial copy, based on kiwitcms-github-marketplace

61b5c59b2161708d32c6296ad7d9c09ebe4ea923 authored about 5 years ago by Mr. Senko <[email protected]>