CE port of Add new service to create the web ide terminal
This commit is contained in:
		
							parent
							
								
									8f36de529a
								
							
						
					
					
						commit
						2a14bb061f
					
				|  | @ -171,6 +171,8 @@ module Ci | |||
| 
 | ||||
|     scope :internal, -> { where(source: internal_sources) } | ||||
| 
 | ||||
|     scope :for_user, -> (user) { where(user: user) } | ||||
| 
 | ||||
|     # Returns the pipelines in descending order (= newest first), optionally | ||||
|     # limited to a number of references. | ||||
|     # | ||||
|  | @ -496,6 +498,8 @@ module Ci | |||
|     end | ||||
| 
 | ||||
|     def ci_yaml_file_path | ||||
|       return unless repository_source? || unknown_source? | ||||
| 
 | ||||
|       if project.ci_config_path.blank? | ||||
|         '.gitlab-ci.yml' | ||||
|       else | ||||
|  | @ -664,6 +668,7 @@ module Ci | |||
|     def ci_yaml_from_repo | ||||
|       return unless project | ||||
|       return unless sha | ||||
|       return unless ci_yaml_file_path | ||||
| 
 | ||||
|       project.repository.gitlab_ci_yml_for(sha, ci_yaml_file_path) | ||||
|     rescue GRPC::NotFound, GRPC::Internal | ||||
|  |  | |||
|  | @ -1249,22 +1249,40 @@ describe Ci::Pipeline, :mailer do | |||
|   describe '#ci_yaml_file_path' do | ||||
|     subject { pipeline.ci_yaml_file_path } | ||||
| 
 | ||||
|     it 'returns the path from project' do | ||||
|       allow(pipeline.project).to receive(:ci_config_path) { 'custom/path' } | ||||
|     %i[unknown_source repository_source].each do |source| | ||||
|       context source.to_s do | ||||
|         before do | ||||
|           pipeline.config_source = described_class.config_sources.fetch(source) | ||||
|         end | ||||
| 
 | ||||
|       is_expected.to eq('custom/path') | ||||
|         it 'returns the path from project' do | ||||
|           allow(pipeline.project).to receive(:ci_config_path) { 'custom/path' } | ||||
| 
 | ||||
|           is_expected.to eq('custom/path') | ||||
|         end | ||||
| 
 | ||||
|         it 'returns default when custom path is nil' do | ||||
|           allow(pipeline.project).to receive(:ci_config_path) { nil } | ||||
| 
 | ||||
|           is_expected.to eq('.gitlab-ci.yml') | ||||
|         end | ||||
| 
 | ||||
|         it 'returns default when custom path is empty' do | ||||
|           allow(pipeline.project).to receive(:ci_config_path) { '' } | ||||
| 
 | ||||
|           is_expected.to eq('.gitlab-ci.yml') | ||||
|         end | ||||
|       end | ||||
|     end | ||||
| 
 | ||||
|     it 'returns default when custom path is nil' do | ||||
|       allow(pipeline.project).to receive(:ci_config_path) { nil } | ||||
|     context 'when pipeline is for auto-devops' do | ||||
|       before do | ||||
|         pipeline.config_source = 'auto_devops_source' | ||||
|       end | ||||
| 
 | ||||
|       is_expected.to eq('.gitlab-ci.yml') | ||||
|     end | ||||
| 
 | ||||
|     it 'returns default when custom path is empty' do | ||||
|       allow(pipeline.project).to receive(:ci_config_path) { '' } | ||||
| 
 | ||||
|       is_expected.to eq('.gitlab-ci.yml') | ||||
|       it 'does not return config file' do | ||||
|         is_expected.to be_nil | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|  |  | |||
|  | @ -11,6 +11,7 @@ describe PipelineScheduleWorker do | |||
|   end | ||||
| 
 | ||||
|   before do | ||||
|     stub_application_setting(auto_devops_enabled: false) | ||||
|     stub_ci_pipeline_to_return_yaml_file | ||||
| 
 | ||||
|     pipeline_schedule.update_column(:next_run_at, 1.day.ago) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue