Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  mozlint.yml   Sprache: unbekannt

 
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
---
task-defaults:
    always-target: true
    attributes:
        code-review: true
    treeherder:
        kind: test
        tier: 1
    platform: lint/opt
    worker-type: t-linux-xlarge-source
    worker:
        docker-image: {in-tree: "lint"}
        max-run-time: 1800
        artifacts:
            - type: file
              name: public/code-review/mozlint.json
              path: /builds/worker/mozlint.json
    run:
        using: mach
    when:
        files-changed:
            # Other misc lint related files.
            - 'python/mozlint/**'
            - 'tools/lint/**'

codespell:
    description: Checks for misspellings in text files
    treeherder:
        symbol: text(spell)
        # We don't want patches to be backed out because of a typo, a follow up bug will be
        # good enough
        tier: 2
    run:
        mach: lint -v -l codespell -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.js'
            - '**/*.jxs'
            - '**/*.mjs'
            - '**/*.xml'
            - '**/*.html'
            - '**/*.xhtml'
            - '**/*.cpp'
            - '**/*.c'
            - '**/*.h'
            - '**/*.configure'
            - '**/*.py'
            - '**/*.properties'
            - '**/*.rst'
            - '**/*.ftl'
            - 'tools/lint/codespell.yml'


rejected-words:
    description: Reject some words we don't want to use in the code base
    treeherder:
        symbol: text(rejected-words)
        # We don't want patches to be backed out because of this, a follow up bug will be
        # good enough
        tier: 2
    run:
        mach: lint -v -l rejected-words -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.js'
            - '**/*.jxs'
            - '**/*.mjs'
            - '**/*.xml'
            - '**/*.html'
            - '**/*.xhtml'
            - '**/*.cpp'
            - '**/*.c'
            - '**/*.h'
            - '**/*.idl'
            - '**/*.webidl'
            - '**/*.configure'
            - '**/*.py'
            - '**/*.properties'
            - '**/*.rst'
            - '**/*.ftl'
            - '**/*.java'
            - '**/*.kt'
            - 'tools/lint/rejected-words.yml'

eslint:
    description: JS lint check
    treeherder:
        symbol: js(ES)
    run:
        using: run-task
        cwd: '{checkout}'
        command: >
            cp -r $MOZ_FETCHES_DIR/node_modules node_modules &&
            ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules &&
            ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules &&
            ./mach lint -v -l eslint -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            # Files that are likely audited.
            - '**/*.js'
            - '**/*.json'
            - '**/*.jsx'
            - '**/*.mjs'
            - '**/*.sjs'
            - '**/*.html'
            - '**/*.xhtml'
            - '**/*.xml'
            - 'tools/lint/eslint.yml'
            # Run when eslint or prettier policies change.
            - '**/*eslintrc*'
            - '.prettier*'
            # The plugin implementing custom checks.
            - 'tools/lint/eslint/eslint-plugin-mozilla/**'
            - 'tools/lint/eslint/eslint-plugin-spidermonkey-js/**'
    fetches:
        toolchain:
            - linux64-node
            - node-modules


eslint-build:
    description: ESLint checks with build data
    always-target: false
    # Triggered by cron task, don't run on any projects and disable optimization.
    run-on-projects: []
    when: null
    attributes:
        code-review: false
    treeherder:
        symbol: js(ES-B)
        tier: 2
    run:
        using: run-task
        cwd: '{checkout}'
        command: >
            export MOZ_XPT_ARTIFACTS_DIR="$MOZ_FETCHES_DIR/$MOZ_XPT_ARTIFACTS_DIRNAME" &&
            find "$MOZ_XPT_ARTIFACTS_DIR" &&
            cp -r $MOZ_FETCHES_DIR/node_modules node_modules &&
            ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules &&
            ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules &&
            ./mach lint -v -l eslint -f treeherder --quiet -f json:/builds/worker/mozlint.json . --rule "mozilla/valid-services-property: error" --rule "mozilla/valid-ci-uses: error"
    worker:
        env:
            MOZ_XPT_ARTIFACTS_DIRNAME: xpt_artifacts
    require-build:
        .*: build-linux64/opt
    fetches:
        build:
            - artifact: target.xpt_artifacts.zip
              dest: xpt_artifacts
        toolchain:
            - linux64-node
            - node-modules

