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
0
Merge Requests
0
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
Boxiang Sun
gitlab-ce
Commits
ac927462
Commit
ac927462
authored
Nov 06, 2017
by
Kamil Trzcinski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add support for not_installable/scheduled and to not show created banner
parent
dc55abaa
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
27 additions
and
5 deletions
+27
-5
app/assets/javascripts/clusters/clusters_bundle.js
app/assets/javascripts/clusters/clusters_bundle.js
+4
-1
app/assets/javascripts/clusters/components/application_row.vue
...ssets/javascripts/clusters/components/application_row.vue
+5
-2
app/assets/javascripts/clusters/constants.js
app/assets/javascripts/clusters/constants.js
+2
-0
app/models/clusters/applications/helm.rb
app/models/clusters/applications/helm.rb
+6
-0
app/models/clusters/applications/ingress.rb
app/models/clusters/applications/ingress.rb
+6
-0
app/models/clusters/cluster.rb
app/models/clusters/cluster.rb
+3
-2
app/models/clusters/concerns/application_status.rb
app/models/clusters/concerns/application_status.rb
+1
-0
No files found.
app/assets/javascripts/clusters/clusters_bundle.js
View file @
ac927462
...
...
@@ -134,10 +134,13 @@ export default class Clusters {
handleSuccess
(
data
)
{
const
prevApplicationMap
=
Object
.
assign
({},
this
.
store
.
state
.
applications
);
const
prevStatus
=
this
.
store
.
state
.
status
;
this
.
store
.
updateStateFromServer
(
data
.
data
);
this
.
checkForNewInstalls
(
prevApplicationMap
,
this
.
store
.
state
.
applications
);
if
(
prevStatus
.
length
==
0
||
prevStatus
!==
this
.
store
.
state
.
status
)
{
this
.
updateContainer
(
this
.
store
.
state
.
status
,
this
.
store
.
state
.
statusReason
);
}
}
toggle
()
{
this
.
toggleButton
.
classList
.
toggle
(
'
checked
'
);
...
...
app/assets/javascripts/clusters/components/application_row.vue
View file @
ac927462
...
...
@@ -3,6 +3,8 @@ import { s__ } from '../../locale';
import
eventHub
from
'
../event_hub
'
;
import
loadingButton
from
'
../../vue_shared/components/loading_button.vue
'
;
import
{
APPLICATION_NOT_INSTALLABLE
,
APPLICATION_SCHEDULED
,
APPLICATION_INSTALLABLE
,
APPLICATION_INSTALLING
,
APPLICATION_INSTALLED
,
...
...
@@ -59,6 +61,7 @@ export default {
},
installButtonLoading
()
{
return
!
this
.
status
||
this
.
status
===
APPLICATION_SCHEDULED
||
this
.
status
===
APPLICATION_INSTALLING
||
this
.
requestStatus
===
REQUEST_LOADING
;
},
...
...
@@ -72,9 +75,9 @@ export default {
},
installButtonLabel
()
{
let
label
;
if
(
this
.
status
===
APPLICATION_INSTALLABLE
||
this
.
status
===
APPLICATION_ERROR
)
{
if
(
this
.
status
===
APPLICATION_INSTALLABLE
||
this
.
status
===
APPLICATION_ERROR
||
this
.
status
===
APPLICATION_NOT_INSTALLABLE
)
{
label
=
s__
(
'
ClusterIntegration|Install
'
);
}
else
if
(
this
.
status
===
APPLICATION_INSTALLING
)
{
}
else
if
(
this
.
status
===
APPLICATION_
SCHEDULED
||
this
.
status
===
APPLICATION_
INSTALLING
)
{
label
=
s__
(
'
ClusterIntegration|Installing
'
);
}
else
if
(
this
.
status
===
APPLICATION_INSTALLED
)
{
label
=
s__
(
'
ClusterIntegration|Installed
'
);
...
...
app/assets/javascripts/clusters/constants.js
View file @
ac927462
// These need to match what is returned from the server
export
const
APPLICATION_NOT_INSTALLABLE
=
'
not_installable
'
;
export
const
APPLICATION_INSTALLABLE
=
'
installable
'
;
export
const
APPLICATION_SCHEDULED
=
'
scheduled
'
;
export
const
APPLICATION_INSTALLING
=
'
installing
'
;
export
const
APPLICATION_INSTALLED
=
'
installed
'
;
export
const
APPLICATION_ERROR
=
'
error
'
;
...
...
app/models/clusters/applications/helm.rb
View file @
ac927462
...
...
@@ -11,10 +11,16 @@ module Clusters
validates
:cluster
,
presence:
true
after_initialize
:set_initial_status
def
self
.
application_name
self
.
to_s
.
demodulize
.
underscore
end
def
set_initial_status
self
.
status
=
0
unless
cluster
.
platform_kubernetes_active?
end
def
name
self
.
class
.
application_name
end
...
...
app/models/clusters/applications/ingress.rb
View file @
ac927462
...
...
@@ -9,6 +9,8 @@ module Clusters
validates
:cluster
,
presence:
true
after_initialize
:set_initial_status
default_value_for
:ingress_type
,
:nginx
default_value_for
:version
,
:nginx
...
...
@@ -20,6 +22,10 @@ module Clusters
self
.
to_s
.
demodulize
.
underscore
end
def
set_initial_status
self
.
status
=
0
unless
cluster
.
application_helm_installed?
end
def
name
self
.
class
.
application_name
end
...
...
app/models/clusters/cluster.rb
View file @
ac927462
...
...
@@ -39,6 +39,9 @@ module Clusters
delegate
:on_creation?
,
to: :provider
,
allow_nil:
true
delegate
:update_kubernetes_integration!
,
to: :platform
,
allow_nil:
true
delegate
:active?
,
to: :platform_kubernetes
,
prefix:
true
,
allow_nil:
true
delegate
:installed?
,
to: :application_helm
,
prefix:
true
,
allow_nil:
true
enum
platform_type:
{
kubernetes:
1
}
...
...
@@ -60,8 +63,6 @@ module Clusters
end
def
applications
return
[]
unless
kubernetes?
[
application_helm
||
build_application_helm
,
application_ingress
||
build_application_ingress
...
...
app/models/clusters/concerns/application_status.rb
View file @
ac927462
...
...
@@ -5,6 +5,7 @@ module Clusters
included
do
state_machine
:status
,
initial: :installable
do
state
:not_installable
,
value:
-
2
state
:errored
,
value:
-
1
state
:installable
,
value:
0
state
:scheduled
,
value:
1
...
...
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