Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/maddox/actions

A collection of useful GitHub Actions
https://github.com/maddox/actions

github-actions home-automation workflows

Last synced: 8 days ago
JSON representation

A collection of useful GitHub Actions

Awesome Lists containing this project

README

        

# GitHub Actions

Fun with robots.

This is a collection of [GitHub Actions](https://github.com/features/actions) that I thought might be useful to others.
There aren't many for now, but any general actions I create will get stored here.

## [Home Assistant Command](home-assistant)

This action allows you to make a service call to your Home Assistant instance.
Blink a light when a deploy is done, set your lights to green when CI goes green,
lock your front door until the deploy is complete.

Of course you want to incorporate your smart devices into your GitHub workflow!

image

```
action "Flash office lights" {
uses = "maddox/actions/home-assistant@master"
secrets = ["HASS_HOST", "HASS_TOKEN"]
env = {
SERVICE_DATA = "{\n \"entity_id\": \"light.office\",\n \"flash\": \"short\"\n}"
DOMAIN = "light"
SERVICE = "turn_on"
}
}
```

# [SSH](ssh)

This action will run the provided argument as a command on your $HOST via SSH.

image

```
action "Run deploy script" {
uses = "maddox/actions/ssh@master"
args = "/opt/deploy/run"
secrets = [
"PRIVATE_KEY",
"HOST",
"USER"
]
}
```

## [Sleep](sleep)

This action will simply call `sleep` for N seconds in case you need a little
padding in your workflow.

image

```
action "Sleep" {
uses = "maddox/actions/sleep@master"
args = "15"
}
```

## [Wait for 200](wait-for-200)

This action will simply check that a URL is returning a `200` HTTP status code
before completing. You have the option to set how many seconds between checks
and how many tries before it exits in failure.

image

```
action "Wait for 200" {
uses = "maddox/actions/wait-for-200@master"
env = {
URL = "https://mysite.com"
SECONDS_BETWEEN_CHECKS = "2"
MAX_TRIES = "20"
}
}
```

# [Pushover Notifications](pushover)

This action allows you to send yourself a push notification via [Pushover.net](https://Pushover.net).

Screen Shot 2019-04-10 at 2 13 27 AM

```
action "Notify Completion" {
uses = "maddox/actions/pushover@master"
secrets = ["APP_TOKEN", "USER_KEY"]
env = {
TITLE = "Build Complete"
MESSAGE = "Your container has been built and verified."
URL = "https://your.builddetails.com/builds/23212"
URL_TITLE = "Build Details"
SOUND = "magic"
PRIORITY = "1"
}
}
```

## License

[MIT](LICENSE). Please see additional information in each subdirectory.