Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
05b2de63
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
05b2de63
编写于
9月 04, 2019
作者:
J
Jacques Erasmus
提交者:
Mike Greiling
9月 04, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add ability see deployments using a group cluster
Added the ability to see project deployments using a group cluster
上级
ec5808a6
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
127 addition
and
30 deletion
+127
-30
app/assets/javascripts/clusters/clusters_bundle.js
app/assets/javascripts/clusters/clusters_bundle.js
+47
-2
app/assets/javascripts/clusters/stores/clusters_store.js
app/assets/javascripts/clusters/stores/clusters_store.js
+28
-1
app/assets/stylesheets/pages/clusters.scss
app/assets/stylesheets/pages/clusters.scss
+9
-0
app/views/clusters/clusters/_configure.html.haml
app/views/clusters/clusters/_configure.html.haml
+26
-0
app/views/clusters/clusters/show.html.haml
app/views/clusters/clusters/show.html.haml
+8
-27
changelogs/unreleased/je-add-group-deployments-page-fe.yml
changelogs/unreleased/je-add-group-deployments-page-fe.yml
+5
-0
spec/frontend/clusters/stores/clusters_store_spec.js
spec/frontend/clusters/stores/clusters_store_spec.js
+4
-0
未找到文件。
app/assets/javascripts/clusters/clusters_bundle.js
浏览文件 @
05b2de63
...
...
@@ -14,6 +14,8 @@ import ClustersStore from './stores/clusters_store';
import
Applications
from
'
./components/applications.vue
'
;
import
setupToggleButtons
from
'
../toggle_buttons
'
;
const
Environments
=
()
=>
import
(
'
ee_component/clusters/components/environments.vue
'
);
Vue
.
use
(
GlToast
);
/**
...
...
@@ -44,6 +46,9 @@ export default class Clusters {
helpPath
,
ingressHelpPath
,
ingressDnsHelpPath
,
environmentsHelpPath
,
clustersHelpPath
,
deployBoardsHelpPath
,
clusterId
,
}
=
document
.
querySelector
(
'
.js-edit-cluster-form
'
).
dataset
;
...
...
@@ -52,7 +57,14 @@ export default class Clusters {
this
.
clusterBannerDismissedKey
=
`cluster_
${
this
.
clusterId
}
_banner_dismissed`
;
this
.
store
=
new
ClustersStore
();
this
.
store
.
setHelpPaths
(
helpPath
,
ingressHelpPath
,
ingressDnsHelpPath
);
this
.
store
.
setHelpPaths
(
helpPath
,
ingressHelpPath
,
ingressDnsHelpPath
,
environmentsHelpPath
,
clustersHelpPath
,
deployBoardsHelpPath
,
);
this
.
store
.
setManagePrometheusPath
(
managePrometheusPath
);
this
.
store
.
updateStatus
(
clusterStatus
);
this
.
store
.
updateStatusReason
(
clusterStatusReason
);
...
...
@@ -95,11 +107,12 @@ export default class Clusters {
setupToggleButtons
(
toggleButtonsContainer
);
}
this
.
initApplications
(
clusterType
);
this
.
initEnvironments
();
this
.
updateContainer
(
null
,
this
.
store
.
state
.
status
,
this
.
store
.
state
.
statusReason
);
this
.
addListeners
();
if
(
statusPath
)
{
if
(
statusPath
&&
!
this
.
environments
)
{
this
.
initPolling
();
}
}
...
...
@@ -131,6 +144,34 @@ export default class Clusters {
});
}
initEnvironments
()
{
const
{
store
}
=
this
;
const
el
=
document
.
querySelector
(
'
#js-cluster-environments
'
);
if
(
!
el
)
{
return
;
}
this
.
environments
=
new
Vue
({
el
,
data
()
{
return
{
state
:
store
.
state
,
};
},
render
(
createElement
)
{
return
createElement
(
Environments
,
{
props
:
{
environments
:
this
.
state
.
environments
,
environmentsHelpPath
:
this
.
state
.
environmentsHelpPath
,
clustersHelpPath
:
this
.
state
.
clustersHelpPath
,
deployBoardsHelpPath
:
this
.
state
.
deployBoardsHelpPath
,
},
});
},
});
}
static
initDismissableCallout
()
{
const
callout
=
document
.
querySelector
(
'
.js-cluster-security-warning
'
);
PersistentUserCallout
.
factory
(
callout
);
...
...
@@ -390,6 +431,10 @@ export default class Clusters {
this
.
poll
.
stop
();
}
if
(
this
.
environments
)
{
this
.
environments
.
$destroy
();
}
this
.
applications
.
$destroy
();
}
}
app/assets/javascripts/clusters/stores/clusters_store.js
浏览文件 @
05b2de63
...
...
@@ -32,6 +32,9 @@ export default class ClusterStore {
this
.
state
=
{
helpPath
:
null
,
ingressHelpPath
:
null
,
environmentsHelpPath
:
null
,
clustersHelpPath
:
null
,
deployBoardsHelpPath
:
null
,
status
:
null
,
rbac
:
false
,
statusReason
:
null
,
...
...
@@ -80,13 +83,24 @@ export default class ClusterStore {
updateFailed
:
false
,
},
},
environments
:
[],
};
}
setHelpPaths
(
helpPath
,
ingressHelpPath
,
ingressDnsHelpPath
)
{
setHelpPaths
(
helpPath
,
ingressHelpPath
,
ingressDnsHelpPath
,
environmentsHelpPath
,
clustersHelpPath
,
deployBoardsHelpPath
,
)
{
this
.
state
.
helpPath
=
helpPath
;
this
.
state
.
ingressHelpPath
=
ingressHelpPath
;
this
.
state
.
ingressDnsHelpPath
=
ingressDnsHelpPath
;
this
.
state
.
environmentsHelpPath
=
environmentsHelpPath
;
this
.
state
.
clustersHelpPath
=
clustersHelpPath
;
this
.
state
.
deployBoardsHelpPath
=
deployBoardsHelpPath
;
}
setManagePrometheusPath
(
managePrometheusPath
)
{
...
...
@@ -191,4 +205,17 @@ export default class ClusterStore {
}
});
}
updateEnvironments
(
environments
=
[])
{
this
.
state
.
environments
=
environments
.
map
(
environment
=>
({
name
:
environment
.
name
,
project
:
environment
.
project
,
environmentPath
:
environment
.
environment_path
,
lastDeployment
:
environment
.
last_deployment
,
rolloutStatus
:
{
instances
:
environment
.
rollout_status
?
environment
.
rollout_status
.
instances
:
[],
},
updatedAt
:
environment
.
updatedAt
,
}));
}
}
app/assets/stylesheets/pages/clusters.scss
浏览文件 @
05b2de63
...
...
@@ -154,3 +154,12 @@
}
}
}
.cluster-deployments-warning
{
color
:
$orange-600
;
}
.badge.pods-badge
{
color
:
$black
;
font-weight
:
$gl-font-weight-bold
;
}
app/views/clusters/clusters/_configure.html.haml
0 → 100644
浏览文件 @
05b2de63
%section
#cluster-integration
-
unless
@cluster
.
status_name
.
in?
%i/scheduled creating/
=
render
'form'
-
unless
@cluster
.
status_name
.
in?
%i/scheduled creating/
=
render_if_exists
'projects/clusters/prometheus_graphs'
.cluster-applications-table
#js-cluster-applications
%section
.settings
#js-cluster-details
{
class:
(
'expanded'
if
expanded
)
}
.settings-header
%h4
=
s_
(
'ClusterIntegration|Kubernetes cluster details'
)
%button
.btn.js-settings-toggle
{
type:
'button'
}
=
expanded
?
_
(
'Collapse'
)
:
_
(
'Expand'
)
%p
=
s_
(
'ClusterIntegration|See and edit the details for your Kubernetes cluster'
)
.settings-content
=
render
'clusters/platforms/kubernetes/form'
,
cluster:
@cluster
,
platform:
@cluster
.
platform_kubernetes
,
update_cluster_url_path:
clusterable
.
cluster_path
(
@cluster
)
%section
.settings.no-animate
#js-cluster-advanced-settings
{
class:
(
'expanded'
if
expanded
)
}
.settings-header
%h4
=
_
(
'Advanced settings'
)
%button
.btn.js-settings-toggle
{
type:
'button'
}
=
expanded
?
_
(
'Collapse'
)
:
_
(
'Expand'
)
%p
=
s_
(
"ClusterIntegration|Advanced options on this Kubernetes cluster's integration"
)
.settings-content
#advanced-settings-section
=
render
'advanced_settings'
app/views/clusters/clusters/show.html.haml
浏览文件 @
05b2de63
...
...
@@ -24,38 +24,19 @@
help_path:
help_page_path
(
'user/project/clusters/index.md'
,
anchor:
'installing-applications'
),
ingress_help_path:
help_page_path
(
'user/project/clusters/index.md'
,
anchor:
'getting-the-external-endpoint'
),
ingress_dns_help_path:
help_page_path
(
'user/project/clusters/index.md'
,
anchor:
'manually-determining-the-external-endpoint'
),
environments_help_path:
help_page_path
(
'ci/environments'
,
anchor:
'defining-environments'
),
clusters_help_path:
help_page_path
(
'user/project/clusters/index.md'
,
anchor:
'deploying-to-a-kubernetes-cluster'
),
deploy_boards_help_path:
help_page_path
(
'user/project/deploy_boards.html'
,
anchor:
'enabling-deploy-boards'
),
manage_prometheus_path:
manage_prometheus_path
,
cluster_id:
@cluster
.
id
}
}
.js-cluster-application-notice
.flash-container
%section
#cluster-integration
%h4
=
@cluster
.
name
=
render
'banner'
%h4
=
@cluster
.
name
=
render
'banner'
-
unless
@cluster
.
status_name
.
in?
%i/scheduled creating/
=
render
'form'
=
render_if_exists
'clusters/clusters/group_cluster_environments'
,
expanded:
expanded
-
unless
@cluster
.
status_name
.
in?
%i/scheduled creating/
=
render_if_exists
'projects/clusters/prometheus_graphs'
.cluster-applications-table
#js-cluster-applications
%section
.settings
#js-cluster-details
{
class:
(
'expanded'
if
expanded
)
}
.settings-header
%h4
=
s_
(
'ClusterIntegration|Kubernetes cluster details'
)
%button
.btn.js-settings-toggle
{
type:
'button'
}
=
expanded
?
_
(
'Collapse'
)
:
_
(
'Expand'
)
%p
=
s_
(
'ClusterIntegration|See and edit the details for your Kubernetes cluster'
)
.settings-content
=
render
'clusters/platforms/kubernetes/form'
,
cluster:
@cluster
,
platform:
@cluster
.
platform_kubernetes
,
update_cluster_url_path:
clusterable
.
cluster_path
(
@cluster
)
%section
.settings.no-animate
#js-cluster-advanced-settings
{
class:
(
'expanded'
if
expanded
)
}
.settings-header
%h4
=
_
(
'Advanced settings'
)
%button
.btn.js-settings-toggle
{
type:
'button'
}
=
expanded
?
_
(
'Collapse'
)
:
_
(
'Expand'
)
%p
=
s_
(
"ClusterIntegration|Advanced options on this Kubernetes cluster's integration"
)
.settings-content
#advanced-settings-section
=
render
'advanced_settings'
-
unless
Gitlab
.
ee?
=
render
'configure'
,
expanded:
expanded
changelogs/unreleased/je-add-group-deployments-page-fe.yml
0 → 100644
浏览文件 @
05b2de63
---
title
:
Add ability to see project deployments at cluster level (FE)
merge_request
:
31575
author
:
type
:
added
spec/frontend/clusters/stores/clusters_store_spec.js
浏览文件 @
05b2de63
...
...
@@ -51,6 +51,9 @@ describe('Clusters Store', () => {
expect
(
store
.
state
).
toEqual
({
helpPath
:
null
,
ingressHelpPath
:
null
,
environmentsHelpPath
:
null
,
clustersHelpPath
:
null
,
deployBoardsHelpPath
:
null
,
status
:
mockResponseData
.
status
,
statusReason
:
mockResponseData
.
status_reason
,
rbac
:
false
,
...
...
@@ -148,6 +151,7 @@ describe('Clusters Store', () => {
uninstallFailed
:
false
,
},
},
environments
:
[],
});
});
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录