GitLab -- CI/CD 报错

21 篇文章 2 订阅

在执行CICD的时候,爆了下面两个错误

.gitlab-ci.yml 文件如下:

stages:
- build
- package
# 构建 Job
build:
  stage: build
  tags:
  - diaoTag
  script:
  - echo "=============编译构建任务=============="
  
# 打包
package:
  stage: package
  tags:
  - diaoTag
  script:
  - echo "==============打包任务============="
  - echo "==============启动项目:开始============="
  - echo "==============git目录============="
  - pwd
  - java -jar /root/project/spring-boot-04-web-restfulcrud-0.0.1-SNAPSHOT.jar
  - echo "==============启动项目:完成============="

报错1:

        Error: Unable to access jarfile /root/project/spring-boot-04-web-restfulcrud-0.0.1-SNAPSHOT.jar

报错2:

        rm: cannot remove ‘/home/gitlab-runner/builds/11c0daa1/0/root/cicdTest/.git/index.lock’: Permission denied

问题分析:

        报错1原因是执行

java -jar /root/project/spring-boot-04-web-restfulcrud-0.0.1-SNAPSHOT.jar

        时报错

        报错2原因是执行

rm -f /home/gitlab-runner/builds/11c0daa1/0/root/cicdTest/.git/index.lock

        时报错

        我在使用 SecureCRT 连接时执行上诉命令并不报错。后面发现,我本地测试使用的是root 用户,而在CICD的时候,gitLab 使用的是gitlab-runner 用户,对上述命令中的文件地址没有权限,所以要加上gitlab-runner用户的文件权限

解决:

        添加上面命令的两个目录的权限

chmod  755 /root/project
chmod  755 /home/gitlab-runner/builds/11c0daa1/0/root/cicdTest

效果:

执行build 任务成功

执行package 任务成功,jar包执行正常(jar包是个springboot  web项目)

项目页面,启动正常,欧耶! 

 

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitLab-CI/CD可以很方便地集成Dependency-Check来实现依赖扫描。下面是具体的集成步骤: 1. 安装Dependency-Check 首先需要安装Dependency-Check工具。可以到官网下载对应的软件包,然后解压到任意目录即可。 2. 配置GitLab-CI/CD 在项目的根目录下创建一个名为`.gitlab-ci.yml`的文件,并添加以下内容: ``` image: maven:3.6.3-jdk-11 stages: - build - test - dependency-check before_script: - mvn --version build: stage: build script: - mvn clean package test: stage: test script: - mvn test dependency-check: stage: dependency-check script: - wget https://dl.bintray.com/jeremy-long/owasp/dependency-check-5.3.2-release.zip - unzip dependency-check-5.3.2-release.zip - cd dependency-check-5.3.2-release/bin - ./dependency-check.sh --project "My Project" --scan ./../../target/*.jar --out ./../../dependency-check-report artifacts: paths: - dependency-check-report ``` 以上配置文件定义了三个阶段:build、test和dependency-check。其中,build和test阶段是项目的编译和测试阶段,dependency-check阶段是依赖扫描阶段。在dependency-check阶段中,我们下载并安装了Dependency-Check工具,并使用它来扫描项目的依赖关系。扫描结果将以HTML报告的形式保存在`dependency-check-report`目录下。 3. 提交并运行Pipeline 将`.gitlab-ci.yml`文件提交到项目的Git仓库中,并在GitLab上开启CI/CD功能。然后,就可以运行Pipeline了。Pipeline运行结束后,可以在GitLab的Pipeline页面查看扫描结果。 以上就是集成Dependency-Check的具体步骤,希望可以帮到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值