stylelint:
    description: CSS lint check
    treeherder:
        symbol: stylelint
    run:
        using: run-task
        cwd: '{checkout}'
        command: >
            cp -r $MOZ_FETCHES_DIR/node_modules node_modules &&
            ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules &&
            ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules &&
            ./mach lint -v -l stylelint -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            # Files that are likely audited.
            - '**/*.css'
            - 'tools/lint/styleint.yml'
            # Run when stylelint policies change.
            - '**/.stylelintignore'
            - '**/*stylelintrc*'
            # Run when installed packages change.
            - 'package*.json'
            # The plugin implementing custom checks.
            - 'tools/lint/stylelint/stylelint-plugin-mozilla/**'
    fetches:
        toolchain:
            - linux64-node
            - node-modules

license:
    description: Check for license blocks in source files.
    treeherder:
        symbol: pedantic(license)
    run:
        mach: lint -v -l license -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.c'
            - '**/*.cc'
            - '**/*.cpp'
            - '**/*.css'
            - '**/*.dtd'
            - '**/*.ftl'
            - '**/*.h'
            - '**/*.html'
            - '**/*.idl'
            - '**/*.js'
            - '**/*.jsx'
            - '**/*.kt'
            - '**/*.m'
            - '**/*.mjs'
            - '**/*.mm'
            - '**/*.properties'
            - '**/*.py'
            - '**/*.rs'
            - '**/*.svg'
            - '**/*.webidl'
            - '**/*.xhtml'
            - '**/*.xml'
            - 'tools/lint/license.yml'

lintpref:
    description: Check for duplicates between all.js and StaticPrefList.yaml.
    treeherder:
        symbol: misc(pref)
    run:
        mach: lint -v -l lintpref -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - 'modules/libpref/init/all.js'
            - 'modules/libpref/init/StaticPrefList.yaml'
            - 'browser/app/profile/firefox.js'
            - 'devtools/client/preferences/debugger.js'
            - 'mobile/android/app/geckoview-prefs.js'
            - 'browser/branding/official/pref/firefox-branding.js'
            - 'browser/branding/nightly/pref/firefox-branding.js'
            - 'browser/branding/unofficial/pref/firefox-branding.js'
            - 'browser/branding/aurora/pref/firefox-branding.js'
            - 'browser/app/profile/channel-prefs.js'
            - 'mobile/android/installer/mobile-l10n.js'
            - 'mobile/android/locales/en-US/mobile-l10n.js'
            - 'tools/lint/lintpref.yml'

node-package-names:
    description: Lint for node package name issues
    treeherder:
        symbol: misc(npn)
    run:
        mach: lint -v -l node-package-names -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/package.json'
            - 'tools/lint/node-package-names.yml'

mingw-cap:
    description: lint for MinGW Capitalization issues
    treeherder:
        symbol: misc(mingw)
    run:
        mach: lint -v -l mingw-capitalization -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.cpp'
            - '**/*.cc'
            - '**/*.c'
            - '**/*.h'
            - 'tools/lint/mingw-capitalization.yml'

updatebot:
    description: Ensure moz.yaml files are valid per schema
    treeherder:
        symbol: misc(mozyaml)
    run:
        mach: lint -v -l updatebot -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/moz.yaml'

mscom-init:
    description: Lint for Microsoft COM initialization
    treeherder:
        symbol: misc(mscom)
    run:
        mach: lint -v -l mscom-init -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.cpp'
            - '**/*.cc'
            - '**/*.c'
            - '**/*.h'
            - '**/*.rs'
            - 'tools/lint/mscom-init.yml'

py-black:
    description: black run over the gecko codebase
    treeherder:
        symbol: py(black)
    run:
        mach: lint -v -l black -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            # The list of extensions should match tools/lint/black.yml
            - '**/*.py'
            - '**/moz.build'
            - '**/*.configure'
            - '**/*.mozbuild'
            - 'pyproject.toml'
            - 'tools/lint/black.yml'

py-ruff:
    description: Run ruff over the gecko codebase
    treeherder:
        symbol: py(ruff)
    run:
        mach: lint -v -l ruff -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.py'
            - '**/*.configure'
            - '**/.ruff.toml'
            - 'pyproject.toml'
            - 'tools/lint/ruff.yml'
            - 'tools/lint/python/ruff.py'

