Skip to content
This repository was archived by the owner on Aug 9, 2025. It is now read-only.

Add IRC bridging + other production stuff#7

Merged
encadyma merged 23 commits intomasterfrom
irc-and-federation
May 2, 2020
Merged

Add IRC bridging + other production stuff#7
encadyma merged 23 commits intomasterfrom
irc-and-federation

Conversation

@encadyma
Copy link
Member

@encadyma encadyma commented Apr 23, 2020

This is so that the Matrix server can bridge properly. The bridge itself has not been placed inside the Kubernetes deployment yet, though the configuration files are there. Fixes #4 and #2 + more.

Also incorporates secret templating, Postgres integration, etc.

@encadyma encadyma marked this pull request as draft April 23, 2020 07:50
@encadyma encadyma force-pushed the irc-and-federation branch from 631da18 to bbc38f5 Compare April 23, 2020 08:32
@encadyma
Copy link
Member Author

encadyma commented Apr 23, 2020

So I've made some changes for the sake of testing it on app-matrix, which included changing the original Docker image versions to personal builds. There's a lot of cleanup to be done on this branch before I'm happy with getting it merged, which I'm outlining here:

  • Replace image versions (though how could this be done with appservice-irc?)
  • Separate Synapse and bridge into two *deployments? (the current setup was just convenient)
  • What to do about building appservice-irc? It's currently in a subdirectory, but can Jenkins/other build tool be configured to build image in subdirectories too?
  • Remove secrets, inject passkey.pem somehow

@encadyma encadyma requested review from cg505 and ja5087 April 23, 2020 09:50
@encadyma encadyma changed the title Add preliminary IRC bridging registration Add IRC bridging Apr 23, 2020
@bjb568
Copy link
Contributor

bjb568 commented Apr 23, 2020

Yeet.

Copy link
Member

@cg505 cg505 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👌👀👌👀👌👀👌👀👌👀 good shit go౦ԁ sHit👌 thats ✔ some good👌👌shit right👌👌there👌👌👌 right✔there ✔✔if i do ƽaү so my self 💯 i say so 💯 thats what im talking about right there right there (chorus: ʳᶦᵍʰᵗ ᵗʰᵉʳᵉ) mMMMMᎷМ💯 👌👌 👌НO0ОଠOOOOOОଠଠOoooᵒᵒᵒᵒᵒᵒᵒᵒᵒ👌 👌👌 👌 💯 👌 👀 👀 👀 👌👌Good shit

@cg505
Copy link
Member

cg505 commented Apr 23, 2020

  • Replace image versions (though how could this be done with appservice-irc?)
  • Separate Synapse and bridge into two pods? (the current setup was just convenient)
  • What to do about building appservice-irc? It's currently in a subdirectory, but can Jenkins/other build tool be configured to build image in subdirectories too?

Take a look at how ocfweb does this stuff. For instance, it just builds all the images with the same tag: https://github.com/ocf/ocfweb/blob/d7d22d7ee88ce0599f69ea3d93f7de7749fd814f/Makefile#L36-L38 (DOCKER_REVISION is set by Jenkins) Obviously we don't have a shared "base" here, but we can just run docker build twice in the same Makefile.

  • Remove secrets, inject passkey.pem somehow

See inline comments.

@encadyma encadyma force-pushed the irc-and-federation branch 2 times, most recently from 65371e6 to df8bb2a Compare April 23, 2020 20:24
@encadyma encadyma linked an issue Apr 23, 2020 that may be closed by this pull request
@cg505 cg505 mentioned this pull request Apr 26, 2020
5 tasks
@encadyma encadyma added the enhancement New feature or request label Apr 30, 2020
@encadyma encadyma force-pushed the irc-and-federation branch from 19bc838 to 1e80bc2 Compare April 30, 2020 02:39
@encadyma encadyma marked this pull request as ready for review April 30, 2020 05:55
@encadyma encadyma requested review from cg505, dkess, fydai and nikhiljha April 30, 2020 05:55
@encadyma encadyma linked an issue Apr 30, 2020 that may be closed by this pull request
3 tasks
@encadyma encadyma added this to the Matrix Release milestone Apr 30, 2020
Copy link
Member

@nikhiljha nikhiljha left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Copy link
Member

@cg505 cg505 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if our entire dockerfile is literally just FROM ..., we shouldn't build a docker image at all. we can just use the upstream docker image directly in the kubernetes yaml.

@encadyma
Copy link
Member Author

encadyma commented May 1, 2020

if our entire dockerfile is literally just FROM ..., we shouldn't build a docker image at all. we can just use the upstream docker image directly in the kubernetes yaml.

I think it makes it more consistent that they are built here, and since Matrix as a whole is an evolving standard, we might need to do some patching to the images in case of breaking changes, etc. It's also nice to be able to see and update image versions from one file Makefile.

@cg505
Copy link
Member

cg505 commented May 1, 2020

if our entire dockerfile is literally just FROM ..., we shouldn't build a docker image at all. we can just use the upstream docker image directly in the kubernetes yaml.

I think it makes it more consistent that they are built here, and since Matrix as a whole is an evolving standard, we might need to do some patching to the images in case of breaking changes, etc. It's also nice to be able to see and update image versions from one file Makefile.

it feels weird, but I guess that makes sense

Dockerfile.bridge -> ENTRYPOINT to CMD for more flexibility with the image later.
Dockerfile.matrix -> Synapse log config has been patched into the image itself.
@encadyma
Copy link
Member Author

encadyma commented May 1, 2020

if our entire dockerfile is literally just FROM ..., we shouldn't build a docker image at all. we can just use the upstream docker image directly in the kubernetes yaml.

I think it makes it more consistent that they are built here, and since Matrix as a whole is an evolving standard, we might need to do some patching to the images in case of breaking changes, etc. It's also nice to be able to see and update image versions from one file Makefile.

it feels weird, but I guess that makes sense

Latest commit patches both Dockerfiles, ~20 minutes after the latest comment

@encadyma encadyma changed the title Add IRC bridging Add IRC bridging + other production stuff May 1, 2020
This was linked to issues May 1, 2020
Copy link
Member

@cg505 cg505 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MERGE ME DADDY

containers:
- name: matrix-synapse
image: "docker.ocf.berkeley.edu/synapse:<%= version %>"
imagePullPolicy: Always
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can remove (only for testing)

@encadyma encadyma merged commit 9214a2e into master May 2, 2020
@nikhiljha nikhiljha deleted the irc-and-federation branch September 3, 2021 22:10
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Transition database store to PostgreSQL IRC <-> Matrix Bridge Remove secrets from homeserver.yaml Set up federation

5 participants