1
1
Fork 0
mirror of https://gitlab.archlinux.org/archlinux/infrastructure.git synced 2024-05-29 18:06:06 +02:00
Commit Graph

2942 Commits

Author SHA1 Message Date
Jan Alexander Steffens (heftig) 9301b5998c
matrix: Update bridge to 1.0.0 2023-06-13 19:16:13 +02:00
Jan Alexander Steffens (heftig) 5c92f50375
matrix: Use to_json, not shell quoting 2023-06-13 19:16:12 +02:00
Jan Alexander Steffens (heftig) 6c5a35b140
matrix: Update synapse to 1.85.0 2023-06-06 16:50:22 +02:00
Jan Alexander Steffens (heftig) 80d25742b1
matrix: Update synapse to 1.84.1 2023-06-06 16:49:51 +02:00
Evangelos Foutras f435f95726
gitlab_runner: change partnum in img update script
arch-boxes!182 creates an EFI system partition so rootfs is now in p3.
2023-06-04 23:55:51 +03:00
Leonidas Spyropoulos 7a6db955fc
aurweb: release 6.2.4
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-05-27 14:45:50 +01:00
nl6720 44a8549ae6
archwiki: upgrade to 1.39.3-1 2023-05-25 08:28:44 +03:00
Kristian Klausen ae53da3568
Setup OpenSearch server for GitLab's advanced search feature[1]
GitLab is configured to use OpenSearch from its admin panel[2].

[1] https://docs.gitlab.com/ee/user/search/advanced_search.html
[2] https://docs.gitlab.com/ee/integration/advanced_search/elasticsearch.html#enable-advanced-search

Fix #159
2023-05-24 19:04:26 +02:00
Kristian Klausen b72b3ac2df
gitlab: Drop removed option which causes gitlab to crash
gitlab_default_can_create_group is removed and setting it crashses
gitlab :/
2023-05-22 21:59:39 +02:00
Evangelos Foutras 7e1b42eab8
common: pacman.conf: move extra-testing above extra
Match the repo ordering of stock pacman.conf.

Fixes: 4159a61f5e ("dbscripts: switch to Git packaging")
2023-05-22 20:48:35 +03:00
Jelle van der Waa 9f4bd943af
debuginfod: drop svn-community pool scanning 2023-05-22 15:20:16 +02:00
Jelle van der Waa c261a5b12b
rebuilderd: update test suites to post git migration 2023-05-22 15:18:46 +02:00
Jelle van der Waa b4ade79e2f dbscripts: use /var/tmp for createlinks
Creating a full new links db from scratch exhausts /tmp
2023-05-22 13:04:27 +00:00
Jelle van der Waa 05d8933ebd dbscripts: export state repository over https using nginx
Nginx does not directly support cgi scripts so we rely on fcgiwrap. All
git repositories under /srv/repos are exported if they have a special
git-daemon-export-ok file in their .git directory.
2023-05-22 13:04:27 +00:00
Jelle van der Waa 4159a61f5e dbscripts: switch to Git packaging
This drops all svn specific functionality and switches to dbscripts git
version. Drops the community repository as it's merged into extra.
2023-05-22 13:04:27 +00:00
Jan Alexander Steffens (heftig) aa5f10ca47
archbuild: Remove custom diffpkg + diffrepo
Let diffpkg from devtools shine through.
2023-05-21 15:56:23 +02:00
Jelle van der Waa 3deca29ec0
security-tracker: update to 0.14.3 2023-05-21 14:31:00 +02:00
Jelle van der Waa 16b3976df1
security_tracker: update to 0.14.2 2023-05-21 13:28:57 +02:00
Evangelos Foutras fdcab0811b
Revert "dovecot: Install our own PAM config"
This reverts commit d20dd7e134.

PAM 1.5.3 (2023/05/09) deprecated pam_lastlog which is no longer built
by default, so switch back to the stock PAM configuration for Dovecot.
2023-05-20 16:39:52 +03:00
Kristian Klausen bc1e7f7772
Move GitLab's SSH to port 22 and sshd to port 2222
With the ongoing git migration[1] our GitLab will gain a lot more usage,
so GitLab should get the default ssh port and then DevOps can use a
non-standard port.

We will redirect the old port (222) to the new port for some time, so
fetching won't break for existing local repositories.

[1] https://archlinux.org/news/git-migration-announcement/
2023-05-19 22:51:09 +02:00
Jelle van der Waa 1172646c5d
archweb: update to latest version 2023-05-19 21:53:04 +02:00
Jelle van der Waa ca0457e271
dbscripts: tasks: add a temporary authors mapping task
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
2023-05-19 00:33:10 +02:00
Evangelos Foutras 9332ffd1c7
grafana: rebase grafana.ini to grafana 9.5.2-1 2023-05-18 23:24:18 +03:00
Evangelos Foutras 8e9b483d9b
archweb: install gcc for building zstandard
gcc is required by the zstandard Python package in order to build.
2023-05-18 23:14:59 +03:00
Evangelos Foutras a231e3e733
Merge branch 'anthraxx/security-tracker-cache' into 'master'
security-tracker: cache all json API and feed requests

See merge request archlinux/infrastructure!706
2023-05-18 22:03:06 +03:00
Evangelos Foutras 095f834f40
security-tracker: bump version to 0.14.2 2023-05-18 21:57:49 +03:00
Levente Polyak 00a6451fe9
gluebuddy: follow location redirect in the download script
This avoids the issue of ending up with a HTML page that contains a
redirect link if we are not hitting the final endpoint with the
retrieved link.
2023-05-18 17:54:23 +02:00
Jan Alexander Steffens (heftig) ddd0dc4918
matrix: Update synapse to 1.83.0
And fix optional features.
2023-05-11 00:35:37 +02:00
Leonidas Spyropoulos 17bd35d5c4
aurweb: archives moved to separate folder
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-05-10 17:08:22 +01:00
Evangelos Foutras a2510bcc95
Revert "Add Restart=on-failure to gitlab-exporter service"
This reverts commit 6d5a8767b4.

Let's try to find out the real reason first. Plus, this might not have
worked well, as the default systemd restart time limit would not catch
repeated restarts.
2023-05-08 19:24:45 +03:00
Evangelos Foutras 6d5a8767b4
Add Restart=on-failure to gitlab-exporter service
The gitlab-exporter service occasionally fails with errors like:

  Error: missing: `response data`
  Caused by: MissingData("response data")

Let's see if restarting it on errors automatically helps avoid this.
2023-05-08 18:39:07 +03:00
Leonidas Spyropoulos e033d56c44
networking: support additional addresses on networking role
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-05-06 21:23:28 +01:00
Leonidas Spyropoulos 8176b2223b
gitlab: create gitlab srv directory task
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-05-06 21:23:28 +01:00
Leonidas Spyropoulos 3a302b4f7f
aurweb: release 6.2.3
This release removes the php code and adjusts the location of .gz
artifacts.

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-05-06 20:40:29 +01:00
Evangelos Foutras 72760bc2d2
gitlab_runner: fix image update for sequoia 0.29.0
sq verify --signer-cert now expects a fingerprint/key ID.
2023-05-02 22:55:31 +03:00
Levente Polyak 94dc580ee2
security-tracker: cache all json API and feed requests
This also simplifies the request limit configuration as json API and
feed requests are cached hence a more strict request limit is not really
necessary anymore.

