39 lines
908 B
YAML
39 lines
908 B
YAML
---
|
|
name: Build and Deploy
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build_and_deploy:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: cachix/install-nix-action@v26
|
|
with:
|
|
nix_path: nixpkgs=channel:nixos-unstable
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install dependencies
|
|
run: ./run ci:install
|
|
|
|
- name: Run tests
|
|
run: ./run ci:test
|
|
|
|
- name: Generate the website
|
|
run: |
|
|
./run ci:build
|
|
tree output_prod
|
|
|
|
- name: Install the deploy key and known hosts
|
|
run: |
|
|
mkdir -p ~/.ssh && chmod 700 ~/.ssh
|
|
echo "${{ secrets.SSH_DEPLOY_KEY }}" > ~/.ssh/deploy && chmod 600 ~/.ssh/deploy
|
|
echo "${{ secrets.SSH_KNOWN_HOSTS }}" > ~/.ssh/known_hosts && chmod 600 ~/.ssh/known_hosts
|
|
|
|
- name: Deploy the website
|
|
run: ssh -i ~/.ssh/deploy oliverdavies-uk@ssh.oliverdavies.uk
|