From ada2663feb503e36fd255bc45b9ea34b0bebf51c Mon Sep 17 00:00:00 2001 From: Alessio Perugini Date: Wed, 17 May 2023 16:08:54 +0200 Subject: [PATCH] add the license headers check in go files --- .../assets/check-go-task/Taskfile.yml | 7 ++++ workflow-templates/check-go-task.yml | 35 +++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/workflow-templates/assets/check-go-task/Taskfile.yml b/workflow-templates/assets/check-go-task/Taskfile.yml index e72f2172..052c0e9c 100644 --- a/workflow-templates/assets/check-go-task/Taskfile.yml +++ b/workflow-templates/assets/check-go-task/Taskfile.yml @@ -37,3 +37,10 @@ tasks: dir: "{{default .DEFAULT_GO_MODULE_PATH .GO_MODULE_PATH}}" cmds: - go vet {{default .DEFAULT_GO_PACKAGES .GO_PACKAGES}} + + # Source: https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/assets/check-go-task/Taskfile.yml + go:check-license-headers: + desc: Check go license headers + cmds: + - go install github.com/google/addlicense@v1.1.1 + - addlicense -c "ARDUINO SA (http://www.arduino.cc/)" -f ./license_header.tpl *.go diff --git a/workflow-templates/check-go-task.yml b/workflow-templates/check-go-task.yml index 77c87cfa..d4563183 100644 --- a/workflow-templates/check-go-task.yml +++ b/workflow-templates/check-go-task.yml @@ -226,3 +226,38 @@ jobs: - name: Check whether any tidying was needed run: git diff --color --exit-code + + check-license-headers: + name: check-license-headers (${{ matrix.module.path }}) + needs: run-determination + if: needs.run-determination.outputs.result == 'true' + runs-on: ubuntu-latest + + strategy: + fail-fast: false + + matrix: + module: + - path: ./ + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Install Go + uses: actions/setup-go@v4 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Install Task + uses: arduino/setup-task@v1 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + version: 3.x + + - name: Check license headers + env: + GO_MODULE_PATH: ${{ matrix.module.path }} + run: | + task go:check-license-headers + git diff --color --exit-code