. 10 min read.
Let's generate TypeScript types from protobuf files with ts-proto, filter out enums and types we need, and export them from a single index file. Nice! Now, let's wrap all this into an npm package - to encapsulate build process scripts, npm dependencies and internal folder structure.. Last updated on . 5 min read.
Since set-output command is now deprecated, we will replace it with the new shiny $GITHUB_OUTPUT (and other Environment files) syntax. We will also see if, instead of posting comments on pull request pages, we can leverage the new Job Step Summary approach. Which makes adding custom markdown reports and log messages to our GitHub workflow runs super easy.. Last updated on . 4 min read.
Cache invalidation is one of the most complex computer science tasks. Especially so for GitHub action workflows, since there is no explicit mechanism to clean or invalidate present caches. However, what we can do - is to update cache keys with a dedicated environment or repository variable.. 4 min read.
Let's learn how to extend existent Pull Request Update GitHub Actions workflow with steps specific for Dependabot pull requests (i.e. labels). We will add two jobs to the existent pull_request workflow and experiment with separate "before" and "after" workflow_run event workflows. Fortunately, after the recent GitHub actions update we don't need to use a separate pull_request_target event workflow as a workaround.. 8 min read.
GitHub Actions is an awesome and very powerful tool. Let's explore workflow running time optimizations with caching node_modules and production build artifacts. We will be using "Dependency Cache" GH Actions feature driven by "actions/cache". Hint: as always, cache invalidation is a key.