{"id":18525771,"url":"https://github.com/toricls/everlasting-hey-yo","last_synced_at":"2026-04-02T02:38:22.064Z","repository":{"id":89977064,"uuid":"174474390","full_name":"toricls/everlasting-hey-yo","owner":"toricls","description":"Everlasting \"Hey, Yo!\" per second 👋","archived":false,"fork":false,"pushed_at":"2021-06-19T04:04:26.000Z","size":15,"stargazers_count":16,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-24T05:35:13.246Z","etag":null,"topics":["container-logging","hey-yo","sigkill","sigterm"],"latest_commit_sha":null,"homepage":"https://gallery.ecr.aws/toricls/everlasting-hey-yo","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/toricls.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-08T05:25:17.000Z","updated_at":"2024-02-08T06:39:20.000Z","dependencies_parsed_at":"2023-05-30T18:15:28.460Z","dependency_job_id":null,"html_url":"https://github.com/toricls/everlasting-hey-yo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toricls%2Feverlasting-hey-yo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toricls%2Feverlasting-hey-yo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toricls%2Feverlasting-hey-yo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toricls%2Feverlasting-hey-yo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/toricls","download_url":"https://codeload.github.com/toricls/everlasting-hey-yo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248040319,"owners_count":21037846,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["container-logging","hey-yo","sigkill","sigterm"],"created_at":"2024-11-06T17:47:00.059Z","updated_at":"2026-04-02T02:38:22.058Z","avatar_url":"https://github.com/toricls.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"# everlasting-hey-yo\n\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)][license]\n[![Hey, Yo!](https://img.shields.io/badge/Hey-Yo!-orange.svg?style=flat-square)][hey-yo]\n\n[license]: https://github.com/toricls/everlasting-hey-yo/blob/master/LICENSE\n[hey-yo]: https://github.com/topics/hey-yo\nEverlasting \"Hey, Yo!\" per second\n\n## Usage\n\n```shell\n$ docker run public.ecr.aws/toricls/everlasting-hey-yo\n```\n\nthen, you'll see everlasting \"Hey, Yo!\" per second.\n\n```shell\nHey, Yo!\nHey, Yo!\n...\n```\n\n## So, what is this?\n\nHey-yo container is meant to know the duration between `SIGTERM` and its subsequent `SIGKILL`, _**roughly**_.\n\nYou can use Hey-yo to make sure that your container orchestrator issues `docker stop` with `--stop` option (or, `docker run` with `--stop-timeout` option) as expected.\n\n### Hey-yo traps SIGTERM\n\nHey-yo container react to a SIGTERM signal but does not stop by default.\n\nLet's try sending a SIGTERM signal to your Hey-Yo container with the following command:\n\n```shell\n$ docker stop YOUR-CONTAINER-ID\n```\n\nthen, you'll see the following line and Hey-Yo container will keep running.\n\n```shell\n...\nHey, Yo!\nHey, Hey, Hey, Yo!!! 👈 Hey-Yo container reacted to the SIGTERM signal, and keep running!\nHey, Yo!\nHey, Yo!\n...\n```\n\n### Options\n\nYou can change its behavior by specifying environment variables.\n\n#### 1. `LET_ME_DIE`: Let it stop with SIGTERM\n\nHey-Yo container stops with a SIGTERM signal.\n\n```shell\n$ docker run -e LET_ME_DIE=1 public.ecr.aws/toricls/everlasting-hey-yo\n```\n\n#### 2. `GIVE_ME_PATTERN`: More message patterns\n\n```shell\n$ docker run -e GIVE_ME_PATTERN=1 public.ecr.aws/toricls/everlasting-hey-yo\n```\n\nthen you'll see randomized, but meaningless, output.\n\n```shell\n...\nHey, Yo!\nA lot of Hey, Yo!\nHey, Yo!\nHey, Yo!\nA lot of Hey, Yo!\nA lot of Hey, Yo!\nHey, Yo!\nHey, Yo!\nHey, Yo!\n...\n```\n\n#### 3. `TIMESTAMP`: Logs with timestamp\n\n```shell\n$ docker run -e TIMESTAMP=1 public.ecr.aws/toricls/everlasting-hey-yo\n```\n\nthen you'll see timestamp-ed log output.\n\n```shell\n...\n2020-05-07T11:17:05+0000 Hey, Yo!\n2020-05-07T11:17:06+0000 Hey, Yo!\n2020-05-07T11:17:07+0000 Hey, Yo!\n2020-05-07T11:17:08+0000 Hey, Yo!\n2020-05-07T11:17:09+0000 Hey, Yo!\n...\n```\n\n## Build your own Hey-Yo container\n\n```shell\n$ docker build -t YOUR-NAME/everlasting-hey-yo .\n$ docker push YOUR-NAME/everlasting-hey-yo\n```\n\n## Use Docker Hub hosted image instead of Amazon ECR Public\n\nYou can use [`toricls/everlasting-hey-yo:latest`](https://hub.docker.com/r/toricls/everlasting-hey-yo) instead of `public.ecr.aws/toricls/everlasting-hey-yo:latest`.\n\n## Contribution\n\n1. Fork ([https://github.com/toricls/everlasting-hey-yo/fork](https://github.com/toricls/everlasting-hey-yo/fork))\n1. Create a feature branch\n1. Commit your changes\n1. Rebase your local changes against the master branch\n1. Create a new Pull Request\n\n## Licence\n\n[MIT](LICENSE)\n\n## Author\n\n[Tori](https://github.com/toricls)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoricls%2Feverlasting-hey-yo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoricls%2Feverlasting-hey-yo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoricls%2Feverlasting-hey-yo/lists"}