- Configure a uwsgi cache of 1GB for all json API and feed requests
- Cache JSON API and feed requests for 5 minutes
- Use a single global request limit zone

Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
2023-05-02 19:43:21 +02:00
Evangelos Foutras 94660e7b4b
matrix: rebase turnserver.conf to coturn 4.6.2-1 2023-05-01 03:34:58 +03:00
Jan Alexander Steffens (heftig) d619e194f9
matrix: Update synapse to 1.81.0 2023-04-15 02:30:15 +02:00
Jan Alexander Steffens (heftig) 5bdda643b6
matrix: Update bridge to 0.38.0 2023-04-15 02:27:06 +02:00
Levente Polyak 64ec041ad7
gluebuddy: update download script for sequoia 0.29.0
Sequoia now manages the trust level, so we need to add the fingerprints
and mark those keys trusted before verifying the file.
2023-04-14 12:01:34 +02:00
Jelle van der Waa 546273a970
archweb: update to latest release 2023-04-11 19:36:59 +02:00
Evangelos Foutras ab9f6f0d1e
Merge branch 'revert-keycloak-metrics-spi-disable' into master
Closes: #499

See merge request !702
2023-04-10 00:05:15 +03:00
Evangelos Foutras 761b35775b
grafana: update keycloak dashboard with new names
Seems with keycloak-metrics-spi 3.0.0 all metric names end in _total.
2023-04-09 20:46:55 +03:00
Evangelos Foutras 22e514f636
grafana: rebase grafana.ini to grafana 9.4.7-1 2023-04-09 20:00:36 +03:00
Leonidas Spyropoulos 44d040a5b5
Revert "keycloak: temporarily disable keycloak-metrics-spi"
This reverts commit 903129d4e8

With the release of keycloak-metrics-spi 3.0.0 they added support
for Keycloak > 21.x [1]

[1]: https://github.com/aerogear/keycloak-metrics-spi/pull/157

Resolve: #499

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-04-08 15:24:01 +03:00
Evangelos Foutras 19fa8f33b6
networking: use Quad9 DNS on static network boxes
Might fix the intermittent "Name or service not known" errors on gemini.
2023-04-06 19:57:11 +03:00
Leonidas Spyropoulos d49f74d4a2
security_tracker: rate limit RSS feeds
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-04-06 16:19:09 +03:00
Kristian Klausen 45d80caf78
gitlab_runner: Set reasonable NOFILE limits to avoid bugs
The default limits cause issues as reported upstream[1][2], it also
breaks the mkinitcpio CI[3]. So match the limits set in systemd since
v240[4].

[1] https://github.com/moby/moby/issues/38814
[2] https://github.com/containerd/containerd/pull/7566
[3] da223d2f96
[4] 4f44d2c4f7/NEWS (L6556-L6590)
2023-04-02 23:35:24 +02:00
Kristian Klausen 5fbf3652f9
Move GitLab's container registry to a dedicated domain (registry.al.org)
It looks more professional and we can move it to a dedicated box if the
load increases.
2023-04-02 16:57:39 +02:00
Jan Alexander Steffens (heftig) 15c820afeb
matrix: Update synapse to 1.80.0 2023-03-28 16:30:34 +02:00
Evangelos Foutras 4ae73a93be
ansible-lint: address no-changed-when fatal errors
Add "noqa no-changed-when" tags to handlers using the command module.
Perhaps it is wrong of ansible-lint to flag these, since handlers are
not the best place to have conditional execution.
2023-03-26 16:57:00 +03:00
Jelle van der Waa 66e4ee8609
archweb: update to latest release 2023-03-26 13:07:43 +02:00
nl6720 26065a9a34
archwiki: upgrade to 1.39.2-1 2023-03-23 16:08:31 +02:00
Evangelos Foutras 8658ea5f76
archive: fix creates= argument to ia configure task
The credentials are stored in $HOME/.ia instead of $HOME/.config/ia.ini.
2023-03-20 22:09:01 +02:00
Evangelos Foutras a279a6948f
archive: bump archive uploader version to v0.15.4
Also update the repo URL to point to our GitLab.
2023-03-20 22:06:38 +02:00
Evangelos Foutras 103b4b53ee
php_fpm: rebase php.ini to php 8.2.4-1 2023-03-18 19:37:38 +02:00
Evangelos Foutras 7767510045
grafana: rebase grafana.ini to grafana 9.4.3-1
Also stop using oauth_auto_login and switch to provider specific
auto_login option.
2023-03-18 19:37:38 +02:00
Leonidas Spyropoulos 11f7b691f8
aurweb: update to 6.2.2
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-03-15 12:56:33 +00:00
Evangelos Foutras 903129d4e8
keycloak: temporarily disable keycloak-metrics-spi
It's incompatible with Keycloak 21.

Re-enabling of metrics is tracked in #499.

[1] https://github.com/aerogear/keycloak-metrics-spi/issues/155
2023-03-12 20:48:01 +02:00
Evangelos Foutras d7dc60b0a7
common: smartd.conf: disable long self-tests
The disks on gemini show increased write latency every now and then,
and this appears to correlate with when long self-tests are running.

Fixes #498
2023-03-07 20:20:33 +02:00
Jan Alexander Steffens (heftig) 1560818e93
matrix: Update synapse to 1.78.0 2023-03-02 17:54:11 -05:00
Evangelos Foutras a9b596c4eb
keycloak: bump start-up timeout on 1-vCPU systems
90 seconds isn't enough time for keycloak's ExecStartPre cmd to finish.
2023-02-27 18:12:06 +02:00
Jelle van der Waa 12c76f0da7 flyspray: add removed packages script
This script goes through all open bugs in the Arch Linux and Community
tracker and extracts the packagename from "[$pkgname]" and tries match
it to the list of packages in the repo. If there is no match the package
is assumed to be dropped from the repo and printed.

This script will give false positives, but not enough which requires
some extra filtering.
2023-02-21 20:20:33 +00:00
Evangelos Foutras f28d3ba595
ansible-lint: address no-changed-when fatal errors
Liberally add "noqa no-changed-when" tags to the problematic tasks,
except for two "systemd-tmpfiles --create" calls. For these we can
simply include the creates= parameter in the command module's call.
2023-02-18 20:15:55 +02:00
Leonidas Spyropoulos 3ac1bac037
ansible-lint: Forbidden implicit octal value 'xxxx'
Convert the permissions to strings to avoid octal interpretation.

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-02-18 20:15:54 +02:00
Jan Alexander Steffens (heftig) f5524d4b78
matrix: Update bridge to 0.37.0 2023-02-16 00:52:01 +01:00
Jan Alexander Steffens (heftig) fe7185278a
matrix: Update synapse to 1.77.0 2023-02-16 00:45:26 +01:00
Jan Alexander Steffens (heftig) dff25b3330
matrix: Disable retention
Deleting events causes database corruption, see e.g.
https://github.com/matrix-org/synapse/issues/11738 and
https://github.com/matrix-org/synapse/issues/13476.
2023-02-16 00:45:11 +01:00
Jan Alexander Steffens (heftig) 727e0cc6cf
matrix: Suppress warnings from federation
Broken servers are common making these loggers very spammy.
2023-02-16 00:40:55 +01:00
Leonidas Spyropoulos be1321cf53
gitlab: rate-limit gitlab-pages
Implement ip based rate limiting on gitlab-pages. This ensures we avoid
slowing down the gitlab server when extensive requests are made against
our gitlab-pages like WKD sync from Archlinux keyring service

https://docs.gitlab.com/ee/administration/pages/#rate-limits

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-02-14 20:18:50 +00:00
Leonidas Spyropoulos 01716cfd5f
aurweb: ansible-lint complains about mixing = and :
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-02-13 12:28:35 +00:00
Leonidas Spyropoulos eed477869d
Replace ansible.builtin.service with ansible.builtin.systemd
The daemon_reload is specific to systemd and produce a warning in
ansible-lint

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-02-13 12:08:47 +00:00
Evangelos Foutras 9338663fce
Replace runner2 with runner3 (with the same specs)
Equinix's AMS1 DC is being shut down so we need to recreate this box.

For Geo variety, this one is created in Frankfurt instead of Amsterdam.

Ref #495
2023-02-11 17:28:19 +02:00
Evangelos Foutras 6a55c9009f
Replace repro1 with repro3 (same CPU, 32G->64G RAM)
Equinix's AMS1 DC is being shut down so we need to recreate this box.

Ref #495
2023-02-11 16:48:58 +02:00
Evangelos Foutras d50d88a821
install_arch: force grub to use legacy BIOS boot
Pass --target=i386-pc to grub-install to stick with legacy BIOS boot.

Our partitioning scheme is not suitable for EFI boot.
2023-02-11 16:48:58 +02:00
Evangelos Foutras a916d8142a
install_arch: adjust for current Equinix environment
/etc/motd now contains "OS Rescue Environment" when in rescue mode.
2023-02-11 16:48:57 +02:00
Evangelos Foutras dad3061705
gitlab_runner: create /etc/docker directory
This directory isn't part of the docker package so we need to create it.
2023-02-11 16:48:57 +02:00
Evangelos Foutras d63e101c68
grafana: rebase grafana.ini to grafana 9.3.6-1 2023-02-11 08:41:33 +02:00
Leonidas Spyropoulos 465b835da6
aurweb: set receive.fsckobjects to true
https://git-scm.com/docs/git-config#Documentation/git-config.txt-receivefsckObjects
Related: https://gitlab.archlinux.org/archlinux/aurweb/-/issues/426

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-02-06 22:06:41 +00:00
Evangelos Foutras 1ad701e2be
postgres: rebase config to postgresql 15.1-1 2023-02-05 22:39:31 +02:00
Evangelos Foutras 646ef8b2bb
postgres: upgrade_pg: bump major version to 15 2023-02-05 22:39:31 +02:00
Evangelos Foutras 099b7df071
sshd: rebase sshd_config to openssh 9.2p1-1 2023-02-05 22:39:30 +02:00
Kristian Klausen 384bd7c8e8
mailman: Patch out CC modification breaking DKIM/DMARC
The bug[1] would explain all the bounces and unsubscriptions, so patch
it manually until upstream gets it sorted.

[1] https://gitlab.com/mailman/mailman/-/issues/636
2023-02-05 12:19:11 +01:00
Jan Alexander Steffens (heftig) e6e4d080c9
matrix: Update synapse to 1.76.0 2023-02-03 14:53:56 +01:00
Leonidas Spyropoulos b7a98e5c4a
aurweb: bump to 6.2.1
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-01-27 21:22:19 +00:00
Leonidas Spyropoulos ee30b1e8e4
aurweb: bump to 6.2.0
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-01-26 23:39:04 +00:00
Evangelos Foutras 268b6003e4
prometheus: disable HostUnusualNetworkThroughputOut
This alert only triggers for america.mirror.pkgbuild.com. Ideally, we
should be able to increase the trigger point for high-bandwidth boxes.
I don't see a straightforward way to implement it, so disable for now.
2023-01-23 20:41:31 +02:00
Evangelos Foutras 0f20e4a2fa
php_fpm: rebase php.ini to php 8.2.1-1 2023-01-23 11:22:23 +02:00
Jan Alexander Steffens (heftig) 4c3464db85
matrix: Fix synapse feature list 2023-01-19 21:12:39 +01:00
Jan Alexander Steffens (heftig) d690a4abda
matrix: Update mjolnir to v1.6.4 2023-01-19 20:30:02 +01:00
Jan Alexander Steffens (heftig) 58f0305c4a
matrix: Update synapse to 1.75.0 2023-01-19 20:27:36 +01:00
Evangelos Foutras 0980818fa2
install_arch: use @archlinux.org for pierre's key 2023-01-16 20:21:53 +02:00
Evangelos Foutras 7943882d28
mailman: rebase mailman-hyperkitty.cfg to 1.2.1-1 2023-01-12 18:58:13 +02:00
Kristian Klausen 24e73359c6
Decommission patchwork.archlinux.org and replace it with a static copy[1]
As announced on the mailing list[2] pacman has been migrated to gitlab
and there is no real use for patchwork left, so it can be
decommissioned. A static copy[1] is kept around for the time being to
avoid link rot.

[1] https://gitlab.archlinux.org/archlinux/patchwork-archive
[2] https://lists.archlinux.org/archives/list/arch-dev-public@lists.archlinux.org/message/7B6R5HVEC67U7B2VQ3SKUVXU4RDCRRMM/

Fix #487
2023-01-08 22:10:49 +01:00
Evangelos Foutras 20b7ca7f85
gitlab_runner: adjust to arch-boxes switch to Geo
The arch-boxes images now default to Geo mirrors and no longer ship
reflector, so we don't have to disable reflector-init or update the
mirrorlist.
2023-01-08 14:56:14 +02:00
Kristian Klausen bd0bae9f48
keycloak: Bump buffer size to make room for response headers
Keycloak is apparently sending over 4k worth of response headers under
some circumstances (maybe when the client sends a stale cookie?), which
causes Nginx to return a 502 error and log "upstream sent too big header
while reading response header from upstream". This is likely also
related to this upstream issue[1]. So bump the buffer to 8k.

[1] https://github.com/keycloak/keycloak/issues/16181
2023-01-05 21:04:35 +01:00
lb-wilson 89a78a3880 archwiki: add DarkMode extension 2022-12-30 10:46:50 +00:00
lb-wilson e360656db0 archwiki: update archwiki version to 1.39.1-2 2022-12-30 10:46:50 +00:00
Evangelos Foutras 66dc40c0fc
fluxbb: install git for cloning the archbbs repo 2022-12-30 11:43:10 +02:00
Evangelos Foutras f9839273df
fluxbb: change Moscow time from UTC+4 to UTC+3
https://bugs.archlinux.org/task/71411
2022-12-30 11:39:40 +02:00
Kristian Klausen c351a12930
mailman: Reject most mails from nonmembers to reduce moderation workload
All lists expect arch-mirrors-announce and aur-requests[1] require the
user to be a member before they can post. Moderating mails from
nonmembers are a lot of work and most of the mails are spam, so let's
just reject them. Mails to arch-mirrors-announce and aur-requests from
nonmembers will still be checked manually, as you aren't required to be
subscribed[1].

[1] https://wiki.archlinux.org/index.php?title=General_guidelines&oldid=750602#Reply_to_the_mailing_list
2022-12-28 23:14:06 +01:00
Evangelos Foutras 51c14ddaf4
archwiki: restart archwiki-runjobs-wait on upgrade
This fixes the unexpanded magic words in mails that we sometimes see.
2022-12-22 21:29:33 +02:00
Jan Alexander Steffens (heftig) c740810d96
matrix: Update synapse to 1.74.0 2022-12-22 17:23:41 +01:00
nl6720 f9543cddd9
archwiki: upgrade to 1.39.0-1 2022-12-20 17:19:16 +02:00
Jan Alexander Steffens (heftig) 4fc52a2d2e
matrix: Enable the bridge's debug endpoint
In order to get access to the `killUser` command.
2022-12-19 00:49:55 +01:00
nl6720 3565d50106
archwiki: show the main page's language button in the header
Enable $wgVectorLanguageInMainPageHeader, so that the main page is consistent with other pages.
See https://www.mediawiki.org/wiki/Skin:Vector/2022#$wgVectorLanguageInMainPageHeader.

