Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >节点应用程序在本地构建,但在GitlabCI中失败

节点应用程序在本地构建,但在GitlabCI中失败
EN

Stack Overflow用户
提问于 2022-06-14 13:38:29
回答 2查看 317关注 0票数 1

我有一个svelte应用程序,是由SvelteKit构建的。它在本地和本地Docker映像中运行良好,但在Gitlab CI中失败。

这是我的gitlab-ci.yml

代码语言:javascript
运行
AI代码解释
复制
image: node:16.15.0-alpine

stages:
  - build
  - lint
  - test

install:
  stage: build
  script:
    - cd frontend/
    - npm ci
  artifacts:
    paths:
      - frontend/
  only:
    - merge_requests

format-and-lint:
  stage: lint
  needs: [install]
  script:
    - cd frontend/
    - npm run format
    - npm run lint
  artifacts:
    paths:
      - frontend/
  only:
    - merge_requests


# --------------- This step always fails ---------------
cypress:
  stage: test
  needs: [format-and-lint]
  script:
    - cd frontend/
    - npm run build
    - npm run preview
    - npx cypress run --spec "cypress/integration/lehrenden-eintragung/*"
  artifacts:
    paths:
      - frontend/
  only: 
    - merge_requests
# -----------------------------------------------------

vitest:
  stage: test
  needs: [format-and-lint]
  script:
    - cd frontend/
    - npm run test
  artifacts:
    paths:
      - frontend/
  only:
    - merge_requests

我的package.json看起来是这样的:

代码语言:javascript
运行
AI代码解释
复制
{
    "bezeichnungLang": "llp-frontend",
    "version": "1.0.0",
    "type": "module",
    "scripts": {
        "dev": "svelte-kit dev",
        "build": "svelte-kit build",
        "package": "svelte-kit package",
        "preview": "svelte-kit preview",
        "prepare": "svelte-kit sync",
        "check": "svelte-check --tsconfig ./tsconfig.json --compiler-warnings \"css-unused-selector:ignore\"",
        "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
        "lint": "prettier --ignore-path .gitignore --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
        "format": "prettier --ignore-path .gitignore --write --plugin-search-dir=. .",
        "test": "vitest run",
        "coverage": "vitest run --coverage"
    },
    "devDependencies": {
        "@sveltejs/adapter-auto": "^1.0.0-next.40",
        "@sveltejs/kit": "^1.0.0-next.323",
        "@testing-library/jest-dom": "^5.16",
        "@testing-library/svelte": "^3.1",
        "@testing-library/user-event": "^14.0",
        "@tsconfig/svelte": "^3.0",
        "@types/bootstrap": "^5.1.9",
        "@types/jest": "^27.4",
        "@types/testing-library__jest-dom": "^5.14",
        "@typescript-eslint/eslint-plugin": "^5.18",
        "@typescript-eslint/parser": "^5.18",
        "bootstrap": "^5.1",
        "cypress": "^9.6.1",
        "eslint": "^8.14",
        "eslint-config-prettier": "^8.5",
        "eslint-plugin-cypress": "^2.12.1",
        "eslint-plugin-svelte3": "^3.4",
        "jsdom": "^19.0",
        "popper.js": "^1.16",
        "prettier": "^2.6",
        "prettier-plugin-svelte": "^2.7",
        "purgecss-from-svelte": "^2.0",
        "simple-svelte-autocomplete": "^2.4.0",
        "source-map-support": "^0.5",
        "svelte": "^3.46",
        "svelte-check": "^2.4",
        "svelte-preprocess": "^4.10",
        "ts-node": "^10.7",
        "ts-replace-all": "^1.0",
        "tslib": "^2.3",
        "typescript": "^4.6.4",
        "vitest": "^0.10",
        "vitest-svelte-kit": "^0.0"
    },
    "babel": {
        "plugins": [
            "@babel/plugin-proposal-class-properties"
        ],
        "presets": [
            [
                "@babel/preset-env"
            ]
        ]
    },
    "browserslist": [
        "since 2017-06"
    ],
    "dependencies": {
        "sass": "^1.52.2",
        "vite": "^2.9.9"
    }
}

