From fe3e6101f1c79355832e4391ea1b8d89e39434b2 Mon Sep 17 00:00:00 2001 From: never112 Date: Wed, 11 Dec 2024 19:55:25 +0800 Subject: [PATCH 1/4] feat: add config linter --- config/.image/confcheck.Dockerfile | 56 ++++++++++++++++++++++++++++++ config/config.example.yaml | 12 +++++++ 2 files changed, 68 insertions(+) create mode 100644 config/.image/confcheck.Dockerfile diff --git a/config/.image/confcheck.Dockerfile b/config/.image/confcheck.Dockerfile new file mode 100644 index 00000000..db7eb1b0 --- /dev/null +++ b/config/.image/confcheck.Dockerfile @@ -0,0 +1,56 @@ +# go lint tool dependencies `go list` `gofmt` +FROM golang:1.23.2-alpine3.20 +#FROM aslan-spock-register.qiniu.io/golang:1.23.2-alpine3.20 +ENV GOPROXY=https://goproxy.cn,direct +ENV TimeZone=Asia/Shanghai +# if you want to install other tools, please add them here. +# Do not install unnecessary tools to reduce image size. +RUN set -eux \ + apk update && \ + apk --no-cache add ca-certificates git openssh yarn libpcap-dev curl openjdk11 bash build-base maven python3 yamllint ansible-lint actionlint npm libxml2-utils +ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk +ENV PATH=$PATH:$JAVA_HOME/bin + +#RUN update-alternatives --list java + +RUN curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b /usr/local/bin v1.61.0 + +RUN mkdir /github +RUN mkdir /github/workspace + +WORKDIR / + +RUN curl -LO https://github.com/stackrox/kube-linter/releases/download/v0.7.1/kube-linter-linux.tar.gz + + +RUN tar -zvxf kube-linter-linux.tar.gz + +RUN mv kube-linter /usr/local/bin + +RUN kube-linter version + + + +RUN wget -O hadolint https://github.com/hadolint/hadolint/releases/download/v2.12.0/hadolint-Linux-x86_64 + +RUN mv hadolint /usr/local/bin +RUN chmod 777 /usr/local/bin/hadolint +RUN hadolint -v +RUN npm i -g @prantlf/jsonlint + +RUN jsonlint -v + + + +# SSH config + + +# set go proxy and private repo + + +#ENTRYPOINT ["java","-cp /source/p3c/p3c-pmd/target/p3c-pmd-2.1.1-jar-with-dependencies.jar net.sourceforge.pmd.PMD -f emacs -R rulesets/java/ali-comment.xml,rulesets/java/ali-concurrent.xml,rulesets/java/ali-constant.xml,rulesets/java/ali-exception.xml,rulesets/java/ali-flowcontrol.xml,rulesets/java/ali-naming.xml,rulesets/java/ali-oop.xml,rulesets/java/ali-orm.xml,rulesets/java/ali-other.xml,rulesets/java/ali-set.xml -d ./sourcecode"] + +#ENTRYPOINT ["yamllint", "/github/workspace"] + + +#EXPOSE 8888 diff --git a/config/config.example.yaml b/config/config.example.yaml index 4af3318d..cc58e0e8 100644 --- a/config/config.example.yaml +++ b/config/config.example.yaml @@ -189,3 +189,15 @@ customLinters: kubernetesAsRunner: namespace: "reviewbot" image: "aslan-spock-register.qiniu.io/reviewbot/base:go1.22.3-java11-p3cpmd2.1.1" + yamllint: + languages: [ ".yaml" ] + command: + - "/bin/sh" + - "-c" + - "--" + args: + - | + yamllint -d ./ + kubernetesAsRunner: + namespace: "reviewbot" + image: "aslan-spock-register.qiniu.io/reviewbot/base:go1.22.3-confcheck" From 17021d7eb81c4ed117e403f701c6ca444a592511 Mon Sep 17 00:00:00 2001 From: never112 Date: Mon, 16 Dec 2024 19:18:13 +0800 Subject: [PATCH 2/4] feat: add config linter --- config/.image/confcheck.Dockerfile | 16 ++++++++-------- config/config.example.yaml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/config/.image/confcheck.Dockerfile b/config/.image/confcheck.Dockerfile index db7eb1b0..b65b9d4d 100644 --- a/config/.image/confcheck.Dockerfile +++ b/config/.image/confcheck.Dockerfile @@ -43,14 +43,14 @@ RUN jsonlint -v # SSH config - +RUN mkdir -p /root/.ssh && chown -R root /root/.ssh/ && chgrp -R root /root/.ssh/ \ + && git config --global url."git@github.com:".insteadOf https://github.com/ \ + && git config --global url."git://".insteadOf https:// +COPY deploy/config /root/.ssh/config +COPY deploy/github-known-hosts /github_known_hosts # set go proxy and private repo +RUN go env -w GOPROXY=https://goproxy.cn,direct \ + && go env -w GOPRIVATE=github.com/qbox,qiniu.com - -#ENTRYPOINT ["java","-cp /source/p3c/p3c-pmd/target/p3c-pmd-2.1.1-jar-with-dependencies.jar net.sourceforge.pmd.PMD -f emacs -R rulesets/java/ali-comment.xml,rulesets/java/ali-concurrent.xml,rulesets/java/ali-constant.xml,rulesets/java/ali-exception.xml,rulesets/java/ali-flowcontrol.xml,rulesets/java/ali-naming.xml,rulesets/java/ali-oop.xml,rulesets/java/ali-orm.xml,rulesets/java/ali-other.xml,rulesets/java/ali-set.xml -d ./sourcecode"] - -#ENTRYPOINT ["yamllint", "/github/workspace"] - - -#EXPOSE 8888 +EXPOSE 8888 diff --git a/config/config.example.yaml b/config/config.example.yaml index cc58e0e8..53b10e39 100644 --- a/config/config.example.yaml +++ b/config/config.example.yaml @@ -197,7 +197,7 @@ customLinters: - "--" args: - | - yamllint -d ./ + yamllint ./ -f parsable -s --no-warnings -d "{extends: relaxed, rules: {line-length: {max: 120}}}" kubernetesAsRunner: namespace: "reviewbot" image: "aslan-spock-register.qiniu.io/reviewbot/base:go1.22.3-confcheck" From c96f0294c872c609366df631bbfee8b9b03ab6d2 Mon Sep 17 00:00:00 2001 From: never112 Date: Tue, 17 Dec 2024 11:30:33 +0800 Subject: [PATCH 3/4] feat: add config linter --- config/config.example.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/config.example.yaml b/config/config.example.yaml index 53b10e39..06916977 100644 --- a/config/config.example.yaml +++ b/config/config.example.yaml @@ -197,7 +197,7 @@ customLinters: - "--" args: - | - yamllint ./ -f parsable -s --no-warnings -d "{extends: relaxed, rules: {line-length: {max: 120}}}" + docker run -v ./:/data -it pexio/yamllint:latest /data/src/testfile/actions.yaml -f parsable -d "{extends: relaxed, rules: {line-length: {max: 120}, new-line-at-end-of-file: false, new-lines: false, trailing-spaces: false}}" kubernetesAsRunner: namespace: "reviewbot" - image: "aslan-spock-register.qiniu.io/reviewbot/base:go1.22.3-confcheck" + image: "oolulegan/yamllinter" From f1c49ec8e96c57f058c9c7aa25edfc38a06256fe Mon Sep 17 00:00:00 2001 From: never112 Date: Tue, 17 Dec 2024 12:06:24 +0800 Subject: [PATCH 4/4] fix:p3c linter --- config/config.example.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/config.example.yaml b/config/config.example.yaml index 06916977..93801645 100644 --- a/config/config.example.yaml +++ b/config/config.example.yaml @@ -185,7 +185,7 @@ customLinters: - "--" args: - | - java -cp /source/p3c/p3c-pmd/target/p3c-pmd-2.1.1-jar-with-dependencies.jar net.sourceforge.pmd.PMD -f emacs -R rulesets/java/ali-comment.xml,rulesets/java/ali-concurrent.xml,rulesets/java/ali-constant.xml,rulesets/java/ali-exception.xml,rulesets/java/ali-flowcontrol.xml,rulesets/java/ali-naming.xml,rulesets/java/ali-oop.xml,rulesets/java/ali-orm.xml,rulesets/java/ali-other.xml,rulesets/java/ali-set.xml -d ./ + docker run -v ./:/workspace/app/test harrell16805/ali-p3c-pmd:2.0.1 java -cp /opt/p3c-pmd-2.0.1.jar net.sourceforge.pmd.PMD -no-cache -R rulesets/java/ali-comment.xml,rulesets/java/ali-concurrent.xml,rulesets/java/ali-constant.xml,rulesets/java/ali-exception.xml,rulesets/java/ali-flowcontrol.xml,rulesets/java/ali-naming.xml,rulesets/java/ali-oop.xml,rulesets/java/ali-orm.xml,rulesets/java/ali-other.xml,rulesets/java/ali-set.xml -f emacs -d /workspace/app/test kubernetesAsRunner: namespace: "reviewbot" image: "aslan-spock-register.qiniu.io/reviewbot/base:go1.22.3-java11-p3cpmd2.1.1"