GitLab CI/CD maven项目加速

GitLab CI/CD maven项目加速

GitLab CI/CD 在构建 maven项目的时候发现很慢,经过查询大量资料和尝试,终于发现了镜像加速的方法,记录一下

参考资料:
https://oomake.com/question/10042383
https://gitlab.com/gitlab-org/gitlab-foss/-/issues/15167

image: docker:latest

variables:
  IMAGE_NAME_HZ: "${REGISTRY_HZ}/${CI_PROJECT_NAMESPACE}-${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}"
  IMAGE_NAME_ZJK: "${REGISTRY_ZJK}/${CI_PROJECT_NAMESPACE}-${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}"
  BIN_NAME: "fdd"

cache:
  paths:
    - .m2/

stages:
  - package
  - build

package:
  image: maven:3.6-jdk-8-alpine
  tags:
    - public-runner001
  stage: package
  script:
    - echo '<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
            <localRepository>/cache/.m2</localRepository>
            <mirrors>
              <mirror>
                <id>nexus-aliyun</id>
                <mirrorOf>*</mirrorOf>
                <name>Nexus aliyun</name>
                <url>http://maven.aliyun.com/nexus/content/groups/public</url>
              </mirror>
            </mirrors>
            </settings>' > $HOME/.m2/settings.xml
    - mvn clean install -Dmaven.test.skip=true
  artifacts:
    paths:
      - target/*.jar    # 将maven构建成功的jar包作为构建产出导出,可在下一个stage的任务中使用


build:
  stage: build
  tags:
    - public-runner001
  image: docker:stable
  services:
    - docker:dind
  only:
    - master
    - tags
    - merge_requests
  dependencies:
    - package
  script:
    # 杭州
    - docker login -u ${CI_USER} -p ${CI_PASSWD} ${REGISTRY_HZ}
    - docker build . -t ${IMAGE_NAME_HZ}
    - docker push ${IMAGE_NAME_HZ}
    # 张家口
    - docker login -u ${XD_CI_USER} -p ${CI_PASSWD} ${REGISTRY_ZJK}
    - docker build . -t ${IMAGE_NAME_ZJK}
    - docker push ${IMAGE_NAME_ZJK}

在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值