Do not check for valid url for .gitlab-ci.yml
Until this commit, GitLab would check if the URL in your .gitlab-ci.yml would be valid and adressable. However, this approach is rather limited. To begin, the URL couldn't be http://example:$PORT/my-project, as the PORT value would be interpolated after checking if the URL was valid, which its not. Also this gem will limit the amount of protocols allowed. This commit doesn't check, at all, if the URL is valid. This is now the responsablilty of the user. In my opion this is right, as the user ultimately benefits from a correct URL, but also, its impossible to cover all cases.
This commit is contained in:
parent
cd85baf5e3
commit
6ef6f9f205
|
@ -33,7 +33,6 @@ module Gitlab
|
|||
|
||||
validates :url,
|
||||
length: { maximum: 255 },
|
||||
addressable_url: true,
|
||||
allow_nil: true
|
||||
|
||||
validates :action,
|
||||
|
|
|
@ -769,6 +769,19 @@ module Ci
|
|||
expect(builds.first[:environment]).to eq(environment[:name])
|
||||
expect(builds.first[:options]).to include(environment: environment)
|
||||
end
|
||||
|
||||
context 'the url has a port as variable' do
|
||||
let(:environment) do
|
||||
{ name: 'production',
|
||||
url: 'http://production.gitlab.com:$PORT' }
|
||||
end
|
||||
|
||||
it 'allows a variable for the port' do
|
||||
expect(builds.size).to eq(1)
|
||||
expect(builds.first[:environment]).to eq(environment[:name])
|
||||
expect(builds.first[:options]).to include(environment: environment)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'when no environment is specified' do
|
||||
|
|
|
@ -196,22 +196,5 @@ describe Gitlab::Ci::Config::Entry::Environment do
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'when invalid URL is used' do
|
||||
let(:config) { { name: 'test', url: 'invalid-example.gitlab.com' } }
|
||||
|
||||
describe '#valid?' do
|
||||
it 'is not valid' do
|
||||
expect(entry).not_to be_valid
|
||||
end
|
||||
end
|
||||
|
||||
describe '#errors?' do
|
||||
it 'contains error about invalid URL' do
|
||||
expect(entry.errors)
|
||||
.to include "environment url must be a valid url"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue