.gitea/workflows/build-and-push.yaml aktualisiert
This commit is contained in:
1 parent
964dacdbd1
commit
7276600c53
1 file changed
+43
-36
@@ -325,45 +325,52 @@ jobs:
|
|||||||
(apt-get update && apt-get install -y python3) || (apk add --no-cache python3) || true
|
(apt-get update && apt-get install -y python3) || (apk add --no-cache python3) || true
|
||||||
fi
|
fi
|
||||||
|
|
||||||
process_template() {
|
# Python-Skript sauber als eigene Datei erstellen (vermeidet YAML-Syntaxfehler)
|
||||||
local template=$1; local output=$2
|
cat << 'EOF' > update_script.py
|
||||||
[ ! -f "$template" ] && return
|
import os, sys
|
||||||
cp "$template" "$output"
|
|
||||||
|
|
||||||
export REPO_PURE FULL_URL BUILD_TAG BASE_IMAGE ARM_STATUS CURRENT_TIME \
|
def process(output_file):
|
||||||
HISTORY_CONTENT DOCKERHUB_LINK_CONTENT ENV_BLOCK_CONTENT \
|
if not os.path.exists(output_file.replace('.md', '.template').replace('.yml', '.template')):
|
||||||
PORTS_BLOCK_CONTENT VOL_BLOCK_CONTENT DESCRIPTION
|
return
|
||||||
|
|
||||||
|
template_name = output_file.replace('.md', '.template').replace('.yml', '.template')
|
||||||
|
with open(template_name, "r", encoding="utf-8") as f:
|
||||||
|
content = f.read()
|
||||||
|
|
||||||
python3 -c '
|
content = content.replace("__REPO_NAME__", os.environ.get("REPO_PURE", ""))
|
||||||
import os, sys
|
content = content.replace("__FULL_URL__", os.environ.get("FULL_URL", ""))
|
||||||
output = sys.argv[1]
|
content = content.replace("__BUILD_TAG__", os.environ.get("BUILD_TAG", ""))
|
||||||
with open(output, "r", encoding="utf-8") as f:
|
content = content.replace("__BASE_IMAGE__", os.environ.get("BASE_IMAGE", ""))
|
||||||
content = f.read()
|
content = content.replace("__ARM_STATUS__", os.environ.get("ARM_STATUS", ""))
|
||||||
content = content.replace("__REPO_NAME__", os.environ.get("REPO_PURE", ""))
|
content = content.replace("__CURRENT_DATE__", os.environ.get("CURRENT_TIME", ""))
|
||||||
content = content.replace("__FULL_URL__", os.environ.get("FULL_URL", ""))
|
content = content.replace("__HISTORY_CONTENT__", os.environ.get("HISTORY_CONTENT", ""))
|
||||||
content = content.replace("__BUILD_TAG__", os.environ.get("BUILD_TAG", ""))
|
content = content.replace("__DOCKERHUB_LINK__", os.environ.get("DOCKERHUB_LINK_CONTENT", ""))
|
||||||
content = content.replace("__BASE_IMAGE__", os.environ.get("BASE_IMAGE", ""))
|
content = content.replace("__ENV_BLOCK__", os.environ.get("ENV_BLOCK_CONTENT", "").replace("\\n", "\n"))
|
||||||
content = content.replace("__ARM_STATUS__", os.environ.get("ARM_STATUS", ""))
|
content = content.replace("__PORTS_BLOCK__", os.environ.get("PORTS_BLOCK_CONTENT", "").replace("\\n", "\n"))
|
||||||
content = content.replace("__CURRENT_DATE__", os.environ.get("CURRENT_TIME", ""))
|
content = content.replace("__VOL_BLOCK__", os.environ.get("VOL_BLOCK_CONTENT", "").replace("\\n", "\n"))
|
||||||
content = content.replace("__HISTORY_CONTENT__", os.environ.get("HISTORY_CONTENT", ""))
|
content = content.replace("__DESCRIPTION__", os.environ.get("DESCRIPTION", "Keine Beschreibung."))
|
||||||
content = content.replace("__DOCKERHUB_LINK__", os.environ.get("DOCKERHUB_LINK_CONTENT", ""))
|
|
||||||
content = content.replace("__ENV_BLOCK__", os.environ.get("ENV_BLOCK_CONTENT", "").replace("\\n", "\n"))
|
|
||||||
content = content.replace("__PORTS_BLOCK__", os.environ.get("PORTS_BLOCK_CONTENT", "").replace("\\n", "\n"))
|
|
||||||
content = content.replace("__VOL_BLOCK__", os.environ.get("VOL_BLOCK_CONTENT", "").replace("\\n", "\n"))
|
|
||||||
content = content.replace("__DESCRIPTION__", os.environ.get("DESCRIPTION", "Keine Beschreibung."))
|
|
||||||
if "__DOCKER_RUN__" in content and os.path.exists("docker_run_block.txt"):
|
|
||||||
with open("docker_run_block.txt", "r", encoding="utf-8") as f:
|
|
||||||
content = content.replace("__DOCKER_RUN__", f.read())
|
|
||||||
if "__COMPOSE_BLOCK__" in content and os.path.exists("docker-compose.yml"):
|
|
||||||
with open("docker-compose.yml", "r", encoding="utf-8") as f:
|
|
||||||
content = content.replace("__COMPOSE_BLOCK__", f.read())
|
|
||||||
with open(output, "w", encoding="utf-8") as f:
|
|
||||||
f.write(content)
|
|
||||||
' "$output"
|
|
||||||
}
|
|
||||||
|
|
||||||
process_template "docker-compose.template" "docker-compose.yml"
|
if "__DOCKER_RUN__" in content and os.path.exists("docker_run_block.txt"):
|
||||||
process_template "README.template" "README.md"
|
with open("docker_run_block.txt", "r", encoding="utf-8") as f:
|
||||||
|
content = content.replace("__DOCKER_RUN__", f.read())
|
||||||
|
|
||||||
|
if "__COMPOSE_BLOCK__" in content and os.path.exists("docker-compose.yml"):
|
||||||
|
with open("docker-compose.yml", "r", encoding="utf-8") as f:
|
||||||
|
content = content.replace("__COMPOSE_BLOCK__", f.read())
|
||||||
|
|
||||||
|
with open(output_file, "w", encoding="utf-8") as f:
|
||||||
|
f.write(content)
|
||||||
|
|
||||||
|
process("docker-compose.yml")
|
||||||
|
process("README.md")
|
||||||
|
EOF
|
||||||
|
|
||||||
|
export REPO_PURE FULL_URL BUILD_TAG BASE_IMAGE ARM_STATUS CURRENT_TIME \
|
||||||
|
HISTORY_CONTENT DOCKERHUB_LINK_CONTENT ENV_BLOCK_CONTENT \
|
||||||
|
PORTS_BLOCK_CONTENT VOL_BLOCK_CONTENT DESCRIPTION
|
||||||
|
|
||||||
|
python3 update_script.py
|
||||||
|
rm -f update_script.py
|
||||||
|
|
||||||
echo "FINAL_MSG=$COMMIT_MSG" >> $GITHUB_ENV
|
echo "FINAL_MSG=$COMMIT_MSG" >> $GITHUB_ENV
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in new issue
Block a user