adds lint-scan template
This commit is contained in:
parent
57a217b986
commit
7d15e4c8b6
2 changed files with 131 additions and 121 deletions
|
@ -12,122 +12,138 @@ spec:
|
|||
entrypoint: ci
|
||||
serviceAccountName: admin
|
||||
volumeClaimTemplates:
|
||||
- metadata:
|
||||
name: shared-data
|
||||
spec:
|
||||
accessModes: [ "ReadWriteOnce" ]
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
||||
- metadata:
|
||||
name: shared-data
|
||||
spec:
|
||||
accessModes: ["ReadWriteOnce"]
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
||||
volumes:
|
||||
- name: docker-config
|
||||
secret:
|
||||
secretName: my-docker-secret
|
||||
- name: docker-config
|
||||
secret:
|
||||
secretName: my-docker-secret
|
||||
templates:
|
||||
- name: ci
|
||||
dag:
|
||||
tasks:
|
||||
- name: git-clone
|
||||
template: git-clone
|
||||
arguments:
|
||||
parameters: [{name: message, value: "git-clone task completed"}]
|
||||
- name: ls
|
||||
template: ls
|
||||
dependencies: [git-clone]
|
||||
- name: build
|
||||
template: build
|
||||
arguments:
|
||||
parameters: [{name: message, value: "build task completed"}]
|
||||
dependencies: [unit-tests, lint-scan]
|
||||
- name: unit-tests
|
||||
template: unit-tests
|
||||
arguments:
|
||||
parameters: [{name: message, value: "unit-tests task completed"}]
|
||||
dependencies: [ls]
|
||||
- name: lint-scan
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters: [{name: message, value: "lint-scan task completed"}]
|
||||
dependencies: [ls]
|
||||
- name: trivy-image-scan
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters: [{name: message, value: "trivy-image-scan task completed"}]
|
||||
dependencies: [build]
|
||||
- name: trivy-filesystem-scan
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters: [{name: message, value: "trivy-filesystem-scan task completed"}]
|
||||
dependencies: [git-clone]
|
||||
- name: push-image
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters: [{name: message, value: "push-image task completed"}]
|
||||
# when: " == true"
|
||||
dependencies: [trivy-image-scan, trivy-filesystem-scan]
|
||||
|
||||
- name: simple-container
|
||||
inputs:
|
||||
parameters:
|
||||
- name: message
|
||||
container:
|
||||
image: alpine:latest
|
||||
command: [sh, -c]
|
||||
args: ["echo {{inputs.parameters.message}}"]
|
||||
- name: ci
|
||||
dag:
|
||||
tasks:
|
||||
- name: git-clone
|
||||
template: git-clone
|
||||
arguments:
|
||||
parameters: [{ name: message, value: "git-clone task completed" }]
|
||||
- name: ls
|
||||
template: ls
|
||||
dependencies: [git-clone]
|
||||
- name: build
|
||||
template: build
|
||||
arguments:
|
||||
parameters: [{ name: message, value: "build task completed" }]
|
||||
dependencies: [unit-tests, lint-scan]
|
||||
- name: unit-tests
|
||||
template: unit-tests
|
||||
arguments:
|
||||
parameters:
|
||||
[{ name: message, value: "unit-tests task completed" }]
|
||||
dependencies: [ls]
|
||||
- name: lint-scan
|
||||
template: lint-scan
|
||||
arguments:
|
||||
parameters: [{ name: message, value: "lint-scan task completed" }]
|
||||
dependencies: [ls]
|
||||
- name: trivy-image-scan
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters:
|
||||
[{ name: message, value: "trivy-image-scan task completed" }]
|
||||
dependencies: [build]
|
||||
- name: trivy-filesystem-scan
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters:
|
||||
[
|
||||
{
|
||||
name: message,
|
||||
value: "trivy-filesystem-scan task completed",
|
||||
},
|
||||
]
|
||||
dependencies: [git-clone]
|
||||
- name: push-image
|
||||
template: simple-container
|
||||
arguments:
|
||||
parameters:
|
||||
[{ name: message, value: "push-image task completed" }]
|
||||
# when: " == true"
|
||||
dependencies: [trivy-image-scan, trivy-filesystem-scan]
|
||||
|
||||
- name: ls
|
||||
container:
|
||||
image: alpine:latest
|
||||
command: [sh, -c]
|
||||
args: [ls /]
|
||||
|
||||
- name: git-clone
|
||||
container:
|
||||
image: ubuntu:latest
|
||||
command: [sh, -c]
|
||||
args:
|
||||
- |
|
||||
apt update
|
||||
apt install -y git
|
||||
git clone -b main http://forgejo-http.gitea.svc.cluster.local:3000/giteaAdmin/fibonacci_go.git /shared-data/repo
|
||||
ls -la /
|
||||
ls -la /shared-data
|
||||
ls -la /shared-data/repo
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
|
||||
- name: build
|
||||
container:
|
||||
image: gcr.io/kaniko-project/executor:v1.23.2
|
||||
args:
|
||||
[
|
||||
"--dockerfile=/shared-data/repo/Dockerfile",
|
||||
"--context=/shared-data/repo/",
|
||||
"--destination=gitea.cnoe.localtest.me/giteaadmin/fibonacci_go:latest",
|
||||
"--registry-certificate",
|
||||
"gitea.cnoe.localtest.me=/shared-data/repo/tls/gitea.cnoe.localtest.me.crt"
|
||||
]
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
- name: docker-config
|
||||
mountPath: /kaniko/.docker
|
||||
- name: simple-container
|
||||
inputs:
|
||||
parameters:
|
||||
- name: message
|
||||
container:
|
||||
image: alpine:latest
|
||||
command: [sh, -c]
|
||||
args: ["echo {{inputs.parameters.message}}"]
|
||||
|
||||
- name: unit-tests
|
||||
container:
|
||||
image: golang:1.23.2
|
||||
command: [sh, -c]
|
||||
args:
|
||||
- |
|
||||
cd /shared-data/repo && \
|
||||
go test ./... -v > test-results.txt; \
|
||||
cat test-results.txt
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
# How to extract artifacts
|
||||
outputs:
|
||||
artifacts:
|
||||
- name: test-results
|
||||
path: /shared-data/repo/test-results.txt
|
||||
- name: ls
|
||||
container:
|
||||
image: alpine:latest
|
||||
command: [sh, -c]
|
||||
args: [ls /]
|
||||
|
||||
- name: git-clone
|
||||
container:
|
||||
image: ubuntu:latest
|
||||
command: [sh, -c]
|
||||
args:
|
||||
- |
|
||||
apt update
|
||||
apt install -y git
|
||||
git clone -b main https://forgejo.edf-bootstrap.cx.fg1.ffm.osc.live/Franz.Germann/fibonacci_go.git /shared-data/repo
|
||||
ls -la /
|
||||
ls -la /shared-data
|
||||
ls -la /shared-data/repo
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
|
||||
- name: build
|
||||
container:
|
||||
image: gcr.io/kaniko-project/executor:v1.23.2
|
||||
args:
|
||||
[
|
||||
"--dockerfile=/shared-data/repo/Dockerfile",
|
||||
"--context=/shared-data/repo/",
|
||||
"--destination=forgejo.edf-bootstrap.cx.fg1.ffm.osc.live/franz.germann/fibonacci_go:latest",
|
||||
]
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
- name: docker-config
|
||||
mountPath: /kaniko/.docker
|
||||
|
||||
- name: unit-tests
|
||||
container:
|
||||
image: golang:1.23.2
|
||||
command: [sh, -c]
|
||||
args:
|
||||
- |
|
||||
cd /shared-data/repo && \
|
||||
go test ./... -v > test-results.txt; \
|
||||
cat test-results.txt
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
# How to extract artifacts
|
||||
|
||||
- name: lint-scan
|
||||
container:
|
||||
image: golangci/golangci-lint:v1.61.0
|
||||
command: [sh, -c]
|
||||
args:
|
||||
- |
|
||||
cd /shared-data/repo && \
|
||||
golangci-lint run ./... --out-format=json --timeout 5m > lint-results.json; \
|
||||
cat lint-results.json
|
||||
volumeMounts:
|
||||
- name: shared-data
|
||||
mountPath: /shared-data
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
on: [push]
|
||||
jobs:
|
||||
test:
|
||||
runs-on: docker
|
||||
steps:
|
||||
- run: echo All Good
|
Loading…
Reference in a new issue