1
0
Fork 0
Commit Graph

763 Commits (c0d9ea081f6559af76470129553fba67ec496d9a)

Author SHA1 Message Date
q3k c0d9ea081f hackdoc: deploy
Change-Id: I2d1661212f906cc431a47a372b2e52a6be2e07f4
2021-03-06 22:21:28 +00:00
q3k 7dda1b51ce Merge "hackdoc: link to cs instead of gitweb" 2021-03-06 22:17:34 +00:00
q3k d774a7153b Merge "hackdoc: when redirecting, skip ref if default" 2021-03-06 22:17:26 +00:00
q3k a5691b54cc Merge "games/valheim: allow patryk@ and palid@ to administer valheim namespace" 2021-03-06 22:17:05 +00:00
q3k bc0d3cb227 hackdoc: link to cs instead of gitweb
Change-Id: Ifca7a63517bceffe7ccc0452474d9d16626486de
2021-03-06 22:16:54 +00:00
q3k 81262ff202 hackdoc: when redirecting, skip ref if default
Change-Id: Ie1680500ede673c407c9c8f4bbbe6b7f6a41b422
2021-03-06 22:16:54 +00:00
q3k 62ba93eae1 Merge "dc/hbj11: init with flasher" 2021-03-06 20:26:44 +00:00
q3k 819813600d dc/hbj11: init with flasher
This brings in the flashing infrastructure for HBJ11 (bluepill&web).

Change-Id: I480855689f849c24712d58a0ccbce6e91c34f8bd
2021-03-06 20:25:08 +00:00
q3k b4de3f26f2 games/valheim: always update on startup
This has already been deployed to prod.

Change-Id: I02896bd7d12d89630b0465365e08a8980738184d
2021-02-25 13:23:44 +01:00
q3k 2371ca9073 games/valheim: allow patryk@ and palid@ to administer valheim namespace
This will create the following:

    apiVersion: rbac.authorization.k8s.io/v1beta1
    kind: RoleBinding
    metadata:
      annotations: {}
      labels:
        name: sso-admins
      name: sso:admins
      namespace: valheim
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: system:admin-namespace
    subjects:
    - apiGroup: rbac.authorization.k8s.io
      kind: User
      name: patryk@hackerspace.pl
    - apiGroup: rbac.authorization.k8s.io
      kind: User
      name: palid@hackerspace.pl

It's not enough to allow palid to use kubecfg (as we use a secretstore
secret in this jsonnet), but at least to manually restart the server via
kubectl, which is needed to update the game.

Change-Id: I6cb42ca87c9a78bbe34957f2c5e23acd2efe3423
2021-02-25 12:08:10 +01:00
q3k a715a02ad0 games/valheim: add patryk and palid to OWNERS
Change-Id: I15b08d17a5cb9c3a4f6d22d5780872df8f94c427
2021-02-24 00:16:42 +01:00
q3k 34d39cc8ed games/valheim: init
This creates a valheim game server, using a public image but slightly
nerfing it to be able to run it unprivileged.

We also deploy our first server. The password is Well Known To Those
Versed In Hackerspace Lore.

Change-Id: Ic24262a3b02d3c17d2f00aa2967e240ea4eee7fb
2021-02-23 23:13:40 +00:00
q3k c97461e844 shell.nix: actually add
This should've been merged in with cr/704. Whoops.

Change-Id: I1fe18a74462e8bdc0350c5ba26b51261b76c7ae1
2021-02-17 19:30:51 +00:00
q3k 0d26fc9780 cluster: disable nginx/acme
These are unused.

Change-Id: I2a428dabd0a27c060c595f5e0843d7d8d8e26dcd
2021-02-15 22:14:41 +01:00
q3k 765e369255 cluster: replace docker with containerd
This removes Docker and docker-shim from our production kubernetes, and
moves over to containerd/CRI. Docker support within Kubernetes was
always slightly shitty, and with 1.20 the integration was dropped
entirely. CRI/Containerd/runc is pretty much the new standard.

Change-Id: I98c89d5433f221b5fe766fcbef261fd72db530fe
2021-02-15 22:14:15 +01:00
q3k 4b613303b1 RFC: *: move away from rules_nixpkgs
This is an attempt to see how well we do without rules_nixpkgs.

rules_nixpkgs has the following problems:

 - complicates our build system significantly (generated external
   repository indirection for picking local/nix python and go)
 - creates builds that cannot run on production (as they are tainted by
   /nix/store libraries)
 - is not a full solution to the bazel hermeticity problem anyway, and
   we'll have to tackle that some other way (eg. by introducing proper
   C++ cross-compilation toolchains and building everything from C,
   including Python and Go)

