mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
Currently, the URL where the ECLAIR MISRA C scan reports are saved is hardcoded; making it configurable allows multiple runners and storage servers to be used without resorting to publishing all artifacts to the same report server. Additionally, reports will be accessed publicly by using a proxy, therefore the address that needs to be printed in GitLab analysis logs is that of the public url, rather than the location where they are stored. Signed-off-by: Alessandro Zucchelli <alessandro.zucchelli@bugseng.com> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com> [stefano: remove unneeded exports] Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> Reviewed-by: Anthony PERARD <anthony.perard@vates.tech>
147 lines
3.6 KiB
YAML
147 lines
3.6 KiB
YAML
.eclair-analysis:
|
|
stage: analyze
|
|
tags:
|
|
- eclair-analysis
|
|
variables:
|
|
ECLAIR_OUTPUT_DIR: "ECLAIR_out"
|
|
ANALYSIS_KIND: "normal"
|
|
ENABLE_ECLAIR_BOT: "n"
|
|
AUTO_PR_BRANCH: "staging"
|
|
AUTO_PR_REPOSITORY: "xen-project/xen"
|
|
ECLAIR_ANALYSIS_RESULTS: "https://eclair-analysis-logs.xenproject.org"
|
|
script:
|
|
- ./automation/scripts/eclair 2>&1 | tee "${LOGFILE}"
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- "${ECLAIR_OUTPUT_DIR}/*.log"
|
|
- "${ECLAIR_OUTPUT_DIR}/*.txt"
|
|
- '*.log'
|
|
reports:
|
|
codequality: gl-code-quality-report.json
|
|
rules:
|
|
- if: $WTOKEN == null
|
|
when: never
|
|
- when: always
|
|
needs: []
|
|
|
|
.eclair-analysis:triggered:
|
|
extends: .eclair-analysis
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == "schedule"
|
|
when: never
|
|
- if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
|
|
- if: $SELECTED_JOBS_ONLY
|
|
when: never
|
|
- if: $WTOKEN && $CI_PROJECT_PATH =~ /^xen-project\/people\/.*$/
|
|
when: manual
|
|
allow_failure: true
|
|
- !reference [.eclair-analysis, rules]
|
|
|
|
eclair-x86_64:
|
|
extends: .eclair-analysis:triggered
|
|
variables:
|
|
LOGFILE: "eclair-x86_64.log"
|
|
VARIANT: "X86_64"
|
|
RULESET: "monitored"
|
|
EXTRA_XEN_CONFIG: |
|
|
CONFIG_AMD=y
|
|
CONFIG_INTEL=n
|
|
CONFIG_AMD_SVM=y
|
|
CONFIG_INTEL_VMX=n
|
|
CONFIG_NR_CPUS=16
|
|
CONFIG_NR_NUMA_NODES=2
|
|
CONFIG_PV=n
|
|
CONFIG_XEN_IBT=n
|
|
CONFIG_XEN_SHSTK=n
|
|
CONFIG_SHADOW_PAGING=n
|
|
CONFIG_HVM_FEP=n
|
|
CONFIG_TBOOT=n
|
|
CONFIG_HYPFS=n
|
|
CONFIG_KEXEC=n
|
|
CONFIG_ARGO=y
|
|
CONFIG_SCHED_CREDIT=n
|
|
CONFIG_SCHED_RTDS=n
|
|
CONFIG_SCHED_ARINC653=n
|
|
CONFIG_LIVEPATCH=n
|
|
CONFIG_TRACEBUFFER=n
|
|
CONFIG_INTEL_IOMMU=n
|
|
CONFIG_EXPERT=y
|
|
CONFIG_DEBUG=y
|
|
CONFIG_GDBSX=n
|
|
CONFIG_FRAME_POINTER=n
|
|
CONFIG_SELF_TESTS=n
|
|
CONFIG_DEBUG_LOCKS=n
|
|
CONFIG_SCRUB_DEBUG=n
|
|
CONFIG_XMEM_POOL_POISON=n
|
|
|
|
eclair-ARM64:
|
|
extends: .eclair-analysis:triggered
|
|
variables:
|
|
LOGFILE: "eclair-ARM64.log"
|
|
VARIANT: "ARM64"
|
|
RULESET: "monitored"
|
|
EXTRA_XEN_CONFIG: |
|
|
CONFIG_NR_CPUS=16
|
|
CONFIG_GICV2=n
|
|
CONFIG_GICV3=y
|
|
CONFIG_VGICV2=n
|
|
CONFIG_HAS_ITS=y
|
|
CONFIG_HWDOM_VUART=n
|
|
CONFIG_STATIC_SHM=y
|
|
CONFIG_STATIC_EVTCHN=y
|
|
CONFIG_STATIC_MEMORY=y
|
|
CONFIG_SCMI_SMC=n
|
|
CONFIG_PARTIAL_EMULATION=n
|
|
CONFIG_HYPFS=n
|
|
CONFIG_IOREQ_SERVER=y
|
|
CONFIG_XSM=n
|
|
CONFIG_ARGO=y
|
|
CONFIG_SCHED_CREDIT=n
|
|
CONFIG_SCHED_RTDS=n
|
|
CONFIG_SCHED_ARINC653=n
|
|
CONFIG_BOOT_TIME_CPUPOOLS=y
|
|
CONFIG_TRACEBUFFER=n
|
|
CONFIG_HAS_CADENCE_UART=n
|
|
CONFIG_HAS_NS16550=n
|
|
CONFIG_HAS_IMX_LPUART=n
|
|
CONFIG_HAS_MVEBU=n
|
|
CONFIG_HAS_MESON=n
|
|
CONFIG_HAS_OMAP=n
|
|
CONFIG_HAS_SCIF=n
|
|
CONFIG_HAS_LINFLEX=n
|
|
CONFIG_ARM_SMMU=n
|
|
CONFIG_ARM_SMMU_V3=y
|
|
CONFIG_EXPERT=y
|
|
CONFIG_DEBUG=y
|
|
CONFIG_FRAME_POINTER=n
|
|
CONFIG_SELF_TESTS=n
|
|
CONFIG_DEBUG_LOCKS=n
|
|
CONFIG_SCRUB_DEBUG=n
|
|
CONFIG_XMEM_POOL_POISON=n
|
|
|
|
.eclair-analysis:on-schedule:
|
|
extends: .eclair-analysis
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != "schedule"
|
|
when: never
|
|
- !reference [.eclair-analysis, rules]
|
|
|
|
eclair-x86_64:on-schedule:
|
|
extends: .eclair-analysis:on-schedule
|
|
variables:
|
|
VARIANT: "X86_64"
|
|
RULESET: "accepted"
|
|
ANALYSIS_KIND: "${RULESET}-scheduled"
|
|
LOGFILE: "eclair-${VARIANT}-${RULESET}.log"
|
|
allow_failure: true
|
|
|
|
eclair-ARM64:on-schedule:
|
|
extends: .eclair-analysis:on-schedule
|
|
variables:
|
|
VARIANT: "ARM64"
|
|
RULESET: "accepted"
|
|
ANALYSIS_KIND: "${RULESET}-scheduled"
|
|
LOGFILE: "eclair-${VARIANT}-${RULESET}.log"
|
|
allow_failure: true
|