Travis CI 自动化构建 Hexo 博客

简介: 前提条件:• 必须使用一个public的项目, 然后登陆https://travis-ci.org/ 进行关联.• 已存在一个hexo的可以跑起来的项目在你的hexo源码项目, 取出master分支中 添加配置文件.travis.yml,并推送到acc8226.github.io项目中.

前提条件:



  • 已存在一个hexo的可以跑起来的项目


在你的hexo源码项目, 取出master分支中 添加配置文件.travis.yml,并推送到acc8226.github.io项目中.


配置GH_TOKEN


在github添加Access Token,在右上角账号的settings->Personal access tokens.点击generate new token来生成新token


回到Travis官网,在设置中填入刚复制的token,取名为GH_TOKEN,这个名字需要写到下面的配置文件中.


配置GH_REF


这个家伙写在配置文件的env中


配置

install: 
- npm install
script: 
- hexo g
after_script: 
- cd ./public 
- git init 
- git config user.name "Travis-CI"
- git config user.email "Travis-CI@feipig.fun" 
- git add . 
- git commit -m "Update docs with TRAVIS-CI."
- git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:master
# safelist
branches: 
  only: 
    - master 
language: node_js
node_js: stable
git:
  depth: 1
env: 
  global: 
    # 使用https, 若使用ssh会出错
    - GH_REF: github.com/acc8226/acc8226.github.io.git


要使用https协议的仓库地址,使用ssh仓库地址会失败。


配置完成后推送到仓库中,我们就能看到网站https://acc8226.github.io/ 中在部署了。


转用 coding Pages 服务



由于 github io 服务访问慢, 所以这里选择 coding Pages 服务


在 Coding 的”个人设置”页面中找到访问令牌,新建一个新的访问令牌,这里我们选第一个权限即可,因为我们只需要为 Travis 提供基本的读写权限,这样我们会生成一个 Token,这里注意保存 Token,因为它在这里只显示这一次,我们将 Token 填写到

Travis CI 的后台. 取名为CODING_TOKEN


coding利用令牌访问代码仓库


参加帮助文档


https://help.coding.net/docs/member/tokens.html


在设置 Scope 权限选项中勾选 project:depot 后,可以用于访问代码仓库。

git clone https://testuser:90ed7a169febb12d17e14aa5531827476f6b3a4e@test.coding.net/test/testRepo.git


由此可知需要额外配置

env: 
  global: 
    # Coding Pages
    - USER_NAME: aleevz
    - CODING_REF: git.dev.tencent.com/aleevz/aleevz.coding.me.git


解决时区不统一的问题

before_install:
- export TZ='Asia/Shanghai'  # 解决时区不统一的问题


代码构建后传到coding的.travis.yml

before_install:
- export TZ='Asia/Shanghai'  # 解决时区不统一的问题
install: 
- npm install
script: 
- hexo g
after_script: 
- cd ./public 
- git init 
- git config user.name "likai-Travis"
- git config user.email "likai@feipig.fun" 
- git add . 
- git commit -m "Update with TRAVIS-CI."
#- git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:master
- git push --force --quiet "https://${USER_NAME}:${CODING_TOKEN}@${CODING_REF}" master:master
# safelist
branches: 
  only: 
    - master 
language: node_js
node_js: stable
git:
  depth: 1
env: 
  global: 
    # 使用https, 若使用ssh会出错
    # - GH_REF: github.com/acc8226/acc8226.github.io.git
    # Coding Pages, 在这里不使用githubio, 是因为这个访问的速度比 github 快
    # git clone https://testuser:90ed7a169febb12d17e14aa5531827476f6b3a4e@test.coding.net/test/testRepo.git
    # 1d87fd91b6c6e01ed00422267a120a7775fdef71
    - USER_NAME: fhjWqJkjxt
    - CODING_REF: e.coding.net/aleevz/aleevz.coding.me.git


参考



travis-ci 官网


https://travis-ci.org/


https://blog.csdn.net/qq_36759224/article/details/100879609


基于Travis CI实现 Hexo 在 Github 和 Coding 的同步部署


