gitlab-org--gitlab-foss/app/presenters/terraform/modules_presenter.rb

40 lines
828 B
Ruby

# frozen_string_literal: true
module Terraform
class ModulesPresenter < Gitlab::View::Presenter::Simple
attr_accessor :packages, :system
presents nil, as: :modules
def initialize(packages, system)
@packages = packages
@system = system
end
def modules
project_url = @packages.first&.project&.web_url
versions = @packages.map do |package|
{
'version' => package.version,
'submodules' => [],
'root' => {
'dependencies' => [],
'providers' => [
{
'name' => @system,
'version' => ''
}
]
}
}
end
[
{
'versions' => versions,
'source' => project_url
}.compact
]
end
end
end