10
10
</v-app-bar >
11
11
<v-expand-transition >
12
12
<v-card-text v-show =" showDetail" >
13
- <v-navigation-drawer
14
- v-model =" testForm"
15
- absolute
16
- right
17
- temporary
18
- width =" 512"
19
- >
20
- <v-container >
21
- <v-card-subtitle class =" text-body-1" >
22
- <v-icon >mdi-test-tube</v-icon >
23
- Test trigger</v-card-subtitle
24
- >
25
- <v-text-field
26
- label =" Container ID"
27
- v-model =" container.id"
28
- append-icon =" mdi-identifier"
29
- outlined
30
- dense
31
- />
32
- <v-text-field
33
- label =" Container Name"
34
- v-model =" container.name"
35
- append-icon =" mdi-pencil"
36
- outlined
37
- dense
38
- />
39
- <v-text-field
40
- label =" Container Watcher"
41
- v-model =" container.watcher"
42
- append-icon =" mdi-update"
43
- outlined
44
- dense
45
- />
46
- <v-select
47
- label =" Update kind"
48
- v-model =" container.updateKind.kind"
49
- :items =" ['digest', 'tag']"
50
- :append-icon ="
51
- container.updateKind.kind === 'tag' ? 'mdi-tag' : 'mdi-pound'
52
- "
53
- outlined
54
- dense
55
- />
56
- <v-select
57
- v-if =" container.updateKind.kind === 'tag'"
58
- label =" Update semver diff"
59
- v-model =" container.updateKind.semverDiff"
60
- :items =" ['major', 'minor', 'patch']"
61
- :append-icon ="
62
- container.updateKind.semverDiff === 'major'
63
- ? 'mdi-alert'
64
- : container.updateKind.semverDiff === 'minor'
65
- ? 'mdi-alert-decagram'
66
- : 'mdi-information'
67
- "
68
- outlined
69
- dense
70
- />
71
- <v-text-field
72
- label =" Container local value"
73
- v-model =" container.updateKind.localValue"
74
- append-icon =" mdi-tag"
75
- outlined
76
- dense
77
- />
78
- <v-text-field
79
- label =" Container remote value"
80
- v-model =" container.updateKind.remoteValue"
81
- append-icon =" mdi-tag-check"
82
- outlined
83
- dense
84
- />
85
- <v-btn outlined small class =" accent" block @click =" runTrigger"
86
- >Run trigger</v-btn
87
- >
88
- </v-container >
89
- </v-navigation-drawer >
90
13
<v-row >
91
- <v-col :lg = " 6 " :md = " 6 " >
14
+ <v-col cols = " 8 " >
92
15
<v-list dense v-if =" configurationItems.length > 0" >
93
16
<v-list-item
94
17
v-for =" configurationItem in configurationItems"
103
26
</v-list-item-subtitle >
104
27
</v-list-item-content >
105
28
</v-list-item >
106
- <v-list-item >
107
- <v-btn outlined small class =" accent" @click =" testForm = true" >
108
- Test
109
- <v-icon right >mdi-test-tube</v-icon >
110
- </v-btn >
111
- </v-list-item >
112
29
</v-list >
113
30
<span v-else >Default configuration</span >
114
31
</v-col >
32
+ <v-col cols =" 4" class =" text-right" >
33
+ <v-btn outlined small class =" accent" @click =" showTestForm = true" >
34
+ Test
35
+ <v-icon right >mdi-test-tube</v-icon >
36
+ </v-btn >
37
+
38
+ <v-navigation-drawer
39
+ v-model =" showTestForm"
40
+ absolute
41
+ right
42
+ temporary
43
+ width =" 512"
44
+ >
45
+ <v-container class =" text-left" >
46
+ <v-card-subtitle class =" text-body-1" >
47
+ <v-icon >mdi-test-tube</v-icon >
48
+ Test trigger</v-card-subtitle
49
+ >
50
+ <v-text-field
51
+ label =" Container ID"
52
+ v-model =" container.id"
53
+ append-icon =" mdi-identifier"
54
+ outlined
55
+ dense
56
+ />
57
+ <v-text-field
58
+ label =" Container Name"
59
+ v-model =" container.name"
60
+ append-icon =" mdi-pencil"
61
+ outlined
62
+ dense
63
+ />
64
+ <v-text-field
65
+ label =" Container Watcher"
66
+ v-model =" container.watcher"
67
+ append-icon =" mdi-update"
68
+ outlined
69
+ dense
70
+ />
71
+ <v-select
72
+ label =" Update kind"
73
+ v-model =" container.updateKind.kind"
74
+ :items =" ['digest', 'tag']"
75
+ :append-icon ="
76
+ container.updateKind.kind === 'tag'
77
+ ? 'mdi-tag'
78
+ : 'mdi-pound'
79
+ "
80
+ outlined
81
+ dense
82
+ />
83
+ <v-select
84
+ v-if =" container.updateKind.kind === 'tag'"
85
+ label =" Update semver diff"
86
+ v-model =" container.updateKind.semverDiff"
87
+ :items =" ['major', 'minor', 'patch']"
88
+ :append-icon ="
89
+ container.updateKind.semverDiff === 'major'
90
+ ? 'mdi-alert'
91
+ : container.updateKind.semverDiff === 'minor'
92
+ ? 'mdi-alert-decagram'
93
+ : 'mdi-information'
94
+ "
95
+ outlined
96
+ dense
97
+ />
98
+ <v-text-field
99
+ label =" Container local value"
100
+ v-model =" container.updateKind.localValue"
101
+ append-icon =" mdi-tag"
102
+ outlined
103
+ dense
104
+ />
105
+ <v-text-field
106
+ label =" Container remote value"
107
+ v-model =" container.updateKind.remoteValue"
108
+ append-icon =" mdi-tag-check"
109
+ outlined
110
+ dense
111
+ />
112
+ <v-btn
113
+ outlined
114
+ small
115
+ class =" accent"
116
+ block
117
+ @click =" runTrigger"
118
+ :loading =" isTriggering"
119
+ >Run trigger</v-btn
120
+ >
121
+ </v-container >
122
+ </v-navigation-drawer >
123
+ </v-col >
115
124
</v-row >
116
125
</v-card-text >
117
126
</v-expand-transition >
@@ -132,7 +141,8 @@ export default {
132
141
data () {
133
142
return {
134
143
showDetail: true ,
135
- testForm: false ,
144
+ showTestForm: false ,
145
+ isTriggering: false ,
136
146
container: {
137
147
id: " 123456789" ,
138
148
name: " container_test" ,
@@ -179,11 +189,23 @@ export default {
179
189
this .showDetail = ! this .showDetail ;
180
190
},
181
191
async runTrigger () {
182
- await runTrigger ({
183
- triggerType: this .trigger .type ,
184
- triggerName: this .trigger .name ,
185
- container: this .container ,
186
- });
192
+ this .isTriggering = true ;
193
+ try {
194
+ await runTrigger ({
195
+ triggerType: this .trigger .type ,
196
+ triggerName: this .trigger .name ,
197
+ container: this .container ,
198
+ });
199
+ this .$root .$emit (" notify" , " Trigger executed with success" );
200
+ } catch (err) {
201
+ this .$root .$emit (
202
+ " notify" ,
203
+ ` Trigger executed with error (${ err .message } })` ,
204
+ " error" ,
205
+ );
206
+ } finally {
207
+ this .isTriggering = false ;
208
+ }
187
209
},
188
210
},
189
211
filters: {
0 commit comments