Compare: https://wiki.archlinux.org/?languageinmainpageheader=1 vs https://wiki.archlinux.org/?languageinmainpageheader=0

Discussed in https://wiki.archlinux.org/title/MediaWiki_talk:Common.css#Main_page_columns_and_Vector_2022_language_links.
2022-12-11 12:48:10 +02:00
Jan Alexander Steffens (heftig) 354fa9ed44
matrix: Update synapse to 1.73.0 2022-12-10 00:55:52 +01:00
Jan Alexander Steffens (heftig) d8ced720e9
matrix: Adjust modelines
- Add `ft=systemd` where needed
- Remove `ft=` where filetype detection works (especially jinja.vim)
- Set `sw=2 sts=-1 et` everywhere
2022-12-10 00:55:51 +01:00
Jan Alexander Steffens (heftig) 1fbfde201c
matrix: Change IRC nick template
Use the localpart for the default IRC nicknames instead of the display
name, which should make for more succinct nicks.
2022-12-10 00:55:51 +01:00
Evangelos Foutras 733ad7cb24
grafana: rebase grafana.ini to grafana 9.3.0-1 2022-12-04 18:42:52 +02:00
Leonidas Spyropoulos 52f815ebaa
aurweb: bump to v6.1.9
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-11-27 11:14:28 +00:00
Jan Alexander Steffens (heftig) 409e7880c3
matrix: Update mjolnir to v1.6.1 2022-11-23 23:50:45 +01:00
Jan Alexander Steffens (heftig) 927f1b6d4c
matrix: Update synapse to 1.72.0 2022-11-23 19:11:38 +01:00
Jan Alexander Steffens (heftig) 2c1c174169
grafana: Update synapse dashboard
Copy the latest dashboard from upstream, fixing the graphs.
2022-11-19 12:40:27 +01:00
Jelle van der Waa ecc3074330
archweb: add mastodon verification url 2022-11-18 20:42:50 +01:00
Jelle van der Waa cb5f8128fd
Bump archweb to the latest release 2022-11-18 20:39:06 +01:00
Evangelos Foutras 0f8ef2c479
Add GitLab Pages for "rfc"
Ref: https://gitlab.archlinux.org/archlinux/rfcs/-/merge_requests/15
2022-11-17 22:29:27 +02:00
Evangelos Foutras 9d8146c844
prometheus: restore conf.d/prometheus default perm
No reason this should be 0600 as it doesn't contain any sensitive data;
switch it back to the package's default permissions of 0644.
2022-11-12 20:40:54 +02:00
Evangelos Foutras a782c6953f
syncrepo: let mirrorsync perform the repo syncing
This role will still handle setting up nginx and rsyncd, due to specific
configuration requirements these services have.

We're also effectively relieving build.archlinux.org of rsyncd duties as
it is not something it should be doing anyway.
2022-11-12 20:22:08 +02:00
nl6720 ee84eb063c
mailman: update mkinitcpio URL in arch-projects mailing list description
mkinitcpio moved from GitHub to gitlab.archlinux.org.
See https://gitlab.archlinux.org/archlinux/infrastructure/-/issues/474.
2022-11-12 20:10:12 +02:00
Evangelos Foutras ed19221404
keycloak: remove /auth from all Keycloak endpoints
From [1]: "By default, the new Quarkus distribution removes /auth from
           the context-path."

[1] https://www.keycloak.org/migration/migrating-to-quarkus
2022-11-12 17:33:36 +02:00
Jan Alexander Steffens (heftig) a7cc74f489
matrix: Enable backchannel logouts from keycloak to synapse 2022-11-12 17:32:33 +02:00
Evangelos Foutras c6cfff7756
mailman: use postgresql:// engine URL in mailman.cfg
SQLAlchemy 1.4 no longer accepts engine URLs of the form postgres://.

https://docs.sqlalchemy.org/en/20/changelog/changelog_14.html#change-3687655465c25a39b968b4f5f6e9170b
2022-11-12 01:05:50 +02:00
Jan Alexander Steffens (heftig) 0868a07a6d
matrix: Update synapse to 1.71.0 2022-11-08 20:50:13 +01:00
Evangelos Foutras f9e239e85d
syncrepo: remove redundant CacheDir configuration
CacheDir, as configured by common's pacman.conf task, already includes
the local package mirror when available (on mirrors, gemini and build).
2022-11-06 20:53:34 +02:00
Evangelos Foutras 10edbd1647
mirrorsync: fix hardcoded nginx root directory
This worked because riscv was the only nginx-enabled mirror.

Fixes: 43eb814bcf ("Combine sync{archive,debug,riscv} into mirrorsync")
2022-11-06 19:57:31 +02:00
Evangelos Foutras 095a7d76e7
grafana: add dashboard w/ geo mirror traffic stats 2022-11-06 17:53:34 +02:00
Evangelos Foutras 27f1d4c7c4
grafana: rebase grafana.ini to grafana 9.2.3-1 2022-11-06 15:06:24 +02:00
Evangelos Foutras 8fd41b3b86
sshd: adjust /etc/ssh and includes dir permissions
There is no reason these should have such restrictive permissions, and
missing the execute bit appears to be a mistake. Let /etc/ssh keep the
mode from the package (0755). Use the same for the includes directory.
2022-11-06 07:21:38 +02:00
Leonidas Spyropoulos 1cef59599d
aurweb: release v6.1.8, fix git config setup
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-11-02 23:26:24 +00:00
Leonidas Spyropoulos cc5440eda8
aurweb: remove kevr and allow artafinde to tag releases on aurweb
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-11-02 23:26:24 +00:00
Leonidas Spyropoulos 8c0f468684
aurweb: use specific prod logging on gunicorn
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-11-02 23:26:24 +00:00
Leonidas Spyropoulos ba9786a35e
aurweb: goaurrpc disable admin api with 1.2.0 release
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-11-02 23:26:24 +00:00
Kristian Klausen e9e44d445c
Migrate PostgreSQL to C.UTF-8
C.UTF-8 is installed by default, so we can avoid messing with locale-gen
by using that.

All the postgres servers (excluding matrix due to[1]) have been migrated
with the following commands:
# sudo -u postgres pg_dumpall > d
# sed "s/LOCALE = 'C'/LOCALE = 'C.UTF-8'/" -i d
# systemctl stop postgresql.service
# mv /var/lib/postgres/data{,.old}
$ ansible-playbook --diff -t postgres playbooks/<host>.yml
# sudo -u postgres psql < d

[1] 19a57f4a37/docs/postgres.md (fixing-incorrect-collate-or-ctype)

