-
Notifications
You must be signed in to change notification settings - Fork 6
38 lines (32 loc) · 898 Bytes
/
deploy-prod.yml
File metadata and controls
38 lines (32 loc) · 898 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
name: deploy (prod)
on:
push:
branches:
- 'prod'
workflow_call:
workflow_dispatch:
env:
RELEASE_CHANNEL: prod
TARGET_REPO: ${{ vars.REPO }}
TARGET_BRANCH: deploy
defaults:
run:
shell: bash
jobs:
deploy:
environment:
name: repo-prod
url: https://github.com/${{ env.TARGET_REPO }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
ref: ${{ env.RELEASE_CHANNEL }}
- name: Force-push to target repo
run: |
mkdir -p "$HOME/.ssh"
echo "${{ secrets.SSH_DEPLOY_KEY }}" > "$HOME/.ssh/deploy_key"
chmod 600 "$HOME/.ssh/deploy_key"
export GIT_SSH_COMMAND="ssh -i $HOME/.ssh/deploy_key"
git remote add sync-repo "git@github.com:${{ env.TARGET_REPO }}.git"
git push --force -u sync-repo ${{ env.RELEASE_CHANNEL }}:${{ env.TARGET_BRANCH }}