v0.15.4
This commit is contained in:
+6
-16
@@ -32,7 +32,6 @@ VERSION="$(awk -F '"' '/^version = "/ {print $2; exit}' "$PROJECT_ROOT/Cargo.tom
|
||||
IMAGE_REPO="${REGISTRY%/}/${IMAGE_NAME#/}"
|
||||
IMAGE_TAG="${IMAGE_REPO}:${VERSION}"
|
||||
CONFIG="$SCRIPT_DIR/repository/$ADDON_DIR/config.yaml"
|
||||
LOCKFILE="$PROJECT_ROOT/Cargo.lock"
|
||||
INTEGRATION_MANIFEST="$SCRIPT_DIR/home-assistant/custom_components/$INTEGRATION_DOMAIN/manifest.json"
|
||||
REPOSITORY_CONFIG="$SCRIPT_DIR/repository/repository.yaml"
|
||||
RUN_SCRIPT="$SCRIPT_DIR/run.sh"
|
||||
@@ -44,18 +43,16 @@ DOCKERFILE="$SCRIPT_DIR/Dockerfile"
|
||||
|
||||
render_metadata() {
|
||||
command -v python3 >/dev/null 2>&1 || { echo "python3 is required" >&2; exit 1; }
|
||||
python3 - "$CONFIG" "$LOCKFILE" "$INTEGRATION_MANIFEST" "$REPOSITORY_CONFIG" "$VERSION" "$IMAGE_REPO" "$HA_REPO_URL" <<'PY'
|
||||
python3 - "$CONFIG" "$INTEGRATION_MANIFEST" "$REPOSITORY_CONFIG" "$VERSION" "$IMAGE_REPO" "$HA_REPO_URL" <<'PY'
|
||||
from pathlib import Path
|
||||
import re
|
||||
import sys
|
||||
|
||||
config = Path(sys.argv[1])
|
||||
lockfile = Path(sys.argv[2])
|
||||
manifest = Path(sys.argv[3])
|
||||
repository = Path(sys.argv[4])
|
||||
version = sys.argv[5]
|
||||
image = sys.argv[6]
|
||||
repo_url = sys.argv[7]
|
||||
manifest = Path(sys.argv[2])
|
||||
repository = Path(sys.argv[3])
|
||||
version = sys.argv[4]
|
||||
image = sys.argv[5]
|
||||
repo_url = sys.argv[6]
|
||||
|
||||
lines = config.read_text(encoding="utf-8").splitlines()
|
||||
out = []
|
||||
@@ -70,13 +67,6 @@ for line in lines:
|
||||
out.append(line)
|
||||
config.write_text("\n".join(out) + "\n", encoding="utf-8")
|
||||
|
||||
lock = lockfile.read_text(encoding="utf-8")
|
||||
pattern = r'(\[\[package\]\]\nname = "gree-controller"\nversion = ")[^"]+("\n)'
|
||||
updated, count = re.subn(pattern, rf'\g<1>{version}\g<2>', lock, count=1)
|
||||
if count != 1:
|
||||
raise SystemExit("Could not find gree-controller package version in Cargo.lock")
|
||||
lockfile.write_text(updated, encoding="utf-8")
|
||||
|
||||
import json
|
||||
data = json.loads(manifest.read_text(encoding="utf-8"))
|
||||
data["version"] = version
|
||||
|
||||
Reference in New Issue
Block a user