6ee1d8cf77
In order to implement https://gitlab.com/gitlab-org/gitlab-ee/issues/10179 we need several modifications on the CI config file. We are adding a new ports section in the default Image object. Each of these ports will accept: number, protocol and name. By default this new configuration will be only enabled in the Web IDE config file.
32 lines
686 B
Ruby
32 lines
686 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Gitlab
|
|
module Ci
|
|
module Build
|
|
class Port
|
|
DEFAULT_PORT_NAME = 'default_port'.freeze
|
|
DEFAULT_PORT_PROTOCOL = 'http'.freeze
|
|
|
|
attr_reader :number, :protocol, :name
|
|
|
|
def initialize(port)
|
|
@name = DEFAULT_PORT_NAME
|
|
@protocol = DEFAULT_PORT_PROTOCOL
|
|
|
|
case port
|
|
when Integer
|
|
@number = port
|
|
when Hash
|
|
@number = port[:number]
|
|
@protocol = port.fetch(:protocol, @protocol)
|
|
@name = port.fetch(:name, @name)
|
|
end
|
|
end
|
|
|
|
def valid?
|
|
@number.present?
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|