目录
相关文章
|
3月前
|
机器学习/深度学习 人工智能 运维
构建高效运维体系:从自动化到智能化的演进
本文探讨了如何通过自动化和智能化手段,提升IT运维效率与质量。首先介绍了自动化在简化操作、减少错误中的作用;然后阐述了智能化技术如AI在预测故障、优化资源中的应用;最后讨论了如何构建一个既自动化又智能的运维体系,以实现高效、稳定和安全的IT环境。
88 4
|
2月前
|
监控 jenkins 测试技术
自动化测试框架的构建与实践
【10月更文挑战第40天】在软件开发周期中,测试环节扮演着至关重要的角色。本文将引导你了解如何构建一个高效的自动化测试框架,并深入探讨其设计原则、实现方法及维护策略。通过实际代码示例和清晰的步骤说明,我们将一起探索如何确保软件质量,同时提升开发效率。
54 1
|
2月前
|
测试技术 开发者 Python
自动化测试之美:从零构建你的软件质量防线
【10月更文挑战第34天】在数字化时代的浪潮中,软件成为我们生活和工作不可或缺的一部分。然而,随着软件复杂性的增加,如何保证其质量和稳定性成为开发者面临的一大挑战。自动化测试,作为现代软件开发过程中的关键实践,不仅提高了测试效率,还确保了软件产品的质量。本文将深入浅出地介绍自动化测试的概念、重要性以及实施步骤,带领读者从零基础开始,一步步构建起属于自己的软件质量防线。通过具体实例,我们将探索如何有效地设计和执行自动化测试脚本,最终实现软件开发流程的优化和产品质量的提升。无论你是软件开发新手,还是希望提高项目质量的资深开发者,这篇文章都将为你提供宝贵的指导和启示。
|
4天前
|
人工智能
LangGraph:构建多代理动态工作流的开源框架,支持人工干预、循环、持久性等复杂工作流自动化
LangGraph 是一个基于图结构的开源框架,专为构建状态化、多代理系统设计,支持循环、持久性和人工干预,适用于复杂的工作流自动化。
33 12
LangGraph:构建多代理动态工作流的开源框架,支持人工干预、循环、持久性等复杂工作流自动化
|
1月前
|
人工智能 自然语言处理 JavaScript
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
Agent-E 是一个基于 AutoGen 代理框架构建的智能自动化系统,专注于浏览器内的自动化操作。它能够执行多种复杂任务,如填写表单、搜索和排序电商产品、定位网页内容等,从而提高在线效率,减少重复劳动。本文将详细介绍 Agent-E 的功能、技术原理以及如何运行该系统。
86 5
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
|
20天前
|
Serverless 决策智能 UED
构建全天候自动化智能导购助手:从部署者的视角审视Multi-Agent架构解决方案
在构建基于多代理系统(Multi-Agent System, MAS)的智能导购助手过程中,作为部署者,我体验到了从初步接触到深入理解再到实际应用的一系列步骤。整个部署过程得到了充分的引导和支持,文档详尽全面,使得部署顺利完成,未遇到明显的报错或异常情况。尽管初次尝试时对某些复杂配置环节需反复确认,但整体流程顺畅。
|
25天前
|
缓存 监控 安全
公司电脑监控软件的 Gradle 构建自动化优势
在数字化办公环境中,公司电脑监控软件面临代码更新频繁、依赖管理和构建复杂等挑战。Gradle 构建自动化工具以其强大的依赖管理、灵活的构建脚本定制及高效的构建缓存与增量构建特性,显著提升了软件开发效率和质量,支持软件的持续更新与优化,满足企业对员工电脑使用情况的监控与管理需求。
35 3
|
1月前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
60 9
|
1月前
|
运维 jenkins Java
Jenkins 自动化局域网管控软件构建与部署流程
在企业局域网管理中,Jenkins 作为自动化工具,通过配置源码管理、构建及部署步骤,实现了高效、稳定的软件开发与部署流程,显著提升局域网管控软件的开发与运维效率。
42 5
|
2月前
|
jenkins 测试技术 持续交付
自动化测试框架的构建与优化:提升软件交付效率的关键####
本文深入探讨了自动化测试框架的核心价值,通过对比传统手工测试方法的局限性,揭示了自动化测试在现代软件开发生命周期中的重要性。不同于常规摘要仅概述内容,本部分强调了自动化测试如何显著提高测试覆盖率、缩短测试周期、降低人力成本,并促进持续集成/持续部署(CI/CD)流程的实施,最终实现软件质量和开发效率的双重飞跃。通过具体案例分析,展示了从零开始构建自动化测试框架的策略与最佳实践,包括选择合适的工具、设计高效的测试用例结构、以及如何进行性能调优等关键步骤。此外,还讨论了在实施过程中可能遇到的挑战及应对策略,为读者提供了一套可操作的优化指南。 ####