test-manifest:
    description: lint test manifests
    treeherder:
        symbol: misc(tm)
    run:
        mach: lint -v -l test-manifest-alpha -l test-manifest-disable -l test-manifest-skip-if -l test-manifest-toml -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.toml'
            - 'python/mozlint/**'
            - 'tools/lint/**'
            - 'tools/lint/test-disable.yml'

wptlint-gecko:
    description: web-platform-tests linter
    treeherder:
        symbol: misc(W)
    run:
        mach: lint -v -l wpt -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - 'testing/web-platform/tests/**'
            - 'testing/web-platform/mozilla/tests/**'
            - 'tools/lint/wpt.yml'

yaml:
    description: yamllint run over the gecko codebase
    treeherder:
        symbol: pedantic(yaml)
    run:
        mach: lint -v -l yaml -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.yml'
            - '**/*.yaml'
            - '**/.ymllint'

rst:
    description: rst lint run over the gecko codebase
    treeherder:
        symbol: text(rst)
    run:
        mach: lint -v -l rst -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.rst'
            - 'tools/lint/rst.yml'

shellcheck:
    description: shellcheck run over the gecko codebase
    treeherder:
        symbol: misc(shell)
    run:
        mach: lint -v -l shellcheck -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.sh'
            - 'tools/lint/shellcheck.yml'


localization:
    description: l10n tests for strings with errors
    treeherder:
        symbol: l10n(l1nt)
    run:
        mach: lint -v -l l10n -f treeherder *
    attributes:
        code-review: false
    when:
        files-changed:
            - '**/locales/en-US/**'
            - '**/l10n.toml'
            - 'third_party/python/compare-locales/**'
            - 'third_party/python/fluent/**'
            - 'tools/lint/l10n.yml'


l10n-conflicts:
    description: l10n tests for strings with errors and conflicts with firefox-l10n-source
    treeherder:
        symbol: l10n(l1nt-conflicts)
    always-target: false
    run-on-projects: []
    run:
        mach: lint -W -l l10n -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/locales/en-US/**'
            - '**/l10n.toml'
            - 'third_party/python/compare-locales/**'
            - 'third_party/python/fluent/**'
            - 'tools/lint/l10n.yml'


clang-format:
    description: clang-format on the C/C++ code
    treeherder:
        symbol: cpp(clang-format)
    run:
        mach: lint -v -l clang-format -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.cpp'
            - '**/*.c'
            - '**/*.cc'
            - '**/*.h'
            - '**/*.m'
            - '**/*.mm'
            - 'tools/lint/clang-format.yml'
    dependencies:
        linux64-clang-tidy: toolchain-linux64-clang-tidy
    fetches:
        linux64-clang-tidy:
            - artifact: clang-tidy.tar.zst
              dest: clang-tools


rustfmt:
    description: rustfmt on the Rust code
    treeherder:
        symbol: rust(rustfmt)
    run:
        mach: lint -v -l rustfmt -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.rs'
            - 'tools/lint/rustfmt.yml'
    fetches:
        toolchain:
            - linux64-rust


clippy:
    description: clippy on the Rust code
    treeherder:
        symbol: rust(clippy)
    run:
        mach: lint -v -l clippy -f treeherder -f json:/builds/worker/mozlint.json -j 1 .
    when:
        files-changed:
            - '**/*.rs'
            - '**/Cargo.toml'
            - 'tools/lint/clippy.yml'
    fetches:
        toolchain:
            - linux64-clang
            - linux64-rust
            - linux64-rust-size
            - linux64-cbindgen
            - linux64-dump_syms
            - linux64-sccache
            - linux64-nasm
            - linux64-node
            - linux64-pkgconf
            - sysroot-x86_64-linux-gnu
            - sysroot-wasm32-wasi


file-whitespace:
    description: Check for trailing whitespaces and Windows CR
    platform: lint/opt
    treeherder:
        symbol: pedantic(file-whitespace)
        # We don't want patches to be backed out because of this, a follow up bug will be
        # good enough
        tier: 2
    run:
        mach: lint -v -l file-whitespace -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.c'
            - '**/*.cc'
            - '**/*.cpp'
            - '**/*.css'
            - '**/*.dtd'
            - '**/*.idl'
            - '**/*.ftl'
            - '**/*.h'
            - '**/*.html'
            - '**/*.json'
            - '**/*.md'
            - '**/*.mn'
            - '**/*.properties'
            - '**/*.py'
            - '**/*.rs'
            - '**/*.rst'
            - '**/*.toml'
            - '**/*.webidl'
            - '**/*.yaml'
            - '**/*.yml'
            - '**/*.xhtml'


