GitHub Actions工作流搭建

GitHub Actions工作流搭建

GitHub Actions的官方概述如下:

GitHub Actions 是一种持续集成和持续交付 (CI/CD) 平台,可用于自动执行生成、测试和部署管道。
您可以创建工作流程来构建和测试存储库的每个拉取请求,或将合并的拉取请求部署到生产环境。

GitHub Actions 不仅仅是 DevOps,还允许您在存储库中发生其他事件时运行工作流程。
例如,您可以运行工作流程,以便在有人在您的存储库中创建新问题时自动添加相应的标签。

GitHub 提供 Linux、Windows 和 macOS
虚拟机来运行工作流程,或者您可以在自己的数据中心或云基础架构中托管自己的自托管运行器。

搭建GitHub首先需要有GitHub仓库

GitHub仓库搭建

1.新建github仓库

在这里插入图片描述

2.git连接github远程仓库

分为两种方式,https和ssh

https:方式需要先生成token在每次连接时需要输入用户密码仓库名称比较麻烦

git remote set-url origin https://<your_token>@github.com/<USERNAME>/<REPO>.git

ssh的方式

在某文件夹下git bash,填写用户名和邮箱作为标识

git config --global user.name "XXXX"  用户名标识  ---- 实际也可以填写您的github仓库的名称
git config --global user.email "xxxx@xxx.com"  邮箱标识  -------可以填写github仓库的邮箱

ssh配置密钥

输入命令后一直回车即可

ssh-keygen -t rsa  //--创建秘钥

在这里插入图片描述

在生成的.ssh目录里发现两个文件,私钥和公钥

在这里插入图片描述

打开公钥复制内容

在这里插入图片描述

github配置ssh密钥

setting

在这里插入图片描述

New SSH Key

在这里插入图片描述

设置title填入公钥key

在这里插入图片描述

创建成功,还会收到一份提示邮件

在这里插入图片描述

连接远程仓库

建立仓库

git init

创建远程remote

git remote add origin git@github.com:Onetpaer/test.git

使用命令查看是否配置成功

git remote -v

在这里插入图片描述

3.上传测试

切换main分支(github default默认分支)

git check out main

先同步远程仓库

git pull origin main

若报错fatal: refusing to merge unrelated histories

git pull --rebase origin main

新建文件add test1.txt

git add .
git commit -m "test pull push"

push到远程master分支

git push origin main

新增文件push成功

在这里插入图片描述

GitHub Actions搭建

新建runner

在这里插入图片描述

按照步骤选择linux服务器进行操作

在这里插入图片描述

在运行config.sh时报错Must not run with sudo

在这里插入图片描述

我们新建普通用户进行启动

su github

需要读写权限,无权限需要切换高权限用户赋予用户github读写权限

chown -R github /data/test/github

之后再运行config.sh脚本

在这里插入图片描述

配置.github/workflow/learn-github-actions.yml

name: learn-github-actions
run-name: ${{ github.actor }} is learning GitHub Actions
on: [push]
jobs:
  check-bats-version:
    runs-on: self-hosted
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

最后运行run.sh脚本文件

在这里插入图片描述

可以看到actions成功运行,因为设置的workflow是on:[push] 多次使用push命令均成功触发

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitHub Actions是GitHub的持续集成服务,它可以帮助开发者通过自动化的构建、发布和测试来验证代码,从而尽快发现集成错误。\[2\]GitHub Actions由多个操作组成,比如抓取代码、运行测试、登录远程服务器、发布到第三方服务等等,这些操作被称为actions。一个workflow是一次持续集成的运行过程,由一个或多个jobs构成,每个job又由多个steps构成,每个step可以执行一个或多个命令(action)。\[3\] GitHub Actions允许开发者把每个操作写成独立的脚本文件,存放到代码仓库,使得其他开发者可以引用该脚本,这个脚本就是一个Action。开发者可以从GitHub社区共享的官方市场查找需要的Action,也可以自己编写Action并开源供其他人使用。Action可以通过指定commit、标签或分支来引用不同的版本。\[1\] 在使用GitHub Actions之前,需要了解持续集成/持续交付的概念、Git相关知识、Linux/Windows/macOS脚本相关知识以及Yaml基础语法。Yaml是一种用于配置文件的简洁易读的数据序列化格式。\[2\] GitHub Actions提供了Linux、Windows和macOS虚拟机来运行工作流程,也可以在自己的数据中心或云基础架构中托管自己的自托管运行器。通过在代码仓库中的.github/workflows目录下创建.yml文件,可以配置自动触发的工作流程。\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [GitHubActions详解](https://blog.csdn.net/unreliable_narrator/article/details/124468384)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Github Actions](https://blog.csdn.net/SeriousLose/article/details/121476152)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值