Our patched version of Hometown
Go to file
decentral1se eb70b6d8f8
docs: and deploy
2022-02-08 14:32:57 +01:00
.gitignore init 2022-02-07 16:10:19 +01:00
README.md docs: and deploy 2022-02-08 14:32:57 +01:00

README.md

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. Then deploy it and debug any issues.

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. 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 . Add RUN cat /etc/ssl/certs/ca-certificates.crt > /opt/mastodon/vendor/bundle/ruby/2.7.0/gems/httpclient-2.8.3/lib/httpclient/cacert.pem to the Dockerfile (ref). You might need to do 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.
  4. Push the container & update the Co-op Cloud recipe (compose.oidc.yml)
  5. Deploy the thing & pray
  6. Hope you never have to do this again

v3.4.6

diff --git a/Dockerfile b/Dockerfile
index cbcdb2034..a159ee0de 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -111,6 +111,8 @@ RUN cd ~ && \
        OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder rails assets:precompile && \
        yarn cache clean

+RUN cat /etc/ssl/certs/ca-certificates.crt > vendor/bundle/ruby/2.7.0/gems/httpclient-2.8.3/lib/httpclient
+
 # Set the work dir and the container entry point
 WORKDIR /opt/mastodon
 ENTRYPOINT ["/usr/bin/tini", "--"]
diff --git a/Gemfile.lock b/Gemfile.lock
index a01341fc9..573c8e776 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -279,8 +279,8 @@ GEM
     http-parser (1.2.1)
       ffi-compiler (>= 1.0, < 2.0)
     http_accept_language (2.1.1)
-    httplog (1.5.0)
     httpclient (2.8.3)
+    httplog (1.5.0)
       rack (>= 1.0)
       rainbow (>= 2.0.0)
     i18n (1.8.10)
@@ -843,9 +843,3 @@ DEPENDENCIES
   webpacker (~> 5.4)
   webpush (~> 0.3)
   xorcist (~> 1.1)
-
-RUBY VERSION
-   ruby 2.6.5p114
-
-BUNDLED WITH
-   1.17.2