gitlab

sonarqube+sonar_scanner+jenkins执行代码检查

社会主义新天地 提交于 2020-08-06 06:30:05
一、简介 1、SonarQube 介绍 SonarQube 是一个开源的代码质量分析平台,便于管理代码的质量,可检查出项目代码的漏洞和潜在的逻辑问题。同时,它提供了丰富的插件,支持多种语言的检测,如 Java、Python、Groovy、C、C++等几十种编程语言的检测。它主要的核心价值体现在如下几个方面: (1)检查代码是否遵循编程标准:如命名规范,编写的规范等。 (2)检查设计存在的潜在缺陷:SonarQube 通过插件 Findbugs、Checkstyle 等工具检测代码存在的缺陷。 (3)检测代码的重复代码量:SonarQube 可以展示项目中存在大量复制粘贴的代码。 (4)检测代码中注释的程度:源码注释过多或者太少都不好,影响程序的可读可理解性。 (5)检测代码中包、类之间的关系:分析类之间的关系是否合理,复杂度情况。 2、SonarQube 平台是由 4 个部分组成 ① SonarQube Server ② SonarQube Database ③ SonarQube Plugins ④ SonarQube Scanner 3、SonarQube 工作流程 SonarQube 在进行代码质量管理时,会从下图 所示的七个纬度来分析项目的质量。 SonarQube 需要数据库的支持,用于存储检测项目后的分析数据,同时为了实现可持续监测,还需要持续集成工具(如Jenkins

jenkins+docker+docker-compose持续集成

拜拜、爱过 提交于 2020-08-05 17:47:24
安装jdk1.8 上传到 /usr/local/java 目录 cd /usr/local/java tar -zxvf jdk-8u221-linux-x64.tar.gz #配置环境变量 vi /etc/profile #将下面的粘贴到 /etc/profile 末尾: JAVA_HOME=/usr/local/java/jdk1.8.0_221 JRE_HOME=/usr/local/java/jdk1.8.0_221/jre CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib PATH=$JAVA_HOME/bin:$PATH export PATH JAVA_HOME CLASSPATH #保存关闭后(:wq),执行以下命令,让设置立即生效 source /etc/profile #输入以下命令,来确认这三个变量是否设成了我们想要的 echo $JAVA_HOME echo $CLASSPATH echo $PATH 安装maven cd /home wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz #下载maven压缩包 tar -zxvf

华为海思、微软、高通等50多家公司被曝源代码泄露,或因为DevOps不安全

僤鯓⒐⒋嵵緔 提交于 2020-08-05 17:08:48
  据美国科技媒体 BleepingComputer 报道,由于不安全的 DevOps 应用程序,导致微软、Adobe、联想、AMD、高通、联发科、通用电气、任天堂、迪士尼、华为海思等 50 家科技公司的源代码都遭到泄露,并被发布在 GitLab 上一个公开存储库中。   一位名为蒂莉 · 科特曼(Tillie Kottmann)的开发人员收集到了上述泄露,这些泄漏来源广泛。在 GitLab 上的公共存储库中,可以找到大量此类泄漏,这些泄漏的标签多为 “机密”“机密和专有” 等。   科特曼表示,他在一个很容易访问的代码存储库中,找到了硬编码的凭据,他正在努力将其删除,以免造成更大的破坏。科特曼还表示,其将遵守移除要求、并乐意提供可增强公司基础架构安全性的信息。   另据专注于银行业威胁和欺诈的研究机构 Bank Security 称,存储库中发布了来自 50 多家公司的代码。      图 | Bank Security 提供的信息(来源:BleepingComputer)   目前,许多当事公司可能并不了解泄漏情况。一些已经注意到其源码泄露的企业,并不会费心将其删除。比如,其中一家公司的几名开发人员,只是想知道科特曼是如何获得代码的,并没有对他提出删除代码的要求。      图 | 泄露的源码(来源:BleepingComputer)   就本次泄露来说

jenkins配合 BlueOcean操作【18】

一个人想着一个人 提交于 2020-08-05 14:03:07
之前我们使用流水线操作了,接下来给jenkins换个皮肤 BlueOcean插件安装 完成之后可以看到 ,我们吧之前写的流水线脚本也去掉这里使用jenkinsfile代替 这里去掉不要了 然后把脚本放到jenkinsfile文件然后上传到gitlab上面 之前的拉代码步骤去掉了 开始部署一下 进来之后可以运行一下 部署完成了 我们取机器上看一下 镜像标签也对应起来了 这里就成功了 好了今天演示就到这里,有问题随时留言反馈 来源: oschina 链接: https://my.oschina.net/u/4374048/blog/4295333

Can't generate signed APK in GitLab CI

廉价感情. 提交于 2020-08-05 09:47:04
问题 I'm testing gitlab ci/cd and I'm trying to build a signed APK but my script failed. What should I change or add? I add variables KEYSTORE_FILE, KEYSTORE_PASSWORD, KEY_ALIAS, KEY_PASSWORD with values. assembleRelease: stage: release script: - echo $KEYSTORE_FILE | base64 -d > my.keystore - ./gradlew assembleRelease -Pandroid.injected.signing.store.file=$(pwd)/my.keystore -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD -Pandroid.injected.signing.key.alias=$KEY_ALIAS -Pandroid

VirtualBox executer fails with “prepare environment: Process exited with status 1”

那年仲夏 提交于 2020-08-05 09:37:41
问题 I registered the VirtualBox CI runner using gitlab-runner register and by choosing virtualbox as an executor. However, if I start the runner pipeline in Gitlab, it fails with the following error: What would be causing this error and how to fix it? Here's a link mentioned in the error message: https://docs.gitlab.com/runner/shells/index.html#shell-profile-loading P.S: I'm using macOS 10.15.5 and the VirtualBox runs Ubuntu 20.04 LTS. 回答1: The documentation mentions: For certain executors, the

VirtualBox executer fails with “prepare environment: Process exited with status 1”

耗尽温柔 提交于 2020-08-05 09:37:17
问题 I registered the VirtualBox CI runner using gitlab-runner register and by choosing virtualbox as an executor. However, if I start the runner pipeline in Gitlab, it fails with the following error: What would be causing this error and how to fix it? Here's a link mentioned in the error message: https://docs.gitlab.com/runner/shells/index.html#shell-profile-loading P.S: I'm using macOS 10.15.5 and the VirtualBox runs Ubuntu 20.04 LTS. 回答1: The documentation mentions: For certain executors, the

DevOps应用配置不当,暴露微软、Adobe等50家知名企业源码

倾然丶 夕夏残阳落幕 提交于 2020-08-05 07:19:18
一名来自瑞士的开发工程师Tillie Kottmann近日在GitLab上,公开了50来家知名企业的源码,包含微软、Adobe、Amd、联发科等,据Kottmann说,这是因为这些公司的DevOps应用配置不当才让他有机可趁,存取了它们的私有源码。 Kottmann把所有的源码放在GitLab的公开库中,而且通过Twitter公开了链接,可能引起了太大的骚动,Kottmann随后删除了Twitter文件链接,不过其GitLab库依然可公开存取部份文件。 安全工程师Bank Security纪录了受害者名单,显示包含了金融、零售、电子商务、制造业及科技产业,总计有53家企业,而包括联想、Adobe、Amd、微软、Motorola、高通、联发科等科技业者。 Bank Security指出,当中至少有两个金融领域公司,一个专门开发银行软件的西班牙公司Mercury TFS,另一奈及利亚的支付架构建设商TeamApt。此外,有些文件内容还藏有企业凭证。 Kottmann向BleepingComputer透露,只要有人合法提出移除请求,他会遵循,也很愿意提供信息让这些公司强化它们的安全架构。 擅于寻找配置失误的Kottmann经常出现在媒体上,今年他曾向ZDNet爆料,宣称他在汽车大厂Mercedez-Benz母公司Daimler AG部署的GitLab服务器上,发现一个配置问题

分布式架构工程(敏捷开发)

妖精的绣舞 提交于 2020-08-05 04:35:27
传送门: https://gitee.com/hackerjj/java 架构 GitLab 项目群 依照下列顺序创建即可 jcloud-dependencies: 通用依赖版本控制:依赖于一个二方库群时,必须定义一个统一的版本变量,避免版本号不一致。 jcloud-parent: 通用父工程:产品线下的所有项目必须指定一个父工程项目,以复用 POM 的 `` 配置 jcloud-commons: 通用类库工具类:如 HuTool 等开源类库依赖或二次开发等 jcloud-generator: 通用代码生成器:如 MyBatis Plus 等其它开源类库或自定义代码生成器 jcloud-repository: 数据访问层:与底层 MySQL、 Oracle、 Hbase 等进行数据交互。 jcloud-business: 业务逻辑层:相对具体的业务逻辑服务层。 jcloud-manager: 通用处理层:对第三方平台封装的层,预处理返回结果及转化异常信息。对业务逻辑层通用能力的下沉,如缓存方案、 中间件通用处理。与数据访问层交互,对多个数据访问层的组合复用。 jcloud-controller: 请求处理层:主要是对访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。 jcloud-apiserver: 开放接口网关层:可直接封装 Service 方法暴露成 RPC

我们是如何做DevOps的?

拥有回忆 提交于 2020-08-05 02:47:36
一、DevOps的理解 DevOps的概念理解 DevOps 的概念在软件开发行业中逐渐流行起来。越来越多的团队希望实现产品的敏捷开发,DevOps 使一切成为可能。有了 DevOps ,团队可以定期发布代码、自动化部署、并将持续集成 / 持续交付作为发布过程的一部分。 一句话概括就是提高生产力,快速交付! 二、引入DevOps的背景 2.1 福禄技术栈介绍 后端开发框架:基于C#的.netCore和Java的SpringCloud,少部分项目采用python和go开发 前端开发框架:vue、react 服务部署:前端站点基于ECS的nginx部署 ,后端服务统一部署在kubernetes上 代码仓库:gitlab 项目环境:目前有6套,开发、测试、压测、集成、PRE和生产 2.2 后端服务的CICD现状 福禄后端CICD流程 CICD 流程说明 每一次的代码push,根据创建的分支,根据在gitlab的CICD文件gitlab.yml定义构建步骤,触发runner,从单元测试、通过dockerfile进行编译和生成镜像版本、将新镜像部署到K8S生成pod,然后触发接口自动化测试任务的执行 !!#00ffff 好像缺了点什么 !! 初次部署应用到kubernetes怎么做的? 服务的configmap在哪里维护的? 每个服务的gitlab.yml文件都不一样,如何维护的?