diff options
author | Gauvain Pocentek <gauvain@pocentek.net> | 2016-08-09 16:37:45 +0200 |
---|---|---|
committer | Gauvain Pocentek <gauvain@pocentek.net> | 2016-08-09 16:37:45 +0200 |
commit | f00340f72935b6fd80df7b62b811644b63049b5a (patch) | |
tree | 5cb0428f95121d237534af7f76bb600436db94d2 /docs | |
parent | 71a2a4fb84321e73418fda1ce4e4d47177af928c (diff) | |
download | gitlab-f00340f72935b6fd80df7b62b811644b63049b5a.tar.gz |
docs: repository files API
Diffstat (limited to 'docs')
-rw-r--r-- | docs/gl_objects/projects.py | 48 | ||||
-rw-r--r-- | docs/gl_objects/projects.rst | 30 |
2 files changed, 78 insertions, 0 deletions
diff --git a/docs/gl_objects/projects.py b/docs/gl_objects/projects.py index 6a7cb6d..958298c 100644 --- a/docs/gl_objects/projects.py +++ b/docs/gl_objects/projects.py @@ -194,3 +194,51 @@ tgz = project.repository_archive(sha='4567abc') # repository contributors contributors = project.repository_contributors() # end repository contributors + +# files get +f = gl.project_files.get(file_path='README.rst', ref='master', + project_id=1) +# or +f = project.files.get(file_path='README.rst', ref='master') + +# get the base64 encoded content +print(f.content) + +# get the decoded content +print(f.decode()) +# end files get + +# files create +f = gl.project_files.create({'file_path': 'testfile', + 'branch_name': 'master', + 'content': file_content, + 'commit_message': 'Create testfile'}, + project_id=1) +# or +f = project.files.create({'file_path': 'testfile', + 'branch_name': 'master', + 'content': file_content, + 'commit_message': 'Create testfile'}) +# end files create + +# files update +f.content = 'new content' +f.save(branch='master', commit_message='Update testfile') + +# or for binary data +f.content = base64.b64encode(open('image.png').read()) +f.save(branch='master', commit_message='Update testfile', encoding='base64') +# end files update + +# files delete +gl.project_files.delete({'file_path': 'testfile', + 'branch_name': 'master', + 'commit_message': 'Delete testfile'}, + project_id=1) +# or +project.files.delete({'file_path': 'testfile', + 'branch_name': 'master', + 'commit_message': 'Delete testfile'}) +# or +f.delete(commit_message='Delete testfile') +# end files delete diff --git a/docs/gl_objects/projects.rst b/docs/gl_objects/projects.rst index ee55e74..bc1b24f 100644 --- a/docs/gl_objects/projects.rst +++ b/docs/gl_objects/projects.rst @@ -139,6 +139,36 @@ Get a list of contributors for the repository: :start-after: # repository contributors :end-before: # end repository contributors +Files +----- + +The following examples show how you can manipulate the project files. + +Get a file: + +.. literalinclude:: projects.py + :start-after: # files get + :end-before: # end files get + +Create a new file: + +.. literalinclude:: projects.py + :start-after: # files create + :end-before: # end files create + +Update a file. The entire content must be uploaded, as plain text or as base64 +encoded text: + +.. literalinclude:: projects.py + :start-after: # files update + :end-before: # end files update + +Delete a file: + +.. literalinclude:: projects.py + :start-after: # files delete + :end-before: # end files delete + Events ------ |