Some checks failed
Restart Docker Container on Production / build (pull_request) Failing after 41s
44 lines
1.8 KiB
YAML
44 lines
1.8 KiB
YAML
name: Restart Docker Container on Production
|
|
run-name: ${{ gitea.actor }} is runs CD pipeline
|
|
|
|
on:
|
|
pull_request:
|
|
types: [ assigned, opened, synchronize, reopened, edited ]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
container: ghcr.io/catthehacker/ubuntu:act-latest
|
|
env:
|
|
RUNNER_TOOL_CACHE: /toolcache
|
|
IMAGE_NAME: rbl-news-webapp
|
|
DOCKER_CONTAINER_NAME: rbl-news-webapp-test
|
|
REGISTRY: git.wohlleben.dev
|
|
REPO_OWNER: itob
|
|
steps:
|
|
- name: Check out repository code
|
|
uses: actions/checkout@v4
|
|
- name: Login to Docker Hub
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: git.wohlleben.dev
|
|
username: ${{ gitea.actor }}
|
|
password: ${{ vars.REGISTRY_TOKEN }}
|
|
- name: Build and push WebApp container image
|
|
run: |
|
|
TODAY=$(date +'%Y-%m-%d')
|
|
docker build -t ${REGISTRY}/${REPO_OWNER}/${IMAGE_NAME}:${TODAY} -t ${REGISTRY}/${REPO_OWNER}/${IMAGE_NAME}:latest -f IaC/RBLNews.Web/Dockerfile .
|
|
docker push ${REGISTRY}/${REPO_OWNER}/${IMAGE_NAME}:${TODAY}
|
|
docker push ${REGISTRY}/${REPO_OWNER}/${IMAGE_NAME}:latest
|
|
- name: Restart all Docker Container on Test Environment
|
|
uses: appleboy/ssh-action@v1.0.3
|
|
with:
|
|
host: ${{ vars.SRV02_DOCKER_VM_HOST_ADDRESS }}
|
|
username: ${{ vars.SRV02_DOCKER_VM_USER_NAME }}
|
|
key: ${{ vars.SRV02_DOCKER_VM_ROOT_USER_SSH_KEY }}
|
|
script: |
|
|
docker pull git.wohlleben.dev/itob/${DOCKER_CONTAINER_NAME}:latest
|
|
docker stop ${DOCKER_CONTAINER_NAME}
|
|
docker rm ${DOCKER_CONTAINER_NAME}
|
|
docker run --init -d --name ${DOCKER_CONTAINER_NAME} -p 8081:81 --build-arg docker_external_http_port=81 --restart=always git.wohlleben.dev/itob/${DOCKER_CONTAINER_NAME}:latest
|
|
docker system prune -af |