精华内容
下载资源
问答
  • 自动化构建

    2015-07-06 10:02:05
    GNU autotools:libtool CMake:mysql Scons:mongodb

    GNU autotools:libtool

    CMake:mysql

    Scons:mongodb

    展开全文
  • 【Jenkins自动化部署】监控服务自动化构建

    千次阅读 多人点赞 2020-09-09 10:34:06
    Jenkins 系列会从 Ubuntu的服务端部署、 Linux节点的Python服务自动化构建、 Windows节点Python服务自动化构建、 Vue服务自动化构建、 监控服务自动化构建、 用户权限控制 几个方面进行介绍

    系列文章目录

    第一章 Ubuntu部署Jenkins服务端
    第二章 Linux节点的Python服务自动化构建
    第三章 Windows节点Python服务自动化构建
    第四章 Vue服务自动化打包构建
    第五章 监控服务自动化构建



    监控服务自动化构建

    • 配置丢弃旧的构建
    • 配置限制运行节点
    • 设置定时构建触发器
    • 选择Http Request构建 (需要 HTTP Request Plugin 插件)
    • 配置异常邮件通知列表 (需要
      Email Extension Plugin 插件)

    定时构建

    定时构建语法

    * * * * *
    
    第一颗*表示分钟,取值0~59
    第二颗*表示小时,取值0~23
    第三颗*表示一个月的第几天,取值1~31
    第四颗*表示第几月,取值1~12
    第五颗*表示一周中的第几天,取值0~7,其中0和7代表的都是周日
    

    示例表示每十分钟构建一次

    在这里插入图片描述

    构建

    安装完 HTTP Request Plugin 插件后 可以在 增加构建步骤 中看到 HTTP Request 选项,每次构建时会触发一次HTTP请求。

    可以指定

    • 请求路由
    • 请求方式
    • 认证信息
    • Header
    • 请求参数
    • 上次文件
    • 请求响应

    示例是一个简单的请求,正常响应返回 OK 字符串
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    构建后操作

    这个是一个监控任务,每10分钟请求一次目标路由,正常响应OK 不走其他操作,响应异常时给用户发送邮件通知。

    收件人是多个时用空格分隔。

    在这里插入图片描述

    邮箱配置

    系统管理 -> 邮件通知 点击高级
    在这里插入图片描述
    我使用的是qq邮件,使用SMTP认证需要在发件人邮箱进行配置

    • 登录发件人邮箱
    • 邮箱设置
    • 账户
    • POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务在这里插入图片描述
    • 开启POP3/SMTP服务
    • 获取授权码在这里插入图片描述
    • 将密码填写到 使用SMTP认证 的密码栏中
    • 通过发送测试邮件测试配置
    • 查看测试邮件在这里插入图片描述

    开始构建

    如果想手动测试任务的配置,可以点击 立即构建
    在这里插入图片描述

    构建日志

    在这里插入图片描述

    展开全文
  • Jenkins 系列会从 Ubuntu的服务端部署、 Linux节点的Python服务自动化构建、 Windows节点Python服务自动化构建、 Vue服务自动化构建、 监控服务自动化构建、 用户权限控制 几个方面进行介绍

    系列文章目录

    第一章 Ubuntu部署Jenkins服务端
    第二章 Linux节点的Python服务自动化构建
    第三章 Windows节点Python服务自动化构建
    第四章 Vue服务自动化打包构建
    第五章 监控服务自动化构建



    Linux节点的Python服务自动化构建

    首先介绍下前提条件:节点服务器有Python运行环境

    Linux节点配置

    节点列表

    可以点击 构建执行状态 进入节点列表

    在这里插入图片描述
    也可以点击 系统管理节点管理 进入节点列表

    在这里插入图片描述

    节点列表

    在这里插入图片描述

    新建节点

    填写节点名称 选择固定节点 或者 复制现有节点的 配置
    在这里插入图片描述

    • 执行器数 是服务器可以同时进行构建的个数,单一服务器上的部署的项目比较多时,可以增加执行器数量来加快构建速度
    • 远程工作目录 是Jenkins远程的服务,采集器、项目工作目录都会创建在这个工作目录下
    • 用法 我选择的指定机器的任务
    • 启动方式 Launch agents via SSH 没有这个选项的查看下已安装的插件在这里插入图片描述
    • 添加服务器凭据 在这里插入图片描述

    配置好就可以 保存 并 上线节点了

    上线后的节点 就可以在点在列表中看到了

    此时登录服务器 可以看到远程工作目录下会有 如下的文件
    在这里插入图片描述

    SVN操作

    • 有权限的SVN URL 和 用户账户信息
    • 在项目服务下创建 master 目录 作为开发目录使用
    • 在项目服务下创建 release 目录 作为Tags目录使用 在下面的构建参数 svn_release 中使用
    • 创建 Tags 到 release 目录

    创建目录

    在这里插入图片描述

    创建Tags

    填写要保存的 版本名称 和 版本描述,点击 OK
    在这里插入图片描述

    创建任务

    新建任务

    新建任务 填写 任务名称 选择 构建一个自由风格的软件项目
    在这里插入图片描述

    构建参数

    构建参数我这里添加了:

    • gunicorn_path(启动FastAPI项目)
    • port 启动端口 下面的构建 shell 中有用到
    • workers 启动线程数端口 下面的构建 shell 中有用到
    • main_file 项目构建时 代码会更下在 workspace 目录下的 有任务名称命名的目录下,$JOB_NAME 是获取任务名称,这样可以方便重启时定位进程 下面的构建 shell 中有用到
    • app_name 意义不大 下面的构建 shell 中有用到
    • deploy_env 执行的操作 分为 restart start stop
    • svn_release 加载项目的 tags,展示最新的 50 tags 没有这个参数时 需要安装 Jenkins SVN 插件 下面的源码管理 URL 中有用到

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    源码管理

    源码管理这个的 SVN URL ,每次构建时会在工作目录下 更新 选择的svn_release版本对应的 源码,以实现 版本控制的 效果。
    在这里插入图片描述
    在这里插入图片描述

    构建

    在这里插入图片描述

    执行shell 分为三个情况,执行情况由构建参数 deploy_env 决定

    • start 使用gunicorn启动项目
    • restart 根据 main_file 杀死旧的进程并启动新的代码
    • stop 根据 main_file 杀死旧的进程
    • BUILD_ID=dontKillMe解决 Jenkins shell 无法后台运行的问题
    echo $deploy_env
    case $deploy_env in
    	start)
        	echo "start: $deploy_env"
            cd .. \
            && BUILD_ID=dontKillMe $gunicorn_path/gunicorn $main_file:$app_name -b 0.0.0.0:$prot  -w $workers -k uvicorn.workers.UvicornH11Worker --daemon
            ;;
        restart)
        	echo "restart: $deploy_env"
    		pid=` ps -ef|grep $main_file|grep -v "grep"|awk '{print $2}'`
            for id in $pid
            do
                kill -9 $id  
            done
            cd .. \
            && BUILD_ID=dontKillMe $gunicorn_path/gunicorn $main_file:$app_name -b 0.0.0.0:$prot  -w $workers -k uvicorn.workers.UvicornH11Worker --daemon
        	;;
        stop)
        	echo "stop: $deploy_env"
    		pid=` ps -ef|grep $main_file|grep -v "grep"|awk '{print $2}'`
            for id in $pid
            do
                kill -9 $id  
            done
    		;;
        *)
        exit
        ;;
    esac
    
    

    构建任务

    • 选择要构建的版本
    • 选择要执行的操作
    • 点击开始构建

    构建时的效果

    在这里插入图片描述

    构建日志

    执行顺序:

    • 拉取源码
    • 执行shell
    • 构建后操作(这里没有配)
      在这里插入图片描述
    展开全文
  • 说到自动化运维,我们不得不先讲讲自动化构建。在项目前期,我们每周甚至每天都要把代码包提交到开发和测试环境,然后触发人工或者自动化测试程序,如果发现了问题再等开发修复后滚动发布。在项目中期,我们可能每周...

    说到自动化运维,我们不得不先讲讲自动化构建。在项目前期,我们每周甚至每天都要把代码包提交到开发和测试环境,然后触发人工或者自动化测试程序,如果发现了问题再等开发修复后滚动发布。在项目中期,我们可能每周或每月需要将经过测试的代码包发布到生产环境,然后进行功能验证,直接交给用户使用。在自动化构建没有流行的时候,我们这些发布新代码包的工作,都需要人工完成,不仅效率低还很容易出错。

    然而这几年随着dev ops/ai ops等概念的流行,每个公司都在实践或者准备实践dev ops,自动化构建就属于dev ops的重要部分。笔者认为这几年自动化构建有多种技术实现方式,对于中小型项目,服务器几百台而言,github+maven+jenkins+ansible/ansible tower足够完成自动化构建的任务。简单地说,我们可以实现一键发布,只要收一收邮件或者看看发布日志就结束了,边喝茶边等结果,悠哉游哉。​接下来我先分别大概介绍下这些自动化构需要的技术或者工具。

    github想必凡是IT行业从业人员听过或者使用过,甚至开发人员在重度使用,他也是大家俗称的全球最大的同性交友网站,哈哈哈!引用下百度百科对github的介绍。作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。

    maven估计只有开发人员听过,他主要完成java项目的项目构建管理、项目依赖管理、软件项目持续集成、版本管理等等。​比较正规的开发项目经常会用到该工具,对于运维人员,尤其是准备或者已经在做dev ops的同学来说,最好也熟悉下。

    Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。jenkins算是持续集成的核心平台了。

    ansible是一个开源的项目,目前在github很流行,由于他只要被管理机器是安装了python的Linux系统就可以,目前主流的Linux都自带了python,例如Redhat6-7,CentOS6-7等等,所以无需在被管机器安装任何Agent就可以直接ansible对被管理机器进行操作。常见的发布任务都支持,代码包分发下载,配置修改,服务重启,甚至DB的sql操作都可以完成,凡是发布任务几乎无所不能。ansible 是基于python实现的,虽然效率不如c/c++高,但是使用起来真的很方便。

    ansible tower是一个商业项目,目前已经被Redhat收购,是被封装过的ansible平台,以安全、规范著称,有钱的公司都在花钱使用他,如果IT比较穷可以先不用。

    今天就先讲到这里,后续再细讲自动化构建的具体内容。​谢谢!

    展开全文
  • Jenkins 系列会从 Ubuntu的服务端部署、 Linux节点的Python服务自动化构建、 Windows节点Python服务自动化构建、 Vue服务自动化构建、 监控服务自动化构建、 用户权限控制 几个方面进行介绍
  • 自动化构建-概念篇

    万次阅读 2020-08-10 16:25:42
    自动化构建是前端工程化中的一个非常重要的组成部分。那再具体学习之前, 那我们先来解读一下这一个开发行业当中经常提及的常见概念。 自动化 实际上指的就是我们通过机器去代替手工完成一些工作 构建 你可以把它...
  • 第十三章 Jenkins 自动化构建13、 jenkins 自动化构建13.1 构建 maven 项目 docker 镜像13.1.1 创建 maven 工程 13.1.2 添加 docker-maven 插件 13.1.3 在 jenkins 中构建一个 maven 项目在 Jenkins 首页选择“新建...
  • 但是描述的自动化构建原理非常的透彻,所以我在阅读的同时把它记录下来,希望能帮到需要这部分内容的朋友们. 项目自动化 自动化的好处  在项目没有自动化的时候,虽然IDE给我们做了很多的事情,但是代码的...
  • 【IT168 评论】自动化构建工具是devops,sysadmins等开发人员的重要工具。它只是脚本或自动化将源代码编译成二进制的过程。Sysadmins可以使用构建工具来管理和更新配置文件。以下是与Linux或类Unix系统上自动构建...
  • 前端自动化构建-为什么使用前端自动化构建以及gulp简介 一开始接触到这个东西,真的是不知道是什么样的一个概念,所以也在网上看了一一些资料,理解一下。 1. 前端开发存在的问题 开发慢 (1) ...
  • 前端自动化构建工具介绍

    万次阅读 2019-05-15 16:37:07
    前端自动化构建工具有: Bower,Gulp,Grunt,node,yeoman。。。 自动化构建是作为前端工程化中重要的部分,承担着若干需要解决的环节。包括流程管理、版本管理、资源管理、组件化、脚手架工具等。 流程管理 完整的...
  • 自动化构建-Apache Ant

    2017-04-17 21:46:17
    自动化构建
  • Jenkins与自动化构建

    2019-11-20 08:32:20
    Jenkins与自动化构建测试自动化构建定时构建(AUTOSMOKETEST)手动构建(SMOKE-TEST) 测试自动化构建 jenkins构建 自动化集成分为两部分:定时构建、手动构建 定时构建(AUTOSMOKETEST) 定时构建仅适用于测试环境...
  • 前端自动化构建工具合集之gulp

    千人学习 2017-01-31 23:43:32
    Gulp自动化构建系统,使用node.js串流让构建更的组合,利用外挂(plugins)使应用更灵活,简单的四个命令,组合起gulp强大的构建系统。通过代码优于配置的策略,Gulp 让简单的任务简单,复杂的任务可管理。通过少的 ...
  • 第二章 Linux节点的Python服务自动化构建 第三章 Windows节点Python服务自动化构建 第四章 Vue服务自动化打包构建 第五章 监控服务自动化构建 文章目录系列文章目录前言一、Config File Provider Plugin二、使用...
  • 本套视频主要讲解当前开发中最流行的三种自动化构建工具: Grunt, Gulp, webpack。从理解什么是构建工具,为什么要用构建工具,到如何去使用构建工具。 学习本套视频之前 建议先学习 JS 模块化。
  • 自动化构建工具

    2016-11-16 09:29:59
    Gulp用自动化构建工具增强你的工作流程!
  • 自动化构建一、自动化构建简介二、使用NPM Scripts实现自动化构建2.1、分解流程2.2、整体流程三、总结 一、自动化构建简介 自动化:指的就是通过机器去代替手工去完成一些工作 构建:可以理解成转换,就是把一些东西...
  • 利用Jenkins实现Unity自动化构建

    千次阅读 2019-12-31 12:23:04
    自动自动化构建已经成为了IT行业的标配,尤其是游戏行业,一些顶级公司的高级岗位甚至知名要求会自动化构建, 足以说明会这个技能是多么重要。 系列文章介绍 1、什么是Jenkins,为什么要用它 维基百科是这样定义的...
  • gulp自动化构建工具

    千次阅读 2021-01-11 16:50:32
    gulp自动化构建工具 gulp的使用 1.准备工作 (1)安装node环境 (2)使用全局安装gulp npm i gulp-cli -g (3)创建项目目录 (4)进入工作目录,执行npm init -y初始化项目,会创建一个package.json的文件,这个...
  • 使用Jenkins实现CocosCreator的自动化构建和发布(2)-自动化构建脚本 。。。。
  • 前端自动化构建工具

    2019-06-12 13:42:30
    一、什么是自动化 构建工具 就是工程化、自动化思想在 前端开发的 体现,将一些列流程 用代码去实现,让代码自动化地执行这一系列复杂地流程,将源代码转化成可以执行地js css html; 代码转换:将 TypeScript 编译...
  • 自动化构建genkins

    千次阅读 2018-01-25 11:26:12
    这里我要围绕着genkins讲讲自动化构建。 首先下载jenkins的jar包。 这里就有写关键词,scp(远程复制) ,ssh。 上传文件:  scp D:/user/desktop/a.txt root@www.maywidehb.com:/usr1/apache/htdocs/vot/ ...
  • 使用MyBatisplus自动化构建项目
  • Jenkins自动化构建Atlas Android项目配置

    万次阅读 2018-11-12 16:02:19
    项目中集成了Atlas,如何能够使用Jenkins完成自动化构建呢?比如生成安装包和远程组件,生成动态部署包等 1,首先在参数化构建过程中添加一些参数 2,在构建中,选择shell 3,添加shell脚本 GRADLE...
  • 前端自动化构建工具gulp
  • 一:认识自动化构建 自动化构建原理 认识任务 任务与任务流 串行任务和并行任务 成熟的构建工具 二:自动化构建原理 1):单任务构建 2):开发构建流水线 Web开发服务器 3):生产构建流水线 三:npm script实现自动化...
  • 使用Jenkins配置SpringBoot的自动化构建

    万次阅读 2017-12-06 21:56:38
    1、使用Jenkins配置Git+Maven的自动化构建 2、Jenkins部署Maven多环境项目(dev、beta、prod)的参数设置 3、使用Generic Webhook Trigger插件实现Jenkins+WebHooks(码云)持续集成 4、使用Generic Webhook ...
  • Jenkins添加Windows自动化构建方案

    千次阅读 2017-02-27 17:38:23
    Jenkins添加Windows下的C/C++自动化构建方案
  • Docker + Jenkins + Github 自动化构建maven项目 前期准备工作 Linux系统(外网可访问). docker安装 jenkins安装 maven工程使用github管理 实现目标 本地代码修改,提交到Github远程仓库,即可完成自动化部署。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,899
精华内容 8,359
关键字:

自动化构建