【发布时间】:2020-04-27 23:34:40
【问题描述】:
我在 my Gatsby site 上运行 gatsby build 时遇到问题,该问题仅在在 Github Actions 容器中运行时出现。它也不总是发生。作为一个很好的例子,今天 Dependabot 启动了 12 个 PR,其中两个因这个错误而失败。错误出现如下:
$ gatsby build
╔════════════════════════════════════════════════════════════════════════╗
║ ║
║ Gatsby collects anonymous usage analytics ║
║ to help improve Gatsby for all users. ║
║ ║
║ If you'd like to opt-out, you can use `gatsby telemetry --disable` ║
║ To learn more, checkout https://gatsby.dev/telemetry ║
║ ║
╚════════════════════════════════════════════════════════════════════════╝
success open and validate gatsby-configs - 0.035s
success load plugins - 0.892s
success onPreInit - 0.010s
success delete html and css files from previous builds - 0.015s
success initialize cache - 0.013s
success copy gatsby files - 0.029s
warn gatsby-plugin-feed was initialized in gatsby-config.js without a feeds option.
This means that the plugin will use the internal RSS feed creation, which may not match your use
case.
This behavior will be removed in the next major release of gatsby-plugin-feed.
success onPreBootstrap - 0.014s
success createSchemaCustomization - 0.149s
success source and transform nodes - 0.193s
⠀
info bootstrap finished - 5.713 s
⠀
success Building production JavaScript and CSS bundles - 19.548s
success Rewriting compilation hashes - 0.002s
success run queries - 21.003s - 10/10 0.48/s
error Command failed with signal "SIGSEGV".
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
##[error]Docker run failed with exit code 1
如您所见,没有太多信息,只有一行描述了错误:error Command failed with signal "SIGSEGV"。我一直在寻找一种方法让 Gatsby 的输出更详细,但 build 命令上似乎没有详细选项。
我唯一的线索是它可能与处理 Gatsby-Sharp 和 Gatsby-Image 中的图像有关,由于this thread on the Gatsby GitHub repo,此 repo 确实使用了这两个图像。但似乎该线程中的很多人都在报告只是切线相似的不同问题;很难弄清楚可能有什么关系。
gatsby-config.js:
module.exports = {
siteMetadata: {
title: `Matt.si`,
description: `Mattsi Jansky's personal programming/tech blog`,
author: `Mattsi Jansky`,
siteUrl: `http://www.matt.si`,
social: {
twitter: `mattsijansky`,
facebook: ``,
github: `mattsi-jansky`,
linkedin: `mjjansky`,
email: `mattsi@jansky.dev`,
},
},
plugins: [
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/content/blog`,
name: `blog`,
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 970,
showCaptions: true
},
},
`gatsby-remark-prismjs`,
],
},
},
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
{
resolve: `gatsby-plugin-google-analytics`,
options: {
trackingId: `UA-54448080-1`,
},
},
`gatsby-plugin-feed`,
{
resolve: `gatsby-plugin-manifest`,
options: {
name: `Matt.si`,
short_name: `mattsi`,
start_url: `/`,
background_color: `#663399`,
theme_color: `#663399`,
display: `minimal-ui`,
icon: `./static/favicon.png`, // This path is relative to the root of the site.
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
{
resolve: `gatsby-remark-footnotes`,
options: {
footnoteBackRefPreviousElementDisplay: "inline",
footnoteBackRefDisplay: "inline",
footnoteBackRefInnerText: "^",
footnoteBackRefAnchorStyle: `text-decoration: none;`,
footnoteBackRefInnerTextStartPosition: "front",
}
}
]
}
},
// `gatsby-plugin-offline`,
`gatsby-plugin-react-helmet`,
`gatsby-plugin-sass`,
],
}
Package.json:
{
"name": "matt.si",
"private": false,
"description": "Mattsi Jansky's personal blog",
"author": "Mattsi Jansky",
"scripts": {
"build": "gatsby build",
"dev": "gatsby develop",
"test": "jest",
"test:updateSnapshots": "jest --updateSnapshot",
"test:visual": "yarn build && ./scripts/run-visual-regression-tests.sh",
"test:visual:update": "docker-compose run visual-regression-tests reference",
"test:visual:approve": "docker-compose run visual-regression-tests approve",
"lint": "eslint --ext .js,.jsx --ignore-pattern public .",
"format": "prettier --trailing-comma es5 --no-semi --single-quote --write 'src/**/*.js' 'src/**/*.md'"
},
"dependencies": {
"babel-preset-gatsby": "0.2.26",
"gatsby": "2.18.21",
"gatsby-image": "2.2.37",
"gatsby-plugin-feed": "2.3.25",
"gatsby-plugin-google-analytics": "2.1.31",
"gatsby-plugin-manifest": "2.2.34",
"gatsby-plugin-offline": "3.0.30",
"gatsby-plugin-react-helmet": "3.1.18",
"gatsby-plugin-sass": "2.1.26",
"gatsby-plugin-sharp": "2.3.10",
"gatsby-remark-footnotes": "0.0.7",
"gatsby-remark-images": "3.1.39",
"gatsby-remark-prismjs": "3.3.28",
"gatsby-source-filesystem": "2.1.43",
"gatsby-transformer-remark": "2.6.45",
"gatsby-transformer-sharp": "2.3.9",
"identity-obj-proxy": "3.0.0",
"node-sass": "4.13.0",
"prismjs": "1.18.0",
"prop-types": "15.7.2",
"react": "16.12.0",
"react-dom": "16.12.0",
"react-helmet": "5.2.1",
"react-test-renderer": "16.12.0",
"rehype-react": "4.0.1"
},
"devDependencies": {
"babel-jest": "24.9.0",
"enzyme": "3.11.0",
"enzyme-adapter-react-16": "1.15.2",
"eslint": "6.8.0",
"eslint-plugin-react": "7.17.0",
"jest": "24.9.0",
"prettier": "1.19.1",
"wait-on": "3.3.0"
},
"license": "GPL-3.0-only"
}
我不确定还有什么可以帮助的,但所有内容都在 repo 中公开。我正在尝试在 CI 服务器上运行 gatsby info,但在使其正常工作时遇到了一些麻烦。有什么想法吗?
【问题讨论】:
-
您找到解决方案了吗?我间歇性地遇到这个问题。
-
它仍在我的积压 atm 中,但如果我找到解决方案,我会更新。不幸的是,它给 Dependabot 带来了很多问题。
-
同样的问题,这里有一堆关于上述问题的截图:image
标签: javascript gatsby github-actions gatsby-image