如果出现以下错误,GitlabCI将失败:

代码语言:javascript
运行
AI代码解释
复制
Using docker image sha256:e5065cc780745864eeee3280fe347b33e90961c98c7d3e14d5b660e16aef24ce for node:16.15.0-alpine with digest node@sha256:1a9a71ea86aad332aa7740316d4111ee1bd4e890df47d3b5eff3e5bded3b3d10 ...
$ cd frontend/
$ ls
convertTestData.js
cypress
cypress.json
node_modules
package-lock.json
package.json
setupTestEnvironment.ts
src
static
svelte.config.js
tsconfig.json
vite.config.ts
vitest.config.js
$ npm run build
> build
> svelte-kit build
8:59:30 PM [vite-plugin-svelte] hmr is enabled but compilerOptions.dev is false, forcing it to true
8:59:30 PM [vite-plugin-svelte] options.hot is enabled but does not work on production build, forcing it to false
8:59:30 PM [vite-plugin-svelte] you are building for production but compilerOptions.dev is true, forcing it to false
vite v2.9.12 building for production...
transforming...1 modules transformed.
[vite-plugin-svelte] /builds/llp/llp/frontend/src/routes/__layout.svelte:32:1 The keyword 'let' is reserved
file: /builds/llp/llp/frontend/src/routes/__layout.svelte:32:1
 30 |  
 31 |  function create_fragment(ctx) {
 32 |    let div3;
         ^
 33 |    let div2;
 34 |    let div0;
> /builds/llp/llp/frontend/src/routes/__layout.svelte:32:1 The keyword 'let' is reserved
    at error (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:17716:19)
    at Parser$1.error (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:17792:9)
    at Parser$1.acorn_error (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:17786:14)
    at read_expression (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:8652:16)
    at mustache (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:17475:28)
    at new Parser$1 (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:17751:21)
    at parse$3 (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:17883:20)
    at compile (file:///builds/llp/llp/frontend/node_modules/svelte/compiler.mjs:32265:17)
    at compileSvelte2 (file:///builds/llp/llp/frontend/node_modules/@sveltejs/vite-plugin-svelte/dist/index.js:351:20)
    at async Object.transform (file:///builds/llp/llp/frontend/node_modules/@sveltejs/vite-plugin-svelte/dist/index.js:1791:25)
Cleaning up project directory and file based variables
00:01
ERROR: Job failed: exit code 1

管道中的所有其他步骤运行良好,并无错误地完成。请帮帮我!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-06-17 00:33:01

解决方案是指定sveltejs/kit的确切版本。构建在版本1.0.0-next.350上失败,但在1.0.0-next.323上运行良好。不知何故,除了具有相同的节点版本之外,在管道中安装了1.0.0-next.350版本。

票数 0
EN

Stack Overflow用户

发布于 2022-06-16 17:43:13

此错误主要来自于[vite-plugin-svelte],它无法在__layout.svelte组件上转换第32行。

代码语言:javascript
运行
AI代码解释
复制
function create_fragment(ctx) {
   let div3;
   ^
   let div2;
   let div0;
/builds/llp/llp/frontend/src/routes/__layout.svelte:32:1 The keyword 'let' is reserved

尝试升级以下依赖项:

@sveltejs/kit (这是vite内置的,不需要额外的依赖)

svelte和相关的依赖项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72623657

复制
相关文章
加快GitLabCI流水线构建!
GitLab.com 提供共享的Runner程序供每个存储库使用,虽然这对于快速开始来说是很棒的,但我们发现最大的单项速度提升来自接待我们自己的Runner。对我们来说,瓶颈实际上不是CPU或RAM,而是网络。在私有云服务器上,网络速度大大提高。网络速度对于构建和部署尤其重要。构建通常需要下载库,依赖项,Docker映像等,而部署则需要将资源上传到其他位置。当网络挤满了GitLab的共享Runner时,这些阶段就会很慢。
DevOps云学堂
2021/12/13
7170
加快GitLabCI流水线构建!
带有-i选项的sed命令在Linux上执行成功,但在MacOS上失败
就地编辑文件(如果提供了后缀,则进行备份),可见参数后缀 SUFFIX 是可选的,即带或者不带这个参数都可以执行。
程序熵
2023/09/25
4190
带有-i选项的sed命令在Linux上执行成功,但在MacOS上失败
在 Microsoft 云上构建应用程序
Microsoft 云包括了Azure、Power Platform、Microsoft 365、GitHub、Dynamics 365 等,虽然许多企业应用程序开发领导者了解在 Azure 上创建应用程序的价值,但事实是您可以将整个 Microsoft 云作为应用程序平台. 有一篇文章:在 Microsoft 云上构建应用程序 从应用程序开发角度介绍了 Microsoft 云的大局,重点介绍领导者必须执行的操作才能取得成功。
张善友
2022/05/31
8530
在 Microsoft 云上构建应用程序
上传了ipa但在苹果App Store中没有看到构建版本的问题
AU上传ipa出现下图红框提示说明成功上传,但有时App Store后台没有出现构建版本,请查看下面详细说明!
iOS Magician
2023/04/08
1.8K0
上传了ipa但在苹果App Store中没有看到构建版本的问题
Spring Batch 在本地编译构建参考文档
仓库地址为:https://gitee.com/cwikius/spring-batch.git
HoneyMoose
2020/12/21
4260
Spring Batch 在本地编译构建参考文档
C# dotnet 本地代码构建没问题,但 CI 自动构建失败可能的原因
本地构建能通过至少代码上的问题不大,本文列举了一些可能的原因,小伙伴可以按照顺序依次查看代码和配置
林德熙
2022/08/12
7660
加快GitLabCI流水线构建的一些方法
GitLab.com 提供共享的Runner程序供每个存储库使用,虽然这对于快速开始来说是很棒的,但我们发现最大的单项速度提升来自接待我们自己的Runner。对我们来说,瓶颈实际上不是CPU或RAM,而是网络。在私有云服务器上,网络速度大大提高。网络速度对于构建和部署尤其重要。构建通常需要下载库,依赖项,Docker映像等,而部署则需要将资源上传到其他位置。当网络挤满了GitLab的共享Runner时,这些阶段就会很慢。
DevOps云学堂
2020/05/18
1.1K0
我们在未来会怎样构建Web应用程序?
作者 | Stepan Parunashvili 译者 | 王强 策划 | 万佳 在未来,我们会怎样构建 Web 应用程序呢? 如果行业正常发展下去的话,那么今天我们认为很难、做起来很有价值的事情在明天都会变得很轻松普遍。我想我们会发现很多新的抽象,让 Google Docs 写起来也能像今天的普通 Web 应用一样简单。 这就引出来一个问题——这些抽象会是什么样子?我们今天能发现它们吗?想要找出答案,一种方法是审视我们在构建 Web 应用程序时必须经历的所有问题,然后看看我们能做些什么。 亲爱的读者,这
深度学习与Python
2023/04/01
10.2K0
我们在未来会怎样构建Web应用程序?
Hadoop 集群节点启动失败
java.net.UnknownHostException: node03: node03: 未知的名称或服务 at java.net.InetAddress.getLocalHost(InetAddress.java:1505) at org.apache.hadoop.security.SecurityUtil.getLocalHostName(SecurityUtil.java:219) at org.apache.hadoop.security.SecurityUtil.login(SecurityUtil.java:239) at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:2467) at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:2516) at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:2698) at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:2722) Caused by: java.net.UnknownHostException: node03: 未知的名称或服务 at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method) at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928) at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323) at java.net.InetAddress.getLocalHost(InetAddress.java:1500) … 6 more 2019-11-07 17:08:33,536 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 1 2019-11-07 17:08:33,537 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG: /************************************************************
刘浩的BigDataPath
2021/04/13
2.8K0
Hadoop 集群节点启动失败
本地构建zebra
想结合gobgp实现一个路由转发功能,由于zebra和quagga项目历史比较久远,新的Linux发行版和工具无法按照原来的指导正确完成构建。因此选择frr项目下的zebra进行构建。
DifficultWork
2023/05/19
1.2K2
POSTGRESQL 主节点失败后, 在多变的情况下重新让他融入复制中
POSTGRESQL 在主从流复制中,在主库失败切换后,从库变为主库后,如果主库不是因为硬件的原因,想继续拉起来,并且加入到新的复制关系中,一般都会通过pg_rewind的程序来进行拉起来. 但不少问题反馈对pg_rewind在重新拉起旧主库出现问题,到底有什么情况下pg_rewind对你的数据库重新建立复制关系"力不从心", 怎么去避免这样的情况是这篇文字要讨论和提到的.
AustinDatabases
2021/09/02
1.6K0
使用 Telepresence 轻松在本地调试和开发 Kubernetes 应用程序
关于golang程序在k8s中的远程调试,可以参考使用dlv进行,但是这种方式缺陷也很明显,已部署的工作负载,需要重新制作镜像,重新部署,对业务也有一定侵入性,也不够灵活。
我的小碗汤
2023/03/19
2.7K0
使用 Telepresence 轻松在本地调试和开发 Kubernetes 应用程序
Pinpoint跨节点统计失败 原
        当使用springcloud时,内嵌jetty,并使用rest做rpc调用。
尚浩宇
2018/08/17
5190
Hadoop 启动节点Datanode失败解决
[root@hadoop current]# hadoop-daemon.sh start datanode starting datanode, logging to /usr/local/hadoop1.1/libexec/../logs/hadoop-root-datanode-hadoop.out
星哥玩云
2022/07/03
1.7K0
GitLabCI作业中如何使用私有仓库镜像?
今天有同学在GitlabCI课程实践中遇到了一个问题,当runner需要下载私有镜像仓库中的镜像报错,提示没有权限。如果是在vm或者物理机注册的docker类型执行器的runner,则在本机执行docker login之后就可以了。但是现在是通过docker运行的gitlabrunner 并且使用的也是docker类型的执行器。此时我们就需要在项目或者Runner配置镜像仓库的认证信息了。
DevOps云学堂
2020/09/22
4.1K0
GitLabCI作业中如何使用私有仓库镜像?
cdn节点访问失败,源站测试正常,节点异常?
cdn节点测试访问异常,出现空响应,直接访问源站正常,这里看起来像是节点出现异常。
任雯霄
2020/12/30
3.9K0
在 .NET 应用程序中运行 JavaScript
前几天我在做一个副业,意识到我需要使用一些 JavaScript 功能。一想到要再次处理 Node.js 和 npm,我就完全放弃了,所以我决定研究一下在 .NET 应用程序中运行 JavaScript 的可能性。很疯狂吧?实际上,这出乎意料的简单。
独立观察员
2022/12/06
2.7K0
在 .NET 应用程序中运行 JavaScript
flutter - 方法 '[]'在null上被调用,但在inApp中有效
这意味着检索数据需要很短的时间, 试试这个。数据为空时,它将在短时间内通过进度指示器
徐建国
2021/08/03
9870
单链表:在带头节点单链表中删除(minv, maxv)中的所有节点
链表节点删除,只有标记待删除节点的前驱节点即可; [注]:如果不是带有节点设置一个虚拟节点即可,返回时返回dummy->next。
lexingsen
2022/02/24
1.8K0
在gradle中构建java项目
之前的文章我们讲到了gradle的基本使用,使用gradle的最终目的就是为了构建java项目。今天本文将会详细的讲解如何在gradle中构建java项目。
程序那些事
2021/02/20
1.8K0

相似问题

节点ImageMagick在本地成功,但在AWS中失败

12

构建在大门中失败,但在本地构建得很好。

14

Heroku构建在prod中失败,但在本地不失败

236

项目在本地构建,但在travis-ci容器中失败。

24

‘'npm运行构建’在AWS CodeBuild中失败,但在本地成功

225
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档