Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
5b663992
Unverified
Commit
5b663992
authored
Aug 21, 2018
by
Christoph Blecker
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Convert tabs to spaces
parent
09cdfc52
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
54 additions
and
54 deletions
+54
-54
verify-golint.sh
hack/verify-golint.sh
+54
-54
No files found.
hack/verify-golint.sh
View file @
5b663992
...
@@ -46,14 +46,14 @@ array_contains () {
...
@@ -46,14 +46,14 @@ array_contains () {
# Check that the file is in alphabetical order
# Check that the file is in alphabetical order
failure_file
=
"
${
KUBE_ROOT
}
/hack/.golint_failures"
failure_file
=
"
${
KUBE_ROOT
}
/hack/.golint_failures"
if
!
diff
-u
"
${
failure_file
}
"
<
(
LC_ALL
=
C
sort
"
${
failure_file
}
"
)
;
then
if
!
diff
-u
"
${
failure_file
}
"
<
(
LC_ALL
=
C
sort
"
${
failure_file
}
"
)
;
then
{
{
echo
echo
echo
"hack/.golint_failures is not in alphabetical order. Please sort it:"
echo
"hack/.golint_failures is not in alphabetical order. Please sort it:"
echo
echo
echo
" LC_ALL=C sort -o hack/.golint_failures hack/.golint_failures"
echo
" LC_ALL=C sort -o hack/.golint_failures hack/.golint_failures"
echo
echo
}
>
&2
}
>
&2
false
false
fi
fi
export
IFS
=
$'
\n
'
export
IFS
=
$'
\n
'
...
@@ -61,73 +61,73 @@ export IFS=$'\n'
...
@@ -61,73 +61,73 @@ export IFS=$'\n'
# as the prefix, however if we run it outside it returns the full path of the file
# as the prefix, however if we run it outside it returns the full path of the file
# with a leading underscore. We'll need to support both scenarios for all_packages.
# with a leading underscore. We'll need to support both scenarios for all_packages.
all_packages
=(
all_packages
=(
$(
go list
-e
./... | egrep
-v
"/(third_party|vendor|staging/src/k8s.io/client-go/pkg|generated|clientset_generated)"
|
sed
-e
's|^k8s.io/kubernetes/||'
-e
"s|^_
${
KUBE_ROOT
}
/
\?
||"
)
$(
go list
-e
./... | egrep
-v
"/(third_party|vendor|staging/src/k8s.io/client-go/pkg|generated|clientset_generated)"
|
sed
-e
's|^k8s.io/kubernetes/||'
-e
"s|^_
${
KUBE_ROOT
}
/
\?
||"
)
)
)
failing_packages
=(
failing_packages
=(
$(
cat
$failure_file
)
$(
cat
$failure_file
)
)
)
unset
IFS
unset
IFS
errors
=()
errors
=()
not_failing
=()
not_failing
=()
for
p
in
"
${
all_packages
[@]
}
"
;
do
for
p
in
"
${
all_packages
[@]
}
"
;
do
# Run golint on package/*.go file explicitly to validate all go files
# Run golint on package/*.go file explicitly to validate all go files
# and not just the ones for the current platform.
# and not just the ones for the current platform.
# Packages with a corresponding foo_test package will make golint fail
# Packages with a corresponding foo_test package will make golint fail
# with a useless error. Just ignore that, see golang/lint#68.
# with a useless error. Just ignore that, see golang/lint#68.
failedLint
=
$(
golint
"
$p
"
/
*
.go 2>/dev/null
)
failedLint
=
$(
golint
"
$p
"
/
*
.go 2>/dev/null
)
array_contains
"
$p
"
"
${
failing_packages
[@]
}
"
&&
in_failing
=
$?
||
in_failing
=
$?
array_contains
"
$p
"
"
${
failing_packages
[@]
}
"
&&
in_failing
=
$?
||
in_failing
=
$?
if
[[
-n
"
${
failedLint
}
"
]]
&&
[[
"
${
in_failing
}
"
-ne
"0"
]]
;
then
if
[[
-n
"
${
failedLint
}
"
]]
&&
[[
"
${
in_failing
}
"
-ne
"0"
]]
;
then
errors+
=(
"
${
failedLint
}
"
)
errors+
=(
"
${
failedLint
}
"
)
fi
fi
if
[[
-z
"
${
failedLint
}
"
]]
&&
[[
"
${
in_failing
}
"
-eq
"0"
]]
;
then
if
[[
-z
"
${
failedLint
}
"
]]
&&
[[
"
${
in_failing
}
"
-eq
"0"
]]
;
then
not_failing+
=(
$p
)
not_failing+
=(
$p
)
fi
fi
done
done
# Check that all failing_packages actually still exist
# Check that all failing_packages actually still exist
gone
=()
gone
=()
for
p
in
"
${
failing_packages
[@]
}
"
;
do
for
p
in
"
${
failing_packages
[@]
}
"
;
do
array_contains
"
$p
"
"
${
all_packages
[@]
}
"
||
gone+
=(
"
$p
"
)
array_contains
"
$p
"
"
${
all_packages
[@]
}
"
||
gone+
=(
"
$p
"
)
done
done
# Check to be sure all the packages that should pass lint are.
# Check to be sure all the packages that should pass lint are.
if
[
${#
errors
[@]
}
-eq
0
]
;
then
if
[
${#
errors
[@]
}
-eq
0
]
;
then
echo
'Congratulations! All Go source files have been linted.'
echo
'Congratulations! All Go source files have been linted.'
else
else
{
{
echo
"Errors from golint:"
echo
"Errors from golint:"
for
err
in
"
${
errors
[@]
}
"
;
do
for
err
in
"
${
errors
[@]
}
"
;
do
echo
"
$err
"
echo
"
$err
"
done
done
echo
echo
echo
'Please review the above warnings. You can test via "golint" and commit the result.'
echo
'Please review the above warnings. You can test via "golint" and commit the result.'
echo
'If the above warnings do not make sense, you can exempt this package from golint'
echo
'If the above warnings do not make sense, you can exempt this package from golint'
echo
'checking by adding it to hack/.golint_failures (if your reviewer is okay with it).'
echo
'checking by adding it to hack/.golint_failures (if your reviewer is okay with it).'
echo
echo
}
>
&2
}
>
&2
false
false
fi
fi
if
[[
${#
not_failing
[@]
}
-gt
0
]]
;
then
if
[[
${#
not_failing
[@]
}
-gt
0
]]
;
then
{
{
echo
"Some packages in hack/.golint_failures are passing golint. Please remove them."
echo
"Some packages in hack/.golint_failures are passing golint. Please remove them."
echo
echo
for
p
in
"
${
not_failing
[@]
}
"
;
do
for
p
in
"
${
not_failing
[@]
}
"
;
do
echo
"
$p
"
echo
"
$p
"
done
done
echo
echo
}
>
&2
}
>
&2
false
false
fi
fi
if
[[
${#
gone
[@]
}
-gt
0
]]
;
then
if
[[
${#
gone
[@]
}
-gt
0
]]
;
then
{
{
echo
"Some packages in hack/.golint_failures do not exist anymore. Please remove them."
echo
"Some packages in hack/.golint_failures do not exist anymore. Please remove them."
echo
echo
for
p
in
"
${
gone
[@]
}
"
;
do
for
p
in
"
${
gone
[@]
}
"
;
do
echo
"
$p
"
echo
"
$p
"
done
done
echo
echo
}
>
&2
}
>
&2
false
false
fi
fi
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