Gate against go formatting

The `make test` target includes go formatting, if there is any unformatted
code this will lead to a git diff, which the gates now check for.

Change-Id: I52cffadb37c1d42081b56efcae2d977cc0f96f35
Signed-off-by: Sean Eagan <seaneagan1@gmail.com>
This commit is contained in:
Sean Eagan 2021-01-27 10:39:16 -06:00
parent 3d33c4e4f8
commit 0baac2b432
3 changed files with 34 additions and 0 deletions

View File

@ -114,3 +114,7 @@ $(LINTER): $(TOOLBINDIR)
$(TOOLBINDIR): $(TOOLBINDIR):
mkdir -p $(TOOLBINDIR) mkdir -p $(TOOLBINDIR)
.PHONY: check-git-diff
check-git-diff:
@./tools/git_diff_check

View File

@ -59,6 +59,10 @@
make: make:
chdir: "{{ zuul.project.src_dir }}" chdir: "{{ zuul.project.src_dir }}"
target: test target: test
- name: Check git diff
make:
chdir: "{{ zuul.project.src_dir }}"
target: check-git-diff
- name: Build Docker image - name: Build Docker image
make: make:
chdir: "{{ zuul.project.src_dir }}" chdir: "{{ zuul.project.src_dir }}"

26
tools/git_diff_check Executable file
View File

@ -0,0 +1,26 @@
#!/bin/bash
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
# Update git index
git update-index -q --ignore-submodules --refresh
# Evaluate git files for difference, if found print message and fail.
git diff --exit-code --ignore-submodules
if [ $? -ne 0 ]
then
echo "error: git diff found, please run make test"
exit 1
fi
echo "success: git diff not found"