Ubuntu-Ansible-Setup/.github/workflows/deploy-squad.yml

64 lines
1.8 KiB
YAML
Raw Normal View History

2023-01-27 14:37:14 -06:00
name: Update Squad Configurations
on:
push:
branches:
- Development
2023-01-27 14:37:14 -06:00
workflow_dispatch:
jobs:
2023-01-31 18:39:12 -06:00
lint-inventory:
uses: ./.github/workflows/lint-inventory.yml
2023-01-27 14:57:18 -06:00
secrets: inherit
2023-01-27 14:54:19 -06:00
deploy:
2023-01-27 14:37:14 -06:00
runs-on: self-hosted
needs:
2023-01-31 18:39:12 -06:00
- lint-inventory
2023-01-27 14:37:14 -06:00
container:
2023-01-27 14:46:50 -06:00
image: ${{ vars.DOCKER_REGISTRY_URL }}/${{ vars.ansible_container }}:latest
credentials:
username: "${{ secrets.DOCKER_REGISTRY_USER }}"
password: "${{ secrets.DOCKER_REGISTRY_PASSWORD }}"
2023-01-27 14:37:14 -06:00
env:
SQUAD_RCON_PASSWORD: "${{ secrets.squad_rcon_password }}"
SQUAD_VANILLA_SERVER_LICENSE: "${{ secrets.squad_vanilla_server_license }}"
SQUAD_VANILLA_SQUADJS_DISCORD_TOKEN: "${{ secrets.squad_vanilla_squadjs_discord_token }}"
SQUAD_MEE_SERVER_LICENSE: "${{ secrets.squad_mee_server_license }}"
SQUAD_MEE_SQUADJS_DISCORD_TOKEN: "${{ secrets.squad_mee_squadjs_discord_token }}"
steps:
- name: Inject Private Key
run: |
mkdir -p "${HOME}/.ssh"
2023-01-27 15:56:28 -06:00
2023-01-27 14:37:14 -06:00
cat << __EOF__ > "${HOME}/.ssh/key"
${{ secrets.ansible_ssh_key }}
__EOF__
chmod 0600 "${HOME}/.ssh/key"
cat << __EOF__ > "${HOME}/.ssh/config"
2023-01-27 15:51:27 -06:00
Host *
User ${{ vars.ssh_user }}
2023-01-27 15:56:28 -06:00
StrictHostKeyChecking no
2023-01-27 15:51:27 -06:00
2023-01-27 15:20:43 -06:00
Host ${{ vars.server_host }}
2023-01-27 15:51:27 -06:00
HostName ${{ vars.server_host }}
2023-01-27 15:20:43 -06:00
User ${{ vars.ssh_user }}
2023-01-27 15:56:28 -06:00
IdentityFile ~/.ssh/key
2023-01-27 14:37:14 -06:00
__EOF__
2023-02-27 17:55:04 -06:00
- name: List Environment Variables
run: |
printenv
2023-01-27 14:37:14 -06:00
- name: Run Ansible Playbook For Squad
env:
DOCKER_REGISTRY_PASSWORD: "${{ secrets.DOCKER_REGISTRY_PASSWORD }}"
run: ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook --private-key="${HOME}/.ssh/key" ./playbook.yml --tags=squad