120 lines
		
	
	
	
		
			5.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			120 lines
		
	
	
	
		
			5.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <div class="setup-trigger-directive-element">
 | |
| 
 | |
|   <!-- Modal message dialog -->
 | |
|   <div class="modal fade" id="setupTriggerModal">
 | |
|     <div class="modal-dialog">
 | |
|       <div class="modal-content">
 | |
|         <div class="modal-header">
 | |
|           <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
 | |
|           <h4 class="modal-title">Setup new build trigger</h4>
 | |
|         </div>
 | |
|         <div class="modal-body" ng-show="currentView == 'activating'">
 | |
|           <span class="quay-spinner"></span> Setting up trigger...
 | |
|         </div>
 | |
|         <div class="modal-body" ng-show="currentView != 'activating'">
 | |
|           <!-- Trigger-specific setup -->
 | |
|           <div class="trigger-description-element trigger-option-section" ng-switch on="trigger.service">
 | |
|             <div ng-switch-when="github">
 | |
|               <div class="trigger-setup-github" repository="repository" trigger="trigger"
 | |
|                    next-step-counter="nextStepCounter" current-step-valid="state.stepValid"
 | |
|                    analyze="checkAnalyze(isValid)"></div>
 | |
|             </div>
 | |
|           </div>
 | |
| 
 | |
|           <!-- Loading pull information -->
 | |
|           <div ng-show="currentView == 'analyzing'">
 | |
|             <span class="quay-spinner"></span> Checking pull credential requirements...
 | |
|           </div>
 | |
| 
 | |
|           <!-- Pull information -->
 | |
|           <div class="trigger-option-section" ng-show="currentView == 'analyzed'">
 | |
| 
 | |
|             <!-- Messaging -->
 | |
|             <div class="alert alert-danger" ng-if="pullInfo.analysis.status == 'error'">
 | |
|               {{ pullInfo.analysis.message }}
 | |
|             </div>
 | |
|             <div class="alert alert-warning" ng-if="pullInfo.analysis.status == 'warning'">
 | |
|               {{ pullRequirements.message }}
 | |
|             </div>
 | |
|             <div class="dockerfile-found" ng-if="pullInfo.analysis.is_public === false">
 | |
|               <div class="dockerfile-found-content">
 | |
|                 A robot account is <strong>required</strong> for this build trigger because
 | |
| 
 | |
|                 the
 | |
|                 <a href="{{ pullInfo.analysis.dockerfile_url }}" ng-if="pullInfo.analysis.dockerfile_url" target="_blank">
 | |
|                   Dockerfile found
 | |
|                 </a>
 | |
|                 <span ng-if="!pullInfo.analysis.dockerfile_url">Dockerfile found</span>
 | |
| 
 | |
|                 pulls from the private <span class="registry-name"></span> repository
 | |
| 
 | |
|                 <a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}" target="_blank">
 | |
|                   {{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}
 | |
|                 </a>
 | |
|               </div>
 | |
|             </div>
 | |
| 
 | |
|             <div style="margin-bottom: 12px">Please select the credentials to use when pulling the base image:</div>
 | |
|             <div ng-if="!isNamespaceAdmin(repository.namespace)" style="color: #aaa;">
 | |
|               <strong>Note:</strong> In order to set pull credentials for a build trigger, you must be an
 | |
|               Administrator of the namespace <strong>{{ repository.namespace }}</strong>
 | |
|             </div>
 | |
| 
 | |
|             <!-- Namespace admin -->
 | |
|             <div ng-show="isNamespaceAdmin(repository.namespace)">
 | |
|               <!-- Select credentials -->
 | |
|               <div class="btn-group btn-group-sm">
 | |
|                 <button type="button" class="btn btn-default"
 | |
|                         ng-class="pullInfo.is_public ? 'active btn-info' : ''"
 | |
|                         ng-click="pullInfo.is_public = true">
 | |
|                   None
 | |
|                 </button>
 | |
|                 <button type="button" class="btn btn-default"
 | |
|                         ng-class="pullInfo.is_public ? '' : 'active btn-info'"
 | |
|                         ng-click="pullInfo.is_public = false">
 | |
|                   <i class="fa fa-wrench"></i>
 | |
|                   Robot account
 | |
|                 </button>
 | |
|               </div>
 | |
| 
 | |
|               <!-- Robot Select -->
 | |
|               <div ng-show="!pullInfo.is_public" style="margin-top: 10px">
 | |
|                 <div class="entity-search" namespace="repository.namespace"
 | |
|                      placeholder="'Select robot account for pulling...'"
 | |
|                      current-entity="pullInfo.pull_entity"
 | |
|                      allowed-entities="['robot']"></div>
 | |
| 
 | |
|                 <div ng-if="pullInfo.analysis.robots.length" style="margin-top: 20px; margin-bottom: 0px;">
 | |
|                   <strong>Note</strong>: We've automatically selected robot account
 | |
|                   <span class="entity-reference" entity="pullInfo.analysis.robots[0]"></span>,
 | |
|                   since it has access to the private repository.
 | |
|                 </div>
 | |
|                 <div ng-if="!pullInfo.analysis.robots.length && pullInfo.analysis.name"
 | |
|                      style="margin-top: 20px; margin-bottom: 0px;">
 | |
|                   <strong>Note</strong>: No robot account currently has access to the private repository. Please create one and/or assign access in the
 | |
|                   <a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}/admin" target="_blank">
 | |
|                     repository's admin panel.
 | |
|                   </a>
 | |
|                 </div>
 | |
|               </div>
 | |
|             </div>
 | |
| 
 | |
|           </div>
 | |
| 
 | |
|         </div>
 | |
|         <div class="modal-footer">
 | |
|           <button type="button" class="btn btn-primary" ng-disabled="!state.stepValid"
 | |
|                   ng-click="nextStepCounter = nextStepCounter + 1"
 | |
|                   ng-show="currentView == 'config'">Next</button>
 | |
| 
 | |
|           <button type="button" class="btn btn-primary"
 | |
|                   ng-disabled="!trigger.$ready || (!pullInfo['is_public'] && !pullInfo['pull_entity'])"
 | |
|                   ng-click="activate()"
 | |
|                   ng-show="currentView == 'analyzed'">Create Trigger</button>
 | |
| 
 | |
|           <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
 | |
|         </div>
 | |
|       </div><!-- /.modal-content -->
 | |
|     </div><!-- /.modal-dialog -->
 | |
|   </div><!-- /.modal -->
 | |
| </div>
 |