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
dbd50b6e
Commit
dbd50b6e
authored
Nov 25, 2019
by
GitLab Bot
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add latest changes from gitlab-org/gitlab@master
parent
8a1c3b6e
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
110 additions
and
31 deletions
+110
-31
app/assets/javascripts/clusters/components/applications.vue
app/assets/javascripts/clusters/components/applications.vue
+1
-1
app/assets/javascripts/lib/utils/text_markdown.js
app/assets/javascripts/lib/utils/text_markdown.js
+15
-23
app/assets/javascripts/notebook/cells/markdown.vue
app/assets/javascripts/notebook/cells/markdown.vue
+69
-4
app/views/admin/application_settings/_ci_cd.html.haml
app/views/admin/application_settings/_ci_cd.html.haml
+1
-1
app/views/projects/settings/ci_cd/_form.html.haml
app/views/projects/settings/ci_cd/_form.html.haml
+1
-1
changelogs/unreleased/20668-crossplane-help-link.yml
changelogs/unreleased/20668-crossplane-help-link.yml
+5
-0
doc/user/admin_area/settings/continuous_integration.md
doc/user/admin_area/settings/continuous_integration.md
+5
-0
doc/user/clusters/applications.md
doc/user/clusters/applications.md
+12
-0
spec/javascripts/notebook/cells/markdown_spec.js
spec/javascripts/notebook/cells/markdown_spec.js
+1
-1
No files found.
app/assets/javascripts/clusters/components/applications.vue
View file @
dbd50b6e
...
@@ -170,7 +170,7 @@ Crossplane runs inside your Kubernetes cluster and supports secure connectivity
...
@@ -170,7 +170,7 @@ Crossplane runs inside your Kubernetes cluster and supports secure connectivity
),
),
),
),
{
{
gitlabIntegrationLink
:
`<a href="https://docs.gitlab.com/
ce/user/project/integrations/crossplane.html
"
gitlabIntegrationLink
:
`<a href="https://docs.gitlab.com/
ee/user/clusters/applications.html#crossplane
"
target="_blank" rel="noopener noreferrer">
target="_blank" rel="noopener noreferrer">
${
_
.
escape
(
s__
(
'
ClusterIntegration|Gitlab Integration
'
))}
</a>`
,
${
_
.
escape
(
s__
(
'
ClusterIntegration|Gitlab Integration
'
))}
</a>`
,
kubectl
:
`<code>kubectl</code>`
,
kubectl
:
`<code>kubectl</code>`
,
...
...
app/assets/javascripts/lib/utils/text_markdown.js
View file @
dbd50b6e
/* eslint-disable func-names, no-
var, no-param-reassign, one-var
, operator-assignment, no-else-return, consistent-return */
/* eslint-disable func-names, no-
param-reassign
, operator-assignment, no-else-return, consistent-return */
import
$
from
'
jquery
'
;
import
$
from
'
jquery
'
;
import
{
insertText
}
from
'
~/lib/utils/common_utils
'
;
import
{
insertText
}
from
'
~/lib/utils/common_utils
'
;
...
@@ -13,8 +13,7 @@ function addBlockTags(blockTag, selected) {
...
@@ -13,8 +13,7 @@ function addBlockTags(blockTag, selected) {
}
}
function
lineBefore
(
text
,
textarea
)
{
function
lineBefore
(
text
,
textarea
)
{
var
split
;
const
split
=
text
split
=
text
.
substring
(
0
,
textarea
.
selectionStart
)
.
substring
(
0
,
textarea
.
selectionStart
)
.
trim
()
.
trim
()
.
split
(
'
\n
'
);
.
split
(
'
\n
'
);
...
@@ -80,7 +79,7 @@ function moveCursor({
...
@@ -80,7 +79,7 @@ function moveCursor({
editorSelectionStart
,
editorSelectionStart
,
editorSelectionEnd
,
editorSelectionEnd
,
})
{
})
{
var
pos
;
let
pos
;
if
(
textArea
&&
!
textArea
.
setSelectionRange
)
{
if
(
textArea
&&
!
textArea
.
setSelectionRange
)
{
return
;
return
;
}
}
...
@@ -132,18 +131,13 @@ export function insertMarkdownText({
...
@@ -132,18 +131,13 @@ export function insertMarkdownText({
select
,
select
,
editor
,
editor
,
})
{
})
{
var
textToInsert
,
let
removedLastNewLine
=
false
;
selectedSplit
,
let
removedFirstNewLine
=
false
;
startChar
,
let
currentLineEmpty
=
false
;
removedLastNewLine
,
let
editorSelectionStart
;
removedFirstNewLine
,
let
editorSelectionEnd
;
currentLineEmpty
,
let
lastNewLine
;
lastNewLine
,
let
textToInsert
;
editorSelectionStart
,
editorSelectionEnd
;
removedLastNewLine
=
false
;
removedFirstNewLine
=
false
;
currentLineEmpty
=
false
;
if
(
editor
)
{
if
(
editor
)
{
const
selectionRange
=
editor
.
getSelectionRange
();
const
selectionRange
=
editor
.
getSelectionRange
();
...
@@ -186,7 +180,7 @@ export function insertMarkdownText({
...
@@ -186,7 +180,7 @@ export function insertMarkdownText({
}
}
}
}
selectedSplit
=
selected
.
split
(
'
\n
'
);
const
selectedSplit
=
selected
.
split
(
'
\n
'
);
if
(
editor
&&
!
wrap
)
{
if
(
editor
&&
!
wrap
)
{
lastNewLine
=
editor
.
getValue
().
split
(
'
\n
'
)[
editorSelectionStart
.
row
];
lastNewLine
=
editor
.
getValue
().
split
(
'
\n
'
)[
editorSelectionStart
.
row
];
...
@@ -207,8 +201,7 @@ export function insertMarkdownText({
...
@@ -207,8 +201,7 @@ export function insertMarkdownText({
(
textArea
&&
textArea
.
selectionStart
===
0
)
||
(
textArea
&&
textArea
.
selectionStart
===
0
)
||
(
editor
&&
editorSelectionStart
.
column
===
0
&&
editorSelectionStart
.
row
===
0
);
(
editor
&&
editorSelectionStart
.
column
===
0
&&
editorSelectionStart
.
row
===
0
);
startChar
=
!
wrap
&&
!
currentLineEmpty
&&
!
isBeginning
?
'
\n
'
:
''
;
const
startChar
=
!
wrap
&&
!
currentLineEmpty
&&
!
isBeginning
?
'
\n
'
:
''
;
const
textPlaceholder
=
'
{text}
'
;
const
textPlaceholder
=
'
{text}
'
;
if
(
selectedSplit
.
length
>
1
&&
(
!
wrap
||
(
blockTag
!=
null
&&
blockTag
!==
''
)))
{
if
(
selectedSplit
.
length
>
1
&&
(
!
wrap
||
(
blockTag
!=
null
&&
blockTag
!==
''
)))
{
...
@@ -263,11 +256,10 @@ export function insertMarkdownText({
...
@@ -263,11 +256,10 @@ export function insertMarkdownText({
}
}
function
updateText
({
textArea
,
tag
,
cursorOffset
,
blockTag
,
wrap
,
select
,
tagContent
})
{
function
updateText
({
textArea
,
tag
,
cursorOffset
,
blockTag
,
wrap
,
select
,
tagContent
})
{
var
$textArea
,
selected
,
text
;
const
$textArea
=
$
(
textArea
);
$textArea
=
$
(
textArea
);
textArea
=
$textArea
.
get
(
0
);
textArea
=
$textArea
.
get
(
0
);
text
=
$textArea
.
val
();
const
text
=
$textArea
.
val
();
selected
=
selectedText
(
text
,
textArea
)
||
tagContent
;
const
selected
=
selectedText
(
text
,
textArea
)
||
tagContent
;
$textArea
.
focus
();
$textArea
.
focus
();
return
insertMarkdownText
({
return
insertMarkdownText
({
textArea
,
textArea
,
...
...
app/assets/javascripts/notebook/cells/markdown.vue
View file @
dbd50b6e
<
script
>
<
script
>
/* global katex */
import
marked
from
'
marked
'
;
import
marked
from
'
marked
'
;
import
sanitize
from
'
sanitize-html
'
;
import
sanitize
from
'
sanitize-html
'
;
import
katex
from
'
katex
'
;
import
Prompt
from
'
./prompt.vue
'
;
import
Prompt
from
'
./prompt.vue
'
;
const
renderer
=
new
marked
.
Renderer
();
const
renderer
=
new
marked
.
Renderer
();
...
@@ -70,7 +70,6 @@ renderer.paragraph = t => {
...
@@ -70,7 +70,6 @@ renderer.paragraph = t => {
};
};
marked
.
setOptions
({
marked
.
setOptions
({
sanitize
:
true
,
renderer
,
renderer
,
});
});
...
@@ -87,9 +86,66 @@ export default {
...
@@ -87,9 +86,66 @@ export default {
computed
:
{
computed
:
{
markdown
()
{
markdown
()
{
return
sanitize
(
marked
(
this
.
cell
.
source
.
join
(
''
).
replace
(
/
\\
/g
,
'
\\\\
'
)),
{
return
sanitize
(
marked
(
this
.
cell
.
source
.
join
(
''
).
replace
(
/
\\
/g
,
'
\\\\
'
)),
{
allowedTags
:
false
,
// allowedTags from GitLab's inline HTML guidelines
// https://docs.gitlab.com/ee/user/markdown.html#inline-html
allowedTags
:
[
'
h1
'
,
'
h2
'
,
'
h3
'
,
'
h4
'
,
'
h5
'
,
'
h6
'
,
'
h7
'
,
'
h8
'
,
'
br
'
,
'
b
'
,
'
i
'
,
'
strong
'
,
'
em
'
,
'
a
'
,
'
pre
'
,
'
code
'
,
'
img
'
,
'
tt
'
,
'
div
'
,
'
ins
'
,
'
del
'
,
'
sup
'
,
'
sub
'
,
'
p
'
,
'
ol
'
,
'
ul
'
,
'
table
'
,
'
thead
'
,
'
tbody
'
,
'
tfoot
'
,
'
blockquote
'
,
'
dl
'
,
'
dt
'
,
'
dd
'
,
'
kbd
'
,
'
q
'
,
'
samp
'
,
'
var
'
,
'
hr
'
,
'
ruby
'
,
'
rt
'
,
'
rp
'
,
'
li
'
,
'
tr
'
,
'
td
'
,
'
th
'
,
'
s
'
,
'
strike
'
,
'
span
'
,
'
abbr
'
,
'
abbr
'
,
'
summary
'
,
],
allowedAttributes
:
{
allowedAttributes
:
{
'
*
'
:
[
'
class
'
],
'
*
'
:
[
'
class
'
,
'
style
'
],
a
:
[
'
href
'
],
img
:
[
'
src
'
],
},
},
});
});
},
},
...
@@ -105,6 +161,15 @@ export default {
...
@@ -105,6 +161,15 @@ export default {
</
template
>
</
template
>
<
style
>
<
style
>
/*
Importing the necessary katex stylesheet from the node_module folder rather
than copying the stylesheet into `app/assets/stylesheets/vendors` for
automatic importing via `app/assets/stylesheets/application.scss`. The reason
is that the katex stylesheet depends on many fonts that are in node_module
subfolders - moving all these fonts would make updating katex difficult.
*/
@import
'~katex/dist/katex.min.css'
;
.markdown
.katex
{
.markdown
.katex
{
display
:
block
;
display
:
block
;
text-align
:
center
;
text-align
:
center
;
...
...
app/views/admin/application_settings/_ci_cd.html.haml
View file @
dbd50b6e
...
@@ -58,6 +58,6 @@
...
@@ -58,6 +58,6 @@
=
f
.
text_field
:default_ci_config_path
,
class:
'form-control'
,
placeholder:
'.gitlab-ci.yml'
=
f
.
text_field
:default_ci_config_path
,
class:
'form-control'
,
placeholder:
'.gitlab-ci.yml'
%p
.form-text.text-muted
%p
.form-text.text-muted
=
_
(
"The default CI configuration path for new projects."
).
html_safe
=
_
(
"The default CI configuration path for new projects."
).
html_safe
=
link_to
icon
(
'question-circle'
),
help_page_path
(
'user/project/pipelines/settings'
,
anchor:
'custom-ci-config-path'
),
target:
'_blank'
=
link_to
icon
(
'question-circle'
),
help_page_path
(
'user/project/pipelines/settings'
,
anchor:
'custom-ci-config
uration
-path'
),
target:
'_blank'
=
f
.
submit
_
(
'Save changes'
),
class:
"btn btn-success"
=
f
.
submit
_
(
'Save changes'
),
class:
"btn btn-success"
app/views/projects/settings/ci_cd/_form.html.haml
View file @
dbd50b6e
...
@@ -55,7 +55,7 @@
...
@@ -55,7 +55,7 @@
=
f
.
text_field
:ci_config_path
,
class:
'form-control'
,
placeholder:
'.gitlab-ci.yml'
=
f
.
text_field
:ci_config_path
,
class:
'form-control'
,
placeholder:
'.gitlab-ci.yml'
%p
.form-text.text-muted
%p
.form-text.text-muted
=
_
(
"The path to the CI configuration file. Defaults to <code>.gitlab-ci.yml</code>"
).
html_safe
=
_
(
"The path to the CI configuration file. Defaults to <code>.gitlab-ci.yml</code>"
).
html_safe
=
link_to
icon
(
'question-circle'
),
help_page_path
(
'user/project/pipelines/settings'
,
anchor:
'custom-ci-config-path'
),
target:
'_blank'
=
link_to
icon
(
'question-circle'
),
help_page_path
(
'user/project/pipelines/settings'
,
anchor:
'custom-ci-config
uration
-path'
),
target:
'_blank'
%hr
%hr
.form-group
.form-group
...
...
changelogs/unreleased/20668-crossplane-help-link.yml
0 → 100644
View file @
dbd50b6e
---
title
:
Fix Crossplane help link in cluster applications page
merge_request
:
20668
author
:
type
:
fixed
doc/user/admin_area/settings/continuous_integration.md
View file @
dbd50b6e
...
@@ -161,6 +161,11 @@ but commented out to help encourage others to add to it in the future. -->
...
@@ -161,6 +161,11 @@ but commented out to help encourage others to add to it in the future. -->
## Required pipeline configuration **(PREMIUM ONLY)**
## Required pipeline configuration **(PREMIUM ONLY)**
CAUTION:
**Caution:**
The Required Pipeline Configuration feature is deprecated and will be removed when an
[
improved compliance solution
](
https://gitlab.com/gitlab-org/gitlab/issues/34830
)
is added to GitLab. It is recommended to avoid using this feature.
GitLab administrators can force a pipeline configuration to run on every
GitLab administrators can force a pipeline configuration to run on every
pipeline.
pipeline.
...
...
doc/user/clusters/applications.md
View file @
dbd50b6e
...
@@ -417,6 +417,18 @@ install Crossplane using the
...
@@ -417,6 +417,18 @@ install Crossplane using the
[
`values.yaml`
](
https://github.com/crossplaneio/crossplane/blob/master/cluster/charts/crossplane/values.yaml.tmpl
)
[
`values.yaml`
](
https://github.com/crossplaneio/crossplane/blob/master/cluster/charts/crossplane/values.yaml.tmpl
)
file.
file.
#### Enabling installation
This is a preliminary release of Crossplane as a GitLab-managed application. By default,
the ability to install it is disabled.
To allow installation of Crossplane as a GitLab-managed application, ask a GitLab
administrator to run following command within a Rails console:
```
ruby
Feature
.
enable
(
:enable_cluster_application_crossplane
)
```
## Upgrading applications
## Upgrading applications
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/merge_requests/24789) in GitLab 11.8.
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/merge_requests/24789) in GitLab 11.8.
...
...
spec/javascripts/notebook/cells/markdown_spec.js
View file @
dbd50b6e
...
@@ -49,7 +49,7 @@ describe('Markdown component', () => {
...
@@ -49,7 +49,7 @@ describe('Markdown component', () => {
});
});
Vue
.
nextTick
(()
=>
{
Vue
.
nextTick
(()
=>
{
expect
(
vm
.
$el
.
querySelector
(
'
a
'
)).
toBeNull
();
expect
(
vm
.
$el
.
querySelector
(
'
a
'
)
.
getAttribute
(
'
href
'
)
).
toBeNull
();
done
();
done
();
});
});
...
...
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