Skip to content

Commit

Permalink
add release action and update markdown docs with linter rule (#9)
Browse files Browse the repository at this point in the history
* update markdown docs with linter rule

* add release action and update markdown docs with linter rule
  • Loading branch information
wuwentao authored May 17, 2024
1 parent 2c3760c commit 157b4a2
Show file tree
Hide file tree
Showing 84 changed files with 3,549 additions and 60 deletions.
7 changes: 4 additions & 3 deletions .github/ISSUE_TEMPLATE/1-issue_zh-cn.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
---
name: 错误报告
description: 集成或实体无法正常工作
labels: ["bug"]
body:
- type: input
attributes:
label: HA版本
placeholder: 2023.4.2
placeholder: 2024.5.3
- type: input
validations:
required: true
attributes:
label: 集成版本
placeholder: 0.3.18
placeholder: 0.3.23
- type: input
validations:
required: true
Expand All @@ -34,4 +35,4 @@ body:
- type: textarea
attributes:
label: The logs
description: 打开Midea AC LAN的调试日志,并将发生错误时的日志发送或上传到这里
description: 打开Midea AC LAN的调试日志,并将发生错误时的日志发送或上传到这里
7 changes: 5 additions & 2 deletions .github/ISSUE_TEMPLATE/2-issue_en.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
name: Bug report
description: Intergration or entity is not working right
labels: ["bug"]
Expand All @@ -18,7 +19,8 @@ body:
attributes:
label: Device type and model
placeholder: Air Conditioner 22012225
description: Can be found in Settings -> Devices & Services -> Midea AC LAN -> Devices -> Device Info
description: Can be found in Settings -> Devices & Services -> \
Midea AC LAN -> Devices -> Device Info
- type: input
validations:
required: true
Expand All @@ -34,4 +36,5 @@ body:
- type: textarea
attributes:
label: The logs
description: Should enable the debug log of Midea AC LAN, and post or upload the log when the error occurs to here
description: Should enable the debug log of Midea AC LAN, and post or \
upload the log when the error occurs to here
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/3-enhancement_zh-cn.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
name: 新功能请求
description: 请求增加新设备支持或请求为已有设备增加新的功能
labels: ["enhancement"]
Expand All @@ -17,4 +18,4 @@ body:
validations:
required: true
attributes:
label: 新功能的描述
label: 新功能的描述
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/4-enhancement_en.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
name: Enhancement
description: New feature or new device support request
labels: ["enhancement"]
Expand All @@ -17,4 +18,4 @@ body:
validations:
required: true
attributes:
label: The description of new feature
label: The description of new feature
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
blank_issues_enabled: true
---
blank_issues_enabled: true
7 changes: 7 additions & 0 deletions .github/linters/.eslintrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
plugins:
- json
rules:
json/*:
- error
- allowComments: true
3 changes: 3 additions & 0 deletions .github/linters/.flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[flake8]
max-line-length = 500
extend-ignore = E203,E701
4 changes: 4 additions & 0 deletions .github/linters/.python-lint
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[FORMAT]
max-line-length=500
[MESSAGES CONTROL]
disable=import-error, logging-fstring-interpolation, missing-class-docstring,missing-function-docstring
6 changes: 6 additions & 0 deletions .github/linters/.yaml-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
extends: default
rules:
line-length:
max: 500
level: warning
14 changes: 14 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# PR Description

## Reason & Detail

## Releted issue

fix #X

<!--
please change X to issue id, it will auto close this issue once PR closed
Example:
fix #1
it will auto close issue #1 once PR closed
-->
96 changes: 96 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
name: Release

on:
release:
types: [released]

permissions: {}

defaults:
run:
shell: bash

jobs:
generate_zip:
name: Generate release zip
runs-on: [ubuntu-latest]
timeout-minutes: 60
steps:
- name: Checkout Source Code
uses: actions/checkout@v4
with:
fetch-depth: 0
clean: true
- name: Zip release file
run: |
apt-get update || exit 1
apt-get install zip || exit 1
echo "show runner hostname"
hostname
echo "show runner user"
whoami
echo "show runner pwd"
pwd
echo "show runner kernel"
uname -a
echo "show runner pwd file list"
ls
ls -alht "custom_components/midea_ac_lan/" || exit 1
echo "show manifest.json for debug"
cat "custom_components/midea_ac_lan/manifest.json" || exit 1
dst_dir="/github/workspace/artifacts"
sudo mkdir -p "$dst_dir" || exit 1
sudo chown -R "$(id -u):$(id -g)" "$dst_dir" || exit 1
sudo chmod -R 755 "$dst_dir" || exit 1
cd "custom_components/midea_ac_lan/" || exit 1
zip -r "../midea_ac_lan.zip" "./*" || exit 1
cp "../midea_ac_lan.zip" "$dst_dir/midea_ac_lan.zip" || exit 1
ls -alht "$dst_dir" || exit 1
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: midea_ac_lan.zip
path: /github/workspace/artifacts

upload_release:
needs: generate_zip
name: Publish release
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
runs-on: ubuntu-latest
steps:
- name: Download All Artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
pattern: midea_ac_lan.zip
merge-multiple: true

- name: Display Structure of Artifacts Files
run: ls -R

- name: Show Working Directory For Debug Purpose
run: |
echo "show runner hostname"
hostname
echo "show runner user"
whoami
echo "show runner disk usage"
df -h
echo "show runner pwd"
pwd
echo "show runner kernel"
uname -a
echo "show runner pwd file list"
ls
ls -alht
echo "show runner artifacts"
ls -alht artifacts || exit 0
echo "github.ref: ${{github.ref}}"
- name: Upload images to Release Asset
uses: softprops/action-gh-release@v2
with:
files: artifacts/midea_ac_lan.zip
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
20 changes: 10 additions & 10 deletions .github/workflows/validate.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@

---
name: HACS Validation

on:
pull_request:
push:
# schedule:
# - cron: "0 0 * * *"

permissions: {}

jobs:
validate:
name: HASS and Hassfest Validation
runs-on: "ubuntu-latest"
steps:
- uses: "actions/checkout@v4"
- uses: "actions/checkout@v4"

- name: HACS Action
uses: hacs/action@main
with:
category: "integration"
- name: HACS Action
uses: hacs/action@main
with:
category: "integration"

- name: Hassfest validation
uses: "home-assistant/actions/hassfest@master"
- name: Hassfest validation
uses: "home-assistant/actions/hassfest@master"
28 changes: 28 additions & 0 deletions 13.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Light
## Features
- Supports Brightness
- Supports Color Temperature
- Supports Effect (Scene)

## Customize

Set the light's color temperature range in Kelvin ([2700, 6500] by default).

```json
{"color_temp_range_kelvin": [2000, 6800]}
```

## Entities
### Default entity
| EntityID | Class | Description |
|------------------------|-------|--------------|
| light.{DEVICEID}_light | light | Light entity |

### Extra entity

No extra entity


## Service

No Service
26 changes: 26 additions & 0 deletions 13_hans.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# 智能灯
## 特性
- 支持亮度调节
- 支持色温调节
- 支持灯效(场景)调节

## 自定义

设置灯的以开尔文表示的色温范围 (默认为[2700, 6500]).

```json
{"color_temp_range_kelvin": [2000, 6800]}
```

## 实体
### 默认实体
| 实体ID | 类型 | 描述 |
|------------------------|-------|-----|
| light.{DEVICEID}_light | light | 灯实体 |

### 扩展传感器
无扩展传感器


## 服务
无服务
71 changes: 71 additions & 0 deletions 26.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Bathroom Master
## Features
- Supports preset mode
- Supports fan direction setting

## Entities
### Default entity
No Default entity

### Extra entities

| EntityID | Class | Description |
|-----------------------------------------|---------------|---------------------|
| sensor.{DEVICEID}_current_temperature | sensor | Current Temperature |
| sensor.{DEVICEID}_current_humidity | sensor | Current Humidity |
| binary_sensor.{DEVICEID}_current_radar | binary_sensor | Occupancy Status |
| switch.{DEVICEID}_main_light | switch | Main Light |
| switch.{DEVICEID}_night_light | switch | Night Light |
| select.{DEVICEID}_mode | select | Mode |
| select.{DEVICEID}_direction | select | Fan direction |

## Service

### midea_ac_lan.set_attribute

[![Service](https://my.home-assistant.io/badges/developer_call_service.svg)](https://my.home-assistant.io/redirect/developer_call_service/?service=midea_ac_lan.set_attribute)

Set the attribute of appliance. Service data:

| Name | Description |
|-----------|---------------------------------------------|
| device_id | The Appliance code (Device ID) of appliance |
| attribute | "main_light"<br/>"night_light" |
| value | true or false |

| Name | Description |
|-----------|------------------------------------------------------------------------------------------|
| device_id | The Appliance code (Device ID) of appliance |
| attribute | "mode" |
| value | "Off"<br/>"Heat(high)"<br/>"Heat(low)"<br/>"Bath"<br/>"Blow"<br/>"Ventilation"<br/>"Dry" |

| Name | Description |
|-----------|---------------------------------------------------------|
| device_id | The Appliance code (Device ID) of appliance |
| attribute | "direction" |
| value | 60<br/>70<br/>80<br/>90<br/>100<br/>110<br/>"Oscillate" |

Example
```yaml
service: midea_ac_lan.set_attribute
data:
device_id: XXXXXXXXXXXX
attribute: main_light
value: true
```
```yaml
service: midea_ac_lan.set_attribute
data:
device_id: XXXXXXXXXXXX
attribute: mode
value: Bath
```
```yaml
service: midea_ac_lan.set_attribute
data:
device_id: XXXXXXXXXXXX
attribute: direction
value: 70
```
Loading

0 comments on commit 157b4a2

Please sign in to comment.