diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-05 05:30:42 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 05:30:42 +0000 |
commit | 25e279b360d5d83ea48bcb354ada271d503c7e92 (patch) | |
tree | 854e8c74aaa312d3dd32e672103d9b955df4ca61 | |
parent | 02425619e2b485882d24656a2a676e261e403c6c (diff) |
automatic import of python-github-contentsopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-github-contents.spec | 234 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 236 insertions, 0 deletions
@@ -0,0 +1 @@ +/github-contents-0.2.tar.gz diff --git a/python-github-contents.spec b/python-github-contents.spec new file mode 100644 index 0000000..8c29169 --- /dev/null +++ b/python-github-contents.spec @@ -0,0 +1,234 @@ +%global _empty_manifest_terminate_build 0 +Name: python-github-contents +Version: 0.2 +Release: 1 +Summary: Python class for reading and writing data to a GitHub repository +License: Apache License, Version 2.0 +URL: https://github.com/simonw/github-contents +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/67/39/30cec2610e796447fa416f941a8351e0c14ac715f22d17c7f2c63ef3e144/github-contents-0.2.tar.gz +BuildArch: noarch + +Requires: python3-requests +Requires: python3-pytest +Requires: python3-betamax + +%description +# github-contents + +[](https://pypi.org/project/github-contents/) +[](https://github.com/simonw/github-contents/releases) +[](https://github.com/simonw/github-contents/actions?query=workflow%3ATest) +[](https://github.com/simonw/github-contents/blob/main/LICENSE) + +Read and write both small and large files to Github. + +The regular [GitHub Contents API](https://developer.github.com/v3/repos/contents/) can't handle files larger than 1MB - this class knows how to spot that problem and switch to the large-file-supporting low level [Git Data API](https://developer.github.com/v3/git/) instead. + +Note that file contents is passed and returned as bytestrings, not regular strings. + +## Installation + + pip install github-contents + +## Usage + +You will need a GitHub OAuth token with full repository access. + +The easiest way to create one of these is using [https://github.com/settings/tokens](https://github.com/settings/tokens) + +```python +from github_contents import GithubContents + +# For repo simonw/disaster-data: +github = GithubContents( + "simonw", + "disaster-data", + token=GITHUB_OAUTH_TOKEN, + branch="main" +) +``` +To read a file: +```python +content_in_bytes, sha = github.read(path_within_repo) +``` +To write a file: +```python +content_sha, commit_sha = github.write( + filepath=path_within_repo, + content_bytes=contents_in_bytes, + sha=previous_sha, # Optional + commit_message=commit_message, + committer={ + "name": COMMITTER_NAME, + "email": COMMITTER_EMAIL, + }, +) +``` + + + + +%package -n python3-github-contents +Summary: Python class for reading and writing data to a GitHub repository +Provides: python-github-contents +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-github-contents +# github-contents + +[](https://pypi.org/project/github-contents/) +[](https://github.com/simonw/github-contents/releases) +[](https://github.com/simonw/github-contents/actions?query=workflow%3ATest) +[](https://github.com/simonw/github-contents/blob/main/LICENSE) + +Read and write both small and large files to Github. + +The regular [GitHub Contents API](https://developer.github.com/v3/repos/contents/) can't handle files larger than 1MB - this class knows how to spot that problem and switch to the large-file-supporting low level [Git Data API](https://developer.github.com/v3/git/) instead. + +Note that file contents is passed and returned as bytestrings, not regular strings. + +## Installation + + pip install github-contents + +## Usage + +You will need a GitHub OAuth token with full repository access. + +The easiest way to create one of these is using [https://github.com/settings/tokens](https://github.com/settings/tokens) + +```python +from github_contents import GithubContents + +# For repo simonw/disaster-data: +github = GithubContents( + "simonw", + "disaster-data", + token=GITHUB_OAUTH_TOKEN, + branch="main" +) +``` +To read a file: +```python +content_in_bytes, sha = github.read(path_within_repo) +``` +To write a file: +```python +content_sha, commit_sha = github.write( + filepath=path_within_repo, + content_bytes=contents_in_bytes, + sha=previous_sha, # Optional + commit_message=commit_message, + committer={ + "name": COMMITTER_NAME, + "email": COMMITTER_EMAIL, + }, +) +``` + + + + +%package help +Summary: Development documents and examples for github-contents +Provides: python3-github-contents-doc +%description help +# github-contents + +[](https://pypi.org/project/github-contents/) +[](https://github.com/simonw/github-contents/releases) +[](https://github.com/simonw/github-contents/actions?query=workflow%3ATest) +[](https://github.com/simonw/github-contents/blob/main/LICENSE) + +Read and write both small and large files to Github. + +The regular [GitHub Contents API](https://developer.github.com/v3/repos/contents/) can't handle files larger than 1MB - this class knows how to spot that problem and switch to the large-file-supporting low level [Git Data API](https://developer.github.com/v3/git/) instead. + +Note that file contents is passed and returned as bytestrings, not regular strings. + +## Installation + + pip install github-contents + +## Usage + +You will need a GitHub OAuth token with full repository access. + +The easiest way to create one of these is using [https://github.com/settings/tokens](https://github.com/settings/tokens) + +```python +from github_contents import GithubContents + +# For repo simonw/disaster-data: +github = GithubContents( + "simonw", + "disaster-data", + token=GITHUB_OAUTH_TOKEN, + branch="main" +) +``` +To read a file: +```python +content_in_bytes, sha = github.read(path_within_repo) +``` +To write a file: +```python +content_sha, commit_sha = github.write( + filepath=path_within_repo, + content_bytes=contents_in_bytes, + sha=previous_sha, # Optional + commit_message=commit_message, + committer={ + "name": COMMITTER_NAME, + "email": COMMITTER_EMAIL, + }, +) +``` + + + + +%prep +%autosetup -n github-contents-0.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-github-contents -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2-1 +- Package Spec generated @@ -0,0 +1 @@ +3ba3b572a229a5d534992e1b4de66aaf github-contents-0.2.tar.gz |