Fix #470
2022-11-03 00:11:36 +01:00
Jan Alexander Steffens (heftig) 3e2fdfce00
matrix: Update bridge to 0.36.0 2022-10-30 21:57:02 +01:00
Jan Alexander Steffens (heftig) 1018823f82
matrix: Update synapse to 1.70.1 2022-10-30 20:43:28 +01:00
nl6720 fa5d55b1a4
archwiki: upgrade to 1.38.4-1 2022-10-25 14:13:04 +03:00
Levente Polyak 93f92ab082
security-tracker: bump version to 0.14.1 2022-10-25 00:59:16 +02:00
Evangelos Foutras 927b8111c2
grafana: add blank line after auth.anonymous.enabled
Using an inline statement eats the blank line after it; to overcome this
switch to an inline expression, which also happens to be easier to read.
2022-10-24 16:28:36 +03:00
Evangelos Foutras 2762c7550b
grafana: comment out a few default/unused settings
- enable_gzip: grafana listens on localhost, nginx handles compression
- admin_user: initial admin creation is disabled in our config
- strict_transport_security: the same header is set by nginx
- strict_transport_security_max_age_seconds: unused without the above
2022-10-24 16:11:45 +03:00
Evangelos Foutras f36323cf3f
grafana: rebase grafana.ini to grafana 9.2.0-1 2022-10-24 15:53:45 +03:00
Evangelos Foutras eb700a55d8
Use ansible_virtualization_role in few more places
- common: for deciding when to install/configure smartmontools
- install_arch: installing ucode update only on physical hosts
2022-10-24 10:41:38 +03:00
Evangelos Foutras fea117c3cf
prometheus_exporters: ignore smartctl exit code 64
On asia.mirror.pkgbuild.com, 'smartctl -a --json $disk' has been exiting
with code 64. From smartctl(1) code 64 corresponds to "Bit 6: The device
error log contains records of errors". Since we're not interested in old
errors, ignore it.
2022-10-23 21:08:55 +03:00
Evangelos Foutras de5552e0bc
hosts: get rid of dedicated_servers group
This has become outdated (missing new dedicated servers) and its usage
can be replicated by checking if ansible_virtualization_role == "host".

For Ansible ad hoc commands, '!hcloud' can be used to the same effect.
2022-10-23 20:49:28 +03:00
Jan Alexander Steffens (heftig) 579b62c66f
matrix: Raise minutesBeforeTrusting to 36h
Bots are joining earlier and waiting a day before spamming.
2022-10-23 11:49:17 +02:00
moson-mo 29b025c42d grafana: update grafana dashboard for goaurrpc
* Show totals for the last 24 hours (instead of all time)
* Add total search requests pie chart

Signed-off-by: moson-mo <mo-son@mailbox.org>
2022-10-22 18:54:12 +00:00
Evangelos Foutras 0692c54451
install_arch: get image signature from archlinux.org
Wiki says "Do not download it from a mirror" and it sounds more secure.

Fixes: 503b08db4c ("install_arch: verify bootstrap image signature")
2022-10-22 19:01:41 +03:00
Kristian Klausen cd68bfc211
grafana: Fix disabled dashboards provisioning due to duplicates
Symlinking home.json to archive.json causes a duplicate, as both
dashboards have the same uid, and Grafana won't keep the dashboards
updated when there are duplicates[1]. Instead just change
default_home_dashboard_path to point to the archive.json dashboard.

[1] "dashboards provisioning provider has no database write permissions
     because of duplicates"
2022-10-22 17:44:20 +02:00
Matt-1-2-3 503b08db4c
install_arch: verify bootstrap image signature
Fixes #458.
2022-10-22 17:06:48 +03:00
Leonidas Spyropoulos 87b2eddfae
aurweb: enable goaurrpc metrics and dashboard
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
Co-authored-by: Kristian Klausen <kristian@klausen.dk>
Co-authored-by: moson-mo <mo-son@mailbox.org>
2022-10-21 15:57:44 +01:00
Jan Alexander Steffens (heftig) 7d5a2a77fa
matrix: Update synapse to 1.69.0 2022-10-17 21:19:07 +02:00
Jan Alexander Steffens (heftig) baa57cafa7
matrix: Update pantalaimon to 0.10.5 2022-10-17 21:19:07 +02:00
Evangelos Foutras baf22d180e
dbscripts: use service name to open firewall port
3690/tcp -> svn
2022-10-16 20:52:50 +03:00
Evangelos Foutras e803a785e5
keycloak: remove redundant firewall port opening
The nginx role already enables the http and https services.
2022-10-16 20:52:50 +03:00
Evangelos Foutras ae3f2fc822
quassel: use service names to open firewall ports
4242/tcp -> quassel
 113/tcp -> ident
2022-10-16 20:52:50 +03:00
Evangelos Foutras 6706410fcd
wireguard: use service name to open firewall port
51820/udp -> wireguard
2022-10-16 20:52:45 +03:00
Kristian Klausen f5f5b4c733
WireGuard the remaining Prometheus exporters
WireGuard was setup to provide a internal network with confidentiality,
authenticity and integrity[1]. This migrate the remaining Prometheus
exporters to use the internal WireGuard network.

[1] 664deb67 ("WireGuard all hosts")

Fix #384
2022-10-16 16:56:41 +02:00
Leonidas Spyropoulos e494684698
aurweb: setup goaurrpc
Expose aurweb RPC using goaurrpc to reduce the load on the server.
Additionally we can now geo-serve this ro reduce load and bandwidth.

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-10-15 18:32:43 +03:00
Leonidas Spyropoulos f95ca711f6
aurweb: setup git gc for all aurweb git repos
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-10-15 13:49:51 +03:00
Levente Polyak bc01ece8f3
security-tracker: bump version to 0.14 2022-10-14 20:47:28 +02:00
Evangelos Foutras 6485d482d5
sshd: rebase sshd_config to openssh 9.1p1-1 2022-10-14 17:16:07 +03:00
Kevin Morris 50e8432806
aurweb: release 6.1.7 - git archives
This commit brings in four new routes to nginx:
- /archives/metadata.git
- /archives/users.git
- /archives/pkgbases.git
- /archives/pkgnames.git

See https://gitlab.archlinux.org/archlinux/aurweb/-/blob/master/doc/git-archive.md

For now, we will be updating the repositories once every 10 minutes.

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
Co-signed by:  Kevin Morris <kevr@0cost.org>
2022-10-12 15:57:15 +03:00
Evangelos Foutras 17e8ab15fe
fail2ban: remove redundant fail2ban_jails overrides
group_vars/all was enabling just the sshd jail so move this into the
fail2ban role defaults. patchwork, security and wiki were redefining
fail2ban_jails without deviating from the group_vars/all default and
can therefore be dropped.
2022-10-04 06:18:57 +03:00
Evangelos Foutras d7139019a5
common: install compsize for use with btrfs rootfs
I have needed to use compsize on multiple occasions, and thus had to
temporarily install it. As it is already installed on 9 machines and
is generally useful, make it part of the standard tool set for btrfs.
2022-10-04 02:02:02 +03:00
Evangelos Foutras 6d40f442a2
matrix: rebase turnserver.conf to coturn 4.6.0-1 2022-10-04 01:37:28 +03:00
Evangelos Foutras 4816adb6ba
common: bump nf_conntrack_max to 256k on redirect
The traffic hitting ping.archlinux.org has lately been exhausting its
default nf_conntrack_max limit of 64k. Bump it to 256k (which is also
the default limit found on systems with more than 4G of memory).

Suggested-by: Kristian Klausen <kristian@klausen.dk>
2022-10-03 07:44:09 +03:00
Evangelos Foutras 179882ee56
firewalld: rebase firewalld.conf to firewalld 1.2.1-1 2022-10-03 06:54:24 +03:00
Kristian Klausen 893a95f329
Kill the mailman2 server and put the mailman3 server in its place
With the final lists migrated to mailman3[1], the mailman2 server can
finally be killed.

When the mailman3 server was initially setup[2], it was done on a
separate server because the mailman and mailman3 packages conflicted,
and the traffic was routed over wireguard (HTTP, LMTP and SMTP).

