在之前的文章中,我们介绍了使用gitlab ci构建Android包的方法.今天我们介绍使用gitlab ci如何构建IOS包,并且在打包成功或者失败时,如何将消息通知到企业微信. 如果对gitlab ci还不熟悉的,可以参考之前的文章使用gitlab ci构建Android包,这篇文章我们主要涉及三个知识点: IOS开发者证书. IOS打包命令. 如何往企业微信发消息. IOS开发者证书 IOS打包离不开开发者证书,因此首先我们需要先搞清楚IOS的证书是怎么回事,它是怎么工作的. 为什么需要证…
最近公司在做移动端的项目,自然而然的需要搭建打包的环境.本来计划用Jenkins的,但是发现在gitlab上创建完项目后,提示去配置pipeline,于是决定用gitlab去尝试下,毕竟我觉得Jenkins的配置过于复杂了. gitlab-runner 在gitlab中,gitlab-runner相当于Jenkins中的slave的概念,所以首先需要给项目配置一个runner.gitlab-runner分为三种:Shared Runner.Group Runner.Specific Runner…
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS等: 关于GitLab CI 在<体验SpringBoot(2.3)应用制作Docker镜像(官方方案)>一文中,咱们掌握了SpringBoot官方推荐的镜像构建方案,接下来要体验的是GitLab的CI能力,它负责把代码变成私有仓库中的镜像,咱们可以专心编码了: GitLab CI的作用如下图,开…
1.背景 我们很多时候,我们在服务器上运行软件,发生一些业务异常,需要给我们发送一个及时的提醒,或者是使用一些耗时软件,比如抢车票,抢课,刷优惠券当任务运行成功以后,也需要及时的发送消息给自己 ,告诉这个状态.可选用的方案有:短信.邮件等,短信接入复杂,并且需要付费 :邮件接入也不简单,而且接收可能不及时,查看起来也不是太友好. 2.WxPusher微信推送服务 那有没有好的解决方案呢?答案是有的,就是直接发送到自己的微信上,消息及时,方便查看,并且还免费.下面就给大家介绍一下WxPusher微…
最近给公司测试组内部开发一个记账小工具,当账目出现问题的时候需要发送消息通知大家,前期主要采用的QQ发送通知消息,但是有一天突然无法连接到QQ服务器,运维的同学建议采用微信的方式对接然后进行告警,所以这里采用微信的企业号进行消息发送,微信企业号目前已经变更为企业微信,所以需要注册一个企业微信: 一.获取企业微信接口文档,实现消息发送: 1.采用创建发送应用消息,企业微信接口文档:https://work.weixin.qq.com/api/doc#90000/90135/90664: 企业微信提…
目前在学习这一块的内容,但是可能每个人环境都不同,导致找不到一篇博客能够完全操作下来没有错误的,所以自己也写一下,记录一下整个搭建的过程. Docker 的安装这里就不赘述了,基本上几行命令都可以了,不会的可以搜一下其他的博客.我本地使用的环境如下: Ubuntu16.04 Docker19.03 管理工具:IDEA Docker 插件 下面详细讲一下部署的过程. 前言 阅读这篇博客的朋友关注点应该在 Gitlab CI 上,因此假设大家对 Docker 和 Gitlab 本身是有一定的了解,掌…
K8s 版本:1.20.6 GitLab CI 最大的作用是管理各个项目的构建状态.因此,运行构建任务这种浪费资源的事情交给一个独立的 Gitlab Runner 来做就会好很多,而且 Gitlab Runner 可以安装到不同的机器上 只要在项目中添加一个.gitlab-ci.yml文件,然后添加一个 Runner ,即可进行持续集成 官方文档:Install GitLab Runner | GitLab 1. 介绍 Pipeline:相当于一次构建任务,里面可以包含多个流程,如安装依赖.运行…
简介 从 Gitlab 8.0 开始,Gitlab CI 就已经集成在 Gitlab 中,我们只要在项目中添加一个.gitlab-ci.yml文件,然后添加一个Runner,即可进行持续集成.在介绍 Gitlab CI 之前,我们先看看一些 Gitlab CI 的一些相关概念. Pipeline 一次 Pipeline 其实相当于一次构建任务,里面可以包含很多个流程,如安装依赖.运行测试.编译.部署测试服务器.部署生产服务器等流程.任何提交或者 Merge Request 的合并都可以触发 Pi…
结合文章:1. 在 Kubernetes 上安装 Gitlab ,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13852854.html 总结: 结合开头的文章部署Gitlab,在这个文章汇中只需要处理token就行了,其他的不用动. 总共需要五个yaml文件,下载地址:https://files.cnblogs.com/files/sanduzxcvbnm/k8s-gitlab-ci.zip 简介 从 Gitlab 8.0 开始,Gitlab CI 就已…
概述:推送过程简介 一.App启动过程中,使用UIApplication::registerForRemoteNotificationTypes函数与苹果的APNS服务器通信,发出注册远程推送的申请.若注册成功,回调函数application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 会被触发,App可以得到deviceToken,该tok…
前言 更好熟悉掌握at.crontab定时自定义任务用法. 实验at.crontab定时自定义任务运用场景案例. 作业.笔记需要. 定时计划任务相关命令及配置文件简要说明 at 工具 由包 at 提供 依赖与atd服务,需要启动才能实现at任务 at队列存放在/var/spool/at目录中,ubuntu存放在/var/spool/cron/atjobs目录下 执行任务时PATH变量的值和当前定义任务的用户身份一致 at格式 at [option] TIME 常见参数: -m :当指定的任务被完…
在应用图标右上角添加消息数提醒,可以很方便的告知用户该应用中有无新消息需要处理.下面用xcode 7.3.1来简要说明一下如何用swift语言进行此功能的实现. 1.修改 AppDelegate.swift // // AppDelegate.swift // RainbowDemo // // Created by Jackwang on 16/8/17. // Copyright © 2016年 Jackwang . All rights reserved. // import UIKit…
一.获取access_token access_token是接口调用的凭证,目前有效期为两个小时,需要定时刷新,重复获取将导致上次获取的access_token失效.(注:不建议每次调用需要access_token的接口,都去重新获取access_token,会导致失败) 获取access_token的接口地址: https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=A…
1.创建redis监控项[配置]-[主机]-[监控项]-创建监控项,监控6379端口(注意关闭防火墙或者开启防火墙端口6379) redis配置文件设置允许任何地址监听: 添加监控项 2.创建redis触发器,[配置]-[主机]-[触发器]-创建触发器,端口为0时触发(端口为1表示正常,端口为0表示断开) 主机有一个监控项和触发器 3.创建动作触发器,[配置]-[动作]-右上角事件源,下拉选择触发器-创建动作 redis 挂掉后发送信息给微信,执行远程命令重启redis 注意:zabbix远程命…
这篇主要针对小程序进行演示,既然是发送消息,那么就有三个问题.发送什么内容,给谁发送,怎么发送!往下一条一条解决. 发送什么消息内容 - 通过微信公众号平台 选择对应的消息模板 选择以后在我的模板里面就出现了. 发给谁 既然是发送信息,那么必须有收件人的地址,在微信生态里面,只要是通过微信登录用户都会根据不同小程序分配一个唯一的openid(每个小程序都不一样,但是在当前小程序是唯一的).因为我的系统是使用手机号码注册的,并没有使用微信登录,那么如果要得到微信分配的openid就需要在注册时候使…
基于GitLab CI搭建Golang自动构建环境 Golang发布遇到的问题 对于golang的发布,之前一直没有一套规范的发布流程,来看看之前发布流程: 方案一 开发者本地环境需要将环境变量文件改为正式环境配置 编译成可执行文件 发送给运维 (运维)将文件覆盖为线上 (运维)重启进程 (可谓“又臭又长”) 方案二 开发者讲代码commit到gitlab上交给运维同学 (运维)pull代码 (运维)编译成可执行文件 (运维)覆盖线上文件 (运维)重启进程 这种对于运维属于重度依赖,而运维同学又…
好久不见,最近 flow.ci 针对 iOS 项目重新设计了创建项目的流程,较之前相比有 4 个变化: 在创建项目阶段加入项目有效性检测,大大减少了构建失败率,有问题早发现! 在创建项目阶段加入项目配置功能,比如 iOS 用户可以灵活切换构建需要使用的 Scheme ! 创建项目流程 UI & UE 整体提升,单页面一览无余!! 单元测试.产物找不到?试试新版的构建详情页! 更多优化请在新版体验,快来尝鲜吧!如有问题可通过「在线消息」快速反馈,我们会尽快回复. 这期的 CI Weekly 整理了…
CI / CD方法简介 软件开发的持续集成基于自动执行脚本,以最大限度地减少在开发应用程序时引入错误的可能性.从新代码的开发到部署,它们需要较少的人为干预甚至根本不需要干预. 它涉及在每次小迭代中不断构建,测试和部署代码更改,从而减少基于有缺陷或失败的先前版本开发新代码的风险. 这有三种主要方法,每种方法都根据最适合您的策略进行应用. 持续集成(Continuous Integration, 简称CI) 考虑一个应用程序,其代码存储在GitLab中的Git存储库中.开发人员每天多次推送代码更改.…
目录 GitLab CI流水线配置文件.gitlab-ci.yml详解 实验环境 GitLab CI介绍 .gitlab-ci.yml 配置参数 参数详解 script image services before_script after_script stages stage only 和 except only 和 except 高级用法 only:refs/except:refs only:kubernetes/except:kubernetes only:variables/except…
相关文章: Ubuntu Docker 简单安装 GitLab 劈荆斩棘:Gitlab 部署 CI 持续集成 目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runner,搭建 GitLab CI 持续集成环境. 服务器版本 Ubuntu 16.04 LTS. 安装命令: $ docker run -d --name gitlab-runner --restart always \ -v /srv/gitlab-runner/config:/etc/gitlab-…
"微服务"这个概念近两年非常热,正在慢慢改变 DevOps 的思路.微服务架构把一个庞大的业务系统拆解开来,每一个组件变得更加独立自治.松耦合.但是,同时也伴随着部署单元粒度越来越小,对交付效率要求也越来越高.一套高效.灵活.高可用的 CI/CD 系统就很关键.所以说 CI/CD 是微服务架构下必不可少的一部分. 这方面有很多的开源项目和工具,比如 Jenkins.Github 默认支持的 Travis 以及本文主要介绍的GitLab CI. 那么"当谈到 GitLab CI…
一.环境准备 首先需要有一台 GitLab 服务器,然后需要有个项目:这里示例项目以 Spring Boot 项目为例,然后最好有一台专门用来 Build 的机器,实际生产中如果 Build 任务不频繁可适当用一些业务机器进行 Build:本文示例所有组件将采用 Docker 启动, GitLab HA 等不在本文阐述范围内 Docker Version : 1.13.1 GitLab Version : 10.1.4-ce.0 GitLab Runner Version : 10.1.0 Gi…
简介 从 GitLab 8.0 开始,GitLab CI 就已经集成在 GitLab 中,我们只要在项目中添加一个 .gitlab-ci.yml 文件,然后添加一个 Runner,即可进行持续集成. 而且随着 GitLab 的升级,GitLab CI 变得越来越强大,本文将介绍如何使用 GitLab CI 进行持续集成. 一些概念 在介绍 GitLab CI 之前,我们先看看一些持续集成相关的概念. Pipeline 一次 Pipeline 其实相当于一次构建任务,里面可以包含多个流程,如安装依…
简介 从 GitLab 8.0 开始,GitLab CI 就已经集成在 GitLab 中,我们只要在项目中添加一个 .gitlab-ci.yml 文件,然后添加一个 Runner,即可进行持续集成. 而且随着 GitLab 的升级,GitLab CI 变得越来越强大,本文将介绍如何使用 GitLab CI 进行持续集成. 一些概念 在介绍 GitLab CI 之前,我们先看看一些持续集成相关的概念. Pipeline 一次 Pipeline 其实相当于一次构建任务,里面可以包含多个流程,如安装依…
使用GitLab CI + Capistrano部署CakePHP应用程序 摘要:本文描述了如使用GitLab CI + Capistrano部署CakePHP应用程序. 目录 1. 问题2. 解决方法3. 安装和设置GitLab CI Runner4. 安装和配置Capistrano    4.1 安装Ruby    4.2 安装Capistrano    4.3 在项目中配置Capistrano    4.4 用户的验证和授权    4.5 其它工具和设置5. 部署6. 小结A. 参考资料…
说明 这里先介绍下两个东西 CI/CD.GitLab Runner,当然在此之前你需要对 git 有所了解,关于 git 这里不做说明,可以自行百度. 首先介绍 CI/CD :随着我们开发方式的转变,程序的发布变得非常频繁,而其这些发布操作都是重复的.CI/CD 就是为了使这些操作能变得自动化,那它是怎么实现自动化的呢?其实它做的就是当我们使用 git push(推送)代码的时候会执行 任务(task) 而这个 任务 里面其实又包含多个 作业(job),如对代码进行单元测试.部署项目等等,这些…
转自 https://meigit.readthedocs.io/en/latest/configure_gitlab_i18n_and_create_gitlab_ci_with_gitlab_runner.html 目录 GitLab的汉化与CI持续集成gitlab-runner的配置 实验环境 GitLab环境检查 GitLab汉化 配置CI/CD 什么是GitLab Runner 安装GitLab Runner运行器 注册GitLab Runner 由于多次注册,Runner ID不是从…
前提条件: 1.Docker安装Gitlab,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13814730.html 2.Docker安装Gitlab-runner,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13815594.html 在Gitlab上创建项目 1.新建项目 2.选择springboot模板创建 3.创建项目 创建好项目后查看克隆的地址 我这边是根据前提条件来创建的,所以使用的克隆地址中会有端口号…
转载自:https://cloud.tencent.com/developer/article/1010595 1.Gitlab CI介绍 CI:持续集成,我们通常使用CI来做一些自动化工作,比如程序的打包,单元测试,部署等,这种构建方式避免了打包环境差异引起的错误,提高了工作效率.Gitlab-CI是Gitlab官方提供的持续集成服务,我们可以在仓库的根目录下新建.gitlab-ci.yml文件,自己定义持续集成流程模板,并且在Gitlab中配置runner,在之后的每次提交合并中将会触发构建…
前言:因为找了B站内推,测试开发,正好知道内部使用GitLab做自动化测试,所以简单学了一下,有错误的地方请指正. 入门 初始化 cp: 无法获取'/root/node-v12.9.0-linux-x64' 的文件状态(stat): 权限不够 原因:源地址或目标地址有问题 E212:无法打开并写入文件 原因:权限不够;解决:从root权限终端打开sudo su 安装启动Nginx: # 启动 nginx # 停止 nginx stop # 安全退出 nginx -s quit # 重新加载配置文…