| ############################ Copyrights and license ############################ | |
| # # | |
| # Copyright 2012 Vincent Jacques <vincent@vincent-jacques.net> # | |
| # Copyright 2012 Zearin <zearin@gonk.net> # | |
| # Copyright 2013 Vincent Jacques <vincent@vincent-jacques.net> # | |
| # Copyright 2014 Vincent Jacques <vincent@vincent-jacques.net> # | |
| # Copyright 2016 Peter Buckley <dx-pbuckley@users.noreply.github.com> # | |
| # Copyright 2018 sfdye <tsfdye@gmail.com> # | |
| # Copyright 2019 Steve Kowalik <steven@wedontsleep.org> # | |
| # Copyright 2019 TechnicalPirate <35609336+TechnicalPirate@users.noreply.github.com># | |
| # Copyright 2019 Wan Liuyang <tsfdye@gmail.com> # | |
| # Copyright 2020 Steve Kowalik <steven@wedontsleep.org> # | |
| # Copyright 2022 Eric Nieuwland <eric.nieuwland@gmail.com> # | |
| # Copyright 2023 Denis Blanchette <dblanchette@coveo.com> # | |
| # Copyright 2023 Enrico Minack <github@enrico.minack.dev> # | |
| # Copyright 2023 Trim21 <trim21.me@gmail.com> # | |
| # # | |
| # This file is part of PyGithub. # | |
| # http://pygithub.readthedocs.io/ # | |
| # # | |
| # PyGithub is free software: you can redistribute it and/or modify it under # | |
| # the terms of the GNU Lesser General Public License as published by the Free # | |
| # Software Foundation, either version 3 of the License, or (at your option) # | |
| # any later version. # | |
| # # | |
| # PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # | |
| # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # | |
| # FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # | |
| # details. # | |
| # # | |
| # You should have received a copy of the GNU Lesser General Public License # | |
| # along with PyGithub. If not, see <http://www.gnu.org/licenses/>. # | |
| # # | |
| ################################################################################ | |
| from typing import Dict, Optional, Union | |
| import deprecated | |
| from github.Auth import AppAuth, AppInstallationAuth | |
| class AppAuthentication(AppInstallationAuth): | |
| def __init__( | |
| self, | |
| app_id: Union[int, str], | |
| private_key: str, | |
| installation_id: int, | |
| token_permissions: Optional[Dict[str, str]] = None, | |
| ): | |
| super().__init__( | |
| app_auth=AppAuth(app_id, private_key), | |
| installation_id=installation_id, | |
| token_permissions=token_permissions, | |
| ) | |