Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit31c3c5e

Browse files
nejchJohnVillalovos
authored andcommitted
fix(snippets): allow passing list of files
1 parentb4951cd commit31c3c5e

File tree

4 files changed

+43
-12
lines changed

4 files changed

+43
-12
lines changed

‎docs/gl_objects/projects.rst‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -566,8 +566,10 @@ Get the content of a snippet::
566566
Create a snippet::
567567

568568
snippet = project.snippets.create({'title': 'sample 1',
569-
'file_name': 'foo.py',
570-
'code': 'import gitlab',
569+
'files': [{
570+
'file_path': 'foo.py',
571+
'content': 'import gitlab'
572+
}],
571573
'visibility_level':
572574
gitlab.const.Visibility.PRIVATE})
573575

‎docs/gl_objects/snippets.rst‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,11 @@ Get a snippet::
3939
Create a snippet::
4040

4141
snippet = gl.snippets.create({'title': 'snippet1',
42-
'file_name': 'snippet1.py',
43-
'content': open('snippet1.py').read()})
42+
'files': [{
43+
'file_path': 'foo.py',
44+
'content': 'import gitlab'
45+
}],
46+
})
4447

4548
Update the snippet attributes::
4649

‎gitlab/v4/objects/snippets.py‎

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,23 @@ class SnippetManager(CRUDMixin, RESTManager):
7070
_path="/snippets"
7171
_obj_cls=Snippet
7272
_create_attrs=RequiredOptional(
73-
required=("title","file_name","content"),optional=("lifetime","visibility")
73+
required=("title",),
74+
exclusive=("files","file_name"),
75+
optional=(
76+
"description",
77+
"content",
78+
"visibility",
79+
),
7480
)
7581
_update_attrs=RequiredOptional(
76-
optional=("title","file_name","content","visibility")
82+
optional=(
83+
"title",
84+
"files",
85+
"file_name",
86+
"content",
87+
"visibility",
88+
"description",
89+
),
7790
)
7891

7992
@cli.register_custom_action("SnippetManager")
@@ -151,11 +164,22 @@ class ProjectSnippetManager(CRUDMixin, RESTManager):
151164
_obj_cls=ProjectSnippet
152165
_from_parent_attrs= {"project_id":"id"}
153166
_create_attrs=RequiredOptional(
154-
required=("title","file_name","content","visibility"),
155-
optional=("description",),
167+
required=("title","visibility"),
168+
exclusive=("files","file_name"),
169+
optional=(
170+
"description",
171+
"content",
172+
),
156173
)
157174
_update_attrs=RequiredOptional(
158-
optional=("title","file_name","content","visibility","description"),
175+
optional=(
176+
"title",
177+
"files",
178+
"file_name",
179+
"content",
180+
"visibility",
181+
"description",
182+
),
159183
)
160184

161185
defget(

‎tests/functional/api/test_snippets.py‎

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ def test_snippets(gl):
66
assertnotsnippets
77

88
snippet=gl.snippets.create(
9-
{"title":"snippet1","file_name":"snippet1.py","content":"import gitlab"}
9+
{
10+
"title":"snippet1",
11+
"files": [{"file_path":"snippet1.py","content":"import gitlab"}],
12+
}
1013
)
1114
snippet=gl.snippets.get(snippet.id)
1215
snippet.title="updated_title"
@@ -30,8 +33,7 @@ def test_project_snippets(project):
3033
snippet=project.snippets.create(
3134
{
3235
"title":"snip1",
33-
"file_name":"foo.py",
34-
"content":"initial content",
36+
"files": [{"file_path":"foo.py","content":"initial content"}],
3537
"visibility":gitlab.const.VISIBILITY_PRIVATE,
3638
}
3739
)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp