diff --git a/deployment/deploy_vm.sh b/deployment/deploy_vm.sh index daf33aa..c69d2c4 100755 --- a/deployment/deploy_vm.sh +++ b/deployment/deploy_vm.sh @@ -53,31 +53,35 @@ if ! incus list --format csv | grep -q "$INCUS_VM_NAME"; then SSDATA_DISK_SIZE_GB="$BTCPAYSERVER_SSDATA_DISK_SIZE_GB" DOCKER_DISK_SIZE_GB="$BTCPAYSERVER_DOCKER_DISK_SIZE_GB" fi - - DOCKER_VOLUME_NAME="$VIRTUAL_MACHINE-docker" - if ! incus storage volume list ss-base | grep -q "$DOCKER_VOLUME_NAME"; then - incus storage volume create ss-base "$DOCKER_VOLUME_NAME" --type=block + + SSDATA_VOLUME_NAME= + BACKUP_VOLUME_NAME= + if [ "$VIRTUAL_MACHINE" != lnplayserver ]; then + DOCKER_VOLUME_NAME="$VIRTUAL_MACHINE-docker" + if ! incus storage volume list ss-base | grep -q "$DOCKER_VOLUME_NAME"; then + incus storage volume create ss-base "$DOCKER_VOLUME_NAME" --type=block + fi + + # TODO ensure we are only GROWING the volume--never shrinking + incus storage volume set ss-base "$DOCKER_VOLUME_NAME" size="${DOCKER_DISK_SIZE_GB}GB" + + SSDATA_VOLUME_NAME="$VIRTUAL_MACHINE-ss-data" + if ! incus storage volume list ss-base | grep -q "$SSDATA_VOLUME_NAME"; then + incus storage volume create ss-base "$SSDATA_VOLUME_NAME" --type=filesystem + fi + + # TODO ensure we are only GROWING the volume--never shrinking per zfs volume docs. + incus storage volume set ss-base "$SSDATA_VOLUME_NAME" size="${SSDATA_DISK_SIZE_GB}GB" + + BACKUP_VOLUME_NAME="$VIRTUAL_MACHINE-backup" + if ! incus storage volume list ss-base | grep -q "$BACKUP_VOLUME_NAME"; then + incus storage volume create ss-base "$BACKUP_VOLUME_NAME" --type=filesystem + fi + + incus storage volume set ss-base "$BACKUP_VOLUME_NAME" size="${BACKUP_DISK_SIZE_GB}GB" + fi - # TODO ensure we are only GROWING the volume--never shrinking - incus storage volume set ss-base "$DOCKER_VOLUME_NAME" size="${DOCKER_DISK_SIZE_GB}GB" - - SSDATA_VOLUME_NAME="$VIRTUAL_MACHINE-ss-data" - if ! incus storage volume list ss-base | grep -q "$SSDATA_VOLUME_NAME"; then - incus storage volume create ss-base "$SSDATA_VOLUME_NAME" --type=filesystem - fi - - # TODO ensure we are only GROWING the volume--never shrinking per zfs volume docs. - incus storage volume set ss-base "$SSDATA_VOLUME_NAME" size="${SSDATA_DISK_SIZE_GB}GB" - - - BACKUP_VOLUME_NAME="$VIRTUAL_MACHINE-backup" - if ! incus storage volume list ss-base | grep -q "$BACKUP_VOLUME_NAME"; then - incus storage volume create ss-base "$BACKUP_VOLUME_NAME" --type=filesystem - fi - - incus storage volume set ss-base "$BACKUP_VOLUME_NAME" size="${BACKUP_DISK_SIZE_GB}GB" - bash -c "./stub_profile.sh --vm=$VIRTUAL_MACHINE --incus-hostname=$INCUS_VM_NAME --ss-volume-name=$SSDATA_VOLUME_NAME --backup-volume-name=$BACKUP_VOLUME_NAME" @@ -89,8 +93,10 @@ if ! incus list --format csv | grep -q "$INCUS_VM_NAME"; then # and so we can set DNS internally. incus config set "$INCUS_VM_NAME" "volatile.enp5s0.hwaddr=$MAC_ADDRESS_TO_PROVISION" - # attack the docker block device. - incus storage volume attach ss-base "$DOCKER_VOLUME_NAME" "$INCUS_VM_NAME" + if [ "$VIRTUAL_MACHINE" != lnplayserver ]; then + # attack the docker block device. + incus storage volume attach ss-base "$DOCKER_VOLUME_NAME" "$INCUS_VM_NAME" + fi # if [ "$VIRTUAL_MACHINE" = btcpayserver ]; then # # attach any volumes @@ -110,7 +116,9 @@ if ! incus list --format csv | grep -q "$INCUS_VM_NAME"; then # scan the remote machine and install it's identity in our SSH known_hosts file. ssh-keyscan -H "$FQDN" >> "$SSH_HOME/known_hosts" - ssh "$FQDN" "sudo chown ubuntu:ubuntu $REMOTE_DATA_PATH" - ssh "$FQDN" "sudo chown -R ubuntu:ubuntu $REMOTE_BACKUP_PATH" + if [ "$VIRTUAL_MACHINE" != lnplayserver ]; then + ssh "$FQDN" "sudo chown ubuntu:ubuntu $REMOTE_DATA_PATH" + ssh "$FQDN" "sudo chown -R ubuntu:ubuntu $REMOTE_BACKUP_PATH" + fi fi \ No newline at end of file diff --git a/deployment/deployment_defaults.sh b/deployment/deployment_defaults.sh index 30f6975..b72147a 100755 --- a/deployment/deployment_defaults.sh +++ b/deployment/deployment_defaults.sh @@ -32,10 +32,6 @@ export BTCPAYSERVER_SSDATA_DISK_SIZE_GB=20 export BTCPAYSERVER_BACKUP_DISK_SIZE_GB=20 export BTCPAYSERVER_DOCKER_DISK_SIZE_GB=30 -export LNPLAY_SERVER_SSDATA_DISK_SIZE_GB=20 -export LNPLAY_SERVER_BACKUP_DISK_SIZE_GB=20 -export LNPLAY_SSERVER_DOCKER_DISK_SIZE_GB=100 - export WWW_HOSTNAME="www" export BTCPAY_SERVER_HOSTNAME="btcpayserver" export LNPLAY_SERVER_HOSTNAME="lnplayserver" @@ -46,7 +42,6 @@ export NOSTR_HOSTNAME="relay" export REGISTRY_URL="https://index.docker.io/v1" - export BTCPAY_SERVER_CPU_COUNT="4" export BTCPAY_SERVER_MEMORY_MB="4096" export WWW_SERVER_CPU_COUNT="4" @@ -54,4 +49,3 @@ export WWW_SERVER_MEMORY_MB="4096" export LNPLAY_SERVER_CPU_COUNT="4" export LNPLAY_SERVER_MEMORY_MB="4096" export DOCKER_IMAGE_CACHE_FQDN="registry-1.docker.io" - diff --git a/deployment/stub_profile.sh b/deployment/stub_profile.sh index c08290f..1804567 100755 --- a/deployment/stub_profile.sh +++ b/deployment/stub_profile.sh @@ -182,8 +182,13 @@ if [ "$VIRTUAL_MACHINE" != base ]; then preserve_hostname: true fqdn: ${FQDN} - resize_rootfs: false +EOF +fi +if [ "$VIRTUAL_MACHINE" = www ] || [ "$VIRTUAL_MACHINE" = btcpayserver ]; then + # all other machines that are not the base image + cat >> "$YAML_PATH" <> "$YAML_PATH" <> "$YAML_PATH" <> "$YAML_PATH" <> "$YAML_PATH" <> "$YAML_PATH" <> "$YAML_PATH" <