Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
1a5027a0
Commit
1a5027a0
authored
Nov 10, 2016
by
Regis
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
re-wired a lot of the application - need a few more API values
parent
729fd548
Changes
12
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
85 additions
and
165 deletions
+85
-165
app/assets/javascripts/vue_pipelines_index/branch_commit.js.es6
...sets/javascripts/vue_pipelines_index/branch_commit.js.es6
+16
-21
app/assets/javascripts/vue_pipelines_index/index.js.es6
app/assets/javascripts/vue_pipelines_index/index.js.es6
+1
-0
app/assets/javascripts/vue_pipelines_index/pipeline_url.js.es6
...ssets/javascripts/vue_pipelines_index/pipeline_url.js.es6
+8
-3
app/assets/javascripts/vue_pipelines_index/pipelines.js.es6
app/assets/javascripts/vue_pipelines_index/pipelines.js.es6
+4
-20
app/assets/javascripts/vue_pipelines_index/stage.js.es6
app/assets/javascripts/vue_pipelines_index/stage.js.es6
+31
-0
app/assets/javascripts/vue_pipelines_index/stages.js.es6
app/assets/javascripts/vue_pipelines_index/stages.js.es6
+9
-98
app/assets/javascripts/vue_pipelines_index/store.js.es6
app/assets/javascripts/vue_pipelines_index/store.js.es6
+1
-1
app/assets/javascripts/vue_pipelines_index/time_ago.js.es6
app/assets/javascripts/vue_pipelines_index/time_ago.js.es6
+2
-2
app/assets/javascripts/vue_pipelines_status/failed.js.es6
app/assets/javascripts/vue_pipelines_status/failed.js.es6
+2
-3
app/assets/javascripts/vue_pipelines_status/pending.js.es6
app/assets/javascripts/vue_pipelines_status/pending.js.es6
+2
-3
app/assets/javascripts/vue_pipelines_status/running.js.es6
app/assets/javascripts/vue_pipelines_status/running.js.es6
+2
-3
app/assets/javascripts/vue_pipelines_status/status.js.es6
app/assets/javascripts/vue_pipelines_status/status.js.es6
+7
-11
No files found.
app/assets/javascripts/vue_pipelines_index/branch_commit.js.es6
View file @
1a5027a0
...
@@ -3,10 +3,13 @@
...
@@ -3,10 +3,13 @@
((gl) => {
((gl) => {
gl.VueBranchCommit = Vue.extend({
gl.VueBranchCommit = Vue.extend({
props: ['pipeline', 'shortsha'],
props: ['pipeline'],
methods: {
computed: {
commiturl(sha) {
mailto() {
return `./commit/${sha}`;
return `mailto:${this.pipeline.commit.author_email}`;
},
alt() {
return `${this.pipeline.commit.author_name}'s avatar`
},
},
},
},
template: `
template: `
...
@@ -14,7 +17,7 @@
...
@@ -14,7 +17,7 @@
<div class="icon-container">
<div class="icon-container">
<i class="fa fa-code-fork"></i>
<i class="fa fa-code-fork"></i>
</div>
</div>
<a class="monospace branch-name" href="./commits/master">
master
</a>
<a class="monospace branch-name" href="./commits/master">
{{pipeline.ref.name}}
</a>
<div class="icon-container commit-icon">
<div class="icon-container commit-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40">
<path fill="#8F8F8F" fill-rule="evenodd" d="M28.7769836,18 C27.8675252,13.9920226 24.2831748,11 20,11 C15.7168252,11 12.1324748,13.9920226 11.2230164,18 L4.0085302,18 C2.90195036,18 2,18.8954305 2,20 C2,21.1122704 2.8992496,22 4.0085302,22 L11.2230164,22 C12.1324748,26.0079774 15.7168252,29 20,29 C24.2831748,29 27.8675252,26.0079774 28.7769836,22 L35.9914698,22 C37.0980496,22 38,21.1045695 38,20 C38,18.8877296 37.1007504,18 35.9914698,18 L28.7769836,18 L28.7769836,18 Z M20,25 C22.7614237,25 25,22.7614237 25,20 C25,17.2385763 22.7614237,15 20,15 C17.2385763,15 15,17.2385763 15,20 C15,22.7614237 17.2385763,25 20,25 L20,25 Z"></path>
<path fill="#8F8F8F" fill-rule="evenodd" d="M28.7769836,18 C27.8675252,13.9920226 24.2831748,11 20,11 C15.7168252,11 12.1324748,13.9920226 11.2230164,18 L4.0085302,18 C2.90195036,18 2,18.8954305 2,20 C2,21.1122704 2.8992496,22 4.0085302,22 L11.2230164,22 C12.1324748,26.0079774 15.7168252,29 20,29 C24.2831748,29 27.8675252,26.0079774 28.7769836,22 L35.9914698,22 C37.0980496,22 38,21.1045695 38,20 C38,18.8877296 37.1007504,18 35.9914698,18 L28.7769836,18 L28.7769836,18 Z M20,25 C22.7614237,25 25,22.7614237 25,20 C25,17.2385763 22.7614237,15 20,15 C17.2385763,15 15,17.2385763 15,20 C15,22.7614237 17.2385763,25 20,25 L20,25 Z"></path>
...
@@ -22,36 +25,28 @@
...
@@ -22,36 +25,28 @@
</div>
</div>
<a
<a
class="commit-id monospace"
class="commit-id monospace"
:href='
commiturl(pipeline.sha)
'
:href='
pipeline.commit.commit_url
'
>
>
{{
shortsha(pipeline)
}}
{{
pipeline.commit.short_id
}}
</a>
</a>
<p class="commit-title">
<p class="commit-title">
<a
<a
href="mailto:james@jameslopez.es"
:href='mailto'
>
>
<!--
<!-- still need gravatar url -->
need Author Name
need Plural Version of Author Name: Rails has this built in
need gravatar HASH for author
need authors email
-->
<img
<img
class="avatar has-tooltip s20 hidden-xs"
class="avatar has-tooltip s20 hidden-xs"
alt="James Lopez's avatar"
:alt='alt'
title="James Lopez"
:title='pipeline.commit.author_name'
data-container="body"
data-container="body"
src="http://www.gravatar.com/avatar/80d3b651b4be1f1db39435c2d11f1f23?s=40&d=identicon"
src="http://www.gravatar.com/avatar/80d3b651b4be1f1db39435c2d11f1f23?s=40&d=identicon"
>
>
</a>
</a>
<a
<a
class="commit-row-message"
class="commit-row-message"
:href='
commiturl(pipeline.sha)
'
:href='
pipeline.commit.commit_url
'
>
>
<!--
{{pipeline.commit.title}}
need commit message/title for SHA
-->
fix broken repo 500 errors in UI and added relevant specs
</a>
</a>
</p>
</p>
</td>
</td>
...
...
app/assets/javascripts/vue_pipelines_index/index.js.es6
View file @
1a5027a0
...
@@ -6,6 +6,7 @@
...
@@ -6,6 +6,7 @@
//= require ./store.js.es6
//= require ./store.js.es6
//= require ./pipeline_url.js.es6
//= require ./pipeline_url.js.es6
//= require ./pipeline_head.js.es6
//= require ./pipeline_head.js.es6
//= require ./stage.js.es6
//= require ./stages.js.es6
//= require ./stages.js.es6
//= require ./pipeline_actions.js.es6
//= require ./pipeline_actions.js.es6
//= require ./branch_commit.js.es6
//= require ./branch_commit.js.es6
...
...
app/assets/javascripts/vue_pipelines_index/pipeline_url.js.es6
View file @
1a5027a0
...
@@ -8,15 +8,20 @@
...
@@ -8,15 +8,20 @@
},
},
props: [
props: [
'pipeline',
'pipeline',
'pipelineurl',
],
],
computed: {
user() {
if (!this.pipeline.user) return 'API';
return this.pipeline.user;
},
},
template: `
template: `
<td>
<td>
<a :href='pipeline
url(pipeline.id)
'>
<a :href='pipeline
.url
'>
<span class="pipeline-id">#{{pipeline.id}}</span>
<span class="pipeline-id">#{{pipeline.id}}</span>
</a>
</a>
<span>by</span>
<span>by</span>
<span class="api monospace">{{
pipeline.
user}}</span>
<span class="api monospace">{{user}}</span>
</td>
</td>
`,
`,
});
});
...
...
app/assets/javascripts/vue_pipelines_index/pipelines.js.es6
View file @
1a5027a0
...
@@ -44,12 +44,8 @@
...
@@ -44,12 +44,8 @@
window.history.pushState({}, null, `?p=${this.pagenum}`);
window.history.pushState({}, null, `?p=${this.pagenum}`);
clearInterval(this.intervalId);
clearInterval(this.intervalId);
debugger
this.store.fetchDataLoop.call(this, Vue, this.pagenum, this.scope);
this.store.fetchDataLoop.call(this, Vue, this.pagenum, this.scope);
},
},
pipelineurl(id) {
return `pipelines/${id}`;
},
},
},
template: `
template: `
<div>
<div>
...
@@ -58,22 +54,10 @@
...
@@ -58,22 +54,10 @@
<vue-pipeline-head></vue-pipeline-head>
<vue-pipeline-head></vue-pipeline-head>
<tbody>
<tbody>
<tr class="commit" v-for='pipeline in pipelines'>
<tr class="commit" v-for='pipeline in pipelines'>
<vue-status-scope
<vue-status-scope :pipeline='pipeline'></vue-status-scope>
:scope='pipeline'
<vue-pipeline-url :pipeline='pipeline'></vue-pipeline-url>
:scopeurl='pipelineurl'
<vue-branch-commit :pipeline='pipeline'></vue-branch-commit>
>
<vue-stages :pipeline='pipeline'></vue-stages>
</vue-status-scope>
<vue-pipeline-url
:pipeline='pipeline'
:pipelineurl='pipelineurl'
>
</vue-pipeline-url>
<vue-branch-commit
:pipeline='pipeline'
:shortsha='pipeline.commit.shortsha'
>
</vue-branch-commit>
<vue-stages></vue-stages>
<vue-time-ago :pipeline='pipeline'></vue-time-ago>
<vue-time-ago :pipeline='pipeline'></vue-time-ago>
<vue-pipeline-actions></vue-pipeline-actions>
<vue-pipeline-actions></vue-pipeline-actions>
</tr>
</tr>
...
...
app/assets/javascripts/vue_pipelines_index/stage.js.es6
0 → 100644
View file @
1a5027a0
/* global Vue, gl */
/* eslint-disable no-param-reassign */
((gl) => {
gl.VueStage = Vue.extend({
components: {
'running-icon': gl.VueRunningIcon,
'pending-icon': gl.VuePendingIcon,
'failed-icon': gl.VueFailedIcon,
'success-icon': gl.VueSuccessIcon,
},
props: ['stage'],
computed: {
buildStatus() {
return `Build: ${this.stage.status}`;
},
},
template: `
<a
class="has-tooltip ci-status-icon-failed"
:title='buildStatus'
:href='stage.url'
>
<running-icon v-if='stage.status === "running"'></running-icon>
<success-icon v-if='stage.status === "success"'></success-icon>
<failed-icon v-if='stage.status === "failed"'></failed-icon>
<pending-icon v-if='stage.status === "pending"'></pending-icon>
</a>
`,
});
})(window.gl || (window.gl = {}));
app/assets/javascripts/vue_pipelines_index/stages.js.es6
View file @
1a5027a0
This diff is collapsed.
Click to expand it.
app/assets/javascripts/vue_pipelines_index/store.js.es6
View file @
1a5027a0
...
@@ -7,8 +7,8 @@
...
@@ -7,8 +7,8 @@
const goFetch = () =>
const goFetch = () =>
this.$http.get(`${url}?page=${pageNum}`)
this.$http.get(`${url}?page=${pageNum}`)
.then((response) => {
.then((response) => {
const res = JSON.parse(response.body);
debugger
debugger
const res = JSON.parse(response.body)
Vue.set(this, 'pipelines', res.pipelines);
Vue.set(this, 'pipelines', res.pipelines);
}, () => new Flash(
}, () => new Flash(
'Something went wrong on our end.'
'Something went wrong on our end.'
...
...
app/assets/javascripts/vue_pipelines_index/time_ago.js.es6
View file @
1a5027a0
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
finishdate() {
finishdate() {
const date = new Date(
const date = new Date(
new Date(
new Date(
this.pipeline.finished_at
this.pipeline.
details.
finished_at
).getTime() - new Date(
).getTime() - new Date(
this.pipeline.started_at
this.pipeline.started_at
).getTime()
).getTime()
...
@@ -51,7 +51,7 @@
...
@@ -51,7 +51,7 @@
options.timeZoneName = 'short';
options.timeZoneName = 'short';
const finished = this.pipeline.finished_at;
const finished = this.pipeline.
details.
finished_at;
if (!finished) return false;
if (!finished) return false;
...
...
app/assets/javascripts/vue_pipelines_status/failed.js.es6
View file @
1a5027a0
...
@@ -7,12 +7,11 @@
...
@@ -7,12 +7,11 @@
'vue-failed-icon': gl.VueFailedIcon,
'vue-failed-icon': gl.VueFailedIcon,
},
},
props: [
props: [
'scope',
'pipeline',
'scopeurl',
],
],
template: `
template: `
<td class="commit-link">
<td class="commit-link">
<a :href='
scopeurl(scope.id)
'>
<a :href='
pipeline.url
'>
<span class="ci-status ci-failed">
<span class="ci-status ci-failed">
<vue-failed-icon></vue-failed-icon>
<vue-failed-icon></vue-failed-icon>
failed
failed
...
...
app/assets/javascripts/vue_pipelines_status/pending.js.es6
View file @
1a5027a0
...
@@ -7,12 +7,11 @@
...
@@ -7,12 +7,11 @@
'vue-pending-icon': gl.VuePendingIcon,
'vue-pending-icon': gl.VuePendingIcon,
},
},
props: [
props: [
'scope',
'pipeline',
'scopeurl',
],
],
template: `
template: `
<td class="commit-link">
<td class="commit-link">
<a :href='
scopeurl(scope.id)
'>
<a :href='
pipeline.url
'>
<span class="ci-status ci-pending">
<span class="ci-status ci-pending">
<vue-pending-icon></vue-pending-icon>
<vue-pending-icon></vue-pending-icon>
pending
pending
...
...
app/assets/javascripts/vue_pipelines_status/running.js.es6
View file @
1a5027a0
...
@@ -7,12 +7,11 @@
...
@@ -7,12 +7,11 @@
'vue-running-icon': gl.VueRunningIcon,
'vue-running-icon': gl.VueRunningIcon,
},
},
props: [
props: [
'scope',
'pipeline',
'scopeurl',
],
],
template: `
template: `
<td class="commit-link">
<td class="commit-link">
<a :href='
scopeurl(scope.id)
'>
<a :href='
pipeline.url
'>
<span class="ci-status ci-running">
<span class="ci-status ci-running">
<vue-running-icon></vue-running-icon>
<vue-running-icon></vue-running-icon>
running
running
...
...
app/assets/javascripts/vue_pipelines_status/status.js.es6
View file @
1a5027a0
...
@@ -9,27 +9,23 @@
...
@@ -9,27 +9,23 @@
'vue-failed-scope': gl.VueFailedScope,
'vue-failed-scope': gl.VueFailedScope,
},
},
props: [
props: [
'scope',
'pipeline',
'scopeurl',
],
],
template: `
template: `
<td class="commit-link">
<td class="commit-link">
<vue-running-scope
<vue-running-scope
v-if="scope.status === 'running'"
v-if="pipeline.details.status === 'running'"
:scope='scope'
:pipeline='pipeline'
:scopeurl='scopeurl'
>
>
</vue-running-scope>
</vue-running-scope>
<vue-pending-scope
<vue-pending-scope
v-if="scope.status === 'pending'"
v-if="pipeline.details.status === 'pending'"
:scope='scope'
:pipeline='pipeline'
:scopeurl='scopeurl'
>
>
</vue-pending-scope>
</vue-pending-scope>
<vue-failed-scope
<vue-failed-scope
v-if="scope.status === 'failed'"
v-if="pipeline.details.status === 'failed'"
:scope='scope'
:pipeline='pipeline'
:scopeurl='scopeurl'
>
>
</vue-failed-scope>
</vue-failed-scope>
</td>
</td>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment