social.lumbung.space/README.md

2.0 KiB

social.lumbung.space

fork hell

release management

We're using Hometown with this PR merged in. Yes, that's a fork of a fork. The process of making a new release is basically merging that PR into the latest Hometown, building, tagging & pushing a container and then updating the hometown recipe configs.

How to do it, you ask? Abandon all hope. Computers were a mistake.

  1. Clone hometown, git fetch -a, git remote add sso https://github.com/chandrn7/smalltown.git, git fetch -a sso
  2. Check out the hometown tag you want, start cherrypicking the commits the PR. This view is handiest. You can copy/pasta each commit hash with that button and see what conflicts you need to resolve. Yep, you'll be blindly resolving conflicts between two forks.
  3. Add RUN cat /etc/ssl/certs/ca-certificates.crt > vendor/bundle/ruby/2.7.0/gems/httpclient-2.8.3/lib/httpclient to the Dockerfile (ref)
  4. If you're lucky enough to get this far, you now need to build a new container. docker build -t <name> . and see what happens . You might need to this absolutely random step in order to get bundler/gem/ruby to install the damn thing. Also try wiping out RUBY VERSION / BUNDLED WITH in the Gemfile.lock when running the build. You generally just end up reading the errors and then chaotically hacking the Gemfile / Gemfile.lock file until it works. If you get to the yarn building step, you might actually make it.
  5. Push the container & update the Co-op Cloud recipe (compose.oidc.yml)
  6. Deploy the thing & pray
  7. Hope you never have to do this again