---
# System prepended metadata

title: GH Actions

---

# GH Actions

The goal replace our bots with Actions
.


we can run bedevere from actions instead of heroku

Or we can replace with individual actions: we can find from marketpolace or write our own


Moving bedevere over:
- turn it into actions
- it can stay in bedevere repo
- How do we structure the code and reuse the code
- How to we make it launch quickly 


Lukasz: we should replace heroku
but probably easier to replace one by one


there's a limit of GH actions? We got enough resource?
we're currently 7c per months for actions
we can ask GH for credit

Once we get merge queues, thigs will be better.
but this is not a concern

Ezio: having separate actios will also create a lot of checks in the PR
Lukasz: its good because now we can actually see which checks are being run

Brett: it depends on how we structure it

Brett: there is new release whwrr you can dunamically change the title


Concensus: we want individual actions now

Eventually we want all of bedevere moved.
Brett: it's ok to change how it currently works in bedevere. we don't have to keep bedevere wholly. GH has changed since bedevere was initially writen

features:
- labels
- issue title checks
- 


Cam: perhaps some of the things probably don't even need Python script. Brett: we can probably find markeplace. use javascript


How 

Lysandros: when we write indivual actions, -> the actions will be in each repo, instead of a monolith like bedevere




Draft PR for bedevere:
- https://github.com/python/bedevere/pull/459 -> will shelve this
- We will start writing new actions and disable bedevere features one by one


Lets discuss how to package the action

1. Dockerfile , gh doesnt cache it. It's slow
2. dockerfile prebuild
Build your own custom docker image, put it on container, then use it. This is faster
3. fake JS action where you vendor your dependencies and use /usr/bin/python on the machine. all the github runners habe python installed. (3.8 at elast?) 
4. WASM

Lukasz like opt 2, lysandros too
opt3 is a bit hacky

opt 1 is too slow

brett, perf on 2 is good enough . dont know about 3
with 3, you cannot run the test locally to see if it would work

The nice thing of splitting bedevere into individual actions, we dont have to choose anyy of the above. each action can use differentapproach

Ezio:
- do e want them to be cpython specific? or make them generic and put on the marketplace:
- brett: the latter. it shouldn't be cpython specific

Lukasz: can we use dockerfile prebuild if want to make generic? 
Brett: no

Brett: we already have node build so WASM is totall possible

Lukasz will work on something this week to get it on WASM

Lukasz: there's a benefit for us doing the wasm