-
Notifications
You must be signed in to change notification settings - Fork 0
55 lines (49 loc) · 1.78 KB
/
preprod.yml
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
name: To registry, pull and up
on:
workflow_dispatch:
pull_request:
push:
branches:
- preprod
jobs:
build:
name: Build, push, pull & up
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Replace API Key
env:
API: ${{ secrets.API_KEY }}
run: sed -i -e "s/secret.API_KEY/$API/" assets/js/main.js
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: .
push: true
tags: registry.realt.community/stats-realt:${{ github.ref_name }}
- name: Configure SSH
run: |
mkdir -p ~/.ssh/
echo "$SSH_KEY" > ~/.ssh/staging.key
chmod 600 ~/.ssh/staging.key
cat >>~/.ssh/config <<END
Host staging
HostName $SSH_HOST
User $SSH_USER
Port $SSH_PORT
IdentityFile ~/.ssh/staging.key
StrictHostKeyChecking no
END
env:
SSH_USER: ${{ secrets.SSH_USER }}
SSH_KEY: ${{ secrets.SSH_KEY }}
SSH_HOST: ${{ secrets.SSH_HOST }}
SSH_PORT: ${{ secrets.SSH_PORT }}
- name: pull & up!
run: |
ssh staging 'export DOCKER_BRANCH=${{ github.ref_name }}
cd /home/realt/docker/stats/${DOCKER_BRANCH}
git pull origin ${{ github.ref_name }}
docker compose --file docker-compose.${{ github.ref_name }}.yml pull
docker login -u ${{ secrets.DOCKER_LOGIN }} -p ${{ secrets.DOCKER_PASSWD }} ${{ secrets.DOCKER_REGISTRY }}
docker compose --project-name ${{ github.ref_name }}-stats --file docker-compose.${{ github.ref_name }}.yml up -d'