Instead of installing mailman3 on the original lists.al.org server and
transferring the data, it was easier just to install the missing pieces
(basically Postfix and adjusting the Nginx configuration) on the ml3
server and move the IPs (to keep the IP mail reputation).

So basically the following was done:
- The IPs for the original lists.al.org was moved to the mailman3.al.org
  server
- The mailman2 datadir was transferred to mailman3.al.org server, so we
  can keep the pipermail links alive, and import missing mails if needed
- The original lists.al.org server was decommissioned
- The mailman3.al.org server was renamed to lists.al.org
- The missing pieces was added to the mailman3 role (basically Postfix +
  Nginx adjustments)
- The mailman role was deleted and the mailman3 role renamed to mailman

[1] 75ac7d09 ("mailman: Fourth and final batch of mailman3 migrated lists")
[2] 9294828f ("Setup mailman3 server")

Fix #59
2022-09-28 21:04:41 +02:00
Evangelos Foutras 43eb814bcf
Combine sync{archive,debug,riscv} into mirrorsync
These roles are very similar and can be merged into a single new role.

Note: The archive mirror is changed from a 4-hour sync to minutely for
conformity with the other two mirrors. In practice this doesn't matter
as it was already taking over 4 hours to finish and was starting again
right after its previous run.
2022-09-28 21:52:52 +03:00
Jan Alexander Steffens (heftig) 93407f758b
matrix: Update synapse to 1.68.0 2022-09-28 02:42:18 +02:00
Jan Alexander Steffens (heftig) 1183090ec1
matrix: Update bridge to 0.35.1 2022-09-26 17:22:26 +02:00
Evangelos Foutras 6a486f28e5
lint: apply a few key-order[task] recommendations
Ordering "when:" before "block:" makes it more readable I suppose.
2022-09-24 07:25:53 +03:00
Evangelos Foutras 6468250515
lint: adjust two task names to fix name[template]
Using templates anywhere but the end of the name makes grepping for
errors more difficult.
2022-09-24 07:25:52 +03:00
Jelle van der Waa a36a6c4066
archweb: bump to latest version 2022-09-23 08:54:43 +02:00
Kristian Klausen b5dd4c4a62
dovecot: Add shared mailbox for the mediation team
Please see [1] and [2] for a better understanding of how this works.

[1] https://doc.dovecot.org/configuration_manual/authentication/password_databases_passdb/
[2] https://doc.dovecot.org/configuration_manual/authentication/user_databases_userdb/

Fix #464
2022-09-22 21:43:34 +02:00
Evangelos Foutras 1b9230881b
grafana: rebase grafana.ini to grafana 9.1.6-1 2022-09-21 20:46:28 +03:00
Evangelos Foutras 08712c793e
Fix lint warning about non-FQCN ansible.builtin.user
Seems ansible-lint thinks a task calling the unqualified user module is
"not valid under any of the given schemas (schema[tasks])".
2022-09-19 00:47:07 +03:00
Evangelos Foutras 022dccfbd4
Fix lint warnings about missing galaxy_info in meta
Not sure why this is needed but whatever. 🐱

https://github.com/ansible/schemas/discussions/227
2022-09-19 00:40:48 +03:00
Evangelos Foutras 154e0512b0
mailman3: fix a name[casing] lint warning 2022-09-19 00:17:01 +03:00
Evangelos Foutras 2ed1fa1f29
Fix template-instead-of-copy lint failures 2022-09-18 23:49:50 +03:00
Evangelos Foutras 2762e2f6fa
Apply jinja[spacing] recommendations 2022-09-18 22:57:33 +03:00
Kristian Klausen 1ae3a81584
gitlab_runner: Disable slow/unneeded systemd-time-wait-sync in the VM image
The service was enabled in arch-boxes to account for "hardware clock is
not in UTC, but instead UTC+X"[1], in our case the (VM) hardware clock
is in UTC and we therfor don't need the slow systemd-time-wait-sync
service (+30 seconds).

[1] e23d3c57a0
2022-09-18 13:39:53 +02:00
Kristian Klausen 159ff40189
arch_boxes_sync: Trigger immediately mirror sync by updating lastupdate 2022-09-18 13:25:52 +02:00
Kristian Klausen cfe96bc823
arch_boxes_sync: Ensure the mtime of the "latest" symlinks matches the dest
Fixes: 2e799bd1 ("arch_boxes_sync: Create predictable symlinks for latest image files")
2022-09-18 13:25:49 +02:00
Kristian Klausen ae34cd11c5
arch_boxes_sync: Pull the artifacts from GitLab's package registry
arch-boxes has decided to use GitLab's package registry instead of job
artifacts[1].

[1] d04c827450
2022-09-18 13:25:44 +02:00
Kristian Klausen f3bf576a9d
arch_boxes_sync: Fix the file path for the "latest" checksum files
Fixes: 2e799bd1 ("arch_boxes_sync: Create predictable symlinks for latest image files")
2022-09-18 13:25:40 +02:00
nl6720 415c2a61cc
mailman3: allow everyone to post to the arch-wiki-admins mailing list
The mailing list is used for non-public communication with users, so everyone needs be able to post to it.
It is also the assigned email address of the ArchWiki user "WikiSysop".
See https://wiki.archlinux.org/title/ArchWiki:Maintenance_Team#Who,_when_and_how_to_contact
2022-09-18 13:23:36 +03:00
Kristian Klausen 7115860700
aurweb: Double fd limit to avoid "Too many open files"
From time to time aurweb is failing with "Too many open files"
errors[1], this could indicate a bug in aurweb or perhaps the limit is
just too low. Let's try doubling the limit and see if it helps.

[1] https://gitlab.archlinux.org/archlinux/aurweb-errors/-/issues/275
2022-09-18 03:21:45 +02:00
Kristian Klausen 89c5e1af87
mailman3: Add missing trailing slash for the /static/ path
The code isn't vulnerable to nginx alias traversal[1][2], nevertheless
it should only match /static/ and not e.g. /staticfoobar.

[1] d94f18a7 ("Fix nginx alias traversal")
[2] 641060d635/docs/en/plugins/aliastraversal.md

Fixes: 9294828f ("Setup mailman3 server")
2022-09-18 01:19:14 +02:00
Kristian Klausen c9df10e4c2
mailman3: Switch to a faster search backend (Xapian)
Whoosh is used by default, but it is slow at indexing (multiple hours
for just aur-requests) and searching e.g. aur-requests isn't possible
(it is slow and uses 3G+ of memory resulting in it getting OOM-killed).

Xapian indexed everything in just 76 minutes and searching aur-requests
now works and is plenty fast.

Co-authored-by: Evangelos Foutras <evangelos@foutrelis.com>
2022-09-18 01:08:14 +02:00
Evangelos Foutras 595e3316c4
aurweb/rspamd: append .vault to vaulted secrets
This avoids triggering a GitLab push rule which rejects files that look
like secrets.
2022-09-17 22:10:08 +03:00
Evangelos Foutras 29aaed2bd0
syncriscv: add role for mirroring the RISC-V port
Going to be served by all our Geo boxes under riscv.mirror.pkgbuild.com.
2022-09-16 22:22:43 +03:00
Evangelos Foutras 72eb5d049e
Capitalize few more handler names that were missed
Fixes: 578b781966 ("Capitalize the handler name in handler invocations")
Fixes: 26f289b72b ("Capitalize the first letter of all task names")
2022-09-16 19:19:23 +03:00
Kristian Klausen 94045bd875
mailman: Show the mailman3 interface by default
All lists have been migrated to mailman3[1] and mailman3 is what users
should use, so show its interface by default and not the mailman2
interface.

