Compare commits

..

10 Commits

Author SHA1 Message Date
bamanker
e3a7e3c2b3 修改一些小错误
Some checks failed
Build Push and Deploy Image / build (push) Failing after 21m24s
2026-01-05 14:22:19 +08:00
bamanker
c052a11c4b 更改kubectl的action为手动下载2
Some checks failed
Build Push and Deploy Image / build (push) Failing after 21m20s
2026-01-04 23:08:07 +08:00
bamanker
4baa013d02 更改kubectl的action为手动下载1
Some checks failed
Build Push and Deploy Image / build (push) Failing after 22m5s
2026-01-04 22:43:23 +08:00
bamanker
6e1ec6a761 更改kubectl的action为手动下载
Some checks failed
Build Push and Deploy Image / build (push) Failing after 24m41s
2026-01-04 22:10:59 +08:00
bamanker
7ebd4ba157 更改kubectl的action2
Some checks failed
Build Push and Deploy Image / build (push) Failing after 21m41s
2026-01-04 18:01:36 +08:00
bamanker
75d0f8d768 更改kubectl的action1
Some checks failed
Build Push and Deploy Image / build (push) Failing after 24m48s
2026-01-04 17:15:47 +08:00
bamanker
afa97145c1 更改kubectl的action
Some checks failed
Build Push and Deploy Image / build (push) Failing after 21m57s
2026-01-04 16:13:16 +08:00
bamanker
2f39836963 修复mount source: "overlay" 错误的问题 5
Some checks failed
Build Push and Deploy Image / build (push) Failing after 21m14s
2026-01-04 15:19:05 +08:00
bamanker
d9807291ad 修复mount source: "overlay" 错误的问题 4
Some checks failed
Build Push and Deploy Image / build (push) Failing after 2m19s
2026-01-04 14:59:41 +08:00
bamanker
27c3ab7b82 修复mount source: "overlay" 错误的问题 3
Some checks failed
Build Push and Deploy Image / build (push) Failing after 24s
2026-01-04 14:58:27 +08:00

View File

