Files
default/scripts/check/wheels.py
T
Joakim Sørensen 001a81b77f New Github actions (#481)
* Test new check

* Add quote

* test

* test

* move check

* move back

* use env

* test multistep

* test trigger

* if: github.event.label.name

* quotes

* hassfest?

* Fix clone

* Update hassfest

* check hassfest

* Use real domain

* Lmit

* Test hassfest

* Check domain

* Fix domain

* No changes

* Enable on unlable

* Change HACS validate

* Move inputs

* Add dummy integration

* TEst

* Move to env

* Fix repo

* Remove entry
2020-05-26 17:53:04 +02:00

49 lines
1.4 KiB
Python

import asyncio
import json
import os
from glob import glob
from aiogithubapi import GitHub
from scripts.changed.category import get_category
from scripts.changed.repo import get_repo
from scripts.helpers.manifest import get_manifest
TOKEN = os.getenv("GITHUB_TOKEN")
async def check():
if get_category() != "integration":
print("Only integrations are checked.")
return
manifest = get_manifest()
domain = manifest.get("domain")
requirements = manifest.get("requirements")
if domain is None:
print("No domain")
exit(1)
if not requirements:
print("No requirements found")
return
async with GitHub(TOKEN) as github:
repository = await github.get_repo("home-assistant/wheels-custom-integrations")
files = await repository.get_contents("components")
components = [x.attributes["name"] for x in files]
if domain in components or f"{domain}.json" in components:
print(
f"{domain} is added to https://github.com/home-assistant/wheels-custom-integrations, NICE!"
)
return
print(
f"{domain} is not added to https://github.com/home-assistant/wheels-custom-integrations"
)
print("This is needed to ensure the best possible experience for the user")
exit(1)
if __name__ == "__main__":
asyncio.get_event_loop().run_until_complete(check())