当前位置: 首页 > news >正文

【devops】Github Actions Secrets | 如何在Github中设置CI的Secret供CI的yaml使用

一、Github Actions

1、ci.yml

name: CI

on: [ push ]


jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Set up Go
        uses: actions/setup-go@v4
        with:
          go-version: 1.23.0

      - name: Cache Go modules
        uses: actions/cache@v3
        with:
          path: |
            ~/.cache/go-build
            ~/go/pkg/mod
          key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
          restore-keys: |
            ${{ runner.os }}-go-

      - name: Build Go project
        run: |
          go env -w CGO_ENABLED=0
          go env -w GOPROXY=https://goproxy.cn,direct
          go env -w GOPRIVATE=github.com
          go mod tidy
          go build -trimpath -ldflags "-s -w" -o core_api api/core.go
          go build -trimpath -ldflags "-s -w" -o core_rpc rpc/core.go

      - name: Verify core_api exists
        run: |
          if [ ! -f core_api ]; then
            echo "core_api file not found!"
            exit 1
          fi
      - name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v2

      - name: Log in to Alibaba Cloud ACR
        env:
          ACR_REGISTRY: ${{ secrets.ACR_REGISTRY }}
          ACR_USERNAME: ${{ secrets.ACR_USERNAME }}
          ACR_PASSWORD: ${{ secrets.ACR_PASSWORD }}
        run: echo $ACR_PASSWORD | docker login $ACR_REGISTRY -u $ACR_USERNAME --password-stdin

      - name: Build and push Docker image - API
        env:
          ACR_REGISTRY: ${{ secrets.ACR_REGISTRY }}
        run: |
          docker build -t $ACR_REGISTRY/【你的acr地址】:latest -f Dockerfile-api .
          docker push $ACR_REGISTRY/【你的acr地址】:latest

      - name: Build and push Docker image - RPC
        env:
          ACR_REGISTRY: ${{ secrets.ACR_REGISTRY }}
        run: |
          docker build -t $ACR_REGISTRY/【你的acr地址】:latest -f Dockerfile-rpc .
          docker push $ACR_REGISTRY/【你的acr地址】:latest

2、添加 Secrets

这里有一个tabs,即:【Secrets】、【Variables】
我们需要根据 ci.yml中设置的进行对应的选择
在这里插入图片描述

我们需要根据 ci.yml 中的变量名进行赋值
在这里插入图片描述

  • ACR_REGISTRY:registry.cn-beijing.aliyuncs.com
  • ACR_USERNAME:xxxx
  • ACR_PASSWORD:xxxx

相关文章:

  • LabVIEW 中 dotnet.llb 库功能
  • 图形渲染(一)——Skia、OpenGL、Mesa 和 Vulkan简介
  • .net6 mvc 获取网站(服务器端)的IP地址和端口号
  • CTex安装和使用(1)
  • Windows 下安装 Python 和 Nodejs
  • 联想笔记本电脑摄像头灯亮,但没有画面怎么解决,
  • SM2加签、验签,加密、解密
  • 【洛谷】B3849 [GESP样题 三级] 进制转换
  • DeepSeek与ChatGPT的全面对比
  • electron 学习
  • 【virtiofs】ubuntu24.04+qemu7.0调试virtiofs
  • 洗牌加速!车规MCU“冷热交加”
  • rust学习一、入门之搭建简单开发环境
  • 【人工智能】通过python练习机器学习中的8大算法
  • SpringMVC详解
  • 使用爬虫获取1688商品分类:实战案例指南
  • 【技术解析】MultiPatchFormer:多尺度时间序列预测的全新突破
  • 固高控制卡的几种运动模式
  • 洛谷 P3660 USACO17FEB Why Did the Cow Cross the Road III 题解
  • 云点SEO:外贸独立站谷歌SEO优化的五大优势
  • 宣布停火后,印控克什米尔地区再次传出爆炸声
  • “毛茸茸”的画,诗意、温暖又治愈
  • 东洋学人|滨田青陵:近代日本考古学第一人
  • 融创中国:今年前4个月销售额约112亿元
  • 明查|这是“C919迫降在农田”?实为飞机模型将用于科普体验
  • 鸿蒙概念股强势上涨,鸿蒙电脑本月正式发布,生态链即将补全