Compare commits
7 commits
main
...
maren/more
Author | SHA1 | Date | |
---|---|---|---|
cdddc1c952 | |||
9b958a1fc9 | |||
534864fd10 | |||
ac32443f1c | |||
6ce4bf46bd | |||
554c10b6f6 | |||
e703c27d4b |
3 changed files with 64 additions and 35 deletions
|
@ -1,35 +0,0 @@
|
||||||
when:
|
|
||||||
branch:
|
|
||||||
include: [ main ]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
|
|
||||||
build:
|
|
||||||
image: debian:bookworm-slim
|
|
||||||
commands:
|
|
||||||
- apt update
|
|
||||||
# - rm -rf data/
|
|
||||||
# - rm -rf in-progress
|
|
||||||
- apt -yq install racket ca-certificates
|
|
||||||
- yes Y | raco pkg install --no-docs csv-reading
|
|
||||||
- raco exe sorrel.dev.rkt
|
|
||||||
- raco distribute dist sorrel.dev
|
|
||||||
|
|
||||||
deploy:
|
|
||||||
image: alpine:latest
|
|
||||||
secrets: [ deploy_ssh_key ]
|
|
||||||
commands:
|
|
||||||
- apk add openssh
|
|
||||||
- mkdir ~/.ssh
|
|
||||||
- printf '%s\n' "$${DEPLOY_SSH_KEY}" > ~/.ssh/deploy_ssh_key
|
|
||||||
- printf "Host turtle.hup.is\n\tIdentityFile ~/.ssh/deploy_ssh_key\n\tUserKnownHostsFile=/dev/null\n\tStrictHostKeyChecking=no\n" > ~/.ssh/config
|
|
||||||
- chmod -R u=rwX,go= ~/.ssh
|
|
||||||
- mkdir oxaliq
|
|
||||||
- mv dist oxaliq/.
|
|
||||||
- mv source oxaliq/.
|
|
||||||
- mv static oxaliq/.
|
|
||||||
- scp -r oxaliq deploy@turtle.hup.is:~/
|
|
||||||
- ssh deploy@turtle.hup.is 'sudo rm -rf /srv/oxaliq || true && sudo mv oxaliq /srv/. && sudo systemctl restart sorreldotdev.service'
|
|
||||||
when:
|
|
||||||
# Only try to deploy if previous step is successful
|
|
||||||
status: success
|
|
32
.woodpecker/build-and-deploy.yml
Normal file
32
.woodpecker/build-and-deploy.yml
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
when:
|
||||||
|
branch:
|
||||||
|
include: [ main ]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
|
||||||
|
build:
|
||||||
|
image: debian:bookworm-slim
|
||||||
|
commands:
|
||||||
|
- apt update
|
||||||
|
- apt -yq install racket ca-certificates
|
||||||
|
- yes Y | raco pkg install --no-docs csv-reading
|
||||||
|
- raco exe sorrel.dev.rkt
|
||||||
|
- raco distribute dist sorrel.dev
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
image: alpine:latest
|
||||||
|
secrets:
|
||||||
|
- deploy_ssh_key
|
||||||
|
commands:
|
||||||
|
- echo "SETTING UP SSH"
|
||||||
|
- apk add openssh-client
|
||||||
|
- mkdir -p $HOME/.ssh
|
||||||
|
- ssh-keyscan -t ed25519 turtle.hup.is >> $HOME/.ssh/known_hosts
|
||||||
|
- echo "$DEPLOY_SSH_KEY" > $HOME/.ssh/id_ed25519
|
||||||
|
- chmod 0600 $HOME/.ssh/id_ed25519
|
||||||
|
- echo "SSH SETUP DONE"
|
||||||
|
- echo "RUNNING DEPLOY SCRIPT"
|
||||||
|
- ./.woodpecker/deploy.sh
|
||||||
|
when:
|
||||||
|
# Only try to deploy if previous step is successful
|
||||||
|
status: success
|
32
.woodpecker/deploy.sh
Executable file
32
.woodpecker/deploy.sh
Executable file
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
# hello variables
|
||||||
|
host=deploy@turtle.hup.is
|
||||||
|
|
||||||
|
# organize the files
|
||||||
|
echo "ORGANIZING THE FILES NICELY"
|
||||||
|
mkdir oxaliq
|
||||||
|
mv dist oxaliq/.
|
||||||
|
mv source oxaliq/.
|
||||||
|
mv static oxaliq/.
|
||||||
|
|
||||||
|
# put them on the deployment target
|
||||||
|
echo "COPYING FILES TO DEPLOYMENT TARGET"
|
||||||
|
scp -r oxaliq "$host":~/
|
||||||
|
|
||||||
|
# do everything on the server that's necessary to run the new thing
|
||||||
|
# TODO make this not remove the old-working version until
|
||||||
|
# the new version is confirmed working
|
||||||
|
echo "SETTING OWNERSHIP AND PERMISSIONS"
|
||||||
|
ssh $host 'sudo chown -R sorreldotdev:sorreldotdev oxaliq/'
|
||||||
|
ssh $host 'sudo chmod -R 755 oxaliq/'
|
||||||
|
|
||||||
|
echo "REPLACING PREVIOUS DEPLOYMENT"
|
||||||
|
ssh $host 'sudo rm -rf /srv/oxaliq || true'
|
||||||
|
ssh $host 'sudo mv oxaliq /srv/.'
|
||||||
|
|
||||||
|
echo "RESTARTING SERVICE"
|
||||||
|
ssh $host 'sudo systemctl restart sorreldotdev.service'
|
||||||
|
|
||||||
|
echo "SUCCESS!"
|
||||||
|
exit 0
|
Loading…
Reference in a new issue