add automation to execute showcae sunday script everyday

This commit is contained in:
Bhupesh-V 2024-01-01 20:00:47 +05:30
parent 753567f319
commit d0525e27ba
3 changed files with 42 additions and 2 deletions

35
.github/workflows/showcase-sunday.yml vendored Normal file
View File

@ -0,0 +1,35 @@
name: r/developersIndia Showcase Sunday Thread
on:
schedule:
# Run at 3:25 AM UTC (8:55 AM IST) every day
- cron: '25 3 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.10
uses: actions/setup-python@v3
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Create Showcase Sunday Thread
env:
REDDIT_CLIENT_ID: ${{ secrets.REDDIT_CLIENT_ID }}
REDDIT_CLIENT_SECRET: ${{ secrets.REDDIT_CLIENT_SECRET }}
REDDIT_PASSWORD: ${{ secrets.REDDIT_PASSWORD }}
REDDIT_USERNAME: ${{ secrets.REDDIT_USERNAME }}
run: |
cd showcase-sunday
python main.py

View File

@ -21,12 +21,12 @@ def is_second_sunday():
def create_showcase_sunday_megathread(subreddit): def create_showcase_sunday_megathread(subreddit):
flair = next( flair = next(
filter( filter(
lambda flair: flair["flair_text"] == "Showcase Sunday", lambda flair: "Showcase Sunday" in flair["flair_text"],
subreddit.flair.link_templates.user_selectable(), subreddit.flair.link_templates.user_selectable(),
) )
) )
title = "Showcase Sunday Megathread - {month} {year}".format(month=datetime.date.today().strftime("%B"), year=datetime.date.today().year) title = "Showcase Sunday Megathread - {month}, {year}".format(month=datetime.date.today().strftime("%B"), year=datetime.date.today().year)
text = """ text = """
It's time for our monthly showcase thread where we celebrate the incredible talent in our community. Whether it's an app, a website, a tool, or anything else you've built, we want to see it! Share your latest creations, side projects, or even your work-in-progress. It's time for our monthly showcase thread where we celebrate the incredible talent in our community. Whether it's an app, a website, a tool, or anything else you've built, we want to see it! Share your latest creations, side projects, or even your work-in-progress.
@ -38,7 +38,9 @@ Let's inspire each other and celebrate the diverse skills we have. Comment below
selftext=text, selftext=text,
flair_id=flair["flair_template_id"], flair_id=flair["flair_template_id"],
) )
submission.mod.approve()
submission.mod.sticky() submission.mod.sticky()
submission.mod.distinguish()
return submission return submission
@ -55,6 +57,9 @@ def main():
if is_second_sunday(): if is_second_sunday():
create_showcase_sunday_megathread(subreddit) create_showcase_sunday_megathread(subreddit)
print("Showcase Sunday Megathread created successfully!")
else:
print("Skipping. Not the second Sunday of the month")
if __name__ == "__main__": if __name__ == "__main__":
main() main()