| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 4744200 commit 5082879
5 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -30,3 +30,4 @@ API examples | |||
| 30 | 30 | gl_objects/todos | |
| 31 | 31 | gl_objects/users | |
| 32 | 32 | gl_objects/sidekiq | |
| 33 | + gl_objects/wikis | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -0,0 +1,21 @@ | |||
| 1 | + # list | ||
| 2 | + pages = project.wikis.list() | ||
| 3 | + # end list | ||
| 4 | + | ||
| 5 | + # get | ||
| 6 | + page = project.wikis.get(page_slug) | ||
| 7 | + # end get | ||
| 8 | + | ||
| 9 | + # create | ||
| 10 | + page = project.wikis.create({'title': 'Wiki Page 1', | ||
| 11 | + 'content': open(a_file).read()}) | ||
| 12 | + # end create | ||
| 13 | + | ||
| 14 | + # update | ||
| 15 | + page.content = 'My new content' | ||
| 16 | + page.save() | ||
| 17 | + # end update | ||
| 18 | + | ||
| 19 | + # delete | ||
| 20 | + page.delete() | ||
| 21 | + # end delete | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -0,0 +1,46 @@ | |||
| 1 | + ########## | ||
| 2 | + Wiki pages | ||
| 3 | + ########## | ||
| 4 | + | ||
| 5 | + | ||
| 6 | + References | ||
| 7 | + ========== | ||
| 8 | + | ||
| 9 | + * v4 API: | ||
| 10 | + | ||
| 11 | + + :class:`gitlab.v4.objects.ProjectWiki` | ||
| 12 | + + :class:`gitlab.v4.objects.ProjectWikiManager` | ||
| 13 | + + :attr:`gitlab.v4.objects.Project.wikis` | ||
| 14 | + | ||
| 15 | + Examples | ||
| 16 | + -------- | ||
| 17 | + | ||
| 18 | + Get the list of wiki pages for a project: | ||
| 19 | + | ||
| 20 | + .. literalinclude:: wikis.py | ||
| 21 | + :start-after: # list | ||
| 22 | + :end-before: # end list | ||
| 23 | + | ||
| 24 | + Get a single wiki page: | ||
| 25 | + | ||
| 26 | + .. literalinclude:: wikis.py | ||
| 27 | + :start-after: # get | ||
| 28 | + :end-before: # end get | ||
| 29 | + | ||
| 30 | + Create a wiki page: | ||
| 31 | + | ||
| 32 | + .. literalinclude:: wikis.py | ||
| 33 | + :start-after: # create | ||
| 34 | + :end-before: # end create | ||
| 35 | + | ||
| 36 | + Update a wiki page: | ||
| 37 | + | ||
| 38 | + .. literalinclude:: wikis.py | ||
| 39 | + :start-after: # update | ||
| 40 | + :end-before: # end update | ||
| 41 | + | ||
| 42 | + Delete a wiki page: | ||
| 43 | + | ||
| 44 | + .. literalinclude:: wikis.py | ||
| 45 | + :start-after: # delete | ||
| 46 | + :end-before: # end delete | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1947,6 +1947,20 @@ class ProjectRunnerManager(NoUpdateMixin, RESTManager): | |||
| 1947 | 1947 | _create_attrs = (('runner_id', ), tuple()) | |
| 1948 | 1948 | ||
| 1949 | 1949 | ||
| 1950 | + class ProjectWiki(SaveMixin, ObjectDeleteMixin, RESTObject): | ||
| 1951 | + _id_attr = 'slug' | ||
| 1952 | + _short_print_attr = 'slug' | ||
| 1953 | + | ||
| 1954 | + | ||
| 1955 | + class ProjectWikiManager(CRUDMixin, RESTManager): | ||
| 1956 | + _path = '/projects/%(project_id)s/wikis' | ||
| 1957 | + _obj_cls = ProjectWiki | ||
| 1958 | + _from_parent_attrs = {'project_id': 'id'} | ||
| 1959 | + _create_attrs = (('title', 'content'), ('format', )) | ||
| 1960 | + _update_attrs = (tuple(), ('title', 'content', 'format')) | ||
| 1961 | + _list_filters = ('with_content', ) | ||
| 1962 | + | ||
| 1963 | + | ||
| 1950 | 1964 | class Project(SaveMixin, ObjectDeleteMixin, RESTObject): | |
| 1951 | 1965 | _short_print_attr = 'path' | |
| 1952 | 1966 | _managers = ( | |
@@ -1978,6 +1992,7 @@ class Project(SaveMixin, ObjectDeleteMixin, RESTObject): | |||
| 1978 | 1992 | ('users', 'ProjectUserManager'), | |
| 1979 | 1993 | ('triggers', 'ProjectTriggerManager'), | |
| 1980 | 1994 | ('variables', 'ProjectVariableManager'), | |
| 1995 | + ('wikis', 'ProjectWikiManager'), | ||
| 1981 | 1996 | ) | |
| 1982 | 1997 | ||
| 1983 | 1998 | @cli.register_custom_action('Project', tuple(), ('path', 'ref')) | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -496,6 +496,18 @@ | |||
| 496 | 496 | #lists = board.lists.list() | |
| 497 | 497 | #assert(len(lists) == begin_size - 1) | |
| 498 | 498 | ||
| 499 | + # project wiki | ||
| 500 | + wiki_content = 'Wiki page content' | ||
| 501 | + wp = admin_project.wikis.create({'title': 'wikipage', 'content': wiki_content}) | ||
| 502 | + assert(len(admin_project.wikis.list()) == 1) | ||
| 503 | + wp = admin_project.wikis.get(wp.slug) | ||
| 504 | + assert(wp.content == wiki_content) | ||
| 505 | + # update and delete seem broken | ||
| 506 | + # wp.content = 'new content' | ||
| 507 | + # wp.save() | ||
| 508 | + # wp.delete() | ||
| 509 | + # assert(len(admin_project.wikis.list()) == 0) | ||
| 510 | + | ||
| 499 | 511 | # namespaces | |
| 500 | 512 | ns = gl.namespaces.list(all=True) | |
| 501 | 513 | assert(len(ns) != 0) | |
| Back | FazBrowse Home | New Git URL |
0 commit comments