首页 > 其他分享 >github action的使用

github action的使用

时间:2024-10-12 16:21:21浏览次数:8  
标签:github REMOTE secrets ssh 使用 action yml

近年来,我一直在使用jenkins 来部署自己的项目,发现太耗内存了,
因此将自动化部迁的操作改为使用github action。

初始化action配置

选择一个合适的action类型,比如webpack、gitPage、Nodejs等等。

比如我这里选择了webpack,选择完成后 可以看到在仓库里多了一个文件 .github/workflows/webpack.yml

由此可以推得:“参与自动化,其实就是编写一个yml工作流文件”,所以其实你也可以不选择,纯手建,麻烦些而已。

创建一些变量

后续涉及到部署的时候,服务器的ip、密钥什么的不适合直接编码在yml中,因此 git action允许你创建一些变量在仓库的设置中定义,在yml中引用
进入setting > secrets and variables > Actions的目录下,比如设置如下三个配置项

最后在yml中使用即可

#...
 - name: Deploy to Staging server
    uses: easingthemes/ssh-deploy@main
    with:
      SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
      REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
      REMOTE_PORT: ${{ secrets.REMOTE_PORT}}

部署到私有服务器

如果你不想将项目部署到gitPage,而是想部署到自己服务器上,我们可以编写shell脚本来调用ssh+rsync等来完成部署操作!
不过已经有现有action插件 ssh-deploy供使用,简化了我们自己编码的麻烦。

需要注意的是,这个插件有点坑:

  • 一致提示没有权限 Permission denied,经过特意的学习了一番 ssh和rsync后才知道,我的问题是---作者已经提醒过的 “手动将公钥添加到authorized_keys中”

前端项目

一个较完整的前端项目配置

标签:github,REMOTE,secrets,ssh,使用,action,yml
From: https://www.cnblogs.com/dingshaohua/p/18460755

相关文章

  • Express的使用笔记3 中间件
    日志中间件//挂载会每个接口都执行这段代码app.use((req,res,next)=>{console.log(req.method,req.url,Date.now())next()//下一个中间件})2.中间件的顺序很重要如果有一个普通接口写在上面代码之前,那么就不会进入上面的函数中但是如果在接口中第二个回调......
  • 使用Lua语言破解滑块验证码的完整流程解析
    本文将使用Lua语言来破解滑块验证码,带领大家一步步实现验证码破解,包括获取图片、计算滑块移动距离、生成滑动轨迹等。下载验证码图片首先,我们要获取滑块的前景图片和背景图片。使用Lua中的socket.http来进行HTTP请求并下载图片。lualocalhttp=require("socket.ht......
  • C# 使用反射机制适配多个不同供应商提供的可统一接口化的行为(方法)
    1、定义一个接口(IMedicareControlFee)定义行为;定义一个适配器(IMedicareControlFeeAdapter)可应对多厂商(多态);usingSystem;usingSystem.Diagnostics;usingSystem.IO;usingJetSun.Infrastructure;usingJetSun.Infrastructure.Services;usingMicrosoft.Practices.Unity;usi......
  • 基于FIFO使用UART实现FPGA板与PC通信
    基于FIFO使用UART实现FPGA板与PC通信1.UART简介UART(通用异步收发传输器)是一种常用的串行通信协议,广泛用于FPGA与外部设备(如PC、传感器等)之间的通信。UART通信的核心是将并行数据转换为串行数据传输,然后在接收端再将串行数据恢复为并行数据。UART协议特点:异步通信:无需时钟......
  • python redis使用教程
    文章目录安装Redispython安装redis库使用Python连接Redis使用Redis实现缓存Redis中的常用缓存操作Redis缓存策略发布与订阅事务安装RedisRedisWindows最新安装教程(2024.10.10)python安装redis库pipinstallredisE:\Redis-x64-3.2.......
  • Doris FE内存占用持续上升直至无法使用
    环境操作系统:CentOSLinuxrelease7.6.1810(Core)Doris版本:doris-2.1.5-bin-x64Java版本:jdk1.8.0_1813台机器组成的集群所在场景做大数据项目时使用Doris的catalog将来自不同主机的多个MySQL库相同的表数据汇总到另一个主机的MySQL库,就注册了多个catalog用于连接不同的......
  • Springboot --- 使用国内的 AI 大模型 对话
    实在是不知道标题写什么了可以在评论区给个建议哈哈哈哈先用这个作为标题吧尝试使用国内给出的AI大模型做出一个可以和AI对话的网站出来使用智普AI只能在控制台中输出对应的信息不如就做一个maven的项目调用对应的APIhttps://open.bigmodel.cn/dev/api#gl......
  • cmake使用笔记
    cmake_cxx_flags常用值在CMake中,CMAKE_CXX_FLAGS是一个用于指定C++编译器选项的变量。你可以将不同的编译选项添加到这个变量中,以影响编译过程的行为。以下是一些常用的CMAKE_CXX_FLAGS值及其说明:1.优化选项1.-O0:禁用优化(默认选项)。2.-O1:启用一级优化。3.-O2:启用二......
  • 【亲测可用】矢量图形处理软件Adobe Illustrator(AI2024)软件下载安装使用win/mac
    目录AdobeAI软件简介功能特点下载与安装下载:安装步骤:AdobeAI软件简介AdobeAI,全称AdobeIllustrator,是Adobe公司开发的一款专业的矢量图形处理软件。自1987年首次发布以来,AdobeIllustrator已成为行业标准之一,广泛应用于平面设计、UI设计、插画创作、印刷出版、海报......
  • iOS 在OC 中使用 AEC 的 ECB、CTR模式加解密
    实用实测过的代码。 AEC加解密网上一大把,简单列举一下。CTR模式,搜索了好多,试用了好几个都是代码不完全参数不对造成无法正常运行加解密。不同模式引用了不同的系统库路径。 调整加解密,修改参数 operation:kCCDecrypt/ kCCEncryptAECCTR模式解密#import<CommonCryp......