Instead of rules_nixpkgs, we ship a shell.nix file, so NixOS users can
just:

  jane@hacker:~/hscloud $ nix-shell
  hscloud-build-chrootenv:jane@hacker:~/hscloud$ prodaccess

This shell.nix is in a way nicer, as it immediately gives you all tools
needed to access production straight away.

Change-Id: Ieceb5ae0fb4d32e87301e5c99416379cedc900c5
2021-02-15 22:11:35 +01:00
q3k 55cc9ab177 third_party: bump minecraft deps
Change-Id: Ib03669eef2f535ecf6711618b960f3058337fda5
2021-02-15 22:11:00 +01:00
q3k 747c0fcd88 django leftovers yeet
Change-Id: I8999152a630c3c8dcf56f7c0e80a0ee5474e9236
2021-02-15 22:11:00 +01:00
q3k 4842705406 cluster/nix: integrate with readtree
This unifies nixpkgs with the one defined in //default.nix and makes it
possible to use readTree to build the provisioners:

   nix-build -A cluster.nix.provision

   result/bin/provision

Change-Id: I68dd70b9c8869c7c0b59f5007981eac03667b862
2021-02-14 14:46:07 +00:00
q3k 2df7685b46 devtools/gerrit: remove tools/eclipse, which breaks global build
Change-Id: Ie7e8faa6c80a0a4b75bd0bae7da225c4f607ce18
2021-02-14 14:45:37 +00:00
q3k 495cdaf7d5 personal/q3k: yeet djtest
We don't care about Django anymore, and we don't want/have uwsgi.

Change-Id: I42860ce3d046ba253085dcd6b09d2d67ce4abbbb
2021-02-14 14:45:20 +00:00
q3k a9bfa79ec7 factorio: remove old versions
Change-Id: Ib3655e1fd46ee2ba562df25e6263d068f3918b9f
2021-02-14 14:45:10 +00:00
q3k 6e71f8a889 devtools: remove unused bazel-cache
Change-Id: I843ba2b20446aba6d8e0b23bb3f494a62e1c0ade
2021-02-14 14:44:47 +00:00
q3k 225a5c7ee9 nixpkgs: bump
Fixes b/3.

Change-Id: I2f734422cdad00f78956477815c4aea645c6c49e
2021-02-14 14:43:07 +00:00
q3k cc769a56f3 bgpwtf: move tests from eoip to gretap
This removes our dependency on a userspace EoIP implementation that is
mildly broken, and that doesn't build correctly on new gcc versions.

Change-Id: I404c79585336ebaf3bc1761b54ee2433f0841324
2021-02-14 10:54:09 +00:00
q3k 32d3eaac01 app/matrix: bump appservice-irc
Already deployed to matrix/appservice-irc.

Change-Id: I906390eaed9a9154b154bc8952412f9fa6708f64
2021-02-13 17:50:56 +00:00
Norbert Szulc 5d784c5861 app/matrix change displayname rules for matrix.0x3c.pl
prefer username as those are more commonly used in this community

Change-Id: Ia9e5394cd672d3f759e89e4b72dc16a5059857b4
2021-02-12 19:35:26 +01:00
informatic 5c08bb9197 Merge "devtools/issues: add mailing support" 2021-02-09 19:38:53 +00:00
informatic 054c5b47d6 devtools/issues: add mailing support
Resolves b/15

Change-Id: I53a4057ff428219ae1d4928db74eaa2e8bda6651
2021-02-09 09:59:59 +00:00
informatic 1f717993e5 Merge "kube/postgres: add extra options configuration option" 2021-02-09 08:34:48 +00:00
informatic 3b8f6675b1 kube/postgres: add extra options configuration option
Change-Id: I674740872d9540329711cad2b05007215f90bd9b
2021-02-08 22:44:56 +01:00
q3k 78d6f11cb2 Merge "cluster/admitomatic: allow whitelist-source-range" 2021-02-08 17:21:59 +00:00
q3k 34f56935b9 app/matrix/telegram: re-pin alpine to 3.13
Newer versions of alpine edge repos have a `yq` that behaves oddly:

    $ kubectl -n matrix-0x3c logs -f appservice-telegram-prod-85d66696c6-9drnl -c generate-config
    + apk add --no-cache yq
    fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
    fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
    (1/1) Installing yq (4.4.1-r0)
    Executing busybox-1.31.1-r21.trigger
    ERROR: busybox-1.31.1-r21.trigger: script exited with error 127
    OK: 11 MiB in 15 packages
    + cp /config/config.yaml /data/config.yaml
    + yq r /registration/registration.yaml as_token
    Error: unknown command "r" for "yq"
    Run 'yq --help' for usage.
    + yq w -i /data/config.yaml appservice.as_token
    Error: unknown command "w" for "yq"
    Run 'yq --help' for usage.

