ssh to https: release fix
This commit is contained in:
@@ -10,50 +10,28 @@ jobs:
|
||||
runs-on: self-hosted
|
||||
env:
|
||||
CHECKOUT_PATH: ${{ vars.SOW_TOOLS_CHECKOUT_PATH }}
|
||||
SOW_TOOLS_REPO_URL: ${{ vars.SOW_TOOLS_REPO_URL }}
|
||||
|
||||
steps:
|
||||
- name: Configure SSH known hosts
|
||||
run: |
|
||||
set -euo pipefail
|
||||
mkdir -p ~/.ssh
|
||||
chmod 700 ~/.ssh
|
||||
printf '%s\n' "${{ secrets.GITEA_SSH_KNOWN_HOSTS }}" > ~/.ssh/known_hosts
|
||||
chmod 644 ~/.ssh/known_hosts
|
||||
|
||||
- name: Configure SSH
|
||||
run: |
|
||||
cat > ~/.ssh/config <<'EOF'
|
||||
Host git-ssh.westgate.pw
|
||||
Port 2222
|
||||
User git
|
||||
IdentityFile ~/.ssh/id_ed25519
|
||||
IdentitiesOnly yes
|
||||
EOF
|
||||
chmod 600 ~/.ssh/config
|
||||
|
||||
- name: Sync tools checkout to tag
|
||||
env:
|
||||
TAG_NAME: ${{ github.ref_name }}
|
||||
EVENT_SHA: ${{ github.sha }}
|
||||
GITEA_SERVER_URL: ${{ github.server_url }}
|
||||
GITEA_REPO: ${{ github.repository }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
set -euo pipefail
|
||||
CHECKOUT_PATH="${CHECKOUT_PATH:-/home/ubuntu/tools-checkout}"
|
||||
SOW_TOOLS_REPO_URL="${SOW_TOOLS_REPO_URL:-${GITEA_SERVER_URL%/}/${GITEA_REPO}.git}"
|
||||
CLONE_URL="https://x-access-token:${GITHUB_TOKEN}@gitea.westgate.pw/ShadowsOverWestgate/sow-tools.git"
|
||||
export GIT_TERMINAL_PROMPT=0
|
||||
export GIT_SSH_COMMAND="${GIT_SSH_COMMAND:-ssh -o BatchMode=yes -o ConnectTimeout=20 -o ServerAliveInterval=10 -o ServerAliveCountMax=3}"
|
||||
|
||||
if [[ ! -d "${CHECKOUT_PATH}/.git" ]]; then
|
||||
mkdir -p "$(dirname "${CHECKOUT_PATH}")"
|
||||
echo "Cloning tools checkout from ${SOW_TOOLS_REPO_URL} into ${CHECKOUT_PATH}"
|
||||
timeout 120 git clone --filter=blob:none "${SOW_TOOLS_REPO_URL}" "${CHECKOUT_PATH}"
|
||||
echo "Cloning tools checkout into ${CHECKOUT_PATH}"
|
||||
timeout 120 git clone --filter=blob:none "${CLONE_URL}" "${CHECKOUT_PATH}"
|
||||
fi
|
||||
|
||||
cd "${CHECKOUT_PATH}"
|
||||
git remote set-url origin "${SOW_TOOLS_REPO_URL}"
|
||||
echo "Fetching tools refs from ${SOW_TOOLS_REPO_URL}"
|
||||
git remote set-url origin "${CLONE_URL}"
|
||||
echo "Fetching tools refs"
|
||||
timeout 120 git fetch origin --prune --force --tags
|
||||
TAG_SHA="$(git rev-list -n1 "refs/tags/${TAG_NAME}")"
|
||||
if [[ -n "${EVENT_SHA}" && "${TAG_SHA}" != "${EVENT_SHA}" ]]; then
|
||||
|
||||
Reference in New Issue
Block a user