@@ -21,29 +21,35 @@ env:
# 构建 Job # 构建 Job
jobs: jobs:
build: build:
runs-on: ubuntu-node22 # 如果host构建 linux_amd64 runs-on: ubuntu-node22 # 如果host构建:linux_amd64
# container: # container:
# image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/catthehacker/ubuntu:act-latest # image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/catthehacker/ubuntu:act-latest
steps: steps:
- name: Print system info 1 - name: Print system info 1
run: echo " The job was automatically triggered by a ${{ gitea.event_name }} event." run: echo " The job was automatically triggered by a ${{ gitea.event_name }} event."
- name: Print system info 2 - name: Print system info 2
run: echo " This job is now running on a ${{ runner.os }} server hosted by Gitea!" run: echo " This job is now running on a ${{ runner.os }} server hosted by Gitea!"
- name: Print system info 3 - name: Print system info 3
run: echo " The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." run: echo " The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
- name: Print env - name: Print env
run: env run: env && blkid
- name: Install dependencies - name: Install dependencies
run: | run: |
apt-get update && apt-get update &&
apt-get install -y gettext && apt-get install -y gettext &&
apt-get install -y maven && apt-get install -y maven &&
apt-get install -y sudo && apt-get install -y sudo &&
apt-get install -y iptables && apt-get install -y iptables
sudo blkid
- name: Set up Docker - name: Set up Docker
uses: http://139.9.216.111:3000/bamanker/setup-docker-action@v4 uses: http://139.9.216.111:3000/bamanker/setup-docker-action@v4.6.0
with: with:
# 版本大于28会有兼容性问题
version: type=archive,channel=stable,version=v27.4.0 version: type=archive,channel=stable,version=v27.4.0
daemon-config: | daemon-config: |
{ {
@@ -62,9 +68,6 @@ jobs:
# - run: node -v # - run: node -v
# 下载仓库源码依赖node环境因此构建服务器本地需要下载安装node并设置环境变量 # 下载仓库源码依赖node环境因此构建服务器本地需要下载安装node并设置环境变量
# - name: Set up Docker Buildx
# uses: http://139.9.216.111:3000/bamanker/setup-buildx-action@v3
- name: Checkout repository code - name: Checkout repository code
#使用自定义仓库action #使用自定义仓库action
uses: http://139.9.216.111:3000/bamanker/checkout@v4 uses: http://139.9.216.111:3000/bamanker/checkout@v4
@@ -81,9 +84,7 @@ jobs:
id: set_envar id: set_envar
run: | run: |
echo "The app version is $APP_TAG" && echo "tag=$APP_TAG" >> $GITHUB_OUTPUT && echo "The app version is $APP_TAG" && echo "tag=$APP_TAG" >> $GITHUB_OUTPUT &&
echo "now workspace: ${{ github.workspace }}" && echo "now workspace: ${{ github.workspace }}"
docker version &&
docker --help
# 为其他配置文件注入环境变量 # 为其他配置文件注入环境变量
- name: Inject envVar - name: Inject envVar
@@ -91,16 +92,15 @@ jobs:
envsubst < ./deployment-temp.yml > ./deployment.yml && envsubst < ./deployment-temp.yml > ./deployment.yml &&
cat ./deployment.yml cat ./deployment.yml
# 构建java项目 # 安装java环境
- name: Set up Java - name: Set up Java
uses: http://139.9.216.111:3000/bamanker/setup-graalvm@v1 uses: http://139.9.216.111:3000/bamanker/setup-graalvm@v1
with: with:
distribution: 'graalvm' distribution: 'graalvm'
java-version: '25.0.1' java-version: '25.0.1'
cache: 'maven' cache: 'maven'
# maven 构建
- name: Build with Maven - name: Build with Maven
#使用maven绝对路径执行打包命令
run: mvn clean native:compile -DskipTests -Pnative run: mvn clean native:compile -DskipTests -Pnative
# 登录镜像仓库,方便后续上传镜像 # 登录镜像仓库,方便后续上传镜像
@@ -109,7 +109,6 @@ jobs:
with: with:
registry: ${{ env.REGISTRY }} registry: ${{ env.REGISTRY }}
username: ${{ secrets.DOCKERHUB_USERNAME }} username: ${{ secrets.DOCKERHUB_USERNAME }}
# 这里也可以通过 secrets 传入,后面再介绍
password: ${{ secrets.DOCKERHUB_PASSWORD }} password: ${{ secrets.DOCKERHUB_PASSWORD }}
# # 获取时间戳 # # 获取时间戳
@@ -118,17 +117,18 @@ jobs:
# run: | # run: |
# echo "datetime=$(date '+%Y-%m-%d-%H-%M-%S')" >> $GITHUB_OUTPUT # echo "datetime=$(date '+%Y-%m-%d-%H-%M-%S')" >> $GITHUB_OUTPUT
# 构建并上传镜像 TODO 直接用docker命令操作 # 构建并上传镜像
- name: Build and push Docker image - name: Build and push Docker image
# uses: http://139.9.216.111:3000/bamanker/build-push-action@v4 # 获取上一步截取到的版本号,既 1.0.0 # uses: http://139.9.216.111:3000/bamanker/build-push-action@v4
# 获取上一步截取到的版本号,既 1.0.0
#只能这样接收 #只能这样接收
env: env:
TAG: ${{ steps.set_envar.outputs.tag }} TAG: ${{ steps.set_envar.outputs.tag }}
run: | run: |
ls && ls &&
docker build --file Dockerfile --tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}:${{ env.TAG }} . && docker build --file Dockerfile --tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}:${{ env.TAG }} . &&
docker image ls docker push ${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}:${{ env.TAG }}
# ${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}:${{ env.TAG }} --push.
# uses: http://139.9.216.111:3000/bamanker/docker-build-push@v5 # uses: http://139.9.216.111:3000/bamanker/docker-build-push@v5
# with: # with:
# context: . # context: .
@@ -138,17 +138,35 @@ jobs:
# tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}:${{ env.TAG }} # tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/${{ env.IMAGE_NAME }}:${{ env.TAG }}
#发布到 k8s #发布到 k8s
- name: Generate kubeconfig #安装 kubectl
uses: http://139.9.216.111:3000/bamanker/kubectl-action@v1.4.0 - name: Setup kubectl
with: run: |
base64-kube-config: ${{ secrets.KUBE_CONFIG }} curl -LO "https://dl.k8s.io/release/v1.33.0/bin/linux/amd64/kubectl" &&
- name: Deploy k8s chmod +x kubectl &&
run: kubectl apply -f ./deployment.yml mv kubectl /usr/local/bin/
# command: apply -f http://139.9.216.111:3000/bamanker/myk3sTest/raw/branch/master/.deploy/deployment-temp.yml
- name: Configure kubeconfig
# 假设您的 KUBE_CONFIG 秘密是 Base64 编码的 kubeconfig 文件内容
run: |
# 1. 创建 ~/.kube 目录
mkdir -p $HOME/.kube
# 2. 将 Base64 编码的 KUBE_CONFIG 秘密解码并写入默认配置文件
echo "${{ secrets.KUBE_CONFIG }}" | base64 -d > $HOME/.kube/config
# 3. 确保 kubectl 知道配置文件的位置 (可选, 但安全)
echo "KUBECONFIG=$HOME/.kube/config" >> $GITHUB_ENV
- name: Deploy with kubectl
run: |
kubectl apply -f ./deployment.yml
- name: k8s Check Pods Health - name: k8s Check Pods Health
run: kubectl get pod -n default -l app=${{ env.APP_NAME }} run: |
kubectl get pod -n default -l app=${{ env.APP_NAME }}
- name: k8s Update Deployment - name: k8s Update Deployment
run: kubectl rollout restart deployment ${{ env.APP_NAME }} run: |
kubectl restart deployment ${{ env.APP_NAME }}