Skip to content

Fix ansible playbook #20

Fix ansible playbook

Fix ansible playbook #20

name: deploy
on:
push:
branches:
- 'develop'
env:
IMAGE: registry.hub.docker.com/andrewklyuchnikov/youtube-search
REGISTRY_URL: 'registry.hub.docker.com'
#
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v3
-
name: Set up QEMU
uses: docker/setup-qemu-action@v2
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
-
name: Login to Docker Hub
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY_URL }}
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- uses: actions/setup-python@v4
with:
python-version: '3.10'
- uses: snok/install-poetry@v1
- name: Prepare
id: prepare
run: |
VERSION=$(poetry version -s)
echo "version=${VERSION}" >> $GITHUB_OUTPUT
-
name: Build and push
uses: docker/build-push-action@v3
with:
cache-from: ${{ env.IMAGE }}:latest
push: true
tags: ${{ env.IMAGE }}:latest,${{ env.IMAGE }}:${{ steps.prepare.outputs.version }}
deploy:
runs-on: ubuntu-latest
needs: build
steps:
- name: Check out repository
uses: actions/checkout@v3
- name: Get Known Hosts
id: get_known_hosts
run: |
KNOWN_HOSTS=$(ssh-keyscan -H ${{ secrets.SSH_HOST }})
echo ::set-output name=hosts::${KNOWN_HOSTS}
- name: Install SSH Key
uses: shimataro/ssh-key-action@v2
with:
key: ${{ secrets.SSH_PRIVATE_KEY }}
known_hosts: ${{ steps.get_known_hosts.outputs.hosts }}
- name: Run playbook
uses: dawidd6/action-ansible-playbook@v2
with:
playbook: deploy.yml
directory: ./ansible
options: |
--inventory hosts
--verbose
-e DOCKER_REGISTRY=${{ env.REGISTRY_URL }}
-e DOCKER_PASSWORD=${{ secrets.DOCKERHUB_TOKEN }}
-e DOCKER_USER=${{ secrets.DOCKERHUB_USERNAME }}
-e youtube_api_key=${{ secrets.YOUTUBE_API_KEY }}
-e secret_key=${{ secrets.SECRET_KEY }}
#