Skip to content

Conversation

@JamesonRGrieve
Copy link

@JamesonRGrieve JamesonRGrieve commented Oct 30, 2025

Scripts wich are clearly AI generated and not further revied by the Author of this PR (in terms of Coding Standards and Script Layout) may be closed without review.

✍️ Description

Implements ERPNext as a deployable service. Confirmed working on my fork.

Opening as a draft in case there is interest / suggestions while I clean up before readying. :)

✅ Prerequisites (X in brackets)

see above, will check off all when ready for review

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No breaking changes – Existing functionality remains intact.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

🔍 Code & Security Review (X in brackets)

see above, will check off all when ready for review

  • Follows Code_Audit.md & CONTRIBUTING.md guidelines
  • Uses correct script structure (AppName.sh, AppName-install.sh, AppName.json)
  • No hardcoded credentials

📋 Additional Information (optional)

image image

JamesonRGrieve and others added 28 commits October 27, 2025 13:31
…te-erpnext-deployment-scripts

Restore CT headers for ERPNext helpers
…ate-erpnext.sh-for-lxc-container

Add interactive ERPNext container provisioning
…ate-erpnext.sh-for-lxc-deployment

Enhance ERPNext CT setup prompts
…ate-erpnext.sh-for-lxc-deployment-vpzzi1

Improve MariaDB connectivity setup for ERPNext
…ate-erpnext.sh-for-lxc-deployment-rzam4z

Implement baremetal ERPNext container installer
…ate-erpnext-lxc-container-script

Revert keep-env flag from build.func
…ate-erpnext-shell-script-for-lxc

Improve ERPNext CT provisioning with external service checks
…ate-erpnext-installation-script-for-lxc

Add runtime checks for ERPNext external services
…ate-erpnext.sh-for-lxc-container-2beuy1

Improve ERPNext CT service detection reliability
…ate-erpnext.sh-for-lxc-container-t81gev

Harden ERPNext service port detection
…ate-erpnext.sh-for-lxc-container-setup

Improve ERPNext container external service integration
@JamesonRGrieve
Copy link
Author

Install suceeds, service start is hanging on nginx config - will have to debug that but the script itself should be 99% ready for another look. I'll fix any other change requests when I troubleshoot nginx.

Comment on lines +12 to +13
source <(curl -fsSL "${BASE_URL:-https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main}/misc/core.func")
source <(curl -fsSL "${BASE_URL:-https://git.community-scripts.org/community-scripts/ProxmoxVED/raw/branch/main}/misc/error_handler.func")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove this from this PR please

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As mentioned in the commit messages, they will be dropped when testing is finished.

"ram": 8192,
"hdd": 40,
"os": "Debian",
"version": "12"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

against deb13 please

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I remember correctly deb13 wasn't an option in the json builder, but I could be wrong. Will update manually regardless.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JamesonRGrieve thanks for the note, will fix

libpq-dev \
wait-for-it \
media-types \
wget \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wget is part of core deps

libpangoft2-1.0-0 \
libpangocairo-1.0-0 \
restic \
gpg \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this one too

python3-venv
msg_ok "Installed prerequisites"

# Configure Redis to listen on 127.0.0.1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove comment


systemctl enable -q --now redis-server

# Wait for Redis to be ready
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove comment

Comment on lines +191 to +196
# msg_info "Building frontend assets"
# sudo -u frappe -H bash -c "set -Eeuo pipefail
# cd /home/frappe/bench
# bench build
# "
# msg_ok "Frontend assets ready"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove comments

SITE_DB_PASSWORD=$(jq -r '.db_password // empty' "$SITE_CONFIG_PATH" 2>/dev/null || true)
fi

create_service() {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd say gone as well, it makes it harder for newbies to follow what this is doing, our scripts should be as easy as possible to understand so people can actually check them before running


msg_info "Creating systemd units"

create_service "erpnext-backend" "[Unit]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just do it the same way as in our other scripts

proxy_pass http://erpnext_backend;
}
}
EOF_NGINX
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

EOF


msg_info "Configuring nginx"
mkdir -p /etc/nginx/conf.d
cat >/etc/nginx/conf.d/erpnext.conf <<EOF_NGINX
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do it the same as in our other scripts

@JamesonRGrieve
Copy link
Author

Just an update, will be continuing this but had a mountain of stuff dumped on my plate for dayjob.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants