Files
default/scripts/check/brands.py
T
Joakim Sørensen 9e8788c060 Add preflight (#490)
* Add preflight

* fix syntax

* move check

* get event

* print

* return event

* use path

* tt

* move to helper

* add issue_comment

* remove should run

* check owner

* add more information to the logs

* test

* add finished

* move keys

* Update errors

* remove repo

* fix JQ run

* filter
2020-05-28 16:53:45 +02:00

43 lines
1.3 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():
print("Information: https://hacs.xyz/docs/publish/include#check-brands")
if get_category() != "integration":
print("Only integrations are checked.")
return
manifest = get_manifest()
domain = manifest.get("domain")
if domain is None:
print("No domain")
exit(1)
async with GitHub(TOKEN) as github:
repository = await github.get_repo("home-assistant/brands")
files = await repository.get_contents("custom_integrations")
if domain not in [x.attributes["name"] for x in files]:
exit(
f"::error::{domain} is not added to https://github.com/home-assistant/brands, "
+ "this is needed to ensure the best possible experience for the user"
)
else:
print(
f"{domain} is added to https://github.com/home-assistant/brands, NICE!"
)
if __name__ == "__main__":
asyncio.get_event_loop().run_until_complete(check())