package and run notifico #9

Closed
opened 2019-04-26 21:51:07 +08:00 by sb10q · 7 comments
Owner

Include this: 22b582fad6

Include this: https://github.com/whitequark/notifico/commit/22b582fad6cb97af6f7437e8462d720ddacc42ef
Contributor

Is the notifico bot supposed to run on nixbld?

Is the notifico bot supposed to run on nixbld?
Author
Owner

Yes.

Yes.
Contributor

Work started in 7cffd4f. Next up: NixOS integration.

Work started in 7cffd4f. Next up: NixOS integration.
Contributor

I've added the service to nixbld in the master branch. Two steps remain for you:

  • Create a local /etc/nixos/secret/notifico.py for services.notifico.config (Defaults)

  • Setup a new DNS entry for the HTTP Vhost notifico.m-labs.hk (which is not a name that is nice to type in my opinion...)

Tell me if I should spend more time on an elaborate UWSGI setup like we have for mattermost-github-integration.

I've added the service to nixbld in the master branch. Two steps remain for you: * Create a local `/etc/nixos/secret/notifico.py` for `services.notifico.config` ([Defaults](https://github.com/notifico/notifico/blob/master/notifico/config.py)) * Setup a new DNS entry for the HTTP Vhost `notifico.m-labs.hk` (which is not a name that is nice to type in my opinion...) Tell me if I should spend more time on an elaborate UWSGI setup like we have for mattermost-github-integration.
Author
Owner
  • We already have hooks.m-labs.hk
  • It seems other services enable their dependencies outside of configuration.nix (e.g. Hydra enables MySQL) - can redis be moved into the notifico pkg?
  • What is the benefit of UWSGI?
* We already have ``hooks.m-labs.hk`` * It seems other services enable their dependencies outside of ``configuration.nix`` (e.g. Hydra enables MySQL) - can redis be moved into the notifico pkg? * What is the benefit of UWSGI?
Contributor

We already have hooks.m-labs.hk

In case you really prefer path mangling over creating DNS entries, we could put both services under hooks.m-labs.hk. I have uncommitted changes for that on the Nix side, but there is more to do, at least:

  • mattermost-github-integration's SERVER['hook'] to /mattermost-github/.
  • Patching some of Notifico's HTML templates to generate the proper paths.

Do you really want this instead of just another DNS entry?

It seems other services enable their dependencies outside of configuration.nix (e.g. Hydra enables MySQL) - can redis be moved into the notifico pkg?

Done in 5f5aa32341.

What is the benefit of UWSGI?

Both mattermost-github-integration and notifico warn about using the default dev server and recommend running under UWSGI for stability and performance.

I'm not sure if we have these requirements. I have given it a try but realized we cannot run Notifico in NixOS' standard UWSGI service because it requires Python 2 unlike mattermost-github-integration.

> We already have `hooks.m-labs.hk` In case you really prefer path mangling over creating DNS entries, we could put both services under `hooks.m-labs.hk`. I have uncommitted changes for that on the Nix side, but there is more to do, at least: * mattermost-github-integration's `SERVER['hook']` to `/mattermost-github/`. * Patching some of Notifico's HTML templates to generate the proper paths. Do you really want this instead of just another DNS entry? > It seems other services enable their dependencies outside of configuration.nix (e.g. Hydra enables MySQL) - can redis be moved into the notifico pkg? Done in 5f5aa3234148b6e12f946479cbbdec3eaf4d53b7. > What is the benefit of UWSGI? Both mattermost-github-integration and notifico warn about using the default dev server and recommend running under UWSGI for stability and performance. I'm not sure if we have these requirements. I have given it a try but realized we cannot run Notifico in NixOS' standard UWSGI service because it requires Python 2 unlike mattermost-github-integration.
Author
Owner

I tried hack-patching Notifico so it runs with Python 3, but there are some bugs, such as all the hooks failing and returning 404.
This thing is quite a beast, requiring 4 processes (web server, bots, worker, redis) and lots of dependencies (some of them outdated just like python2) just to post notifications to IRC...
I wonder if there are simpler and better-maintained alternatives.

I tried hack-patching Notifico so it runs with Python 3, but there are some bugs, such as all the hooks failing and returning 404. This thing is quite a beast, requiring 4 processes (web server, bots, worker, redis) and lots of dependencies (some of them outdated just like python2) just to post notifications to IRC... I wonder if there are simpler and better-maintained alternatives.
3.3 KiB
sb10q closed this issue 2020-06-24 10:46:12 +08:00
Sign in to join this conversation.
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: M-Labs/nix-scripts#9
No description provided.