Skip to content
A collection of useful GitHub Actions
Dockerfile Shell
Branch: master
Clone or download
Pull request Compare This branch is even with maddox:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
home-assistant
pushover
sleep
ssh
wait-for-200
README.md

README.md

GitHub Actions

Fun with robots.

This is a collection of GitHub 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

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

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

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

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

This action allows you to send yourself a push notification via 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. Please see additional information in each subdirectory.

You can’t perform that action at this time.