diff options
author | Eric Davies <iamed2@gmail.com> | 2021-07-27 13:51:04 -0500 |
---|---|---|
committer | John Villalovos <john@sodarock.com> | 2021-07-27 13:46:16 -0700 |
commit | 98cd03b7a3085356b5f0f4fcdb7dc729b682f481 (patch) | |
tree | e90e1fd4e85babc6f5ac3fa1eb87412e5d83d553 | |
parent | a9924f48800f57fa8036e3ebdf89d1e04b9bf1a1 (diff) | |
download | gitlab-98cd03b7a3085356b5f0f4fcdb7dc729b682f481.tar.gz |
fix(api): do not require Release name for creation
Stop requiring a `name` attribute for creating a Release, since a
release name has not been required since GitLab 12.5.
-rw-r--r-- | gitlab/v4/objects/releases.py | 2 | ||||
-rw-r--r-- | tests/functional/api/test_releases.py | 18 |
2 files changed, 19 insertions, 1 deletions
diff --git a/gitlab/v4/objects/releases.py b/gitlab/v4/objects/releases.py index 6216e45..e27052d 100644 --- a/gitlab/v4/objects/releases.py +++ b/gitlab/v4/objects/releases.py @@ -19,7 +19,7 @@ class ProjectReleaseManager(CRUDMixin, RESTManager): _obj_cls = ProjectRelease _from_parent_attrs = {"project_id": "id"} _create_attrs = RequiredOptional( - required=("name", "tag_name", "description"), optional=("ref", "assets") + required=("tag_name", "description"), optional=("name", "ref", "assets") ) _update_attrs = RequiredOptional( optional=("name", "description", "milestones", "released_at") diff --git a/tests/functional/api/test_releases.py b/tests/functional/api/test_releases.py index 81ae7de..f409c23 100644 --- a/tests/functional/api/test_releases.py +++ b/tests/functional/api/test_releases.py @@ -23,6 +23,24 @@ def test_create_project_release(project, project_file): assert release.description == release_description +def test_create_project_release_no_name(project, project_file): + unnamed_release_tag_name = "v2.3.4" + + project.refresh() # Gets us the current default branch + release = project.releases.create( + { + "tag_name": unnamed_release_tag_name, + "description": release_description, + "ref": project.default_branch, + } + ) + + assert len(project.releases.list()) >= 1 + assert project.releases.get(unnamed_release_tag_name) + assert release.tag_name == unnamed_release_tag_name + assert release.description == release_description + + def test_update_save_project_release(project, release): updated_description = f"{release.description} updated" release.description = updated_description |