[1] 75ac7d09 ("mailman: Fourth and final batch of mailman3 migrated lists")
2022-09-16 15:10:07 +02:00
Kristian Klausen 25e52b7bcc
mailman3: Be consistent in ordering of ml options
Fixes: 4d8dfb6a ("mailman: Third batch of mailman3 migrated lists")
2022-09-16 00:40:28 +02:00
Kristian Klausen 75ac7d09be
mailman: Fourth and final batch of mailman3 migrated lists
arch-general
aur-general
aur-requests

It has been decided not to migrate the following unlisted and unused
lists:
arch-magazine
arch-notifications
arch-test
mailman
2022-09-16 00:40:25 +02:00
Evangelos Foutras 5c6308b107
aurweb: remove unused php-fpm.conf.j2 template
Fixes: 92586d5b60 ("change(aurweb): rework ansible config for 6.0.0")
2022-09-15 15:52:47 +03:00
Leonidas Spyropoulos eb8c595fd5
aurweb: disable Keyring
Required for poetry 1.2 until #1917 is fixed

https://github.com/python-poetry/poetry/issues/1917

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-09-15 00:00:23 +01:00
Leonidas Spyropoulos c8db95bdda
aurweb: bump to v6.1.4
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-09-15 00:00:23 +01:00
Evangelos Foutras 98d3fb8548
grafana: rebase grafana.ini to grafana 9.1.4-1 2022-09-14 20:02:52 +03:00
Jan Alexander Steffens (heftig) 34c5b5bb88
matrix: Update synapse to 1.67.0 2022-09-14 17:19:04 +02:00
Jan Alexander Steffens (heftig) bd66195efd
matrix: Update bridge to 0.35.0 2022-09-14 17:08:27 +02:00
Kristian Klausen 97d66d4a8a
mailman3: Bump maximum message size to match old ml2 configuration
The default (40KB) isn't enough for all patches.

Fixes: 4d8dfb6a ("mailman: Third batch of mailman3 migrated lists")
2022-09-13 00:15:53 +02:00
nl6720 ab612463a7
gitlab_runner: try to protect the VM runner kernel from the root user
Enable kernel lockdown in confidentiality mode to restrict how the root user can interact with the kernel.
See https://wiki.archlinux.org/title/Security#Kernel_lockdown_mode and https://man.archlinux.org/man/kernel_lockdown.7

This could prevent a scenario where a malicious kernel module or access to some interface that kernel lockdown prevents, would allow or assist in escaping the KVM.
It is not very likely as there needs to be an exploitable vulnerability in the hypervisor.
To make it more secure, the host too would need to enable kernel lockdown.

In the end this may only give some sense of security, but, as we all know, that's all that matters anyway.
2022-09-12 09:33:37 +03:00
Kristian Klausen 4d8dfb6a5a
mailman: Third batch of mailman3 migrated lists
arch-commits
arch-security
aur-dev
pacman-contrib
pacman-dev
2022-09-11 20:44:17 +02:00
Kristian Klausen 856cdf909a
mailman3: IaC list configurations
It is cumbersome to manage the list configurations from the web ui and
easy for them to diverge, so let's instead manage them with Ansible.

Fix #254
2022-09-11 15:57:03 +02:00
Evangelos Foutras ffa2674d8e
common: increase default zram-fraction to 1.0
The default of 0.5 has proven insufficient on at least 3 boxes so far.
2022-09-11 10:50:19 +03:00
Jan Alexander Steffens (heftig) cdaf8fc8a7
matrix: Update badwords 2022-09-06 19:57:22 +02:00
Leonidas Spyropoulos d6439e1f87
aurweb: bump to 6.1.2 version
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-09-04 20:33:10 +01:00
Jan Alexander Steffens (heftig) 37e1aa1269
matrix: Start turnserver with User=root
Otherwise it can't open our letsencrypt certs. It will setuid to
`turnserver` itself.
2022-08-31 20:04:58 +02:00
Jan Alexander Steffens (heftig) 366b80544a
matrix: Move TURN to other ports and disable STUN
We get a lot of unauthorized STUN requests in the logs.
2022-08-31 19:48:31 +02:00
Jan Alexander Steffens (heftig) d5bef04517
matrix: Update synapse to 1.66.0 2022-08-31 19:48:31 +02:00
Evangelos Foutras 578b781966
Capitalize the handler name in handler invocations
Fixes: 26f289b72b ("Capitalize the first letter of all task names")
2022-08-29 21:46:39 +03:00
Evangelos Foutras d381d81800
Move 'noqa' tags next to the name instead of module
This avoid having extra-long lines and works fine for task-based rules.
2022-08-23 08:07:09 +03:00
Evangelos Foutras 88685e067d
Replace 'skip_ansible_lint' tags with 'noqa' ones
This might be a bug in ansible-lint 6.5.0, but it appears to ignore all
our 'skip_ansible_lint' tags. Fix this by replacing them with noqa tags.
2022-08-23 07:53:45 +03:00
Evangelos Foutras 523eb09e16
Apply jinja[spacing] recommendations 2022-08-23 07:27:50 +03:00
Evangelos Foutras a834c3214b
Replace noqa tag '303' with 'command-instead-of-module' 2022-08-23 07:08:40 +03:00
Evangelos Foutras ab7edadf0b
Replace noqa tag '208' with 'risky-file-permissions' 2022-08-23 07:06:34 +03:00
Evangelos Foutras 26f289b72b
Capitalize the first letter of all task names
ansible-lint 6.5.0 complains about:

  name: All names should start with an
        uppercase letter. (name[casing])
