export ORG_NAME=$(hostname) #$(pwgen 4 1)
export STACK_NAME=nextcloud
export DOMAIN="${STACK_NAME}.${ORG_NAME}"
echo "mkcd(){ mkdir -p \$1 && cd \$1; };" >> ~/.bashrc
source ~/.bashrc
mkcd "~/srv/${ORG_NAME}/${STACK_NAME}"
git clone https://github.com/wasoeki/nextcloud-setup.git git
podman compose up --detach nextcloud mariadb reverse-proxy
terraform
# Enter root session
sudo -i
# Enter your sudo password
cat > /etc/apt/apt.conf.d/99proxy <<ENDMSG
Acquire::http::proxy::apt.releases.hashicorp.com "$HTTP_PROXY";
Acquire::https::proxy::apt.releases.hashicorp.com "$HTTPS_PROXY";
ENDMSG
# Exit the root session
exit
# Add keyring
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
# Add repo
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
# Install terraform
sudo apt update && sudo apt install terraform
Add it to your PATH
export PATH=$PATH:$PWD:/usr/local/bin
sudo install secrets-manager /usr/local/bin/
Add your creds in env vars to ease management
cat >> ~/.bashrc <<ENDMSG
export GITHUB_USER=me
export GITHUB_TOKEN=ghp_XXXXXXXXXXXXXXXXXXX
ENDMSG
source ~/.bashrc
# You must be at the root and go to github/terraform/ in the git repo
rootpath=$(pwd)
cd github/terraform
terraform init
find secrets/ -type f ! -name "*.enc" | xargs -I {} ln -s {} .
# or
# ln -s secrets/variables.tf variables.tf
terraform apply
cd $rootpath
rm -rf .git
git init -b dev
git remote add origin https://$GITHUB_USER:$GITHUB_TOKEN@github.com/wasoeki/nextcloud-setup.git
secrets-manager -e
git add .
git add **\.enc -f
git commit -m "init"
git branch --set-upstream-to=origin/dev dev
git pull --rebase
git push --set-upstream origin dev
# You must be at the root of the git repo
# Ask a collegue to get the correct passfile inside your /tmp directory
cp /tmp/.nextcloud-setup.secrets.pass .
secrets-manager -d
cd github/terraform
find secrets/ -type f ! -name "*.enc" | xargs -I {} ln -s {} .
# or
# ln -s secrets/variables.tf variables.tf