6 Commits
1.1.0 ... 1.1.4

Author SHA1 Message Date
a067be9d9e test ci 6
All checks were successful
ci/woodpecker/tag/woodpecker Pipeline was successful
2025-12-05 13:21:31 +01:00
190021bb84 test ci 5
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2025-12-05 13:18:21 +01:00
2842b3e4ec test ci 4
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2025-12-05 13:16:36 +01:00
cf62f384ac test ci 3
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2025-12-05 13:14:30 +01:00
5496c5e94e test ci 2 2025-12-05 13:14:00 +01:00
4405f5f7e7 test ci 1
Some checks failed
ci/woodpecker/tag/namespace Pipeline was successful
ci/woodpecker/tag/config Pipeline failed
ci/woodpecker/tag/build Pipeline was successful
2025-12-05 12:37:21 +01:00
6 changed files with 77 additions and 84 deletions

54
.woodpecker.yml Normal file
View File

@@ -0,0 +1,54 @@
when:
event:
- tag
steps:
build:
image: plugins/kaniko
settings:
registry:
from_secret: local_registry
username:
from_secret: local_username
password:
from_secret: local_password
repo: ${FORGE_NAME}/${CI_REPO}
auto_tag: true
dockerfile: Dockerfile
namespace:
image: quay.io/wollud1969/k8s-admin-helper:0.3.4
environment:
KUBE_CONFIG_CONTENT:
from_secret: kube_config
NAMESPACE: "homea-ctrl-1"
commands:
- printf "$KUBE_CONFIG_CONTENT" > /tmp/kubeconfig
- export KUBECONFIG=/tmp/kubeconfig
- kubectl create namespace $NAMESPACE || echo "Namespace $NAMESPACE already exists"
configuration:
image: quay.io/wollud1969/k8s-admin-helper:0.3.4
environment:
KUBE_CONFIG_CONTENT:
from_secret: kube_config
NAMESPACE: "homea-ctrl-1"
commands:
- printf "$KUBE_CONFIG_CONTENT" > /tmp/kubeconfig
- export KUBECONFIG=/tmp/kubeconfig
- kubectl create configmap pv-controller-config
--from-file=config.yaml=config/config.yaml
--namespace=$NAMESPACE
--dry-run=client -o yaml | kubectl apply -f -
deploy:
image: quay.io/wollud1969/k8s-admin-helper:0.3.4
environment:
KUBE_CONFIG_CONTENT:
from_secret: kube_config
NAMESPACE: "homea2"
IMAGE: "${FORGE_NAME}/${CI_REPO}:${CI_COMMIT_TAG}"
commands:
- printf "$KUBE_CONFIG_CONTENT" > /tmp/kubeconfig
- export KUBECONFIG=/tmp/kubeconfig
- cat deployment/install-yml.tmpl | sed "s,%IMAGE%,$IMAGE,g" # | kubectl apply -n $NAMESPACE -f -

View File

@@ -1,19 +0,0 @@
when:
event: [tag]
ref:
exclude:
- refs/tags/*-configchange
steps:
build:
image: plugins/kaniko
settings:
registry:
from_secret: local_registry
username:
from_secret: local_username
password:
from_secret: local_password
repo: ${FORGE_NAME}/${CI_REPO}
auto_tag: true
dockerfile: Dockerfile

View File

@@ -1,22 +0,0 @@
when:
event: [tag]
depends_on:
- namespace
steps:
apply_configuration:
image: quay.io/wollud1969/k8s-admin-helper:0.3.4
environment:
KUBE_CONFIG_CONTENT:
from_secret: kube_config
NAMESPACE: "homea-ctrl-1"
commands:
- printf "$KUBE_CONFIG_CONTENT" > /tmp/kubeconfig
- export KUBECONFIG=/tmp/kubeconfig
- kubectl create configmap pv-controller-config
--from-file=config.yaml=config/config.yaml
--namespace=$NAMESPACE
--dry-run=client -o yaml | kubectl apply -f -
- kubectl apply -f deployment/configmap.yaml -n $NAMESPACE

View File

@@ -1,15 +0,0 @@
when:
event: [tag]
steps:
create_namespace:
image: quay.io/wollud1969/k8s-admin-helper:0.3.4
environment:
KUBE_CONFIG_CONTENT:
from_secret: kube_config
NAMESPACE: "homea-ctrl-1"
commands:
- printf "$KUBE_CONFIG_CONTENT" > /tmp/kubeconfig
- export KUBECONFIG=/tmp/kubeconfig
- kubectl create namespace $NAMESPACE || echo "Namespace $NAMESPACE already exists"

View File

@@ -1,36 +1,23 @@
FROM python:latest FROM python:3.14-alpine
LABEL Maintainer="Wolfgang Hottgenroth wolfgang.hottgenroth@icloud.com" LABEL Maintainer="Wolfgang Hottgenroth wolfgang.hottgenroth@icloud.com"
LABEL ImageName="registry.hottis.de/dockerized/pv-controller" LABEL ImageName="registry.hottis.de/dockerized/pv-controller"
LABEL HubImageName="wollud1969/pv-controller" LABEL HubImageName="wn/pv-controller"
ARG APP_DIR="/opt/app" ARG APP_DIR="/opt/app"
ARG APP_USER="app"
ENV CFG_FILE ""
ENV MQTT__BROKER ""
ENV MQTT__PORT "1883"
ENV MQTT__METERPUBLISHTOPIC "IoT/PV/Values"
ENV MQTT__METERPUBLISHPERIOD "15"
ENV MQTT__RELAISSUBSCRIBETOPIC "IoT/PV/Cmd"
ENV MODBUS__GATEWAY ""
RUN \
apt update && \
pip3 install loguru && \
pip3 install pymodbus && \
pip3 install paho-mqtt
RUN \
mkdir -p ${APP_DIR} && \
useradd -d ${APP_DIR} -u 1000 user
COPY ./src/pv_controller/*.py ${APP_DIR}/
USER 1000:1000
WORKDIR ${APP_DIR} WORKDIR ${APP_DIR}
COPY ./src/pv_controller/requirements.txt requirements.txt
COPY ./src/pv_controller/*.py ${APP_DIR}/
CMD [ "python", "pvc.py" ] RUN addgroup -g 10001 -S ${APP_USER} && \
adduser -u 10001 -S ${APP_USER} -G ${APP_USER} && \
pip install --no-cache-dir -r requirements.txt
USER ${APP_USER}
CMD ["python", "pvc.py"]

View File

@@ -17,7 +17,15 @@ spec:
spec: spec:
containers: containers:
- name: pv-controller - name: pv-controller
image: %IMAGE image: %IMAGE%
envFrom: env:
- configMapRef: - name: CFG_FILE
name: pv-controller value: /config/config.yaml
volumeMounts:
- name: pv-controller-config
mountPath: /config/config.yaml
subPath: config.yaml
volumes:
- name: pv-controller-config
configMap:
name: pv-controller-config