HugoNikanors blogg‽

A blog about nothing, but mostly itself.

Hugo Hörnquist 17 Apr 2023
Lästid: 2 minut(er)

Gotta Deploy em All

https://hugonikanor.github.io/pokemon-stuff

I have recently played a bit of Pokémon, trying to finally complete my Platinum living dex. Keeping track of which 'mons I was missing was however becoming ever more difficult, since many of the "empty" spaces where filled with extra Pokémon which I didn't have the heart to release (or simple needed for trade fodder later). The solution was obvious: create a program to help me with the tracking!

https://github.com/HugoNikanor/pokemon-stuff

With a working prototype in hand I realized I wanted to share the program, but didn't feel comfortable self-hosting it, since I don't have any proper deployment chains at the moment. So why not deploy it on someone else's server, while simultaneously testing another CI/CD system in to better understand what I want myself.

https://github.com/HugoNikanor/pokemon-stuff/blob/master/.github/workflows/main.yml

Writing the workflow took quite a few tries. GitHub actions are sufficiently documented, if you know where to look. I didn't. I however eventually figured out how to share artifacts between jobs (but not between different jobs...), and how to automatically deploy to GitHub pages. The major hurdles to overcome was that the actions/deploy-pages@v2 module didn't make it to clear which format it wanted its input on, and that it, along with actions/upload-page-artifacts@v1.0.8 specified that a gzipped tarball was needed, while only providing a non-zipped one (which thankfully worked).

The final result is available at https://hugonikanor.github.io/pokemon-stuff, and my current "save file" is

000000000000000000000000000000000000100000000000000000000000800500e00080012000000083012a00001c200200000000c0001000000000000c

It's unfortunately Base16 encoded instead of Base64 encoded, since JavaScripts atob and btoa procedures insisted on the binary data being valid strings, which kind of defeats the point.


A footnote about Spriters Resource: The Pokémon sprites used are pulled from Spriters Resource (see the GitHub action). These are obviously "stolen", which makes me find it interesting/humorous that so many demand credit for their work. In this case credit is actually given, by me exporting the un-cropped sprite sheet to the client (not displaying it, but it's technically there).


RSS RSS-feed to see more like this.
About Contact Legal Q&A