๐ Update a pinned gist to contain your anniversaries and countdown days (or hours)
๐ This project is inspired by waka-box and lang-box.
๐ For more pinned-gist projects like this one, check out: https://github.com/matchai/awesome-pinned-gists.
Example gist: https://gist.github.com/kf-liu/7de2a55824ec5e8a78ebc3c57e4ca82b
- Create a new public GitHub Gist (https://gist.github.com)
- Create a token with the
gistscope and copy it. (https://github.com/settings/tokens/new)
You can use it directly in github action of an existing repository without cloning a new repository. Here's how to use it in a .yml file in .github/workflows directory.
steps:
- uses: actions/checkout@master
- name: Update gist
uses: kf-liu/date-box@master
env:
TYPE: DAY
GH_TOKEN: ${{ secrets.GH_TOKEN }}
GIST_ID: 7de2a55824ec5e8a78ebc3c57e4ca82b
RECORDS: "0 * * * 0,6 _ WEEKEND | 0 0 10 * * _PAYDAY | 2022-10-22 _ INIT DATE-BOX | 0 * 28 12 * _ MY BIRTHDAY"
env is configured in the same way as below (Project setup).
You can also use and modify it in a new repository. Here's how to use it.
-
Fork this repo
-
Edit the environment variable in
.github/workflows/schedule.yml:- GIST_ID: The ID portion from your gist url:
https://gist.github.com/kf-liu/7de2a55824ec5e8a78ebc3c57e4ca82b. - RECORDS: Your anniversary and countdown days. (The format is below. (Records format))
- GIST_ID: The ID portion from your gist url:
-
Go to the repo Settings > Secrets
-
Add the following environment variables:
- GH_TOKEN: The GitHub token generated above.
((cron|moment)( _ (event))? | )|*(cron|moment)( _ (event))?
| | | | |
| | | | |
| | | | +- - - ' | ': record separator
| | | |
| | | +- - - - - - (event): what you want to record
| | |
| | +- - - - - - - - - ' _ ': the time and event separator
| |
+- - -+- - - - - - - - - - - - (time): when you want to record
Currently, two formats are supported: cron (for loop event) and moment (for single event).
- corn: to schedule a loop event to countdown at specific UTC times using POSIX cron syntax.
- e.g.
0 0 1 * *For the first of every month0 0 l * *For the last of every month0 0 * * 0For every Sunday (00:00 am)0 * * * 0For every Sunday (all day long)
- e.g.
- moment: to schedule a single event to countdown using moment.
- e.g.
2022-10-22
- e.g.
One record consists of one time and one event, and thay are connected by _ (a space, an underscore, and a space). Each record will be displayed as a line in your gist.
e.g.
0 * * * 0,6 _ WEEKEND0 0 10 * * _ PAYDAY2022-10-22 _ CREATE DATE-BOX0 * 28 12 * _ MY BIRTHDAY
Of course, event is not required, you can just give the time. (_ is not required as well).
This is the final format of records: Connect a series of records with | (a space, an vertical bar, and a space).
e.g.
0 * * * 0,6 _ WEEKEND | 0 0 10 * * _ PAYDAY | 2022-10-22 _ CREATE DATE-BOX | 0 * 28 12 * _ MY BIRTHDAY.
- The countdown to the next holiday.
You are the lucky visitor here! Thank you for your ๐attention and โจstar!
