init test
This commit is contained in:
parent
208ba73a12
commit
db2cea4c8b
@ -1,9 +1,19 @@
|
|||||||
|
# 复制到 itfx 仓库 .gitea/workflows/deploy.yml
|
||||||
|
# push master/main → prod;push test → test
|
||||||
name: Build and Deploy
|
name: Build and Deploy
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [master, main]
|
branches: [master, main, test]
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
target:
|
||||||
|
description: Deploy target (仅手动;push 时由分支决定)
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- prod
|
||||||
|
- test
|
||||||
|
default: prod
|
||||||
|
|
||||||
env:
|
env:
|
||||||
CSPROJ: src/InterfaceForward.Api/InterfaceForward.Api.csproj
|
CSPROJ: src/InterfaceForward.Api/InterfaceForward.Api.csproj
|
||||||
@ -20,15 +30,48 @@ jobs:
|
|||||||
- name: Build and deploy
|
- name: Build and deploy
|
||||||
run: |
|
run: |
|
||||||
set -euxo pipefail
|
set -euxo pipefail
|
||||||
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
|
REF="${{ gitea.ref_name }}"
|
||||||
TAG="${{ gitea.sha }}"
|
|
||||||
IMG="${{ env.TCR_REGISTRY }}/${{ env.TCR_NAMESPACE }}/${{ env.IMAGE_NAME }}:${TAG}"
|
if [[ "${{ gitea.event_name }}" == "workflow_dispatch" ]]; then
|
||||||
|
TARGET="${{ inputs.target }}"
|
||||||
|
TARGET="${TARGET:-prod}"
|
||||||
|
else
|
||||||
|
case "$REF" in
|
||||||
|
test) TARGET=test ;;
|
||||||
|
*) TARGET=prod ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
SHA="${{ gitea.sha }}"
|
||||||
REPO="${{ gitea.repository }}"
|
REPO="${{ gitea.repository }}"
|
||||||
REPO="${REPO:-${{ github.repository }}}"
|
|
||||||
test -n "$REPO" && [[ "$REPO" == */* ]]
|
test -n "$REPO" && [[ "$REPO" == */* ]]
|
||||||
echo "REPO=$REPO TAG=$TAG host=$(hostname)"
|
|
||||||
|
case "$TARGET" in
|
||||||
|
test) TAG="test-${SHA}" ;;
|
||||||
|
*) TAG="${SHA}" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
IMG="${{ env.TCR_REGISTRY }}/${{ env.TCR_NAMESPACE }}/${{ env.IMAGE_NAME }}:${TAG}"
|
||||||
|
echo "TARGET=$TARGET REF=$REF REPO=$REPO TAG=$TAG host=$(hostname)"
|
||||||
|
|
||||||
|
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
|
||||||
|
unset NAMESPACE
|
||||||
cd /data/k3s
|
cd /data/k3s
|
||||||
./scripts/ci-publish-container.sh "$REPO" "${{ env.CSPROJ }}" \
|
./scripts/ci-publish-container.sh "$REPO" "${{ env.CSPROJ }}" \
|
||||||
"${{ env.IMAGE_NAME }}" "$TAG" "$TAG"
|
"${{ env.IMAGE_NAME }}" "$TAG" "$SHA"
|
||||||
|
|
||||||
|
case "$TARGET" in
|
||||||
|
test)
|
||||||
|
export KUBECONFIG=/root/.kube/k3s-test.yaml
|
||||||
|
export NAMESPACE=test
|
||||||
|
export MANIFEST_ROOT=/data/k3s-test
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
|
||||||
|
export NAMESPACE=prod
|
||||||
|
export MANIFEST_ROOT=/data/k3s
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
test -f "$KUBECONFIG"
|
||||||
./scripts/ci-deploy-api.sh "${{ env.DEPLOY_NAME }}" \
|
./scripts/ci-deploy-api.sh "${{ env.DEPLOY_NAME }}" \
|
||||||
"${{ env.CONTAINER_NAME }}" "$IMG"
|
"${{ env.CONTAINER_NAME }}" "$IMG"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user