mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-30 22:53:59 +00:00 
			
		
		
		
	* Test for each component. * When possible use commandline substitution. * Add wildcard support. * end file with new line. * Move component tests into subfolder. * Add component test to pipeline. * Remove trailing whitespace. * add restore python step. * Add `. venv/bin/activate` to pipeline. * step `changed-components` needs `common` step. * start `list-components-changed.py` different. * iterate on pipeline stage `list-components`. * Update `checkout` action. * Rename test folder from `tests` to `_test`. * validate file exists. * Move component test folder. * extend list-components to include child components. * File does not end with a newline * Handle empty list-components matrix. * list-components also check for changes in tests folder. * Improve `list-components.py`. * `*` is a forbidden character for filenames on windows. --------- Co-authored-by: Your Name <you@example.com> Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
		
			
				
	
	
		
			128 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| sensor:
 | |
|   - platform: template
 | |
|     name: "Template Sensor"
 | |
|     id: template_sens
 | |
|     lambda: |-
 | |
|       if (id(some_binary_sensor).state) {
 | |
|         return 42.0;
 | |
|       } else {
 | |
|         return 0.0;
 | |
|       }
 | |
|     update_interval: 60s
 | |
| 
 | |
| esphome:
 | |
|   on_boot:
 | |
|     - sensor.template.publish:
 | |
|         id: template_sens
 | |
|         state: 42.0
 | |
| 
 | |
|     # Templated
 | |
|     - sensor.template.publish:
 | |
|         id: template_sens
 | |
|         state: !lambda 'return 42.0;'
 | |
| 
 | |
| binary_sensor:
 | |
|   - platform: template
 | |
|     id: some_binary_sensor
 | |
|     name: "Garage Door Open"
 | |
|     lambda: |-
 | |
|       if (id(template_sens).state > 30) {
 | |
|         // Garage Door is open.
 | |
|         return true;
 | |
|       } else {
 | |
|         // Garage Door is closed.
 | |
|         return false;
 | |
|       }
 | |
| 
 | |
| output:
 | |
|   - platform: template
 | |
|     id: outputsplit
 | |
|     type: float
 | |
|     write_action:
 | |
|       - logger.log: "write_action"
 | |
| 
 | |
| switch:
 | |
|   - platform: template
 | |
|     name: "Template Switch"
 | |
|     lambda: |-
 | |
|       if (id(some_binary_sensor).state) {
 | |
|         return true;
 | |
|       } else {
 | |
|         return false;
 | |
|       }
 | |
|     turn_on_action:
 | |
|       - logger.log: "turn_on_action"
 | |
|     turn_off_action:
 | |
|       - logger.log: "turn_off_action"
 | |
| 
 | |
| button:
 | |
|   - platform: template
 | |
|     name: "Template Button"
 | |
|     on_press:
 | |
|       - logger.log: Button Pressed
 | |
| 
 | |
| cover:
 | |
|   - platform: template
 | |
|     name: "Template Cover"
 | |
|     lambda: |-
 | |
|       if (id(some_binary_sensor).state) {
 | |
|         return COVER_OPEN;
 | |
|       } else {
 | |
|         return COVER_CLOSED;
 | |
|       }
 | |
|     open_action:
 | |
|       - logger.log: open_action
 | |
|     close_action:
 | |
|       - logger.log: close_action
 | |
|     stop_action:
 | |
|       - logger.log: stop_action
 | |
|     optimistic: true
 | |
| 
 | |
| number:
 | |
|   - platform: template
 | |
|     name: "Template number"
 | |
|     optimistic: true
 | |
|     min_value: 0
 | |
|     max_value: 100
 | |
|     step: 1
 | |
| 
 | |
| select:
 | |
|   - platform: template
 | |
|     name: "Template select"
 | |
|     optimistic: true
 | |
|     options:
 | |
|       - one
 | |
|       - two
 | |
|       - three
 | |
|     initial_option: two
 | |
| 
 | |
| lock:
 | |
|   - platform: template
 | |
|     name: "Template Lock"
 | |
|     lambda: |-
 | |
|       if (id(some_binary_sensor).state) {
 | |
|         return LOCK_STATE_LOCKED;
 | |
|       } else {
 | |
|         return LOCK_STATE_UNLOCKED;
 | |
|       }
 | |
|     lock_action:
 | |
|       - logger.log: lock_action
 | |
|     unlock_action:
 | |
|       - logger.log: unlock_action
 | |
|     open_action:
 | |
|       - logger.log: open_action
 | |
| 
 | |
| text:
 | |
|   - platform: template
 | |
|     name: "Template text"
 | |
|     optimistic: true
 | |
|     min_length: 0
 | |
|     max_length: 100
 | |
|     mode: text
 | |
| 
 | |
| alarm_control_panel:
 | |
|   - platform: template
 | |
|     name: Alarm Panel
 | |
|     codes:
 | |
|       - "1234"
 |