Lighthouse: execution de pa11y pour compléter l'audit d'accessibilité
This commit is contained in:
parent
4fe6feb1a1
commit
19884e6719
|
@ -35,6 +35,7 @@ RUN apk add --no-cache \
|
|||
chromium
|
||||
|
||||
RUN npm install -g lighthouse
|
||||
RUN PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install -g pa11y pa11y-reporter-html
|
||||
|
||||
RUN adduser -D lighthouse
|
||||
|
||||
|
@ -42,6 +43,7 @@ COPY run-audit.sh /usr/local/bin/run-audit
|
|||
RUN chmod +x /usr/local/bin/run-audit
|
||||
|
||||
COPY config.js.tmpl /home/lighthouse/config.js.tmpl
|
||||
COPY patty.json.tmpl /home/lighthouse/patty.json.tmpl
|
||||
|
||||
WORKDIR /home/lighthouse
|
||||
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"chromeLaunchConfig": {
|
||||
"args": ["--disable-dev-shm-usage", "--no-sandbox", "--disable-gpu"],
|
||||
"ignoreHTTPSErrors": true
|
||||
}
|
||||
}
|
|
@ -1,6 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -x
|
||||
|
||||
envtpl -o config.js /home/lighthouse/config.js.tmpl
|
||||
envtpl -o patty.json /home/lighthouse/patty.json.tmpl
|
||||
|
||||
mkdir -p reports
|
||||
rm -f reports/*
|
||||
|
@ -15,3 +18,11 @@ lighthouse \
|
|||
--output-path=lighthouse \
|
||||
-- \
|
||||
"$LIGHTHOUSE_URL"
|
||||
|
||||
export PUPPETEER_EXECUTABLE_PATH=$(which chromium-browser)
|
||||
|
||||
pa11y --reporter html \
|
||||
--config ../patty.json \
|
||||
--include-warnings \
|
||||
--include-notices \
|
||||
"$LIGHTHOUSE_URL" > pa11y.report.html || exit 0
|
||||
|
|
|
@ -30,7 +30,7 @@ def call() {
|
|||
}
|
||||
}
|
||||
|
||||
stage("Run Lighthouse audit") {
|
||||
stage("Run Lighthouse and pa11y audits") {
|
||||
steps {
|
||||
script {
|
||||
def lighthouseImage = buildDockerImage()
|
||||
|
@ -39,12 +39,14 @@ def call() {
|
|||
"""
|
||||
timeout(params.auditTimeout.toInteger()) {
|
||||
lighthouseImage.inside(dockerArgs) {
|
||||
sh 'run-audit'
|
||||
sh 'chown -R lighthouse: ./'
|
||||
sh 'su lighthouse - /usr/local/bin/run-audit'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
post {
|
||||
|
@ -54,8 +56,8 @@ def call() {
|
|||
alwaysLinkToLastBuild: false,
|
||||
keepAll: true,
|
||||
reportDir: 'reports',
|
||||
reportFiles: 'lighthouse.report.html',
|
||||
reportName: "Rapport Lighthouse"
|
||||
reportFiles: '*.report.html',
|
||||
reportName: "Rapports d'audit"
|
||||
]
|
||||
cleanWs()
|
||||
}
|
||||
|
@ -64,9 +66,12 @@ def call() {
|
|||
rocketSend (
|
||||
avatar: 'https://jenkins.cadol.es/static/b5f67753/images/headshot.png',
|
||||
message: """
|
||||
L'audit Lighthouse pour `${params.url}` est terminé.
|
||||
Les audits pour `${params.url}` sont terminés:
|
||||
|
||||
[Voir le rapport](${env.BUILD_URL}Rapport_20Lighthouse/)
|
||||
- [Voir le rapport Lighthouse (bonnes pratiques)](${env.BUILD_URL}Rapports_20d_27audit/lighthouse.report.html)
|
||||
- [Voir le rapport pa11y (accessibilité)](${env.BUILD_URL}Rapports_20d_27audit/pa11y.report.html)
|
||||
|
||||
[Lancer un nouvel audit](${env.BUILD_URL}../build)
|
||||
|
||||
@${env.BUILD_USER_ID ? env.BUILD_USER_ID : 'here'}
|
||||
""".stripIndent(),
|
||||
|
@ -75,6 +80,7 @@ def call() {
|
|||
}
|
||||
}
|
||||
failure {
|
||||
wrap([$class: 'BuildUser']) {
|
||||
rocketSend (
|
||||
avatar: 'https://jenkins.cadol.es/static/b5f67753/images/headshot.png',
|
||||
message: """
|
||||
|
@ -88,6 +94,7 @@ def call() {
|
|||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -97,6 +104,7 @@ def buildDockerImage() {
|
|||
def resourceFiles = [
|
||||
'com/cadoles/lighthouse/Dockerfile',
|
||||
'com/cadoles/lighthouse/config.js.tmpl',
|
||||
'com/cadoles/lighthouse/patty.json.tmpl',
|
||||
'com/cadoles/lighthouse/run-audit.sh'
|
||||
];
|
||||
|
||||
|
|
Loading…
Reference in New Issue