Releases and versioning for Redwood apps

No project is complete without proper releases and versioning! Since this isn’t a feature of Redwood (yet?) I wanted to share the best (:exclamation:) way to properly release RedwoodJS apps. Let’s face it, your small team of coders have more important things to worry about. Here were my goals:

  • Fully automated which means less work, fewer human errors, and it will actually be used and be adopted for consistency
  • No external CI/CD services.
  • Can be run “manually” if needed, such as for quick rollbacks

…And anything I build wouldn’t be complete with a handy Discord integration :ghost:

What are you waiting for? Come join the release party :tada:

Each Github Action is artisanal hand-crafted with love using strictly gluten-free organic code.

3 Likes

@pi0neerpat this is SuperGreat™ Huge thank you for sharing!

I’ve had a dream (that I’ve passed along to @dom) to have an official Redwood CI GitHub Action published to the Marketplace that can be set up with something like yarn rw setup ci. Because I don’t know of a framework that’s ever been able to do that before, am I right?

Here’s an example I’ve been using for my automated deploy tests:

Spins up postgres and then runs through build, lint, test, and check. (Only thing missing is E2E.)

Ideally this would be an action and configurable for either SQLite or Postgres (or others). But for now seems just fine to start with Postgres.

What do you think?

Nice! Github has a Postgres Action I plan on adding

How come you have the same steps are repeated multiple times?

Re: repetition
This repo contains many individual projects, each needing CI

I created a reusable action, which eventually can be the model to use to publish the Redwood CI Action. But getting errors in syntax and didn’t want to fuss any more for now.

1 Like