This commit is contained in:
@@ -4,12 +4,12 @@ steps:
|
||||
settings:
|
||||
repo: ${FORGE_NAME}/${CI_REPO}
|
||||
registry:
|
||||
from_secret: container_registry
|
||||
from_secret: local_registry
|
||||
tags: latest,${CI_COMMIT_SHA},${CI_COMMIT_TAG}
|
||||
username:
|
||||
from_secret: container_registry_username
|
||||
from_secret: local_password
|
||||
password:
|
||||
from_secret: container_registry_password
|
||||
from_secret: local_username
|
||||
dockerfile: Dockerfile
|
||||
when:
|
||||
- event: [push, tag]
|
||||
@@ -20,7 +20,7 @@ steps:
|
||||
when:
|
||||
- event: [push, tag]
|
||||
deploy:
|
||||
image: quay.io/wollud1969/k8s-admin-helper:0.1.3
|
||||
image: quay.io/wollud1969/k8s-admin-helper:0.4.1
|
||||
environment:
|
||||
KUBE_CONFIG_CONTENT:
|
||||
from_secret: kube_config
|
||||
|
||||
@@ -12,3 +12,16 @@ CREATE TABLE pv_energy_by_month (
|
||||
);
|
||||
|
||||
|
||||
|
||||
CREATE TABLE car_energy_by_month (
|
||||
id serial NOT NULL PRIMARY KEY,
|
||||
month integer NOT NULL,
|
||||
year integer NOT NULL,
|
||||
created_at timestamp NOT NULL DEFAULT now(),
|
||||
last_changed timestamp,
|
||||
update_counter integer NOT NULL DEFAULT 0,
|
||||
baseline_energy real NOT NULL,
|
||||
current_energy real NOT NULL DEFAULT 0.0,
|
||||
CONSTRAINT car_energy_by_month__month_year_unique UNIQUE(month, year)
|
||||
);
|
||||
|
||||
|
||||
@@ -51,3 +51,55 @@ INSERT INTO pv_energy_by_month
|
||||
update_counter = pv_energy_by_month.update_counter + 1,
|
||||
current_energy = (SELECT e FROM last_pv_energy_of_yesterday) - pv_energy_by_month.baseline_energy;
|
||||
|
||||
WITH
|
||||
today AS (
|
||||
SELECT now() AS d
|
||||
),
|
||||
yesterday AS (
|
||||
SELECT date_trunc('day', today.d - '1 day'::interval) AS d,
|
||||
extract(month from today.d - '1 day'::interval) AS m,
|
||||
extract(year from today.d - '1 day'::interval) AS y
|
||||
FROM today
|
||||
),
|
||||
first_car_of_yesterday AS (
|
||||
SELECT min(measurements.time) as t
|
||||
FROM measurements,
|
||||
yesterday
|
||||
WHERE time >= yesterday.d AND
|
||||
time < yesterday.d + '1 day'::interval AND
|
||||
measurements.application = 'Car'
|
||||
),
|
||||
last_car_of_yesterday AS (
|
||||
SELECT max(measurements.time) as t
|
||||
FROM measurements,
|
||||
yesterday
|
||||
WHERE time >= yesterday.d AND
|
||||
time < yesterday.d + '1 day'::interval AND
|
||||
measurements.application = 'Car'
|
||||
),
|
||||
first_car_energy_of_yesterday AS (
|
||||
SELECT cast(measurements.values->'TotalImportEnergy'->>'value' AS real) AS e
|
||||
FROM measurements,
|
||||
first_car_of_yesterday
|
||||
WHERE measurements.time = first_car_of_yesterday.t AND
|
||||
measurements.application = 'Car'
|
||||
),
|
||||
last_car_energy_of_yesterday AS (
|
||||
SELECT cast(measurements.values->'TotalImportEnergy'->>'value' AS real) AS e
|
||||
FROM measurements,
|
||||
last_car_of_yesterday
|
||||
WHERE measurements.time = last_car_of_yesterday.t AND
|
||||
measurements.application = 'Car'
|
||||
)
|
||||
INSERT INTO car_energy_by_month
|
||||
(month, year, baseline_energy)
|
||||
VALUES(
|
||||
(SELECT m FROM yesterday),
|
||||
(SELECT y FROM yesterday),
|
||||
(SELECT e FROM first_car_energy_of_yesterday)
|
||||
)
|
||||
ON CONFLICT ON CONSTRAINT car_energy_by_month__month_year_unique
|
||||
DO UPDATE
|
||||
SET last_changed = now(),
|
||||
update_counter = car_energy_by_month.update_counter + 1,
|
||||
current_energy = (SELECT e FROM last_car_energy_of_yesterday) - car_energy_by_month.baseline_energy;
|
||||
|
||||
Reference in New Issue
Block a user