file-perm:
    description: Check for incorrect permissions on source files
    platform: lint/opt
    treeherder:
        symbol: pedantic(file-perm)
        # We don't want patches to be backed out because of this, a follow up bug will be
        # good enough
        tier: 2
    run:
        mach: lint -v -l file-perm -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.build'
            - '**/*.c'
            - '**/*.cc'
            - '**/*.cpp'
            - '**/*.flac'
            - '**/*.h'
            - '**/*.html'
            - '**/*.idl'
            - '**/*.js'
            - '**/*.json'
            - '**/*.jsx'
            - '**/*.m'
            - '**/*.m4s'
            - '**/*.md'
            - '**/*.mjs'
            - '**/*.mm'
            - '**/*.mn'
            - '**/*.mozbuild'
            - '**/*.mp4'
            - '**/*.png'
            - '**/*.rs'
            - '**/*.rst'
            - '**/*.svg'
            - '**/*.toml'
            - '**/*.ttf'
            - '**/*.wasm'
            - '**/*.webidl'
            - '**/*.xhtml'
            - '**/*.xml'
            - '**/*.yaml'
            - '**/*.yml'


perfdocs-verify:
    description: Verifies Performance Testing documentation
    treeherder:
        symbol: text(perfdocs)
    run:
        mach: lint -v -l perfdocs -f treeherder -f json:/builds/worker/mozlint.json .
    worker:
        env:
            WORKSPACE: /builds/worker/checkouts/gecko/
            DECISION_TASK_ID: {task-reference: <decision>}
        artifacts:
            - type: file
              name: public/perfdocs.diff
              path: /builds/worker/diff.txt
    when:
        files-changed:
            - 'devtools/perfdocs/**'
            - 'taskcluster/**'
            - '**/perftest.toml'
            - 'python/mozperftest/**'
            - 'testing/awsy/**'
            - 'testing/raptor/**'
            - 'testing/talos/**'
            - 'testing/performance/**'
            - 'testing/perfdocs/**'
            - 'tools/lint/perfdocs.yml'
            - 'toolkit/components/ml/tests/browser/**'
            - '**/*_perf.js'


condprof-addons-verify:
    description: |
      Verifies all xpi files needed by condprof customization sideloading addons are
      included in the firefox-addons fetch task.
    treeherder:
        symbol: misc(condprof-addons)
    run:
        mach: |
            lint -v -l condprof-addons -f treeherder -f json:/builds/worker/mozlint.json .
    fetches:
        fetch:
            - firefox-addons
    when:
        files-changed:
            - 'testing/condprofile/condprof/customization/*.json'
            - 'taskcluster/ci/fetch/browsertime.yml'

fluent-lint:
    description: Check for problems with Fluent files.
    platform: lint/opt
    treeherder:
        symbol: l10n(fluent)
    run:
        mach: lint --linter fluent-lint -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.ftl'
            - 'tools/lint/fluent-lint.yml'
            - 'tools/lint/fluent-lint/exclusions.yml'

trojan-source:
    description: Trojan Source attack - CVE-2021-42572
    platform: lint/opt
    treeherder:
        symbol: misc(trojan-source)
    run:
        mach: lint -v -l trojan-source --include-third-party -f treeherder -f json:/builds/worker/mozlint.json .
    when:
        files-changed:
            - '**/*.c'
            - '**/*.cc'
            - '**/*.cpp'
            - '**/*.h'
            - '**/*.py'
            - '**/*.rs'
            - 'tools/lint/trojan-source.yml'

ignorefile-test:
    description: .gitignore vs .hgignore consistency check
    platform: lint/opt
    treeherder:
        symbol: ignorefile
    run:
        mach: lint -v -l ignorefile .gitignore .hgignore
    when:
        files-changed:
            - '.gitignore'
            - '.hgignore'

[ Dauer der Verarbeitung: 0.2 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge