parent
9e88b1413d
commit
54e8e72ad2
39 changed files with 76 additions and 66 deletions
|
@ -30,4 +30,4 @@
|
|||
for repository {{ event_data.repository | repository_reference }}
|
||||
{% if event_data.error_message %}
|
||||
<br>{{ event_data.error_message }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
{% extends "build_event.html" %}
|
||||
{% block eventkind %}failure{% endblock %}
|
||||
{% block eventkind %}failure{% endblock %}
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
{% extends "build_event.html" %}
|
||||
{% block eventkind %}queued{% endblock %}
|
||||
{% block eventkind %}queued{% endblock %}
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
{% extends "build_event.html" %}
|
||||
{% block eventkind %}started{% endblock %}
|
||||
{% block eventkind %}started{% endblock %}
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
{% extends "build_event.html" %}
|
||||
{% block eventkind %}completed{% endblock %}
|
||||
{% block eventkind %}completed{% endblock %}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
A <a href="{{ event_data.vulnerability.link }}">{{ event_data.vulnerability.priority }} vulnerability</a> ({{ event_data.vulnerability.id }}) was detected in tags
|
||||
{{ 'tags' | icon_image }}
|
||||
{% for tag in event_data.tags %}{%if loop.index > 1 %}, {% endif %}{{ (event_data.repository, tag) | repository_tag_reference }}{% endfor %} in
|
||||
repository {{ event_data.repository | repository_reference }}
|
||||
repository {{ event_data.repository | repository_reference }}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<div class="application-info-element" style="padding-bottom: 18px">
|
||||
<div class="auth-header">
|
||||
<span class="avatar" size="48" data="application.avatar"></span>
|
||||
<h2><a href="{{ application.url }}" target="_blank">{{ application.name }}</a></h2>
|
||||
<h2><a href="{{ application.url }}" ng-safenewtab>{{ application.name }}</a></h2>
|
||||
<h4>
|
||||
{{ application.organization.name }}
|
||||
</h4>
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
|
||||
<tr ng-repeat="app in applications">
|
||||
<td><a href="/organization/{{ organization.name }}/application/{{ app.client_id }}">{{ app.name }}</a></td>
|
||||
<td><a href="{{ app.application_uri }}" ng-if="app.application_uri" target="_blank">{{ app.application_uri }}</a></td>
|
||||
<td><a href="{{ app.application_uri }}" ng-if="app.application_uri" ng-safenewtab>{{ app.application_uri }}</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
<tr class="auth-info" ng-repeat="authInfo in authorizedApps">
|
||||
<td>
|
||||
<span class="avatar" size="24" data="authInfo.application.avatar"></span>
|
||||
<a href="{{ authInfo.application.url }}" ng-if="authInfo.application.url" target="_blank"
|
||||
<a href="{{ authInfo.application.url }}" ng-if="authInfo.application.url" ng-safenewtab
|
||||
data-title="{{ authInfo.application.description || authInfo.application.name }}" bs-tooltip>
|
||||
{{ authInfo.application.name }}
|
||||
</a>
|
||||
|
|
|
@ -6,11 +6,11 @@
|
|||
<span bo-if="isPullError(error) && localPullInfo.isLocal">
|
||||
<span bo-if="!localPullInfo.username" class="error-message">
|
||||
Error 403: Could not pull private base image <a href="/repository/{{ localPullInfo.repo }}">{{ localPullInfo.repo }}</a> without robot account credentials. Please see
|
||||
<a href="http://docs.quay.io/issues/base-pull-issue.html" target="_blank">Setting up build trigger credentials</a> for more information.
|
||||
<a href="http://docs.quay.io/issues/base-pull-issue.html" ng-safenewtab>Setting up build trigger credentials</a> for more information.
|
||||
</span>
|
||||
<span bo-if="localPullInfo.username" class="error-message">
|
||||
Error 403: Could not pull private base image <a href="/repository/{{ localPullInfo.repo }}">{{ localPullInfo.repo }}</a> because robot account <strong>{{ localPullInfo.username}}</strong> does not have access. Please see
|
||||
<a href="http://docs.quay.io/issues/base-pull-issue.html" target="_blank">Setting up build trigger credentials</a> for more information.
|
||||
<a href="http://docs.quay.io/issues/base-pull-issue.html" ng-safenewtab>Setting up build trigger credentials</a> for more information.
|
||||
</span>
|
||||
</span>
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
<a id="downloadButton" class="btn btn-primary download-button"
|
||||
ng-href="/buildlogs/{{ currentBuild.id }}"
|
||||
target="_blank"
|
||||
ng-safenewtab
|
||||
ng-if="logEntries">
|
||||
<i class="fa fa-download"></i>Download Logs
|
||||
</a>
|
||||
|
|
|
@ -148,7 +148,7 @@
|
|||
</div>
|
||||
<div class="co-panel-body">
|
||||
<div class="description">
|
||||
<p>A <a href="http://redis.io" target="_blank">redis</a> key-value store is required for real-time events and build logs.</p>
|
||||
<p>A <a href="http://redis.io" ng-safenewtab>redis</a> key-value store is required for real-time events and build logs.</p>
|
||||
</div>
|
||||
|
||||
<table class="config-table">
|
||||
|
@ -272,7 +272,7 @@
|
|||
{{ field.help_text }}
|
||||
</div>
|
||||
<div class="help-text" ng-if="field.help_url">
|
||||
See <a href="{{ field.help_url }}" target="_blank">Documentation</a> for more information
|
||||
See <a href="{{ field.help_url }}" ng-safenewtab>Documentation</a> for more information
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -289,11 +289,11 @@
|
|||
<!-- ACI Conversion -->
|
||||
<div class="co-panel">
|
||||
<div class="co-panel-heading">
|
||||
<i class="fa rocket-icon" style="width: 20px; height: 20px; background-size: cover; vertical-align: middle;"></i> <a href="http://github.com/coreos/rkt" target="_blank">rkt</a> Conversion
|
||||
<i class="fa rocket-icon" style="width: 20px; height: 20px; background-size: cover; vertical-align: middle;"></i> <a href="http://github.com/coreos/rkt" ng-safenewtab>rkt</a> Conversion
|
||||
</div>
|
||||
<div class="co-panel-body">
|
||||
<div class="description">
|
||||
<p>If enabled, all images in the registry can be fetched via <code>rkt fetch</code> or any other <a href="https://github.com/appc/spec/blob/master/spec/discovery.md" target="_blank">AppC discovery</a>-compliant implementation.</p>
|
||||
<p>If enabled, all images in the registry can be fetched via <code>rkt fetch</code> or any other <a href="https://github.com/appc/spec/blob/master/spec/discovery.md" ng-safenewtab>AppC discovery</a>-compliant implementation.</p>
|
||||
</div>
|
||||
|
||||
<div class="co-checkbox">
|
||||
|
@ -302,7 +302,7 @@
|
|||
</div>
|
||||
|
||||
<div class="co-alert co-alert-info" ng-if="config.FEATURE_ACI_CONVERSION" style="margin-top: 20px;">
|
||||
Documentation on generating these keys can be found at <a href="https://tectonic.com/quay-enterprise/docs/latest/aci-signing-keys.html" target="_blank">Generating ACI Signing Keys</a>.
|
||||
Documentation on generating these keys can be found at <a href="https://tectonic.com/quay-enterprise/docs/latest/aci-signing-keys.html" ng-safenewtab>Generating ACI Signing Keys</a>.
|
||||
</div>
|
||||
|
||||
<table class="config-table" ng-if="config.FEATURE_ACI_CONVERSION">
|
||||
|
@ -503,7 +503,7 @@
|
|||
verifies user credentials on behalf of <span class="registry-name"></span>.
|
||||
<br>
|
||||
Documentation
|
||||
on the API required can be found here: <a href="https://github.com/coreos/jwt-auth-example" target="_blank">https://github.com/coreos/jwt-auth-example</a>.
|
||||
on the API required can be found here: <a href="https://github.com/coreos/jwt-auth-example" ng-safenewtab>https://github.com/coreos/jwt-auth-example</a>.
|
||||
</div>
|
||||
|
||||
<table class="config-table" ng-if="config.AUTHENTICATION_TYPE == 'JWT'">
|
||||
|
@ -597,7 +597,7 @@
|
|||
<div class="co-alert co-alert-warning">
|
||||
Note: This will be stored in
|
||||
<strong>plaintext</strong> inside the config.yaml, so setting up a dedicated account or using
|
||||
<a href="http://tools.ietf.org/id/draft-stroeder-hashed-userpassword-values-01.html" target="_blank">a password hash</a> is <strong>highly</strong> recommended.
|
||||
<a href="http://tools.ietf.org/id/draft-stroeder-hashed-userpassword-values-01.html" ng-safenewtab>a password hash</a> is <strong>highly</strong> recommended.
|
||||
</div>
|
||||
<span class="config-string-field" binding="config.LDAP_ADMIN_PASSWD"></span>
|
||||
<div class="help-text">
|
||||
|
@ -642,7 +642,7 @@
|
|||
<p>
|
||||
<strong>Note:</strong> A registered GitHub (Enterprise) OAuth application is required.
|
||||
View instructions on how to
|
||||
<a href="https://coreos.com/docs/enterprise-registry/github-app/" target="_blank">
|
||||
<a href="https://coreos.com/docs/enterprise-registry/github-app/" ng-safenewtab>
|
||||
Create an OAuth Application in GitHub
|
||||
</a>
|
||||
</p>
|
||||
|
@ -729,7 +729,7 @@
|
|||
<p>
|
||||
<strong>Note:</strong> A registered Google OAuth application is required.
|
||||
Visit the
|
||||
<a href="https://console.developers.google.com" target="_blank">
|
||||
<a href="https://console.developers.google.com" ng-safenewtab>
|
||||
Google Developer Console
|
||||
</a>
|
||||
to register an application.
|
||||
|
@ -777,7 +777,7 @@
|
|||
|
||||
<div ng-if="config.FEATURE_BUILD_SUPPORT" style="margin-top: 10px">
|
||||
<strong>Note: Build workers are required for this feature.</strong>
|
||||
See <a href="https://coreos.com/docs/enterprise-registry/build-support/" target="_blank">Adding Build Workers</a> for instructions on how to setup build workers.
|
||||
See <a href="https://coreos.com/docs/enterprise-registry/build-support/" ng-safenewtab>Adding Build Workers</a> for instructions on how to setup build workers.
|
||||
</div>
|
||||
</div>
|
||||
</div> <!-- /Build Support -->
|
||||
|
@ -795,7 +795,7 @@
|
|||
<p>
|
||||
<strong>Note:</strong> A registered GitHub (Enterprise) OAuth application (<strong>separate from GitHub Authentication</strong>) is required.
|
||||
View instructions on how to
|
||||
<a href="https://coreos.com/docs/enterprise-registry/github-app/" target="_blank">
|
||||
<a href="https://coreos.com/docs/enterprise-registry/github-app/" ng-safenewtab>
|
||||
Create an OAuth Application in GitHub
|
||||
</a>
|
||||
</p>
|
||||
|
@ -860,7 +860,7 @@
|
|||
<p>
|
||||
<strong>Note:</strong> A registered BitBucket OAuth application is required.
|
||||
View instructions on how to
|
||||
<a href="https://coreos.com/docs/enterprise-registry/bitbucket-app/" target="_blank">
|
||||
<a href="https://coreos.com/docs/enterprise-registry/bitbucket-app/" ng-safenewtab>
|
||||
Create an OAuth Application in BitBucket
|
||||
</a>
|
||||
</p>
|
||||
|
@ -903,7 +903,7 @@
|
|||
<p>
|
||||
<strong>Note:</strong> A registered GitLab OAuth application is required.
|
||||
Visit the
|
||||
<a href="{{ config.GITLAB_TRIGGER_CONFIG.GITLAB_ENDPOINT || 'https://gitlab.com' }}/admin/applications" target="_blank">
|
||||
<a href="{{ config.GITLAB_TRIGGER_CONFIG.GITLAB_ENDPOINT || 'https://gitlab.com' }}/admin/applications" ng-safenewtab>
|
||||
GitLab applications admin panel
|
||||
</a>
|
||||
to create a new application.
|
||||
|
|
|
@ -132,7 +132,7 @@
|
|||
|
||||
<div ng-if="getHelpUrl(field, currentConfig)"
|
||||
style="margin-top: 10px; margin-bottom: 10px">
|
||||
See: <a href="{{ getHelpUrl(field, currentConfig) }}" target="_blank">{{ getHelpUrl(field, currentConfig) }}</a>
|
||||
See: <a href="{{ getHelpUrl(field, currentConfig) }}" ng-safenewtab>{{ getHelpUrl(field, currentConfig) }}</a>
|
||||
</div>
|
||||
|
||||
<div class="co-alert co-alert-info" ng-if="currentMethod.id == 'webhook'"
|
||||
|
@ -141,7 +141,7 @@
|
|||
<br><br>
|
||||
The contents for each event can be found in the user guide:
|
||||
<a href="http://docs.quay.io/guides/notifications.html#webhook{{ currentEvent.id ? '_' + currentEvent.id : '' }}"
|
||||
target="_blank">
|
||||
ng-safenewtab>
|
||||
http://docs.quay.io/guides/notifications.html
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
<span ng-if="externalLoginInfo[provider.id]">
|
||||
Attached to {{ provider.title() }} account
|
||||
<b ng-if="provider.hasUserInfo">
|
||||
<a ng-href="{{ provider.getUserInfo(externalLoginInfo[provider.id]).endpoint }}" target="_blank">
|
||||
<a ng-href="{{ provider.getUserInfo(externalLoginInfo[provider.id]).endpoint }}" ng-safenewtab>
|
||||
{{ provider.getUserInfo(externalLoginInfo[provider.id]).username }}
|
||||
</a>
|
||||
</b>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<ul class="dropdown-menu dropdown-menu-right pull-right">
|
||||
<li ng-if="methodInfo.id == 'webhook'">
|
||||
<a href="http://docs.quay.io/guides/notifications.html#webhook_{{ eventInfo.id }}"
|
||||
target="_blank">
|
||||
ng-safenewtab>
|
||||
<i class="fa fa-book"></i>
|
||||
Webhook Documentation</a>
|
||||
</li>
|
||||
|
|
|
@ -24,16 +24,16 @@
|
|||
<li><a ng-href="/tour/" target="{{ appLinkTarget() }}" quay-section="tour">Tour</a></li>
|
||||
<li><a ng-href="/tutorial/" target="{{ appLinkTarget() }}" quay-section="tutorial">Tutorial</a></li>
|
||||
<li quay-require="['BILLING']"><a ng-href="/plans/" target="{{ appLinkTarget() }}" quay-section="plans">Pricing</a></li>
|
||||
<li><a href="https://docs.quay.io/" target="_blank">Docs</a></li>
|
||||
<li><a href="https://blog.quay.io/" target="_blank">Blog</a></li>
|
||||
<li><a href="https://docs.quay.io/" ng-safenewtab>Docs</a></li>
|
||||
<li><a href="https://blog.quay.io/" ng-safenewtab>Blog</a></li>
|
||||
</ul>
|
||||
|
||||
<!-- Signed in -->
|
||||
<ul class="nav navbar-nav navbar-links" ng-if="!user.anonymous">
|
||||
<li><a ng-href="/repository/" target="{{ appLinkTarget() }}" quay-section="repository">Repositories</a></li>
|
||||
<li><a ng-href="/tutorial/" target="{{ appLinkTarget() }}" quay-section="tutorial">Tutorial</a></li>
|
||||
<li><a href="https://docs.quay.io/" target="_blank">Docs</a></li>
|
||||
<li><a href="https://blog.quay.io/" target="_blank">Blog</a></li>
|
||||
<li><a href="https://docs.quay.io/" ng-safenewtab>Docs</a></li>
|
||||
<li><a href="https://blog.quay.io/" ng-safenewtab>Blog</a></li>
|
||||
</ul>
|
||||
|
||||
<!-- Phone -->
|
||||
|
|
|
@ -108,7 +108,7 @@
|
|||
</td>
|
||||
<td class="single-col nowrap-col">
|
||||
<a bo-text="vuln.name" ng-click="toggleDetails(vuln)" class="expand-link"></a>
|
||||
<a href="{{ vuln.link }}" class="external-link hidden-xs hidden-sm hidden-md" target="_blank">
|
||||
<a href="{{ vuln.link }}" class="external-link hidden-xs hidden-sm hidden-md" ng-safenewtab>
|
||||
<i class="fa fa-link"></i>
|
||||
</a>
|
||||
</td>
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
</thead>
|
||||
|
||||
<tr ng-repeat="vulnerability in securityVulnerabilities | filter:options.vulnFilter | orderBy:'index'">
|
||||
<td><a href="{{ vulnerability.link }}" target="_blank">{{ vulnerability.name }}</a></td>
|
||||
<td><a href="{{ vulnerability.link }}" ng-safenewtab>{{ vulnerability.name }}</a></td>
|
||||
<td style="white-space: nowrap;">
|
||||
<span class="vulnerability-priority-view" priority="vulnerability.severity"></span>
|
||||
</td>
|
||||
|
|
|
@ -21,4 +21,4 @@
|
|||
<button class="btn btn-primary btn-block" type="submit">Send Recovery Email</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -77,7 +77,7 @@
|
|||
</span>
|
||||
|
||||
<b>Automated Security Scanning (Preview)</b>
|
||||
<div>Continually scanning this repository for 17K+ known vulnerabilities. <a href="https://blog.quay.io/security-scanning-beta" target="_blank">Read more about this feature</a>.</div>
|
||||
<div>Continually scanning this repository for 17K+ known vulnerabilities. <a href="https://blog.quay.io/security-scanning-beta" ng-safenewtab>Read more about this feature</a>.</div>
|
||||
<div class="configure-alerts" ng-if="!hasEvents">
|
||||
<a href="/repository/{{ repository.namespace }}/{{ repository.name }}?tab=settings&add_event=vulnerability_found"><i class="fa fa-bell-o"></i>Configure Vulnerability Alerts</a>
|
||||
</div>
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
<div ng-show="!showingHistory">
|
||||
<div class="co-alert co-alert-danger" ng-if="hasDefcon1">
|
||||
One or more of your tags has an <strong>extremely critical</strong> vulnerability which should be addressed immediately:
|
||||
<a href="{{ vuln.Link }}" ng-repeat="(key, vuln) in defcon1" style="margin-left: 10px;" target="_blank">
|
||||
<a href="{{ vuln.Link }}" ng-repeat="(key, vuln) in defcon1" style="margin-left: 10px;" ng-safenewtab>
|
||||
{{ vuln.Name }}
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
Dockerfile found
|
||||
pulls from the private <span class="registry-name"></span> repository
|
||||
|
||||
<a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}" target="_blank">
|
||||
<a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}" ng-safenewtab>
|
||||
{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}
|
||||
</a>
|
||||
</div>
|
||||
|
@ -95,7 +95,7 @@
|
|||
<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">
|
||||
<a href="/repository/{{ pullInfo.analysis.namespace }}/{{ pullInfo.analysis.name }}/admin" ng-safenewtab>
|
||||
repository's admin panel.
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<soan class="commit-circle-container" data-title="Commit" data-container="body" bs-tooltip>
|
||||
<span class="commit-circle"></span>
|
||||
</span>
|
||||
<span class="anchor" href="{{ getUrl(commitSha, urlTemplate) }}" target="_blank"
|
||||
<span class="anchor" href="{{ getUrl(commitSha, urlTemplate) }}" ng-safenewtab
|
||||
is-only-text="!urlTemplate || !getUrl(commitSha, urlTemplate)">
|
||||
{{ commitSha.substring(0, 7) }}
|
||||
</span>
|
||||
|
|
|
@ -3,13 +3,13 @@
|
|||
<!-- Branch -->
|
||||
<span ng-switch-when="heads">
|
||||
<i class="fa fa-code-fork" data-container="body" data-title="Branch" bs-tooltip></i>
|
||||
<span class="anchor" href="{{ getUrl(ref, branchTemplate, 'branch') }}" is-only-text="!branchTemplate || !getUrl(ref, branchTemplate, 'branch')" target="_blank">{{ getTitle(ref) }}</span>
|
||||
<span class="anchor" href="{{ getUrl(ref, branchTemplate, 'branch') }}" is-only-text="!branchTemplate || !getUrl(ref, branchTemplate, 'branch')" ng-safenewtab>{{ getTitle(ref) }}</span>
|
||||
</span>
|
||||
|
||||
<!-- Tag -->
|
||||
<span ng-switch-when="tags">
|
||||
<i class="fa fa-tag" data-container="body" data-title="Tag" bs-tooltip></i>
|
||||
<span class="anchor" href="{{ getUrl(ref, tagTemplate, 'tag') }}" is-only-text="!tagTemplate || !getUrl(ref, tagTemplate, 'tag')" target="_blank">{{ getTitle(ref) }}</span>
|
||||
<span class="anchor" href="{{ getUrl(ref, tagTemplate, 'tag') }}" is-only-text="!tagTemplate || !getUrl(ref, tagTemplate, 'tag')" ng-safenewtab>{{ getTitle(ref) }}</span>
|
||||
</span>
|
||||
</span>
|
||||
</span>
|
||||
|
|
|
@ -164,7 +164,7 @@
|
|||
<img src="/static/img/testimonial-frank.png">
|
||||
<span class="speaker-info-internal">
|
||||
<span class="speaker">Frank Macreery</span>
|
||||
<span class="speaker-title"><a href="https://www.aptible.com" target="_blank" alt="Aptible">Aptible</a> - CTO & Co-Founder</span>
|
||||
<span class="speaker-title"><a href="https://www.aptible.com" ng-safenewtab alt="Aptible">Aptible</a> - CTO & Co-Founder</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -125,7 +125,7 @@
|
|||
<li ng-repeat="branchName in branchNames | limitTo:20"
|
||||
class="ref-reference"
|
||||
ng-class="isMatching('heads', branchName, state.branchTagFilter) ? 'match' : 'not-match'">
|
||||
<span ng-click="addRef('heads', branchName)" target="_blank">
|
||||
<span ng-click="addRef('heads', branchName)" ng-safenewtab>
|
||||
{{ branchName }}
|
||||
</span>
|
||||
</li>
|
||||
|
@ -138,7 +138,7 @@
|
|||
<li ng-repeat="tagName in tagNames | limitTo:20"
|
||||
class="ref-reference"
|
||||
ng-class="isMatching('tags', tagName, state.branchTagFilter) ? 'match' : 'not-match'">
|
||||
<span ng-click="addRef('tags', tagName)" target="_blank">
|
||||
<span ng-click="addRef('tags', tagName)" ng-safenewtab>
|
||||
{{ tagName }}
|
||||
</span>
|
||||
</li>
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
<a href="{{ trigger.repository_url }}" target="_new">
|
||||
{{ trigger.config.build_source }}
|
||||
</a>
|
||||
</span>
|
||||
</span>
|
||||
|
|
|
@ -5,6 +5,6 @@
|
|||
<li>You must give the following public key read access to the git repository.</li>
|
||||
<li>You must set your repository to POST to the following URL to trigger a build.</li>
|
||||
</ul>
|
||||
For more information, refer to the <a href="http://docs.quay.io/guides/custom-trigger.html" target="_blank">Custom Git Triggers documentation</a>.
|
||||
For more information, refer to the <a href="http://docs.quay.io/guides/custom-trigger.html" ng-safenewtab>Custom Git Triggers documentation</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<span>
|
||||
<i class="fa fa-git-square fa-lg" style="margin-right: 6px;" data-title="git" bs-tooltip="tooltip.title"></i>
|
||||
Push to {{ trigger.config.build_source }}
|
||||
</span>
|
||||
</span>
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
<div class="co-alert co-alert-info">
|
||||
<p>The following key has been automatically added to your source control repository.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
<a href="{{ trigger.repository_url }}" target="_new">
|
||||
{{ trigger.config.build_source }}
|
||||
</a>
|
||||
</span>
|
||||
</span>
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
<div class="tbd-content" ng-switch-when="fullcommit">
|
||||
<div class="commit-message">
|
||||
<span class="anchor" is-only-text="!TriggerService.getFullLinkTemplate(build, 'commit')"
|
||||
target="_blank" href="{{ TriggerService.getFullLinkTemplate(build, 'commit').replace('{sha}', TriggerService.getCommitSHA(build.trigger_metadata)) }}">
|
||||
ng-safenewtab href="{{ TriggerService.getFullLinkTemplate(build, 'commit').replace('{sha}', TriggerService.getCommitSHA(build.trigger_metadata)) }}">
|
||||
{{ getMessageSummary(build.trigger_metadata.commit_info.message) }}
|
||||
</span>
|
||||
<span class="long-description-toggle"
|
||||
|
@ -44,7 +44,7 @@
|
|||
<span class="anchor commit-who"
|
||||
href="{{ build.trigger_metadata.commit_info.author.url }}"
|
||||
is-only-text="!build.trigger_metadata.commit_info.author.url"
|
||||
target="_blank">
|
||||
ng-safenewtab>
|
||||
<img ng-src="{{ build.trigger_metadata.commit_info.author.avatar_url }}"
|
||||
ng-if="build.trigger_metadata.commit_info.author.avatar_url">
|
||||
{{ build.trigger_metadata.commit_info.author.username }}
|
||||
|
|
10
static/js/ng-safenewtab.js
Normal file
10
static/js/ng-safenewtab.js
Normal file
|
@ -0,0 +1,10 @@
|
|||
/**
|
||||
* Adds both target="_blank" and rel="noopener" to the marked anchor tag.
|
||||
* Background on noopener: https://mathiasbynens.github.io/rel-noopener/
|
||||
*/
|
||||
angular.module('quay').directive('ngSafenewtab', function () {
|
||||
return function (scope, element, attr) {
|
||||
element.attr('target', '_blank');
|
||||
element.attr('rel', 'noopener');
|
||||
};
|
||||
});
|
|
@ -54,16 +54,16 @@
|
|||
<div class="row">
|
||||
<div class="trusted-logos">
|
||||
<div class="col-md-3 trusted-logo">
|
||||
<a href="http://www.modcloth.com" target="_blank" alt="ModCloth"><img src="/static/img/modcloth-logo.png"></a>
|
||||
<a href="http://www.modcloth.com" ng-safenewtab alt="ModCloth"><img src="/static/img/modcloth-logo.png"></a>
|
||||
</div>
|
||||
<div class="col-md-3 trusted-logo">
|
||||
<a href="https://travis-ci.com" target="_blank" alt="Travis CI"><img src="/static/img/travisci-logo.png"></a>
|
||||
<a href="https://travis-ci.com" ng-safenewtab alt="Travis CI"><img src="/static/img/travisci-logo.png"></a>
|
||||
</div>
|
||||
<div class="col-md-3 trusted-logo apptentive">
|
||||
<a href="http://www.apptentive.com" target="_blank" alt="Apptentive"><img src="/static/img/apptentive-logo.svg"></a>
|
||||
<a href="http://www.apptentive.com" ng-safenewtab alt="Apptentive"><img src="/static/img/apptentive-logo.svg"></a>
|
||||
</div>
|
||||
<div class="col-md-3 trusted-logo">
|
||||
<a href="https://www.aptible.com" target="_blank" alt="Aptible"><img src="/static/img/aptible-logo.png" style="width: 200px;"></a>
|
||||
<a href="https://www.aptible.com" ng-safenewtab alt="Aptible"><img src="/static/img/aptible-logo.png" style="width: 200px;"></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -129,7 +129,7 @@
|
|||
<img src="/static/img/testimonial-mike.png">
|
||||
<span class="speaker-info-internal">
|
||||
<span class="speaker">Mike Saffitz</span>
|
||||
<span class="speaker-title"><a href="http://www.apptentive.com" target="_blank" alt="Apptentive">Apptentive</a> - CTO & Co-Founder</span>
|
||||
<span class="speaker-title"><a href="http://www.apptentive.com" ng-safenewtab alt="Apptentive">Apptentive</a> - CTO & Co-Founder</span>
|
||||
</span>
|
||||
</div>
|
||||
<a class="learn-more" href="/tour">Learn more</a>
|
||||
|
|
|
@ -65,7 +65,7 @@
|
|||
<div class="form-group nested">
|
||||
<label for="fieldAppAvatar">Avatar E-mail (optional)</label>
|
||||
<input type="email" class="form-control" id="fieldAppAvatar" placeholder="Avatar E-mail" ng-model="application.avatar_email">
|
||||
<div class="description">An e-mail address representing the <a href="http://docs.quay.io/glossary/avatar" target="_blank">Avatar</a> for the application. See above for the icon.</div>
|
||||
<div class="description">An e-mail address representing the <a href="http://docs.quay.io/glossary/avatar" ng-safenewtab>Avatar</a> for the application. See above for the icon.</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group nested" style="margin-top: 10px; padding-top: 10px; border-top: 1px solid #eee;">
|
||||
|
@ -122,7 +122,7 @@
|
|||
|
||||
<a class="btn btn-success"
|
||||
href="{{ Config.getUrl('/oauth/authorize?response_type=token&client_id=' + application.client_id + '&scope=' + getScopes(genScopes).join(' ') + '&redirect_uri=' + Config.getUrl(Config['LOCAL_OAUTH_HANDLER'])) }}"
|
||||
ng-disabled="!getScopes(genScopes).length" target="_blank">
|
||||
ng-disabled="!getScopes(genScopes).length" ng-safenewtab>
|
||||
Generate Access Token
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -72,7 +72,7 @@
|
|||
Select a service above to view its local logs
|
||||
|
||||
<div>
|
||||
<a class="btn btn-primary" href="/systemlogsarchive?_csrf_token={{ csrf_token }}" target="_blank">
|
||||
<a class="btn btn-primary" href="/systemlogsarchive?_csrf_token={{ csrf_token }}" ng-safenewtab>
|
||||
<i class="fa fa-download fa-lg" style="margin-right: 4px;"></i> Download All Local Logs (.tar.gz)
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -1 +1 @@
|
|||
That's it for the introduction tutorial! If you have any questions, please check the <a href="http://docs.quay.io" target="_blank">Documentation</a> or <a href="/contact">contact us</a>!
|
||||
That's it for the introduction tutorial! If you have any questions, please check the <a href="http://docs.quay.io" ng-safenewtab>Documentation</a> or <a href="/contact">contact us</a>!
|
||||
|
|
|
@ -212,7 +212,7 @@ mixpanel.init("{{ mixpanel_key }}", { track_pageview : false, debug: {{ is_debug
|
|||
</ul>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="https://coreos.com" target="_blank"><img src="/static/img/coreos.svg"></a>
|
||||
<a href="https://coreos.com" ng-safenewtab><img src="/static/img/coreos.svg"></a>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
|
@ -251,7 +251,7 @@ mixpanel.init("{{ mixpanel_key }}", { track_pageview : false, debug: {{ is_debug
|
|||
b[k]=o+'d.write("'+p().replace(/"/g,String.fromCharCode(92)+'"')+'");d.close();'}a.P(2)};ld()};nt()})({
|
||||
loader: "static.olark.com/jsclient/loader0.js",name:"olark",methods:["configure","extend","declare","identify"]});
|
||||
/* custom configuration goes here (www.olark.com/documentation) */
|
||||
olark.identify('1189-336-10-9918');/*]]>*/</script><noscript><a href="https://www.olark.com/site/1189-336-10-9918/contact" title="Contact us" target="_blank">Questions? Feedback?</a> powered by <a href="http://www.olark.com?welcome" title="Olark live chat software">Olark live chat software</a></noscript>
|
||||
olark.identify('1189-336-10-9918');/*]]>*/</script><noscript><a href="https://www.olark.com/site/1189-336-10-9918/contact" title="Contact us" ng-safenewtab>Questions? Feedback?</a> powered by <a href="http://www.olark.com?welcome" title="Olark live chat software">Olark live chat software</a></noscript>
|
||||
<!-- end olark code -->
|
||||
{% endif %}
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
<div class="container auth-container" ng-if="!user.anonymous">
|
||||
<div class="auth-header">
|
||||
<span class="avatar" size="48" data="{{ application.avatar }}"></span>
|
||||
<h2><a href="{{ application.url }}" target="_blank">{{ application.name }}</a></h2>
|
||||
<h2><a href="{{ application.url }}" ng-safenewtab>{{ application.name }}</a></h2>
|
||||
<h4>
|
||||
<span class="avatar" size="24" data="{{ application.organization.avatar }}"
|
||||
style="vertical-align: middle; margin-right: 4px;"></span>
|
||||
|
|
Reference in a new issue