GitHub Actions工作流搭建

GitHub Actions工作流搭建

GitHub Actions的官方概述如下:

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

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

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

搭建GitHub首先需要有GitHub仓库

GitHub仓库搭建

1.新建github仓库

GitHub Actions工作流搭建_第1张图片

2.git连接github远程仓库

分为两种方式,https和ssh

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

git remote set-url origin https://@github.com//.git

ssh的方式

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

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

ssh配置密钥

输入命令后一直回车即可

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

GitHub Actions工作流搭建_第2张图片

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

在这里插入图片描述

打开公钥复制内容

GitHub Actions工作流搭建_第3张图片

github配置ssh密钥

setting

GitHub Actions工作流搭建_第4张图片

New SSH Key

GitHub Actions工作流搭建_第5张图片

设置title填入公钥key

GitHub Actions工作流搭建_第6张图片

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

GitHub Actions工作流搭建_第7张图片

连接远程仓库

建立仓库

git init

创建远程remote

git remote add origin [email protected]: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工作流搭建_第8张图片

GitHub Actions搭建

新建runner

GitHub Actions工作流搭建_第9张图片

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

GitHub Actions工作流搭建_第10张图片

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

在这里插入图片描述

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

su github

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

chown -R github /data/test/github

之后再运行config.sh脚本

GitHub Actions工作流搭建_第11张图片

配置.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脚本文件

GitHub Actions工作流搭建_第12张图片

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

GitHub Actions工作流搭建_第13张图片

GitHub Actions工作流搭建_第14张图片

你可能感兴趣的:(devops,cloud,native,运维,github,ci)