Loading GitLab/Groups.pm +24 −2 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { groups => { Loading @@ -26,6 +26,21 @@ my $requests = { paginated => 1, }, subgroups => { method => "GET", path => "/groups/<gid>/subgroups", query => [qw( skip_groups all_available search order_by sort statistics owned )], paginated => 1, }, group_get_projects => { method => "GET", path => "/groups/<gid>/projects", Loading Loading @@ -108,7 +123,7 @@ response formats. =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading @@ -130,6 +145,13 @@ Please refer to the official documentation for the full list. Returns a list of groups. An optional parameter C<search> can be used to filter the list by substring match on C<name>. =item L<subgroups()|https://docs.gitlab.com/ce/api/groups.html#list-a-groups-39-s-subgroups> $subgroups = $gitlab->subgroups( :gid ); Returns subgroups of the given group. Accepts same filtering parameters as L</groups()>. =item L<group_details()|https://docs.gitlab.com/ce/api/groups.html#details-of-a-group> $details = $gitlab->group_details( :gid ); Loading GitLab/Members.pm +53 −94 Original line number Diff line number Diff line Loading @@ -8,26 +8,26 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { group_members => { "<ENTITY>_members" => { method => "GET", path => "/groups/<gid>/members", path => "/<ENTITY>s/<gid>/members", paginated => 1, optional => [qw( query )], }, group_get_member => { "<ENTITY>_get_member" => { method => "GET", path => "/groups/<gid>/members/<user_id>", path => "/<ENTITY>s/<id>/members/<user_id>", }, group_add_member => { "<ENTITY>_add_member" => { method => "POST", path => "/groups/<gid>/members", path => "/<ENTITY>s/<id>/members", required => [qw( user_id access_level Loading @@ -37,9 +37,9 @@ my $requests = { )], }, group_update_member => { "<ENTITY>_update_member" => { method => "PUT", path => "/groups/<gid>/members/<user_id>", path => "/<ENTITY>s/<id>/members/<user_id>", required => [qw( access_level )], Loading @@ -48,40 +48,9 @@ my $requests = { )], }, group_delete_member => { method => "DELETE", path => "/groups/<gid>/members/<user_id>", }, project_members => { method => "GET", path => "/projects/<id>/members", paginated => 1, optional => [qw( query )], }, project_get_member => { method => "GET", path => "/projects/<id>/members/<user_id>", }, project_add_member => { method => "POST", path => "/projects/<id>/members", required => [qw( user_id access_level )], optional => [qw( expires_at )], }, project_update_member => { "<ENTITY>_update_member" => { method => "PUT", path => "/projects/<id>/members/<user_id>", path => "/<ENTITY>s/<id>/members/<user_id>", required => [qw( access_level )], Loading @@ -90,17 +59,34 @@ my $requests = { )], }, project_delete_member => { "<ENTITY>_delete_member" => { method => "DELETE", path => "/projects/<id>/members/<user_id>", path => "/<ENTITY>s/<gid>/members/<user_id>", }, }; sub import { $log->debug("initializing " . __PACKAGE__); my $emap = { group => "gid", project => "id", }; while (my ($name, $tmpl) = each(%$requests)) { $tmpl->{name} = $name unless exists $tmpl->{name}; GitLab::API->register($tmpl); foreach my $entity (keys %$emap) { my $copy = { %$tmpl }; $copy->{name} = $name unless exists $copy->{name}; foreach my $v (values %$copy) { $v =~ s/<ENTITY>/$entity/g; $v =~ s/<id>/<$emap->{$entity}>/g; } GitLab::API->register($copy); } } } Loading @@ -117,7 +103,7 @@ response formats. =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading @@ -128,21 +114,27 @@ Please see the documentation for the L<GitLab::Users> module. Note that not all optional arguments are listed. Please refer to the official documentation for the full list. =head2 Group Members =head2 Group and Project Members =over =item L<group_members()|https://docs.gitlab.com/ce/api/members.html#list-all-members-of-a-group-or-project> =item L<project_members()|https://docs.gitlab.com/ce/api/members.html#list-all-members-of-a-group-or-project> $members = $gitlab->group_members( :gid ); $members = $gitlab->project_members( :id ); Returns a list of members in the group with the specified C<gid>. Returns a list of members of the namespace specified by C<gid> or C<id>. =item L<group_get_member()|https://docs.gitlab.com/ce/api/members.html#get-a-member-of-a-group-or-project> =item L<project_get_member()|https://docs.gitlab.com/ce/api/members.html#get-a-member-of-a-group-or-project> $gitlab->group_get_member( :gid, :user_id ) $gitlab->project_get_member( :id, :user_id ) Returns the information about a member of the group. Returns the information about a member of the group or project. Can also be used to check whether the given user is a member of the group if used with C<< -immortal => 1 >>: if (defined $gitlab->group_get_member(gid => $gid, $user_id => $user_id, -immortal => 1)) { Loading @@ -153,68 +145,35 @@ Can also be used to check whether the given user is a member of the group if use =item L<group_add_member()|https://docs.gitlab.com/ce/api/members.html#add-a-member-to-a-group-or-project> =item L<project_add_member()|https://docs.gitlab.com/ce/api/members.html#add-a-member-to-a-group-or-project> $gitlab->group_add_member( :gid, :user_id, :access_level, [:expires_at] ); $gitlab->project_add_member( :id, :user_id, :access_level, [:expires_at] ); Adds a user with C<user_id> to the group with the given C<gid> with the specified C<access_level>. Similarly for the project API. See L<GitLab::API> module for possible access level values. The optional argument C<expires_at> expects format C<YYYY-MM-DD>. =item L<group_update_member()|https://docs.gitlab.com/ce/api/members.html#edit-a-member-of-a-group-or-project> $gitlab->group_update_member( :gid, :user_id, :access_level, [:expires_at] ); For user with the given C<user_id> the function changes his C<access_level> in the group with the specified C<gid>. It can also remove the C<expires_at> property if set to C<undef>. =item L<group_delete_member()|https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project> $gitlab->group_delete_member( :gid, :user_id ); Removes the user with C<user_id> from the group with the specified C<gid>. =head2 Project Members =over =item L<project_members()|https://docs.gitlab.com/ce/api/members.html#list-all-members-of-a-group-or-project> $members = $gitlab->project_members( :gid ); Returns a list of members in the project with the specified C<id>. =item L<project_get_member()|https://docs.gitlab.com/ce/api/members.html#get-a-member-of-a-group-or-project> $gitlab->project_get_member( :gid, :user_id ) Returns the information about a member of the project. Can also be used to check whether the given user is a member of the project if used with C<< -immortal => 1 >>: if (defined $gitlab->project_get_member(id => $id, $user_id => $user_id, -immortal => 1)) { # is a member } else { # not a member } =item L<project_add_member()|https://docs.gitlab.com/ce/api/members.html#add-a-member-to-a-group-or-project> $gitlab->project_add_member( :gid, :user_id, :access_level, [:expires_at] ); Adds a user with C<user_id> to the project with the given C<id> with the specified C<access_level>. See L<GitLab::API> module for possible access level values. The optional argument C<expires_at> expects format C<YYYY-MM-DD>. =item L<project_update_member()|https://docs.gitlab.com/ce/api/members.html#edit-a-member-of-a-group-or-project> $gitlab->project_update_member( :gid, :user_id, :access_level, [:expires_at] ); $gitlab->group_update_member( :gid, :user_id, :access_level, [:expires_at] ); $gitlab->project_update_member( :id, :user_id, :access_level, [:expires_at] ); For user with the given C<user_id> the function changes his C<access_level> in the group with the specified C<gid>. It can also remove the C<expires_at> property if set to C<undef>. =item L<group_delete_member()|https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project> =item L<project_delete_member()|https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project> $gitlab->group_delete_member( :gid, :user_id ); $gitlab->project_delete_member( :id, :user_id ); Removes the user with C<user_id> from the group with the specified C<gid>. Removes the user with C<user_id> from the group with the specified C<gid> or a project specidied by the C<id>. =back Loading GitLab/Namespaces.pm +16 −4 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { namespaces => { Loading @@ -18,7 +18,12 @@ my $requests = { search )], paginated => 1, } }, namespace_by_id => { method => "GET", path => "/namespaces/<id>", }, }; sub import { Loading Loading @@ -50,10 +55,11 @@ See L<GitLab API -- Namespaces|http://doc.gitlab.com/ce/api/namespaces.html> for $api->sudo("john.doe"); my $namespaces = $api->namespaces(search => "group1"); my $namespace = $api->namespace_by_id(id => 10); =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading @@ -61,7 +67,7 @@ From GitLab API: I<"Usernames and groupnames fall under a special category calle =over =item namespaces() =item L<namespaces()|https://docs.gitlab.com/ce/api/namespaces.html#list-namespaces> $namespaces = $gitlab->namespaces(); $namespaces = $gitlab->namespaces(search => $what); Loading @@ -77,6 +83,12 @@ To get namespaces of user with login C<$login>, you can do this: Note that the authenticated user must be an administrator to use L<GitLab::API/sudo>. If the user with login C<$login> is an administrator, the call will return B<all> namespaces. =item L<namespace_by_id()|https://docs.gitlab.com/ce/api/namespaces.html#get-namespace-by-id> $namespace = $gitlab->namespace_by_id( :id ) Returns a given namespace by its C<id>. =back =head1 AUTHOR Loading GitLab/Projects.pm +35 −37 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { projects => { Loading @@ -22,7 +22,11 @@ my $requests = { search simple owned membership starred statistics with_issues_enabled with_merge_requests_enabled )], paginated => 1, }, Loading @@ -32,30 +36,10 @@ my $requests = { path => "/projects/<id>", encode => [qw( id statistics )], }, project_users => { method => "GET", path => "/projects/<id>/users", optional => [qw( search )], encode => [qw( id )], paginated => 1, }, project_events => { method => "GET", path => "/projects/<id>/events", encode => [qw( id )], paginated => 1, }, project_create => { method => "POST", path => "/projects", Loading @@ -66,19 +50,23 @@ my $requests = { description issues_enabled merge_requests_enabled builds_enabled jobs_enabled wiki_enabled snippets_enabled resolve_outdated_diff_discussions container_registry_enabled shared_runners_enabled visibility public_builds import_url public_builds public_jobs only_allow_merge_if_build_succeeds only_allow_merge_if_all_discussions_are_resolved lfs_enabled request_access_enabled tag_list avatar printing_merge_request_link_enabled ci_config_path )], }, Loading @@ -95,18 +83,23 @@ my $requests = { description issues_enabled merge_requests_enabled builds_enabled jobs_enabled wiki_enabled snippets_enabled resolve_outdated_diff_discussions container_registry_enabled shared_runners_enabled visibility import_url public_builds public_jobs only_allow_merge_if_build_succeeds only_allow_merge_if_all_discussions_are_resolved lfs_enabled request_access_enabled tag_list avatar printing_merge_request_link_enabled ci_config_path )], }, Loading @@ -119,21 +112,27 @@ my $requests = { optional => [qw( path default_branch namespace_id description issues_enabled merge_requests_enabled builds_enabled jobs_enabled wiki_enabled snippets_enabled resolve_outdated_diff_discussions container_registry_enabled shared_runners_enabled visibility import_url public_builds public_jobs only_allow_merge_if_build_succeeds only_allow_merge_if_all_discussions_are_resolved lfs_enabled request_access_enabled tag_list avatar printing_merge_request_link_enabled ci_config_path )], }, Loading Loading @@ -250,7 +249,7 @@ my $requests = { merge_requests_events tag_push_events note_events build_events job_events pipeline_events wiki_page_events enable_ssl_verification Loading @@ -270,7 +269,7 @@ my $requests = { merge_requests_events tag_push_events note_events build_events job_events pipeline_events wiki_page_events enable_ssl_verification Loading Loading @@ -333,7 +332,7 @@ response formats. =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading Loading @@ -362,15 +361,14 @@ Returns the project with the given ID, which can be either a number or a string =item L<project_users()|https://docs.gitlab.com/ce/api/projects.html#get-project-users> $gitlab->project_users( [:search] ); B<This method has been removed from API>. Returns the user list of a project. Use L<GitLab::Members::project_members()|GitLab::Members/project_members()> instead. =item L<project_events()|https://docs.gitlab.com/ce/api/projects.html#get-project-events> $gitlab->project_events( :id ); Returns the list of events for the given project. This method has been moved to L<GitLab::Events::project_evens()|GitLab::Events/project_events()>. =back Loading GitLab/Users.pm +219 −48 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
GitLab/Groups.pm +24 −2 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { groups => { Loading @@ -26,6 +26,21 @@ my $requests = { paginated => 1, }, subgroups => { method => "GET", path => "/groups/<gid>/subgroups", query => [qw( skip_groups all_available search order_by sort statistics owned )], paginated => 1, }, group_get_projects => { method => "GET", path => "/groups/<gid>/projects", Loading Loading @@ -108,7 +123,7 @@ response formats. =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading @@ -130,6 +145,13 @@ Please refer to the official documentation for the full list. Returns a list of groups. An optional parameter C<search> can be used to filter the list by substring match on C<name>. =item L<subgroups()|https://docs.gitlab.com/ce/api/groups.html#list-a-groups-39-s-subgroups> $subgroups = $gitlab->subgroups( :gid ); Returns subgroups of the given group. Accepts same filtering parameters as L</groups()>. =item L<group_details()|https://docs.gitlab.com/ce/api/groups.html#details-of-a-group> $details = $gitlab->group_details( :gid ); Loading
GitLab/Members.pm +53 −94 Original line number Diff line number Diff line Loading @@ -8,26 +8,26 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { group_members => { "<ENTITY>_members" => { method => "GET", path => "/groups/<gid>/members", path => "/<ENTITY>s/<gid>/members", paginated => 1, optional => [qw( query )], }, group_get_member => { "<ENTITY>_get_member" => { method => "GET", path => "/groups/<gid>/members/<user_id>", path => "/<ENTITY>s/<id>/members/<user_id>", }, group_add_member => { "<ENTITY>_add_member" => { method => "POST", path => "/groups/<gid>/members", path => "/<ENTITY>s/<id>/members", required => [qw( user_id access_level Loading @@ -37,9 +37,9 @@ my $requests = { )], }, group_update_member => { "<ENTITY>_update_member" => { method => "PUT", path => "/groups/<gid>/members/<user_id>", path => "/<ENTITY>s/<id>/members/<user_id>", required => [qw( access_level )], Loading @@ -48,40 +48,9 @@ my $requests = { )], }, group_delete_member => { method => "DELETE", path => "/groups/<gid>/members/<user_id>", }, project_members => { method => "GET", path => "/projects/<id>/members", paginated => 1, optional => [qw( query )], }, project_get_member => { method => "GET", path => "/projects/<id>/members/<user_id>", }, project_add_member => { method => "POST", path => "/projects/<id>/members", required => [qw( user_id access_level )], optional => [qw( expires_at )], }, project_update_member => { "<ENTITY>_update_member" => { method => "PUT", path => "/projects/<id>/members/<user_id>", path => "/<ENTITY>s/<id>/members/<user_id>", required => [qw( access_level )], Loading @@ -90,17 +59,34 @@ my $requests = { )], }, project_delete_member => { "<ENTITY>_delete_member" => { method => "DELETE", path => "/projects/<id>/members/<user_id>", path => "/<ENTITY>s/<gid>/members/<user_id>", }, }; sub import { $log->debug("initializing " . __PACKAGE__); my $emap = { group => "gid", project => "id", }; while (my ($name, $tmpl) = each(%$requests)) { $tmpl->{name} = $name unless exists $tmpl->{name}; GitLab::API->register($tmpl); foreach my $entity (keys %$emap) { my $copy = { %$tmpl }; $copy->{name} = $name unless exists $copy->{name}; foreach my $v (values %$copy) { $v =~ s/<ENTITY>/$entity/g; $v =~ s/<id>/<$emap->{$entity}>/g; } GitLab::API->register($copy); } } } Loading @@ -117,7 +103,7 @@ response formats. =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading @@ -128,21 +114,27 @@ Please see the documentation for the L<GitLab::Users> module. Note that not all optional arguments are listed. Please refer to the official documentation for the full list. =head2 Group Members =head2 Group and Project Members =over =item L<group_members()|https://docs.gitlab.com/ce/api/members.html#list-all-members-of-a-group-or-project> =item L<project_members()|https://docs.gitlab.com/ce/api/members.html#list-all-members-of-a-group-or-project> $members = $gitlab->group_members( :gid ); $members = $gitlab->project_members( :id ); Returns a list of members in the group with the specified C<gid>. Returns a list of members of the namespace specified by C<gid> or C<id>. =item L<group_get_member()|https://docs.gitlab.com/ce/api/members.html#get-a-member-of-a-group-or-project> =item L<project_get_member()|https://docs.gitlab.com/ce/api/members.html#get-a-member-of-a-group-or-project> $gitlab->group_get_member( :gid, :user_id ) $gitlab->project_get_member( :id, :user_id ) Returns the information about a member of the group. Returns the information about a member of the group or project. Can also be used to check whether the given user is a member of the group if used with C<< -immortal => 1 >>: if (defined $gitlab->group_get_member(gid => $gid, $user_id => $user_id, -immortal => 1)) { Loading @@ -153,68 +145,35 @@ Can also be used to check whether the given user is a member of the group if use =item L<group_add_member()|https://docs.gitlab.com/ce/api/members.html#add-a-member-to-a-group-or-project> =item L<project_add_member()|https://docs.gitlab.com/ce/api/members.html#add-a-member-to-a-group-or-project> $gitlab->group_add_member( :gid, :user_id, :access_level, [:expires_at] ); $gitlab->project_add_member( :id, :user_id, :access_level, [:expires_at] ); Adds a user with C<user_id> to the group with the given C<gid> with the specified C<access_level>. Similarly for the project API. See L<GitLab::API> module for possible access level values. The optional argument C<expires_at> expects format C<YYYY-MM-DD>. =item L<group_update_member()|https://docs.gitlab.com/ce/api/members.html#edit-a-member-of-a-group-or-project> $gitlab->group_update_member( :gid, :user_id, :access_level, [:expires_at] ); For user with the given C<user_id> the function changes his C<access_level> in the group with the specified C<gid>. It can also remove the C<expires_at> property if set to C<undef>. =item L<group_delete_member()|https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project> $gitlab->group_delete_member( :gid, :user_id ); Removes the user with C<user_id> from the group with the specified C<gid>. =head2 Project Members =over =item L<project_members()|https://docs.gitlab.com/ce/api/members.html#list-all-members-of-a-group-or-project> $members = $gitlab->project_members( :gid ); Returns a list of members in the project with the specified C<id>. =item L<project_get_member()|https://docs.gitlab.com/ce/api/members.html#get-a-member-of-a-group-or-project> $gitlab->project_get_member( :gid, :user_id ) Returns the information about a member of the project. Can also be used to check whether the given user is a member of the project if used with C<< -immortal => 1 >>: if (defined $gitlab->project_get_member(id => $id, $user_id => $user_id, -immortal => 1)) { # is a member } else { # not a member } =item L<project_add_member()|https://docs.gitlab.com/ce/api/members.html#add-a-member-to-a-group-or-project> $gitlab->project_add_member( :gid, :user_id, :access_level, [:expires_at] ); Adds a user with C<user_id> to the project with the given C<id> with the specified C<access_level>. See L<GitLab::API> module for possible access level values. The optional argument C<expires_at> expects format C<YYYY-MM-DD>. =item L<project_update_member()|https://docs.gitlab.com/ce/api/members.html#edit-a-member-of-a-group-or-project> $gitlab->project_update_member( :gid, :user_id, :access_level, [:expires_at] ); $gitlab->group_update_member( :gid, :user_id, :access_level, [:expires_at] ); $gitlab->project_update_member( :id, :user_id, :access_level, [:expires_at] ); For user with the given C<user_id> the function changes his C<access_level> in the group with the specified C<gid>. It can also remove the C<expires_at> property if set to C<undef>. =item L<group_delete_member()|https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project> =item L<project_delete_member()|https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project> $gitlab->group_delete_member( :gid, :user_id ); $gitlab->project_delete_member( :id, :user_id ); Removes the user with C<user_id> from the group with the specified C<gid>. Removes the user with C<user_id> from the group with the specified C<gid> or a project specidied by the C<id>. =back Loading
GitLab/Namespaces.pm +16 −4 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { namespaces => { Loading @@ -18,7 +18,12 @@ my $requests = { search )], paginated => 1, } }, namespace_by_id => { method => "GET", path => "/namespaces/<id>", }, }; sub import { Loading Loading @@ -50,10 +55,11 @@ See L<GitLab API -- Namespaces|http://doc.gitlab.com/ce/api/namespaces.html> for $api->sudo("john.doe"); my $namespaces = $api->namespaces(search => "group1"); my $namespace = $api->namespace_by_id(id => 10); =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading @@ -61,7 +67,7 @@ From GitLab API: I<"Usernames and groupnames fall under a special category calle =over =item namespaces() =item L<namespaces()|https://docs.gitlab.com/ce/api/namespaces.html#list-namespaces> $namespaces = $gitlab->namespaces(); $namespaces = $gitlab->namespaces(search => $what); Loading @@ -77,6 +83,12 @@ To get namespaces of user with login C<$login>, you can do this: Note that the authenticated user must be an administrator to use L<GitLab::API/sudo>. If the user with login C<$login> is an administrator, the call will return B<all> namespaces. =item L<namespace_by_id()|https://docs.gitlab.com/ce/api/namespaces.html#get-namespace-by-id> $namespace = $gitlab->namespace_by_id( :id ) Returns a given namespace by its C<id>. =back =head1 AUTHOR Loading
GitLab/Projects.pm +35 −37 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ use vars qw($VERSION); use GitLab::API; use Log::Any qw($log); our $VERSION = v8.17.2; our $VERSION = v10.3.3; my $requests = { projects => { Loading @@ -22,7 +22,11 @@ my $requests = { search simple owned membership starred statistics with_issues_enabled with_merge_requests_enabled )], paginated => 1, }, Loading @@ -32,30 +36,10 @@ my $requests = { path => "/projects/<id>", encode => [qw( id statistics )], }, project_users => { method => "GET", path => "/projects/<id>/users", optional => [qw( search )], encode => [qw( id )], paginated => 1, }, project_events => { method => "GET", path => "/projects/<id>/events", encode => [qw( id )], paginated => 1, }, project_create => { method => "POST", path => "/projects", Loading @@ -66,19 +50,23 @@ my $requests = { description issues_enabled merge_requests_enabled builds_enabled jobs_enabled wiki_enabled snippets_enabled resolve_outdated_diff_discussions container_registry_enabled shared_runners_enabled visibility public_builds import_url public_builds public_jobs only_allow_merge_if_build_succeeds only_allow_merge_if_all_discussions_are_resolved lfs_enabled request_access_enabled tag_list avatar printing_merge_request_link_enabled ci_config_path )], }, Loading @@ -95,18 +83,23 @@ my $requests = { description issues_enabled merge_requests_enabled builds_enabled jobs_enabled wiki_enabled snippets_enabled resolve_outdated_diff_discussions container_registry_enabled shared_runners_enabled visibility import_url public_builds public_jobs only_allow_merge_if_build_succeeds only_allow_merge_if_all_discussions_are_resolved lfs_enabled request_access_enabled tag_list avatar printing_merge_request_link_enabled ci_config_path )], }, Loading @@ -119,21 +112,27 @@ my $requests = { optional => [qw( path default_branch namespace_id description issues_enabled merge_requests_enabled builds_enabled jobs_enabled wiki_enabled snippets_enabled resolve_outdated_diff_discussions container_registry_enabled shared_runners_enabled visibility import_url public_builds public_jobs only_allow_merge_if_build_succeeds only_allow_merge_if_all_discussions_are_resolved lfs_enabled request_access_enabled tag_list avatar printing_merge_request_link_enabled ci_config_path )], }, Loading Loading @@ -250,7 +249,7 @@ my $requests = { merge_requests_events tag_push_events note_events build_events job_events pipeline_events wiki_page_events enable_ssl_verification Loading @@ -270,7 +269,7 @@ my $requests = { merge_requests_events tag_push_events note_events build_events job_events pipeline_events wiki_page_events enable_ssl_verification Loading Loading @@ -333,7 +332,7 @@ response formats. =head1 VERSION Implements API calls for GitLab CE C<v8.17.2>. Implements API calls for GitLab CE C<v10.3.3>. =head1 DESCRIPTION Loading Loading @@ -362,15 +361,14 @@ Returns the project with the given ID, which can be either a number or a string =item L<project_users()|https://docs.gitlab.com/ce/api/projects.html#get-project-users> $gitlab->project_users( [:search] ); B<This method has been removed from API>. Returns the user list of a project. Use L<GitLab::Members::project_members()|GitLab::Members/project_members()> instead. =item L<project_events()|https://docs.gitlab.com/ce/api/projects.html#get-project-events> $gitlab->project_events( :id ); Returns the list of events for the given project. This method has been moved to L<GitLab::Events::project_evens()|GitLab::Events/project_events()>. =back Loading