Files
action_test/.gitea/workflows/test.yml
KaGaMi 421570648a
All checks were successful
简单测试 / test (push) Successful in 28s
ttt
2025-07-12 18:58:11 +08:00

126 lines
3.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: 简单测试
on:
push:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 基本测试
run: |
echo "🚀 开始测试..."
echo "📁 当前目录: $(pwd)"
echo "📋 文件列表:"
ls -la
echo "✅ 测试完成!"
- name: Debug Network
run: |
echo "Checking network from inside the job container..."
cat /etc/resolv.conf
curl -v http://gitea:3000/v2/ # 尝试访问registry的API端点
- name: 登录到Gitea Container Registry
run: |
echo "🔐 登录到Gitea Container Registry..."
# 获取registry地址
REGISTRY_HOST=$(echo "${{ gitea.server_url }}" | sed 's|https\?://||')
cat /etc/docker/daemon.json || echo 'cat /etc/docker/daemon.json 失败'
echo "📡 Registry地址: $REGISTRY_HOST"
echo "👤 用户名: ${{ gitea.actor }}"
# echo "token: ${{ gitea.token }};actor: ${{ gitea.actor }}"
# 使用HTTP协议登录
echo "${{ secrets.GITEAS_PAT }}" | docker login $REGISTRY_HOST -u "${{ gitea.actor }}" --password-stdin
echo "✅ 登录成功!"
- name: 构造Docker镜像
run: |
echo "🐳 构造Node.js Hello World应用镜像..."
# 设置镜像标签
REGISTRY_HOST=$(echo "${{ gitea.server_url }}" | sed 's|https\?://||')
OWNER=${{ gitea.repository_owner }}
LOWER_OWNER=$(echo "$OWNER" | tr '[:upper:]' '[:lower:]')
IMAGE_NAME="$REGISTRY_HOST/$LOWER_OWNER/hello-world-app"
IMAGE_TAG="latest"
COMMIT_SHA="${{ gitea.sha }}"
echo "📦 镜像名称: $IMAGE_NAME"
echo "🏷️ 镜像标签: $IMAGE_TAG"
echo "📋 提交SHA: $COMMIT_SHA"
# 构造镜像
docker build -t "$IMAGE_NAME:$IMAGE_TAG" -t "$IMAGE_NAME:$COMMIT_SHA" .
echo "✅ Node.js Hello World镜像构造完成"
- name: 推送Docker镜像
run: |
echo "🚀 推送Docker镜像到Gitea registry..."
# 设置镜像标签
REGISTRY_HOST=$(echo "${{ gitea.server_url }}" | sed 's|https\?://||')
REPO_OWNER="${{ gitea.repository_owner }}"
REPO_OWNER_LOWER="${REPO_OWNER,,}"
IMAGE_NAME="$REGISTRY_HOST/$REPO_OWNER_LOWER/hello-world-app"
IMAGE_TAG="latest"
COMMIT_SHA="${{ gitea.sha }}"
# 推送镜像
docker push "$IMAGE_NAME:$IMAGE_TAG"
docker push "$IMAGE_NAME:$COMMIT_SHA"
echo "✅ Docker镜像推送完成"
echo "🎉 镜像已推送到: $IMAGE_NAME:$IMAGE_TAG"
echo "🎉 镜像已推送到: $IMAGE_NAME:$COMMIT_SHA"
- name: 测试镜像运行
run: |
echo "🧪 测试构造的镜像..."
REGISTRY_HOST=$(echo "${{ gitea.server_url }}" | sed 's|https\?://||')
REPO_OWNER="${{ gitea.repository_owner }}"
REPO_OWNER_LOWER="${REPO_OWNER,,}"
IMAGE_NAME="$REGISTRY_HOST/$REPO_OWNER_LOWER/hello-world-app"
IMAGE_TAG="latest"
# 运行镜像进行测试
docker run -d --name test-container -p 3901:3000 "$IMAGE_NAME:$IMAGE_TAG"
# 等待容器启动
sleep 5
# 测试健康检查
echo "🔍 测试应用健康状态..."
curl -f http://192.168.1.200:3901/health || exit 1
# 测试主页
echo "🔍 测试应用主页..."
curl -f http://192.168.1.200:3901/ || exit 1
# 停止并删除测试容器
docker stop test-container
docker rm test-container
echo "✅ 镜像测试完成!"