diff --git a/.github/workflows/auto-update-app-headers.yml b/.github/workflows/auto-update-app-headers.yml
index 5e447ea..541442d 100644
--- a/.github/workflows/auto-update-app-headers.yml
+++ b/.github/workflows/auto-update-app-headers.yml
@@ -5,11 +5,12 @@ on:
branches:
- main
paths:
- - 'ct/**.sh'
- workflow_dispatch:
+ - "ct/**.sh"
+ workflow_dispatch:
jobs:
update-app-files:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
permissions:
@@ -79,7 +80,7 @@ jobs:
--label "automated pr"
env:
GH_TOKEN: ${{ steps.generate-token.outputs.token }}
-
+
- name: Approve pull request
if: env.changed == 'true'
env:
@@ -89,7 +90,7 @@ jobs:
if [ -n "$PR_NUMBER" ]; then
gh pr review $PR_NUMBER --approve
fi
-
+
- name: Re-approve pull request after update
if: env.changed == 'true'
env:
diff --git a/.github/workflows/autolabeler.yml b/.github/workflows/autolabeler.yml
index 013c40b..149382c 100644
--- a/.github/workflows/autolabeler.yml
+++ b/.github/workflows/autolabeler.yml
@@ -7,6 +7,7 @@ on:
jobs:
autolabeler:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
permissions:
pull-requests: write
@@ -42,9 +43,9 @@ jobs:
pull_number: prNumber,
});
const prFiles = prListFilesResponse.data;
-
-
+
+
// Apply labels based on file changes
for (const [label, rules] of Object.entries(autolabelerConfig)) {
const shouldAddLabel = prFiles.some((prFile) => {
@@ -66,17 +67,17 @@ jobs:
"✨ **New feature**": "feature",
"💥 **Breaking change**": "breaking change",
};
-
+
for (const [checkbox, label] of Object.entries(templateLabelMappings)) {
const escapedCheckbox = checkbox.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
const regex = new RegExp(`- \\[(x|X)\\]\\s*.*${escapedCheckbox}`, "i");
- const match = prBody.match(regex);
+ const match = prBody.match(regex);
if (match) {
console.log(`Match: ${match}`);
labelsToAdd.add(label);
}
}
-
+
console.log(`Labels to add: ${Array.from(labelsToAdd).join(", ")}`);
if (labelsToAdd.size > 0) {
diff --git a/.github/workflows/changelog-pr.yaml b/.github/workflows/changelog-pr.yaml
index c8fa281..ec4d7d7 100644
--- a/.github/workflows/changelog-pr.yaml
+++ b/.github/workflows/changelog-pr.yaml
@@ -7,7 +7,7 @@ on:
jobs:
update-changelog-pull-request:
- if: github.repository == 'community-scripts/ProxmoxVE'
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
env:
CONFIG_PATH: .github/changelog-pr-config.json
diff --git a/.github/workflows/close-discussion.yaml b/.github/workflows/close-discussion.yaml
index 80a3f50..9b0352f 100644
--- a/.github/workflows/close-discussion.yaml
+++ b/.github/workflows/close-discussion.yaml
@@ -11,6 +11,7 @@ permissions:
jobs:
close-discussion:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
steps:
diff --git a/.github/workflows/close-ttek-issue.yaml b/.github/workflows/close-ttek-issue.yaml
index a71622e..037d607 100644
--- a/.github/workflows/close-ttek-issue.yaml
+++ b/.github/workflows/close-ttek-issue.yaml
@@ -6,6 +6,7 @@ on:
jobs:
close_tteck_issues:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
steps:
- name: Auto-close if tteck script detected
@@ -22,12 +23,12 @@ jobs:
This repository is no longer used for active scripts.
**Please update your bookmarks** and use: [https://helper-scripts.com](https://helper-scripts.com)
-
+
Also make sure your Bash command starts with:
\`\`\`bash
bash <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/...)
\`\`\`
-
+
This issue is being closed automatically.`;
await github.rest.issues.createComment({
diff --git a/.github/workflows/create-ready-for-testing-message.yml b/.github/workflows/create-ready-for-testing-message.yml
index 4c1770b..939bb04 100644
--- a/.github/workflows/create-ready-for-testing-message.yml
+++ b/.github/workflows/create-ready-for-testing-message.yml
@@ -11,7 +11,7 @@ permissions:
jobs:
post_to_discord:
runs-on: ubuntu-latest
- if: contains(github.event.issue.labels.*.name, 'Ready For Testing')
+ if: contains(github.event.issue.labels.*.name, 'Ready For Testing') && github.repository == 'community-scripts/ProxmoxVED'
steps:
- name: Extract Issue Title (Lowercase & Underscores)
id: extract_title
diff --git a/.github/workflows/delete-discord-thread.yml b/.github/workflows/delete-discord-thread.yml
index 92972e6..19e3608 100644
--- a/.github/workflows/delete-discord-thread.yml
+++ b/.github/workflows/delete-discord-thread.yml
@@ -7,13 +7,14 @@ on:
jobs:
close_discord_thread:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
steps:
- name: Get thread-ID op and close thread
run: |
ISSUE_TITLE="${{ github.event.issue.title }}"
-
+
THREAD_ID=$(curl -s -X GET "https://discord.com/api/v10/guilds/${{ secrets.DISCORD_GUILD_ID }}/threads/active" \
-H "Authorization: Bot ${{ secrets.DISCORD_BOT_TOKEN }}" \
-H "Content-Type: application/json" | \
diff --git a/.github/workflows/delete_new_script.yaml b/.github/workflows/delete_new_script.yaml
index 0f05c83..d938ea5 100644
--- a/.github/workflows/delete_new_script.yaml
+++ b/.github/workflows/delete_new_script.yaml
@@ -7,7 +7,7 @@ on:
jobs:
delete-files:
runs-on: ubuntu-latest
- if: contains(github.event.issue.labels.*.name, 'Started Migration To ProxmoxVE')
+ if: contains(github.event.issue.labels.*.name, 'Started Migration To ProxmoxVE') && github.repository == 'community-scripts/ProxmoxVED'
steps:
- name: Checkout repository
uses: actions/checkout@v4
diff --git a/.github/workflows/frontend-cicd.yml b/.github/workflows/frontend-cicd.yml
index 4eb3676..6adaf0c 100644
--- a/.github/workflows/frontend-cicd.yml
+++ b/.github/workflows/frontend-cicd.yml
@@ -25,10 +25,11 @@ concurrency:
jobs:
build:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
defaults:
run:
- working-directory: frontend # Set default working directory for all run steps
+ working-directory: frontend # Set default working directory for all run steps
steps:
- name: Checkout
uses: actions/checkout@v4
@@ -63,7 +64,7 @@ jobs:
deploy:
runs-on: ubuntu-latest
needs: build
- if: github.ref == 'refs/heads/main'
+ if: github.ref == 'refs/heads/main' && github.repository == 'community-scripts/ProxmoxVED'
permissions:
pages: write
id-token: write
diff --git a/.github/workflows/get-versions-from-gh.yaml b/.github/workflows/get-versions-from-gh.yaml
index 71b6add..d3cd7e3 100644
--- a/.github/workflows/get-versions-from-gh.yaml
+++ b/.github/workflows/get-versions-from-gh.yaml
@@ -12,6 +12,7 @@ permissions:
jobs:
crawl-versions:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
steps:
@@ -32,10 +33,10 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
- ls
+ ls
- chmod +x .github/workflows/scripts/get-gh-release.sh
- .github/workflows/scripts/get-gh-release.sh
+ chmod +x .github/workflows/scripts/get-gh-release.sh
+ .github/workflows/scripts/get-gh-release.sh
- name: Commit JSON
env:
diff --git a/.github/workflows/get-versions-from-newreleases.yaml b/.github/workflows/get-versions-from-newreleases.yaml
index 293ca72..9c4a833 100644
--- a/.github/workflows/get-versions-from-newreleases.yaml
+++ b/.github/workflows/get-versions-from-newreleases.yaml
@@ -12,6 +12,7 @@ permissions:
jobs:
crawl-versions:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: ubuntu-latest
steps:
diff --git a/.github/workflows/move-to-main-repo.yaml b/.github/workflows/move-to-main-repo.yaml
index 63595f5..6c3b3ac 100644
--- a/.github/workflows/move-to-main-repo.yaml
+++ b/.github/workflows/move-to-main-repo.yaml
@@ -14,7 +14,7 @@ permissions:
jobs:
move-to-main-repo:
runs-on: ubuntu-latest
- if: github.event.label.name == 'Migration To ProxmoxVE'
+ if: github.event.label.name == 'Migration To ProxmoxVE' && github.repository == 'community-scripts/ProxmoxVED'
steps:
- name: Generate a token
id: app-token
@@ -154,7 +154,7 @@ jobs:
fi
fi
else
- cp ../frontend/public/json/$json_name frontend/public/json/. || true
+ cp ../frontend/public/json/$json_file frontend/public/json/. || true
fi
sed -i 's|source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func)|source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)|' ct/$script_name.sh
diff --git a/.github/workflows/push-to-gitea.yml b/.github/workflows/push-to-gitea.yml
new file mode 100644
index 0000000..04a0135
--- /dev/null
+++ b/.github/workflows/push-to-gitea.yml
@@ -0,0 +1,27 @@
+name: Sync to Gitea
+
+on:
+ push:
+ branches:
+ - main
+
+jobs:
+ sync:
+ if: github.repository == 'community-scripts/ProxmoxVED'
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout source repo
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ - name: Push to Gitea
+ run: |
+ git config --global user.name "Push From Github"
+ git config --global user.email "actions@github.com"
+ git remote add gitea https://$GITEA_USER:$GITEA_TOKEN@git.community-scripts.org/community-scripts/ProxmoxVED.git
+ git push gitea --mirror
+ env:
+ GITEA_USER: ${{ secrets.GITEA_USERNAME }}
+ GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
diff --git a/.github/workflows/script-test.yaml b/.github/workflows/script-test.yaml
index b41c20e..e9798ae 100644
--- a/.github/workflows/script-test.yaml
+++ b/.github/workflows/script-test.yaml
@@ -1,16 +1,17 @@
name: Run Scripts on PVE Node for testing
permissions:
- pull-requests: write
+ pull-requests: write
on:
pull_request_target:
branches:
- main
paths:
- - 'install/**.sh'
- - 'ct/**.sh'
+ - "install/**.sh"
+ - "ct/**.sh"
jobs:
run-install-script:
+ if: github.repository == 'community-scripts/ProxmoxVED'
runs-on: pvenode
steps:
- name: Checkout PR branch
@@ -39,7 +40,6 @@ jobs:
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
- name: Get scripts
id: check-install-script
run: |
@@ -62,73 +62,73 @@ jobs:
id: run-install
continue-on-error: true
run: |
- set +e
- #run for each files in /ct
- for FILE in ${{ env.ALL_FILES }}; do
- STRIPPED_NAME=$(basename "$FILE" | sed 's/-install//' | sed 's/\.sh$//')
- echo "Running Test for: $STRIPPED_NAME"
- if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "$FILE"; then
- echo "The script contains an interactive prompt. Skipping execution."
+ set +e
+ #run for each files in /ct
+ for FILE in ${{ env.ALL_FILES }}; do
+ STRIPPED_NAME=$(basename "$FILE" | sed 's/-install//' | sed 's/\.sh$//')
+ echo "Running Test for: $STRIPPED_NAME"
+ if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "$FILE"; then
+ echo "The script contains an interactive prompt. Skipping execution."
+ continue
+ fi
+ if [[ $FILE =~ ^install/.*-install\.sh$ ]]; then
+ CT_SCRIPT="ct/$STRIPPED_NAME.sh"
+ if [[ ! -f $CT_SCRIPT ]]; then
+ echo "No CT script found for $STRIPPED_NAME"
+ ERROR_MSG="No CT script found for $FILE"
+ echo "$ERROR_MSG" > result_$STRIPPED_NAME.log
continue
fi
- if [[ $FILE =~ ^install/.*-install\.sh$ ]]; then
- CT_SCRIPT="ct/$STRIPPED_NAME.sh"
- if [[ ! -f $CT_SCRIPT ]]; then
- echo "No CT script found for $STRIPPED_NAME"
- ERROR_MSG="No CT script found for $FILE"
- echo "$ERROR_MSG" > result_$STRIPPED_NAME.log
+ if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "install/$STRIPPED_NAME-install.sh"; then
+ echo "The script contains an interactive prompt. Skipping execution."
continue
fi
- if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "install/$STRIPPED_NAME-install.sh"; then
- echo "The script contains an interactive prompt. Skipping execution."
- continue
- fi
- echo "Found CT script for $STRIPPED_NAME"
- chmod +x "$CT_SCRIPT"
- RUNNING_FILE=$CT_SCRIPT
- elif [[ $FILE =~ ^ct/.*\.sh$ ]]; then
- INSTALL_SCRIPT="install/$STRIPPED_NAME-install.sh"
- if [[ ! -f $INSTALL_SCRIPT ]]; then
- echo "No install script found for $STRIPPED_NAME"
- ERROR_MSG="No install script found for $FILE"
- echo "$ERROR_MSG" > result_$STRIPPED_NAME.log
- continue
- fi
- echo "Found install script for $STRIPPED_NAME"
- chmod +x "$INSTALL_SCRIPT"
- RUNNING_FILE=$FILE
- if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "ct/$STRIPPED_NAME.sh"; then
- echo "The script contains an interactive prompt. Skipping execution."
- continue
- fi
- fi
- git remote add community-scripts https://github.com/community-scripts/ProxmoxVE.git
- git fetch community-scripts
- rm -f .github/workflows/scripts/app-test/pr-build.func || true
- rm -f .github/workflows/scripts/app-test/pr-install.func || true
- rm -f .github/workflows/scripts/app-test/pr-alpine-install.func || true
- rm -f .github/workflows/scripts/app-test/pr-create-lxc.sh || true
- git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-build.func
- git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-install.func
- git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-alpine-install.func
- git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-create-lxc.sh
- chmod +x $RUNNING_FILE
- chmod +x .github/workflows/scripts/app-test/pr-create-lxc.sh
- chmod +x .github/workflows/scripts/app-test/pr-install.func
- chmod +x .github/workflows/scripts/app-test/pr-alpine-install.func
- chmod +x .github/workflows/scripts/app-test/pr-build.func
- sed -i 's|source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)|source .github/workflows/scripts/app-test/pr-build.func|g' "$RUNNING_FILE"
- echo "Executing $RUNNING_FILE"
- export TERM=xterm-256color
- ./$RUNNING_FILE
- ERROR_MSG=$(./$RUNNING_FILE 2>&1 > /dev/null)
- echo "Finished running $FILE"
- if [ -n "$ERROR_MSG" ]; then
- echo "ERROR in $STRIPPED_NAME: $ERROR_MSG"
+ echo "Found CT script for $STRIPPED_NAME"
+ chmod +x "$CT_SCRIPT"
+ RUNNING_FILE=$CT_SCRIPT
+ elif [[ $FILE =~ ^ct/.*\.sh$ ]]; then
+ INSTALL_SCRIPT="install/$STRIPPED_NAME-install.sh"
+ if [[ ! -f $INSTALL_SCRIPT ]]; then
+ echo "No install script found for $STRIPPED_NAME"
+ ERROR_MSG="No install script found for $FILE"
echo "$ERROR_MSG" > result_$STRIPPED_NAME.log
+ continue
fi
- done
- set -e # Restore exit-on-error
+ echo "Found install script for $STRIPPED_NAME"
+ chmod +x "$INSTALL_SCRIPT"
+ RUNNING_FILE=$FILE
+ if grep -E -q 'read\s+-r\s+-p\s+".*"\s+\w+' "ct/$STRIPPED_NAME.sh"; then
+ echo "The script contains an interactive prompt. Skipping execution."
+ continue
+ fi
+ fi
+ git remote add community-scripts https://github.com/community-scripts/ProxmoxVE.git
+ git fetch community-scripts
+ rm -f .github/workflows/scripts/app-test/pr-build.func || true
+ rm -f .github/workflows/scripts/app-test/pr-install.func || true
+ rm -f .github/workflows/scripts/app-test/pr-alpine-install.func || true
+ rm -f .github/workflows/scripts/app-test/pr-create-lxc.sh || true
+ git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-build.func
+ git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-install.func
+ git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-alpine-install.func
+ git checkout community-scripts/main -- .github/workflows/scripts/app-test/pr-create-lxc.sh
+ chmod +x $RUNNING_FILE
+ chmod +x .github/workflows/scripts/app-test/pr-create-lxc.sh
+ chmod +x .github/workflows/scripts/app-test/pr-install.func
+ chmod +x .github/workflows/scripts/app-test/pr-alpine-install.func
+ chmod +x .github/workflows/scripts/app-test/pr-build.func
+ sed -i 's|source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)|source .github/workflows/scripts/app-test/pr-build.func|g' "$RUNNING_FILE"
+ echo "Executing $RUNNING_FILE"
+ export TERM=xterm-256color
+ ./$RUNNING_FILE
+ ERROR_MSG=$(./$RUNNING_FILE 2>&1 > /dev/null)
+ echo "Finished running $FILE"
+ if [ -n "$ERROR_MSG" ]; then
+ echo "ERROR in $STRIPPED_NAME: $ERROR_MSG"
+ echo "$ERROR_MSG" > result_$STRIPPED_NAME.log
+ fi
+ done
+ set -e # Restore exit-on-error
- name: Cleanup PVE Node
run: |
@@ -175,5 +175,3 @@ jobs:
done
echo "ERROR=$ERROR" >> $GITHUB_ENV
-
-
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 96b6fdd..cab235e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,16 +3,15 @@
-