new pipeline version handling

This commit is contained in:
Jatus 2024-01-30 11:32:43 +01:00
parent cfc0d14fc3
commit c3df0aa619
4 changed files with 32 additions and 13 deletions

View File

@ -1,7 +1,6 @@
name: Publish Docker image
on:
push
on: push
jobs:
push_to_registry:
@ -10,22 +9,35 @@ jobs:
steps:
- name: Check out the repo
uses: actions/checkout@v4
- name: Run read-yaml action
id: yaml-data
uses: jbutcher5/read-yaml@1.6
with:
file: "./matter-bridge/config.yml"
key-path: '["version"]'
- name: Display read-yaml output
run: echo "${{ steps.yaml-data.outputs.data }}"
- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
uses: docker/login-action@v3.0.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GHCR }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}
tags: |
type=raw,value=${{ steps.yaml-data.outputs.data }}
type=raw,value=latest
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
uses: docker/build-push-action@v5.1.0
with:
context: ./matter-bridge
file: ./matter-bridge/Dockerfile

View File

@ -35,10 +35,10 @@ export class HAMiddleware {
subscribe() {
this.hassClient.on('state_changed', (event) => {
this.logger.debug(event);
this.logger.debug(JSON.stringify(event));
const toDo = this.functionsToCallOnChange[event.data.entity_id];
if (toDo) {
toDo(event.data);
toDo(event);
}
});
}
@ -58,7 +58,7 @@ export class HAMiddleware {
},
{}
);
this.logger.debug({ getStates: sorted });
this.logger.debug(JSON.stringify({ getStates: sorted }));
this.entities = sorted;
return this.entities;
}
@ -75,7 +75,9 @@ export class HAMiddleware {
prev[key].push(states[current]);
return prev;
}, {});
this.logger.debug({ getStatesPartitionedByType: toReturn });
this.logger.debug(
JSON.stringify({ getStatesPartitionedByType: toReturn })
);
return toReturn;
}

View File

@ -19,7 +19,8 @@ export const addDimmerableLightDevice: AddHaDeviceToBridge = (
const device = new DimmableLightDevice(
{ onOff: haEntity.state === 'on' },
{
currentLevel: Number(haEntity.attributes['brightness']) || null,
currentLevel:
Number(haEntity.attributes['brightness']) / 255 || null,
onLevel: 0.1,
options: { coupleColorTempToLevel: false, executeIfOff: false },
}
@ -50,6 +51,8 @@ export const addDimmerableLightDevice: AddHaDeviceToBridge = (
haMiddleware.subscrieToDevice(
haEntity.entity_id,
(event: StateChangedEvent) => {
LOGGER.debug(`Event for device ${haEntity.entity_id}`);
LOGGER.debug(JSON.stringify(event));
device.setOnOff(event.data.new_state?.state === 'on');
device.setCurrentLevel(
(event.data.new_state?.attributes as never)['brightness']

View File

@ -33,6 +33,8 @@ export const addOnOffLightDevice: AddHaDeviceToBridge = (
haMiddleware.subscrieToDevice(
haEntity.entity_id,
(event: StateChangedEvent) => {
LOGGER.debug(`Event for device ${haEntity.entity_id}`);
LOGGER.debug(JSON.stringify(event));
device.setOnOff(event.data.new_state?.state === 'on');
}
);