mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-09-13 07:10:51 +02:00
Compare commits
15 Commits
2025-01-10
...
2025-01-13
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2f620240a8 | ||
|
|
07c9dc4d0a | ||
|
|
8caf5e59b3 | ||
|
|
f8ab39e4d6 | ||
|
|
e47d7c4452 | ||
|
|
ac64a9de31 | ||
|
|
737625024e | ||
|
|
6958021528 | ||
|
|
cc40b5957d | ||
|
|
92020fed07 | ||
|
|
1476d1b6c4 | ||
|
|
0d8dcd5643 | ||
|
|
2347a669f2 | ||
|
|
6decf14d2e | ||
|
|
26d73317e8 |
44
.github/workflows/shellcheck.yml
vendored
44
.github/workflows/shellcheck.yml
vendored
@@ -18,15 +18,45 @@ jobs:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Get changed files
|
||||
id: changes
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v45
|
||||
with:
|
||||
files: |
|
||||
**.sh
|
||||
|
||||
# This is a manual copy from https://github.com/ludeeus/action-shellcheck/blob/00b27aa7cb85167568cb48a3838b75f4265f2bca/action.yaml#L59
|
||||
# Why? Because the action is not capable of adding ONLY a list of files.
|
||||
# We aim to only check the files that have changed.
|
||||
# This is used as we deal with a codebase that throws a lot of warnings.
|
||||
# Checking only the changed files is a good compromise to improve the codebase over time.
|
||||
- name: Download shellcheck
|
||||
shell: bash
|
||||
env:
|
||||
INPUT_VERSION: "v0.10.0"
|
||||
run: |
|
||||
if ${{ github.event_name == 'pull_request' }}; then
|
||||
echo "files=$(git diff --name-only -r HEAD^1 HEAD | xargs)" >> $GITHUB_OUTPUT
|
||||
if [[ "${{ runner.os }}" == "macOS" ]]; then
|
||||
osvariant="darwin"
|
||||
else
|
||||
echo "files=$(git diff --name-only ${{ github.event.before }} ${{ github.event.after }} | xargs)" >> $GITHUB_OUTPUT
|
||||
osvariant="linux"
|
||||
fi
|
||||
|
||||
- name: Run ShellCheck
|
||||
if: steps.changes.outputs.files != ''
|
||||
baseurl="https://github.com/koalaman/shellcheck/releases/download"
|
||||
|
||||
curl -Lso "${{ github.action_path }}/sc.tar.xz" \
|
||||
"${baseurl}/${INPUT_VERSION}/shellcheck-${INPUT_VERSION}.${osvariant}.x86_64.tar.xz"
|
||||
|
||||
tar -xf "${{ github.action_path }}/sc.tar.xz" -C "${{ github.action_path }}"
|
||||
mv "${{ github.action_path }}/shellcheck-${INPUT_VERSION}/shellcheck" \
|
||||
"${{ github.action_path }}/shellcheck"
|
||||
|
||||
- name: Display shellcheck version
|
||||
shell: bash
|
||||
run: |
|
||||
echo "${{ steps.changes.outputs.files }}" | xargs shellcheck
|
||||
"${{ github.action_path }}/shellcheck" --version
|
||||
|
||||
- name: Run ShellCheck
|
||||
if: steps.changed-files-specific.outputs.any_changed == 'true'
|
||||
env:
|
||||
ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
|
||||
run: |
|
||||
echo "${ALL_CHANGED_FILES}" | xargs shellcheck
|
||||
|
||||
36
CHANGELOG.md
36
CHANGELOG.md
@@ -16,6 +16,42 @@ All LXC instances created using this repository come pre-installed with Midnight
|
||||
> [!IMPORTANT]
|
||||
Do not break established syntax in this file, as it is automatically updated by a Github Workflow
|
||||
|
||||
## 2025-01-13
|
||||
|
||||
### Changed
|
||||
|
||||
### 💥 Breaking Changes
|
||||
|
||||
- Update Hoarder: Improvement .env location (see PR comment for little migration) [@MahrWe](https://github.com/MahrWe) ([#1325](https://github.com/community-scripts/ProxmoxVE/pull/1325))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- Fix: tandoor.sh: Call version.py to write current version [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1454](https://github.com/community-scripts/ProxmoxVE/pull/1454))
|
||||
- Fix inexistent folder on actualbudget update script [@dosten](https://github.com/dosten) ([#1444](https://github.com/community-scripts/ProxmoxVE/pull/1444))
|
||||
|
||||
### 🌐 Website
|
||||
|
||||
- Update kavita.json: Add info on how to enable folder adding. [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1447](https://github.com/community-scripts/ProxmoxVE/pull/1447))
|
||||
|
||||
### 🧰 Maintenance
|
||||
|
||||
- GitHub Actions: Fix Shellsheck workflow to only run on changes `*.sh` files [@andygrunwald](https://github.com/andygrunwald) ([#1423](https://github.com/community-scripts/ProxmoxVE/pull/1423))
|
||||
|
||||
### ❔ Unlabelled
|
||||
|
||||
- feat: allow adding SSH authorized key for root (advanced settings) by @dsiebel [@MickLesk](https://github.com/MickLesk) ([#1456](https://github.com/community-scripts/ProxmoxVE/pull/1456))
|
||||
|
||||
## 2025-01-11
|
||||
|
||||
### Changed
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- Prometheus: Fix installation via creating the service file [@andygrunwald](https://github.com/andygrunwald) ([#1416](https://github.com/community-scripts/ProxmoxVE/pull/1416))
|
||||
- Update prometheus-install.sh: Service creation fix [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1417](https://github.com/community-scripts/ProxmoxVE/pull/1417))
|
||||
- Update prometheus-alertmanager-install.sh: Service Creation Fix [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1418](https://github.com/community-scripts/ProxmoxVE/pull/1418))
|
||||
- Fix: LubeLogger CT vehicle tag typo [@kkroboth](https://github.com/kkroboth) ([#1413](https://github.com/community-scripts/ProxmoxVE/pull/1413))
|
||||
|
||||
## 2025-01-10
|
||||
|
||||
### Changed
|
||||
|
||||
@@ -45,6 +45,7 @@ function update_script() {
|
||||
cd "${TEMPD}"
|
||||
wget -q https://codeload.github.com/actualbudget/actual-server/legacy.tar.gz/refs/tags/${RELEASE} -O - | tar -xz
|
||||
mv /opt/actualbudget /opt/actualbudget_bak
|
||||
mkdir -p /opt/actualbudget/
|
||||
mv actualbudget-actual-server-*/* /opt/actualbudget/
|
||||
mv /opt/actualbudget_bak/.env /opt/actualbudget
|
||||
mv /opt/actualbudget_bak/server-files /opt/actualbudget/server-files
|
||||
|
||||
@@ -40,7 +40,10 @@ function update_script() {
|
||||
msg_ok "Stopped Services"
|
||||
msg_info "Updating ${APP} to v${RELEASE}"
|
||||
cd /opt
|
||||
mv /opt/hoarder/.env /opt/.env
|
||||
if [[ -f /opt/hoarder/.env ]] && [[ ! -f /etc/hoarder/hoarder.env ]]; then
|
||||
mkdir -p /etc/hoarder
|
||||
mv /opt/hoarder/.env /etc/hoarder/hoarder.env
|
||||
fi
|
||||
rm -rf /opt/hoarder
|
||||
wget -q "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip"
|
||||
unzip -q v${RELEASE}.zip
|
||||
@@ -54,8 +57,7 @@ function update_script() {
|
||||
export DATA_DIR=/opt/hoarder_data
|
||||
cd /opt/hoarder/packages/db
|
||||
pnpm migrate &>/dev/null
|
||||
mv /opt/.env /opt/hoarder/.env
|
||||
sed -i "s/SERVER_VERSION=${PREV_RELEASE}/SERVER_VERSION=${RELEASE}/" /opt/hoarder/.env
|
||||
sed -i "s/SERVER_VERSION=${PREV_RELEASE}/SERVER_VERSION=${RELEASE}/" /etc/hoarder/hoarder.env
|
||||
msg_ok "Updated ${APP} to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Services"
|
||||
|
||||
@@ -7,7 +7,7 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m
|
||||
|
||||
# App Default Values
|
||||
APP="LubeLogger"
|
||||
var_tags="verhicle;car"
|
||||
var_tags="vehicle;car"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_disk="2"
|
||||
|
||||
@@ -45,6 +45,8 @@ function update_script() {
|
||||
cd /opt/tandoor/vue
|
||||
yarn install >/dev/null 2>&1
|
||||
yarn build >/dev/null 2>&1
|
||||
cd /opt/tandoor
|
||||
python3 version.py &>/dev/null
|
||||
systemctl restart gunicorn_tandoor
|
||||
msg_ok "Updated ${APP}"
|
||||
fi
|
||||
|
||||
@@ -78,7 +78,8 @@ $STD pnpm install --frozen-lockfile
|
||||
|
||||
export DATA_DIR=/opt/hoarder_data
|
||||
HOARDER_SECRET=$(openssl rand -base64 36 | cut -c1-24)
|
||||
cat <<EOF >/opt/hoarder/.env
|
||||
mkdir -p /etc/hoarder
|
||||
cat <<EOF >/etc/hoarder/hoarder.env
|
||||
SERVER_VERSION=$RELEASE
|
||||
NEXTAUTH_SECRET="$HOARDER_SECRET"
|
||||
NEXTAUTH_URL="http://localhost:3000"
|
||||
@@ -129,7 +130,7 @@ After=network.target hoarder-workers.service
|
||||
[Service]
|
||||
ExecStart=pnpm start
|
||||
WorkingDirectory=/opt/hoarder/apps/web
|
||||
EnvironmentFile=/opt/hoarder/.env
|
||||
EnvironmentFile=/etc/hoarder/hoarder.env
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
@@ -159,7 +160,7 @@ After=network.target hoarder-browser.service meilisearch.service
|
||||
[Service]
|
||||
ExecStart=pnpm start:prod
|
||||
WorkingDirectory=/opt/hoarder/apps/workers
|
||||
EnvironmentFile=/opt/hoarder/.env
|
||||
EnvironmentFile=/etc/hoarder/hoarder.env
|
||||
Restart=always
|
||||
TimeoutStopSec=5
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ msg_ok "Installed Prometheus Alertmanager"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/prometheus-alertmanager.service
|
||||
echo "[Unit]
|
||||
[Unit]
|
||||
Description=Prometheus Alertmanager
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
@@ -49,7 +49,7 @@ ExecStart=/usr/local/bin/alertmanager \
|
||||
ExecReload=/bin/kill -HUP \$MAINPID
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target"
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now prometheus-alertmanager
|
||||
msg_ok "Created Service"
|
||||
|
||||
@@ -32,8 +32,8 @@ echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
||||
msg_ok "Installed Prometheus"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/prometheus.service"
|
||||
echo "[Unit]
|
||||
cat <<EOF >/etc/systemd/system/prometheus.service
|
||||
[Unit]
|
||||
Description=Prometheus
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
@@ -49,7 +49,7 @@ ExecStart=/usr/local/bin/prometheus \
|
||||
ExecReload=/bin/kill -HUP \$MAINPID
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target"
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now prometheus
|
||||
msg_ok "Created Service"
|
||||
|
||||
@@ -30,5 +30,9 @@
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": []
|
||||
"notes": [{
|
||||
"text": "To enable folder adding append your lxc.conf on your host with 'lxc.environment: DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1'",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -283,6 +283,7 @@ base_settings() {
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
SSH_AUTHORIZED_KEY=""
|
||||
TAGS="community-script;"
|
||||
|
||||
# Override default settings with variables from ct script
|
||||
@@ -314,9 +315,9 @@ echo_default() {
|
||||
echo -e "${OS}${BOLD}${DGN}Operating System: ${BGN}$var_os${CL}"
|
||||
echo -e "${OSVERSION}${BOLD}${DGN}Version: ${BGN}$var_version${CL}"
|
||||
echo -e "${CONTAINERTYPE}${BOLD}${DGN}Container Type: ${BGN}$CT_TYPE_DESC${CL}"
|
||||
echo -e "${DISKSIZE}${BOLD}${DGN}Disk Size: ${BGN}${DISK_SIZE}GB${CL}"
|
||||
echo -e "${DISKSIZE}${BOLD}${DGN}Disk Size: ${BGN}${DISK_SIZE} GB${CL}"
|
||||
echo -e "${CPUCORE}${BOLD}${DGN}CPU Cores: ${BGN}${CORE_COUNT}${CL}"
|
||||
echo -e "${RAMSIZE}${BOLD}${DGN}RAM Size: ${BGN}${RAM_SIZE}MiB${CL}"
|
||||
echo -e "${RAMSIZE}${BOLD}${DGN}RAM Size: ${BGN}${RAM_SIZE} MiB${CL}"
|
||||
echo -e "${CONTAINERID}${BOLD}${DGN}Container ID: ${BGN}${CT_ID}${CL}"
|
||||
if [ "$VERB" == "yes" ]; then
|
||||
echo -e "${SEARCH}${BOLD}${DGN}Verbose Mode: ${BGN}Enabled${CL}"
|
||||
@@ -463,13 +464,13 @@ advanced_settings() {
|
||||
if DISK_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set Disk Size in GB" 8 58 $var_disk --title "DISK SIZE" 3>&1 1>&2 2>&3); then
|
||||
if [ -z "$DISK_SIZE" ]; then
|
||||
DISK_SIZE="$var_disk"
|
||||
echo -e "${DISKSIZE}${BOLD}${DGN}Disk Size: ${BGN}${DISK_SIZE}GB${CL}"
|
||||
echo -e "${DISKSIZE}${BOLD}${DGN}Disk Size: ${BGN}${DISK_SIZE} GB${CL}"
|
||||
else
|
||||
if ! [[ $DISK_SIZE =~ $INTEGER ]]; then
|
||||
echo -e "{INFO}${HOLD}${RD} DISK SIZE MUST BE AN INTEGER NUMBER!${CL}"
|
||||
advanced_settings
|
||||
fi
|
||||
echo -e "${DISKSIZE}${BOLD}${DGN}Disk Size: ${BGN}${DISK_SIZE}GB${CL}"
|
||||
echo -e "${DISKSIZE}${BOLD}${DGN}Disk Size: ${BGN}${DISK_SIZE} GB${CL}"
|
||||
fi
|
||||
else
|
||||
exit_script
|
||||
@@ -489,9 +490,9 @@ advanced_settings() {
|
||||
if RAM_SIZE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Allocate RAM in MiB" 8 58 $var_ram --title "RAM" 3>&1 1>&2 2>&3); then
|
||||
if [ -z "$RAM_SIZE" ]; then
|
||||
RAM_SIZE="$var_ram"
|
||||
echo -e "${RAMSIZE}${BOLD}${DGN}RAM Size: ${BGN}${RAM_SIZE}MiB${CL}"
|
||||
echo -e "${RAMSIZE}${BOLD}${DGN}RAM Size: ${BGN}${RAM_SIZE} MiB${CL}"
|
||||
else
|
||||
echo -e "${RAMSIZE}${BOLD}${DGN}RAM Size: ${BGN}${RAM_SIZE}MiB${CL}"
|
||||
echo -e "${RAMSIZE}${BOLD}${DGN}RAM Size: ${BGN}${RAM_SIZE} MiB${CL}"
|
||||
fi
|
||||
else
|
||||
exit_script
|
||||
@@ -649,6 +650,15 @@ advanced_settings() {
|
||||
echo -e "${ROOTSSH}${BOLD}${DGN}Root SSH Access: ${BGN}$SSH${CL}"
|
||||
fi
|
||||
|
||||
if [[ "${SSH}" == "yes" ]]; then
|
||||
SSH_AUTHORIZED_KEY="$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "SSH Authorized key for root (leave empty for none)" 8 58 --title "SSH Key" 3>&1 1>&2 2>&3)"
|
||||
|
||||
if [[ -z "${SSH_AUTHORIZED_KEY}" ]]; then
|
||||
echo "Warning: No SSH key provided."
|
||||
fi
|
||||
else
|
||||
SSH_AUTHORIZED_KEY=""
|
||||
fi
|
||||
if (whiptail --backtitle "Proxmox VE Helper Scripts" --defaultno --title "VERBOSE MODE" --yesno "Enable Verbose Mode?" 10 58); then
|
||||
VERB="yes"
|
||||
else
|
||||
@@ -703,7 +713,7 @@ install_script() {
|
||||
;;
|
||||
2)
|
||||
header_info
|
||||
echo -e "${DEFAULT}${BOLD}${BL}Using Default Settings on node $PVEHOST_NAME (${SEARCH}${BL}Verbose)${CL}"
|
||||
echo -e "${DEFAULT}${BOLD}${BL}Using Default Settings on node $PVEHOST_NAME (${SEARCH}Verbose)${CL}"
|
||||
VERB="yes"
|
||||
base_settings "$VERB"
|
||||
echo_default
|
||||
|
||||
Reference in New Issue
Block a user