【问题标题】:How do I initiate Gatsby eslinting during my deployment pipeline如何在部署管道期间启动 Gatsby eslinting
【发布时间】:2021-05-02 21:48:39
【问题描述】:

我目前正在设置 Gatsby 以替换我公司用户在项目模板中之前的前端设置。大多数事情都已设置好,但我坚持将 linting 集成到我们的部署脚本中。

我们的 bitbucket-pipelines.yml 文件调用 npm run client:lint 来运行旧设置的 linting。 Gatsby 有自己的 eslint 设置,在开发过程中效果很好,但我找不到手动运行它的 linting 的方法。

Gatsby 在 package.json 中设置的脚本只包括这些:

  "scripts": {
    "develop": "gatsby develop",
    "start": "gatsby develop",
    "build": "gatsby build",
    "serve": "gatsby serve",
    "clean": "gatsby clean"
  },

我可以运行一个命令来自行启动 linting 吗?

请注意:我已经尝试按照以下链接创建自定义 eslint 设置,但它似乎涉及构建一个全新的 eslint 文件 - 我遇到了问题 - 所以我希望有一个脚本可以运行目前我还没有遇到过的现有 linting。

【问题讨论】:

    标签: deployment gatsby eslint lint eslintrc


    【解决方案1】:

    这应该可行:

      "scripts": {
        "develop": "gatsby develop",
        "start": "gatsby develop",
        "build": "gatsby build",
        "serve": "gatsby serve",
        "clean": "gatsby clean"
        "eslint": "eslint \"**/*.{js, jsx, json, md}\"",
      },
    

    根据需要使用eslint 命令或与其他命令组合使用。这将在项目的任何文件夹中查找所有扩展名(jsjsxjsonmd),并将应用 ESLint 配置文件(.eslintrc.json)中的详细规则。

    添加具有以下内容的.eslintignore 文件也可能很有用:

    coverage
    build/Release
    node_modules/
    jspm_packages/
    build/
    .cache/
    public/
    

    这将避免在运行命令时解析该文件夹。

    【讨论】:

    • 感谢@FerranBuireu ,不幸的是,尽管这将使用 Gatsby 在安装时包含的 linting 模块,但它不使用 Gatsby 使用的规则。包含 .eslintrc 确实意味着我可以单独调用 linting,但这也意味着 Gatsby 的内置 linting 被覆盖(所以我必须从头开始构建一个配置文件)。我正在寻找的是一种调用内置 linting 设置的方法,而不是定义一个新设置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-15
    • 2014-01-03
    • 1970-01-01
    • 1970-01-01
    • 2019-07-04
    • 1970-01-01
    相关资源
    最近更新 更多