Class: Avm::EacGitlabBase0::Api::Project

Inherits:
Node
  • Object
show all
Defined in:
lib/avm/eac_gitlab_base0/api/project.rb

Constant Summary collapse

FIELDS =
%w[id description name name_with_namespace path path_with_namespace created_at
default_branch tag_list ssh_url_to_repo http_url_to_repo web_url readme_url
avatar_url star_count forks_count last_activity_at empty_repo archived
visibility resolve_outdated_diff_discussions container_registry_enabled
issues_enabled merge_requests_enabled wiki_enabled jobs_enabled snippets_enabled
issues_access_level repository_access_level merge_requests_access_level
wiki_access_level builds_access_level snippets_access_level
shared_runners_enabled lfs_enabled creator_id import_status
ci_default_git_depth public_jobs build_timeout auto_cancel_pending_pipelines
build_coverage_regex ci_config_path shared_with_groups
only_allow_merge_if_pipeline_succeeds request_access_enabled
only_allow_merge_if_all_discussions_are_resolved
remove_source_branch_after_merge printing_merge_request_link_enabled
merge_method auto_devops_enabled auto_devops_deploy_strategy].freeze

Instance Method Summary collapse

Methods inherited from Node

#remove_member

Methods inherited from BaseEntity

#delete, #dump_debug, #dump_response, #encode_id, #fetch_entities, #fetch_entity, #validate_response_data

Instance Method Details

#api_prefixObject



34
35
36
# File 'lib/avm/eac_gitlab_base0/api/project.rb', line 34

def api_prefix
  "/projects/#{encode_id(id)}"
end

#file(path) ⇒ Object



42
43
44
45
46
47
48
# File 'lib/avm/eac_gitlab_base0/api/project.rb', line 42

def file(path)
  fetch_entity(
    "#{api_prefix}/repository/files/#{encode_id(path)}?ref=#{default_branch}",
    ::Avm::EacGitlabBase0::Api::File,
    '404 File Not Found'
  )
end

#full_pathObject



38
39
40
# File 'lib/avm/eac_gitlab_base0/api/project.rb', line 38

def full_path
  path_with_namespace
end

#to_sObject



50
51
52
# File 'lib/avm/eac_gitlab_base0/api/project.rb', line 50

def to_s
  path_with_namespace
end