站长家园(原代码之家)(www.adminjie.com)网站源码,微信源码,游戏源码,商业源码分享平台。
当前位置:网站首页 技术文章 网络编程 正文

聊聊怎么利用Angular+Jenkins展示构建版本

时间:2022-04-15 [网络编程]作者:fabuyuan 浏览:8 次

本篇文章带大家继续angular的学习,了解一下怎么使用Jenkins 结合 Angular 展示构建版本,希望对大家有所帮助!

聊聊怎么利用Angular+Jenkins展示构建版本  2

在 Angular 结合 Git Commit 版本处理 文末我们留下了疑问?️ 下面将问题具体化

结合 jenkins 构建,我们能够获取到构建的信息,比如构建号,回填到页面否?【相关教程推荐:《angular教程》】

如下:

聊聊怎么利用Angular+Jenkins展示构建版本  2

Uha,我们在原基础上修改下。

根目录添加文件 build_info.json

{ }

你没看错,build_info.json 的内容就是 {}

build_info.json 文件是给 Jenkinsfile 构建的时候生成的。

具体的实现思路如下:

  • 在构建的过程中执行 Jenkinsfile 生成 build_info.json 文件

  • 在对项目打包的时候,针对不同的环境考虑是否获取 build_info.json 文件的内容

为了方便演示,这里的环境只考虑生产环境

上面的步骤简单两步,最重要的一点是如何写入 build_info.json 文件内容

如果你不熟悉 Jenkinsfile 相关内容,请结合Jenkins Pipeline 结合 Gitlab 实现 Node 项目自动构建文章来阅读。此时你关注的重点是文章 Jenkinsfile 的内容,如下:

pipeline {
    agent any
    
    tools { 
        nodejs "nodejs" 
    }
    
    stages {
        stage('Dependency') {
            steps {
                sh 'npm install'
            }
        }
        # 我们在此添加过一个 stage,见下面?
        stage('Build') { 
            steps {
                sh 'npm run clean' 
                sh 'npm run build' 
            }
        }
    }
}

我们添加过一个 stage 来完成我们对 build_info.json 文件的写入。

stage('Version') {
  steps {
    script {
      def amap = 
        'build_number': BUILD_NUMBER, # 构建号
        'job_name': JOB_NAME # 任务名称
      ]
      
      # 写入文件
      writeJSON file: WORKSPACE+'build_info.json', json: amap # WORKSPACE 根目录
    }
  }
}

Yeah,思路还可以... Right?

下面进入第二步骤:读取 build_info.json 的内容,我截取 version.js 生产环境那部分的内容:

// 引入生成的 build_info.json 文件
let buildInfo = require('./build_info.json');

if(config.env === 'production') { 
    // 获取构建的版本号,否则获取默认的版本
    versionObj.version = buildInfo.build_number || config.version 
}

完成上面的文件之后,你就可以发布到相关的环境,顺利的话,在页面上你可以看到相关的版本号了。

这篇文章跟 angular 的关联不是很大,只是用来打配合 jenkins。下一篇文章是关于使用 Angular 进行 spa 开发的内容,敬请期待。

本文转载自:https://juejin.cn/post/7081642981890981895

作者:Jimmy

更多编程相关知识,请访问:编程视频!!

以上就是聊聊怎么利用Angular+Jenkins展示构建版本的详细内容,更多请关注站长家园其它相关文章!

本文标签:  AngularJenkins构建版本

转载请注明来源:聊聊怎么利用Angular+Jenkins展示构建版本

本文永久链接地址:https://www.adminjie.com/post/11179.html

免责声明:
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

附:
二○○二年一月一日《计算机软件保护条例》第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!鉴于此,也希望大家按此说明研究软件!

版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的部分源码下载文件为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,若有侵犯你的权益请:提交版权证明文件到邮箱 2225329873#qq.com(#换为@) 站长会进行审查之后,情况属实的会在三个工作日内为您删除。

  • 站长家园(原代码之家)会员升级
  • 最新文章
    • 完全掌握java之String类

      完全掌握java之String类

      本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于string类的相关问题,包括了字符串的常量池、字符串的不可变性等等相关内容,下面一起来看一下,希...

    • 简单学习Python字符和列表(实例详解)

      简单学习Python字符和列表(实例详解)

      本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于字符和列表的相关问题,包括了字符串的输入输出、列表循环遍历、列表的增删改查以及列表的嵌套等等内...

    • 图文解析Redis线程模型

      图文解析Redis线程模型

      本篇文章给大家带来了关于Redis的相关知识,其中主要介绍了关于线程模型的相关问题,Redis它是一个单线程的,下面就一起来看一下,希望对大家有帮助。推荐学习:...

    • jquery怎么判断元素是否有子节点

      jquery怎么判断元素是否有子节点

      方法:1、用children()获取元素下的所有子节点,语法“元素对象.children()”,会返回一个包含子节点的jQ对象;2、用length检测子节点个数...

    • jquery对象访问的方法有哪些

      jquery对象访问的方法有哪些

      jquery对象访问的方法有:1、each(),可以遍历指定的jquery对象,语法“$.each(对象,回调函数)”;2、size(),可统计jquery对象...

    热门文章