Skip to content

Merge pull request #5 from RomanVerkhovskii/feature-client-endpoint #20

Merge pull request #5 from RomanVerkhovskii/feature-client-endpoint

Merge pull request #5 from RomanVerkhovskii/feature-client-endpoint #20

Workflow file for this run

name: pipeline
on:
push:
branches:
- 'main'
- 'release/**'
env:
registry_url: "registry.hub.docker.com"
image_repo: "kvendingoldo/mks-bot"
jobs:
build:
runs-on: ubuntu-20.04
outputs:
version: ${{ steps.set_version.outputs.safe_version }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
with:
platforms: all
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to Docker registry
uses: docker/login-action@v1
with:
registry: ${{ env.registry_url }}
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Set application version
id: set_version
uses: kvendingoldo/semver-action@v1.10
with:
primary_branch: 'main'
- name: Build and push
uses: docker/build-push-action@v3
with:
push: true
cache-from: type=gha
cache-to: type=gha,mode=max
tags: |
${{ env.registry_url }}/${{ env.image_repo }}:latest
${{ env.registry_url }}/${{ env.image_repo }}:${{ steps.set_version.outputs.safe_version }}
- name: Print image version
run: echo ${{ steps.set_version.outputs.safe_version }}
deploy:
runs-on: ubuntu-20.04
needs: build
steps:
- name: executing remote ssh commands using password
uses: appleboy/ssh-action@v1.0.0
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
port: ${{ secrets.SSH_PORT }}
script: |
docker ps
docker rm -f mks-bot
docker run -d --name=mks-bot -e TG_BOT_TOKEN=${{ secrets.TG_BOT_TOKEN }} ${{ env.registry_url }}/${{ env.image_repo }}:${{ needs.build.outputs.version }}