2022-08-23 06:57:13 +03:00
Evangelos Foutras 19ee76d74c
geo_dns: support geo domains with subset of hosts
Useful if we wanted to create a Geo-based archive consisting of machines
in the archive_mirrors group (though this will likely not happen because
it'd break archlinux-repro due to the ~4 hour sync delay).
2022-08-21 04:44:46 +03:00
Jan Alexander Steffens (heftig) ee042dae30
matrix: Update synapse to 1.65.0 2022-08-20 17:02:46 +02:00
Jan Alexander Steffens (heftig) 2a9a0e79e6
matrix: Update synapse to 1.64.0 2022-08-20 17:02:45 +02:00
Evangelos Foutras 30b0520ec1
geo_dns: add geoipupdate.service drop-in to reload
When the GeoIP databases get refreshed (weekly), we want PowerDNS to
reload them. Do this by running pdns_control reload in ExecStartPost.
2022-08-19 08:06:13 +03:00
Evangelos Foutras 556a4f0b94
grafana: rebase grafana.ini to grafana 9.1.0-1 2022-08-18 08:40:50 +03:00
Jelle van der Waa dd31a2c26d
grafana: update grafana config file 2022-08-16 21:33:44 +02:00
Kristian Klausen b15ac83821
aurweb: Make SSH faster by avoiding slow Poetry (~2,5 sec faster)
"poetry run" is very slow[1] and adds +1 second to the startup time.
This is made even worse by the fact that aurweb-git-serve is called
twice by sshd[2].

[1] https://github.com/python-poetry/poetry/issues/3502
[2] https://security.stackexchange.com/questions/123795/authorizedkeyscommand-of-sshd-config-getting-called-twice/123801#123801
2022-08-14 22:05:29 +02:00
Evangelos Foutras 3b53daa5dc
mailman3: rebase urls.py to mailman-web 0.0.5-5 2022-08-12 23:08:23 +03:00
Evangelos Foutras 2d2c2ddb06
grafana: rebase grafana.ini to grafana 9.0.7-1 2022-08-12 18:35:20 +03:00
Jelle van der Waa 13371d3754
Update archweb to latest 2022-08-12 17:00:06 +02:00
Evangelos Foutras 871756ec1b
install_arch: skip ucode update for hcloud/packer
Microcode updates are not applicable to cloud servers.
2022-08-11 05:34:18 +03:00
Leonidas Spyropoulos e2e2beff40
grafana: filter http requests total for aur on job
http_requests_total  contains requests from debuginfo.al.org host
as well as from aur.al.org so filter them on job 'aurweb'

Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2022-08-10 18:24:44 +03:00
nl6720 22b36bdac3
archwiki: upgrade to 1.38.2-1 2022-08-08 08:57:01 +03:00
Evangelos Foutras 8a9cd33504
borg_client: use absolute path to borg in borg_cmd
Using plain "borg" resolves to /usr/local/bin/borg which is the wrapper
for our main backup host. This causes the offsite backup to be executed
with BORG_REPO set to the main backup destination.

While the above doesn't cause any issues with the backup script/service,
because borg invocations specify the backup destination as an argument,
it's not ideal and/or correct. Adjust borg_cmd to include the full path
of /usr/bin/borg, thus removing any ambiguity.
2022-08-08 08:31:43 +03:00
Evangelos Foutras 762ecf8073
borg_client: remove "compact_after_prune" toggle
rsync.net has upgraded to borg 1.2 and we can now run borg compact on
both rsync.net and the Hetzner storage box.

Fixes: 17927c9aa4 ("borg_client: run compact after pruning on borg 1.2")
2022-08-07 04:49:07 +03:00
Evangelos Foutras 6c8de85eaf
rebuilderd: fetch dbs/packages from the Geo mirror
Update /etc/rebuilderd-sync.conf to use the Geo host mirror instead of
europe.mirror.pkgbuild.com (for added reliability in case the latter's
availability is impacted).
2022-08-06 18:30:26 +03:00
Evangelos Foutras c470d4c6e2
rebuilderd: bump max allowed report upload to 200M
The /api/v0/build/report endpoint has received POSTs up to 161M so far
this year (2022). In 2021 there had been POSTs of sizes up to 404M and
up to 814M for 2020. Multiple hundreds of MB seem a bit excessive, but
we should be able to do up to 200M.
2022-08-06 16:34:24 +03:00
Evangelos Foutras 79bddba2e0
rebuilderd: re-indent nginx configuration
Remove a few stray TABs and correct double-indented lines.
2022-08-06 16:27:53 +03:00
Evangelos Foutras d234e497b9
rebuilderd_worker: unset {BOOTSTRAP,HOST}MIRROR
Upstream archlinux-repro was already using europe.mirror.pkgbuild.com as
its bootstrap and regular mirror. Furthermore, since [1] it has switched
to the Geo mirror. Remove both vars from /etc/archlinux-repro/repro.conf
and use the default mirror values (which are more than suitable).

[1] https://github.com/archlinux/archlinux-repro/commit/c024b892d07a
2022-08-05 20:10:19 +03:00
Kristian Klausen 9addb95644
aurweb: Use force when mirroring to support rewritten history
Fixes: 68ec7871 ("aurweb: Mirror aur.git to GitHub[1]")
2022-08-05 15:52:53 +02:00
Evangelos Foutras 2a9cceecbf
aurweb: increase burst size for smartgit endpoint
The burst size of 300 reportedly allows ~150 git operations. This might
not always be sufficient when installing a lot of packages from the AUR.

Specify a higher burst size to cover most legit use cases, even if this
makes us more susceptible to abuse.
2022-08-02 16:11:55 +03:00
Kristian Klausen 466230e41e
gitlab_runner: Initial the keyring in the base image for faster boot
"Disabling revoked keys in keyring" when running "pacman-key --populate"
is very slow (easily +20 seconds), in our case the boot is now ~27
seconds faster (tested on secure-runner1). The pacman master private key
is removed to prevent malicious actors from injecting packages, a new
key is generated by pacman-init.service on boot.
2022-07-30 18:59:42 +02:00
Kristian Klausen 1f07c410cd
gitlab_runner: Prevent the VMs from doing MAC, IP and ARP spoofing 2022-07-30 14:16:47 +02:00
Kristian Klausen 7a53fab25b
libvirt: s/qemu-headless/qemu-base/ due to packaging changes[1]
[1] https://archlinux.org/news/qemu-700-changes-split-package-setup/
2022-07-30 14:16:43 +02:00
Kristian Klausen 7ea1eb2902
gitlab_runner: Refactor libvirt-executor
Changes:
- Switch to arch-boxes' base image
- Verify the base image's signature
- Use the new "latest" symlink, instead of parsing the HTML for
  finding the latest arch-boxes image[1]
- Create the base image by using arch-chroot and friends, instead of
  creating a full-blown VM
- Create the VMs from domain XML template instead of virt-clone
- Switch mirror to geo.mirror.pkgbuild.com
- Try to follow "filesystem hierarchy" standards for where to place
  configuration (id_ed25519) and "vendor data" (arch-boxes.asc and
  domain_template.xml)
- Use a ed25519 key instead of RSA key
- Only start the "update base image" server if network and DNS are up
- Misc fixes and cleanups

[1] https://gitlab.archlinux.org/archlinux/infrastructure/-/merge_requests/552
2022-07-30 14:16:40 +02:00
Kristian Klausen 808d3151ad
gitlab_runner: Replace artifact workaround with better upstream solution
Upstream now provides a solution for setting the "staging dir" for
fastzip[1].

[1] https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/3130
2022-07-29 20:18:40 +02:00
Kristian Klausen 06e0252720
gitlab_runner: Add VM based executor (libvirt-executor)
For some workloads running in a container is too restrictive, ex:
arch-boxes (loop device, filesystem mount, pacstrap) and archiso
(pacstrap). Currently they both run a TCG accelerated QEMU VM, which is
very slow and painful to work with. We should provide a better option to
our users!

This adds a hardware accelerated VM for this kinds of workloads, which
is way faster and you can do whatever you like (mostly)!

Fix #283
2022-07-29 20:18:34 +02:00
Kristian Klausen bf1f4ff1d4
Add libvirt role for upcoming GitLab runner libvirt executor 2022-07-29 20:18:30 +02:00
Evangelos Foutras afa3206d0a
geoipupdate: remove now redundant hardening config
The service hardening options have been included in geoipupdate 4.9.0-3.

[1] https://bugs.archlinux.org/task/75434
2022-07-28 23:52:37 +03:00
Kristian Klausen 68ec78715c
aurweb: Mirror aur.git to GitHub[1]
This is meant as a extra "backup" and as another way for our users to
fetch PKGBUILDs from the AUR. It also allows the community to create
their own (perhaps better) "AUR" API/database as all essential data is
now available (this + [2]).

At the monent this is experimental and we aren't committing to keeping
it around.

[1] https://github.com/archlinux/aur
[2] http://aur.archlinux.org/packages-meta-ext-v1.json.gz
2022-07-28 01:10:52 +02:00
nl6720 cb89551f52
archwiki: use a drop-in file for memcached@.service instead of an entirely custom unit
This allows to retain all default hardening options that memcached@.service has.
2022-07-26 08:56:14 +03:00