- Rename packaging container from tsys-cloudron-packaging to KNELCloudron-packaging - Update image reference to git.knownelement.com/knel/knelcloudron-packaging:latest - Add TODO.md with active tasks and backlog items - Add todo-generate.sh and todo-update.sh helper scripts - Update PackagingForCloudronWorkspace/README.md with workspace details
54 lines
1.4 KiB
Bash
Executable File
54 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
CLONE_SCRIPT="PackagingForCloudronWorkspace/UpstreamVendor-Clone.sh"
|
|
EXTRA_REPOS_FILE="PackagingForCloudronWorkspace/REPOS.txt"
|
|
|
|
if [[ ! -f "$CLONE_SCRIPT" ]]; then
|
|
echo "Missing $CLONE_SCRIPT" >&2
|
|
exit 1
|
|
fi
|
|
|
|
repo_lines=$(awk '/^https?:\/\//{print $0}' "$CLONE_SCRIPT" | sed 's/#.*$//' | sed -n '/^https:\/\//p')
|
|
if [[ -f "$EXTRA_REPOS_FILE" ]]; then
|
|
extra=$(sed -e 's/#.*$//' -e '/^\s*$/d' "$EXTRA_REPOS_FILE" | sed -n '/^https:\/\//p')
|
|
else
|
|
extra=""
|
|
fi
|
|
|
|
all_urls=$(printf "%s\n%s\n" "$repo_lines" "$extra" | sed 's/.git$//' | sort -u)
|
|
|
|
readarray -t urls <<< "$all_urls"
|
|
|
|
now=$(date -Is)
|
|
|
|
cat <<EOF
|
|
# TODO: Cloudron Packaging Backlog
|
|
|
|
Generated: $now
|
|
|
|
Legend:
|
|
- [ ] todo
|
|
- [x] scaffolded in repo (not necessarily validated)
|
|
|
|
Instructions:
|
|
- Regenerate this file: `scripts/todo-update.sh`
|
|
- All package work happens in containers (see README and AGENTS.md)
|
|
|
|
## Backlog
|
|
EOF
|
|
|
|
for url in "${urls[@]}"; do
|
|
org_repo=${url#*://*/}
|
|
org=$(echo "$org_repo" | awk -F/ '{print $1}')
|
|
name=$(echo "$org_repo" | awk -F/ '{print $2}')
|
|
# Guess CloudronPackages directory from repo name (TitleCase, strip -/_)
|
|
guess_dir=$(echo "$name" | sed -E 's/[-_]+/ /g' | awk '{for(i=1;i<=NF;i++){ $i=toupper(substr($i,1,1)) substr($i,2)}; gsub(/ /,""); print}')
|
|
status="[ ]"
|
|
if [[ -f "CloudronPackages/${guess_dir}/CloudronManifest.json" ]]; then
|
|
status="[x]"
|
|
fi
|
|
printf "- %s %s — %s/%s\n" "$status" "$name" "$org" "$name"
|
|
done
|
|
|