This downgrades back to a working yq.

Change-Id: Ifc77bcc88156b02f3ec17e6f84c5615149108777
2021-02-08 17:54:10 +01:00
q3k c9f48fee70 gerrit: integrate with b.hackerspace.pl
Already deployed on prod. Example: b/1337

Change-Id: Ia1bd038a0fc65ad9ddba74e515c113b5421bdfff
2021-02-08 15:10:14 +00:00
q3k 877cf0af26 🅱️
Fixes b/8

Change-Id: I5a5779c3688451d89c0601dc913143d75048c9f6
2021-02-08 15:10:11 +00:00
q3k 943ab5b1a6 cluster/admitomatic: allow whitelist-source-range
Without this, cert-manager get stuck.

Deployed to prod.

Change-Id: I356cd44f455b6f4aecea9ae396f6a05e1a727859
2021-02-07 23:35:28 +00:00
q3k f40c9249ce cluster/kube: allow system:admin-namespaces to modify ingresses
This will permit any binding to system:admin-namespaces (eg. personal-*
namespaces, per-namespace extra admin access like matrix-0x3c) the
ability to create and updates ingresses.

Change-Id: I522896ebe290fe982d6fe46b7b1d604d22b4f72c
2021-02-07 19:24:43 +00:00
q3k 41bbf1436a cluster/kube: deploy admitomatic webhook
This has been (succesfully) tested on prod and then rolled back.

Change-Id: I22657f66b4aeaa8a0ae452035ba18a79f4549b14
2021-02-07 19:19:23 +00:00
q3k 3c5d836c56 cluster/kube: deploy admitomatic
This doesn't yet enable a webhook, but deploys admitomatic itself.

Change-Id: Id177bc8841c873031f9c196b8ff3c12dd846ba8e
2021-02-07 19:19:02 +00:00
q3k 3ab5f07c64 cluster/admitomatic: build docker image
Change-Id: I086a8b17a4dc7257de1bae3a6f0c95400af7e115
2021-02-07 19:18:53 +00:00
q3k 5d67d0c8fc kube/prototext.libsonnet: implement manifestProtoText
This hairy little ball of recursive object manifestation allows emitting
prototext directly from jsonnet.

Change-Id: I8237c629862cfcdf32ca250fba9eda9926c4f9b4
2021-02-07 19:18:29 +00:00
informatic f19ae1e662 Merge "devtools/issues: redmine deployment" 2021-02-06 23:22:15 +00:00
informatic 75a5fcbffb Merge "app/matrix: enable labs settings on matrix.hackerspace.pl" 2021-02-06 23:20:22 +00:00
q3k c80321d17e Merge "cluster: add admitomatic CA/certificate" 2021-02-06 23:18:59 +00:00
informatic 0572fff9a4 devtools/issues: redmine deployment
Change-Id: I71956c4132bf2063e9fc41eb24c4f37657b8fd9d
2021-02-06 22:23:53 +01:00
q3k 04604b2aae cluster: add admitomatic CA/certificate
Change-Id: Idb32dc38b897aa266b6d2d6fd57a5e38b47db7fc
2021-02-06 17:18:58 +00:00
informatic 95da3d5011 app/matrix: enable labs settings on matrix.hackerspace.pl
This adds an extra tab in profile settings window.

Change-Id: I2a6f162975b7ef6047aea5fdc72ba711084db2d5
2021-02-06 11:55:48 +01:00
informatic f4a6a56662 cluster/kube/k0: add issues.hackerspace.pl crdb user
Change-Id: If78f795e0e35360b65c666e6b217037fc34a2ccf
2021-02-01 21:32:25 +01:00
informatic 3b8a43f35d cluster/kube/k0: add issues.hackerspace.pl ceph s3 user
Change-Id: If5eef3404bdc08ded88e46f45bad0f9abcdb0f1c
2021-02-01 21:19:59 +01:00
informatic 7f8f3e9f9c ops/sso: upgrade sso-v2
Change in sso-v2 unifies id_token and userinfo endpoint handling - now
groups, nickname, email and preferred_username keys are present in
id_tokens as well.

https://code.hackerspace.pl/informatic/sso-v2/commit/?id=c4c810cd255a7bfcab5ced3fb88c8b311b518c34

Change-Id: Ib22994edc067fd83701590182f8096f6fca692ba
2021-02-01 17:03:27 +01:00