blob: 086e8fc82252195b60afe6b942893b230291ba44 [file] [log] [blame]
<!--
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<form name="processForm" class="mt10" novalidate id="processFormSummaryStep">
<div class="row" id="processSummaryStep">
<h4 class="col-sm-24">General</h4>
<div class="col-sm-24">
<label>Process Name</label>: <span data-qe-id="processName">{{process.name}}</span>
</div>
<div class="col-sm-24">
<label>Tags</label>:
<div ng-repeat="tag in process.tags | filter:{key: '!!'} track by $index">
<span data-qe-id="processTags">{{tag.key}} = {{tag.value}}</span>
</div>
<div ng-show="!hasTags()"><span data-qe-id="processTags">No tags selected</span></div>
</div>
<h4 class="col-sm-24">
Access Control List
</h4>
<div class="col-sm-24">
<label>Owner</label>: <span data-qe-id="processACLOwner">{{optional(process.ACL.owner)}}</span>
<label>Group</label>: <span data-qe-id="processACLGroup">{{optional(process.ACL.group)}}</span>
<label>Permissions</label>:<span data-qe-id="processACLPermission"> {{optional(process.ACL.permission)}}</span>
</div>
<h4 class="col-sm-24">Workflow</h4>
<div class="col-sm-24">
<label>Workflow Name</label>:
<label class="light" data-qe-id="processWorkflowName">{{process.workflow.name}}</label>
</div>
<div class="col-sm-24">
<label>Engine</label>:
<label class="light" data-qe-id="processWorkflowEngine">{{process.workflow.engine}}</label>
</div>
<div class="col-sm-24">
<label>Workflow Path</label>:
<label class="light" data-qe-id="processWorkflowPath">{{process.workflow.path}}</label>
</div>
<div class="col-sm-24 plr0px" ng-show="process.workflow.engine==='spark'">
<h4 class="col-sm-24">Spark Attributes</h4>
<div class="col-sm-24">
<label>Aplication</label>:
<label class="light" data-qe-id="processSparkApplication">{{process.workflow.spark.name}}</label>
</div>
<div class="col-sm-24">
<label>Main Class</label>:
<label class="light" data-qe-id="processSparkMainClass">{{process.workflow.spark.class}}</label>
</div>
<div class="col-sm-24">
<label>Runs On</label>:
<label class="light" data-qe-id="processSparkRunsOn">{{process.workflow.spark.master}}</label>
</div>
<div class="col-sm-24">
<label>Mode</label>:
<label class="light" data-qe-id="processSparkMode">{{process.workflow.spark.mode}}</label>
</div>
<div class="col-sm-24">
<label>Jar</label>:
<label class="light" data-qe-id="processSparkJar">{{process.workflow.spark.jar}}</label>
</div>
<div class="col-sm-24">
<label>Spark Options</label>:
<label class="light" data-qe-id="processSparkOpts">{{process.workflow.spark.sparkOptions}}</label>
</div>
<div class="col-sm-24">
<label>Spark Arguments</label>:
<label class="light" data-qe-id="processSparkOpts">{{process.workflow.spark.arg}}</label>
</div>
</div>
<h4 class="col-sm-24">Timing</h4>
<div class="col-sm-24">
<label>Timezone</label>:
<label class="light" data-qe-id="processTimezone">{{optional(process.timezone)}}</label>
</div>
<div class="col-sm-24">
<label>Frequency</label>:
<label class="light">Every
<span data-qe-id="processFrequencyQuantity">{{process.frequency.quantity}}</span>
<span data-qe-id="processFrequencyUnit">{{process.frequency.unit}}</span>
</label>
</div>
<div class="col-sm-24">
<label>Max. parallel instances</label>:
<label class="light" data-qe-id="processParallel">{{process.parallel}}</label>
</div>
<div class="col-sm-24">
<label>Instance Usage</label>:
<label class="light" data-qe-id="processOrder">{{optional(process.order)}}</label>
</div>
<h4 class="col-sm-24">Retry</h4>
<div class="col-sm-24">
<label>Retry Policy</label>:
<label class="light" data-qe-id="processRetryPolicy">{{process.retry.policy}}</label>
</div>
<div class="col-sm-24">
<label>Attempts</label>:
<label class="light" data-qe-id="processRetryAttempts">{{process.retry.attempts}}</label>
</div>
<div class="col-sm-24">
<label>Delay</label>:
<label class="light">Up to
<span data-qe-id="processRetryDelayQuantity">{{process.retry.delay.quantity}}</span>
<span data-qe-id="processRetryDelayUnit">{{process.retry.delay.unit}}</span>
</label>
</div>
<h4 class="col-sm-24" ng-if="(process.properties | filter:{name: '!!'}).length > 0">Properties</h4>
<div class="col-sm-24" ng-repeat="property in process.properties | filter:{name: '!!'} track by $index">
<label>{{property.name}}</label>:<span> {{property.value}}</span>
</div>
<h4 class="col-sm-24">Clusters</h4>
<div ng-repeat="cluster in process.clusters track by $index" data-qe-id="processClusters">
<div class="row col-sm-offset-1 col-sm-22 detailsBox">
<div class="col-sm-24">
<label>Cluster Name</label>:
<label class="light" data-qe-id="processClusterName">{{cluster.name}}</label>
</div>
<label class="col-sm-24">Validity</label>
<div class="col-sm-24">
<label>Start</label>:
<label class="light" data-qe-id="processClusterStart">{{cluster.validity.start.date|date:'yyyy-MM-dd'}} {{cluster.validity.start.time|date:'HH:mm'}}</label>
<label>End</label>:
<label class="light" data-qe-id="processClusterEnd">{{cluster.validity.end.date|date:'yyyy-MM-dd'}} {{cluster.validity.end.time|date:'HH:mm'}}</label>
</div>
</div>
</div>
<h4 class="col-sm-24">Inputs</h4>
<div ng-repeat="input in process.inputs track by $index" data-qe-id="processInputs">
<div class="row col-sm-offset-1 col-sm-22 detailsBox">
<div class="col-sm-24">
<label>Name</label>:
<label class="light" data-qe-id="processInputName">{{input.name}}</label>
</div>
<div class="col-sm-24">
<label>Feed</label>:
<label class="light" data-qe-id="processInputFeed">{{input.feed}}</label>
</div>
<label class="col-sm-24">Instance</label>
<div class="col-sm-24">
<label>Start</label>:
<label class="light" data-qe-id="processInstanceStart">{{input.start}}</label>
<label>End</label>:
<label class="light" data-qe-id="processInstanceEnd">{{input.end}}</label>
</div>
</div>
</div>
<h4 class="col-sm-24">Outputs</h4>
<div ng-repeat="output in process.outputs track by $index" data-qe-id="processOutputs">
<div class="row col-sm-offset-1 col-sm-22 detailsBox">
<div class="col-sm-24">
<label>Name</label>
<label class="light" data-qe-id="processOutputName">{{output.name}}</label>
</div>
<div class="col-sm-24">
<label>Feed</label>
<label class="light" data-qe-id="processOutputFeed">{{output.feed}}</label>
</div>
<label class="col-sm-24">Instance</label>
<div class="col-sm-24">
<label>Instance</label>
<label class="light" data-qe-id="processOutputInstance">{{output.outputInstance}}</label>
</div>
</div>
</div>
</div>
<div class="col-xs-24 mt35 pb15px pl0px">
<button type="button" class="btn prevBtn"
ng-click="goBack()"
ng-disabled="buttonSpinners.backShow">
PREVIOUS <img src="css/img/ajax-loader.gif" ng-if="buttonSpinners.backShow" />
</button>
<div class="pull-right">
<a class="btn cnclBtn" ui-sref="main">
CANCEL
</a>
<button class="btn nextBtn"
ng-disabled="processForm.$invalid || buttonSpinners.show"
ng-click="saveEntity()" scroll-to-error>
SAVE <img src="css/img/ajax-loader.gif" ng-if="buttonSpinners.show" />
</button>
</div>
</div>
</form>