Skip to content

Commit 0d4d1fa

Browse files
committed
Cache pip packages in Actions workflow
1 parent 40d04e6 commit 0d4d1fa

3 files changed

Lines changed: 58 additions & 21 deletions

File tree

.github/workflows/main.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,12 @@ jobs:
1111
steps:
1212
- uses: actions/checkout@master
1313
- name: Set up Python 3.8
14-
uses: actions/setup-python@v5
14+
uses: actions/setup-python@v6
1515
with:
1616
python-version: 3.8
17+
cache: 'pip'
1718
- name: regenerate _data/meetings.json
18-
run: python3.8 -m pip install meetupscraper gql aiohttp && TZ=Europe/Warsaw python3.8 ./scripts/meetings.py && cp _data/live_meetings.json api_live_meetings.json
19+
run: python3.8 -m pip install -r scripts/requirements.txt && TZ=Europe/Warsaw python3.8 ./scripts/meetings.py && cp _data/live_meetings.json api_live_meetings.json
1920
- uses: stefanzweifel/git-auto-commit-action@v5.2.0
2021
with:
2122
commit_message: Autoupdate _data/meetings.json

scripts/meetings.py

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -42,39 +42,47 @@ def save_event(next_event, fpath):
4242
next_date = next_event.date.strftime("%d-%m-%Y %H:%M")
4343

4444
json_data = {
45-
'date': next_event.date.strftime("%d-%m-%Y %H:%M"),
46-
'url': next_event.url,
45+
"date": next_event.date.strftime("%d-%m-%Y %H:%M"),
46+
"url": next_event.url,
4747
}
4848

49-
try:
50-
event_id = re.search(r".+\/(\d+)\/", json_data['url']).groups()[0]
51-
gql_data = get_gql_data(event_id)
52-
json_data['location'] = '<strong>' + gql_data['event']['venue']['name'] + '</strong>, ' + gql_data['event']['venue']['address'] + ', ' + gql_data['event']['venue']['city']
53-
54-
except:
55-
json_data['location'] = '<strong>Hakierspejs Łódź</strong>'
49+
try:
50+
event_id = re.search(r".+\/(\d+)\/", json_data["url"]).groups()[0]
51+
gql_data = get_gql_data(event_id)
52+
json_data["location"] = (
53+
"<strong>"
54+
+ gql_data["event"]["venue"]["name"]
55+
+ "</strong>, "
56+
+ gql_data["event"]["venue"]["address"]
57+
+ ", "
58+
+ gql_data["event"]["venue"]["city"]
59+
)
5660

57-
#if not next_event.venue:
61+
except:
62+
json_data["location"] = "<strong>Hakierspejs Łódź</strong>"
63+
64+
# if not next_event.venue:
5865
# json_data['location'] = 'Hakierspejs Łódź' # Default location
59-
#if next_event.venue and next_event.venue.name != 'Online event':
66+
# if next_event.venue and next_event.venue.name != 'Online event':
6067
# json_data['location'] = next_event.venue.name
6168

62-
json_data['title'] = ''
69+
json_data["title"] = ""
6370
if not next_event.title:
64-
json_data['title'] = 'Nie znaleziono tytułu'
71+
json_data["title"] = "Nie znaleziono tytułu"
6572
else:
66-
json_data['title'] = next_event.title
73+
json_data["title"] = next_event.title
6774

68-
with open(fpath, 'w') as f:
75+
with open(fpath, "w") as f:
6976
f.write(json.dumps(json_data, ensure_ascii=False))
7077

71-
if __name__ == '__main__':
72-
next_events = meetupscraper.get_upcoming_events('Hakierspejs-Łódź')
78+
79+
if __name__ == "__main__":
80+
next_events = meetupscraper.get_upcoming_events("Hakierspejs-Łódź")
7381
next_events = list(sorted(next_events, key=lambda x: x.date))
7482

7583
if not next_events:
7684
sys.exit()
7785

7886
next_event = next_events[0]
79-
save_event(next_event, './_data/meetings.json')
80-
save_event(next_event, './_data/live_meetings.json')
87+
save_event(next_event, "./_data/meetings.json")
88+
save_event(next_event, "./_data/live_meetings.json")

scripts/requirements.txt

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
aiohappyeyeballs==2.4.4
2+
aiohttp==3.10.11
3+
aiosignal==1.3.1
4+
anyio==4.5.2
5+
async-timeout==5.0.1
6+
attrs==25.3.0
7+
backoff==2.2.1
8+
backports-zoneinfo==0.2.1
9+
certifi==2026.2.25
10+
charset-normalizer==3.4.4
11+
exceptiongroup==1.3.1
12+
frozenlist==1.5.0
13+
gql==4.0.0
14+
graphql-core==3.2.7
15+
icalendar==6.3.2
16+
idna==3.11
17+
lxml==6.0.2
18+
meetupscraper==0.11.2
19+
multidict==6.1.0
20+
propcache==0.2.0
21+
python-dateutil==2.9.0.post0
22+
requests==2.32.4
23+
six==1.17.0
24+
sniffio==1.3.1
25+
typing-extensions==4.13.2
26+
tzdata==2025.3
27+
urllib3==2.2.3
28+
yarl==1.15.2

0 commit comments

Comments
 (0)