440 Commits

Author SHA1 Message Date
Andrey Smirnov
670d274c45
chore: bump dependencies
Dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-08-01 17:37:43 +04:00
Andrey Smirnov
1db097f509
release(v1.2.0-alpha.1): prepare release
This is the official v1.2.0-alpha.1 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-28 21:43:44 +04:00
Andrey Smirnov
86820c33f1
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-25 18:14:49 +04:00
Utku Ozdemir
47c35dc474
feat: set stable default hostname based on machine-id
Use machine-id as the source for the default hostname (e.g. `talos-2gd-76y`) instead of DHCP-assigned IP (e.g. `talos-172-20-0-2`). This way, DHCP IP changes won't impact the hostname. Defaults to true for Talos version >=1.2.

Closes siderolabs/talos#5896.

Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2022-07-21 19:37:28 +02:00
Andrey Smirnov
065b59276c
feat: implement packet capture API
This uses the `go-packet` library with native bindings for the packet
capture (without `libpcap`). This is not the most performant way, but it
allows us to avoid CGo.

There is a problem with converting network filter expressions (like
`tcp port 3222`) into BPF instructions, it's only available in C
libraries, but there's a workaround with `tcpdump`.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-19 01:23:09 +04:00
Andrey Smirnov
7c006cabc7
feat: update Kubernetes to 1.24.3
See https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.24.md#changelog-since-v1242

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-18 22:10:34 +04:00
Andrey Smirnov
551290195c
chore: bump dependencies
dependabot + go-mod-outdated

Kubernetes 1.24.3 will go as a separate PR.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-18 21:22:01 +04:00
Larry Rosenman
c92c90655a
feat: build talosctl for FreeBSD
This PR adds support for building talosctl for FreeBSD on
amd64 and arm64 architectures.

It also pulls in the latest go-blockdevice library to ensure the FreeBSD
stubs are there for proper build.

Signed-off-by: Spencer Smith <spencer.smith@talos-systems.com>
2022-07-14 20:21:14 -04:00
Andrey Smirnov
551887528c
chore: bump dependencies
go-mod-outdated + dependabot

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-11 17:55:20 +04:00
Andrey Smirnov
fdca5d8a95
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-07-04 21:22:20 +04:00
Andrey Smirnov
022581d809
release(v1.2.0-alpha.0): prepare release
This is the official v1.2.0-alpha.0 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-06-30 19:01:07 +04:00
Andrey Smirnov
b81016e628
chore: update blockdevice library to v0.3.3
There are no changes between 0.3.2 and 0.3.3, but 0.3.2 tag was force
pushed causing stale checksum in Go checksum database.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-06-27 21:50:34 +04:00
Andrey Smirnov
6ae1e9bf2b
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-06-27 18:15:22 +04:00
Philipp Sauter
2deff6b6e1
feat: add support for variable substitution in talos.config kernel parameter
The URL to fetch the configuration for a talos node is given by the
talos.config kernel parameter. We add support for 4 variables ${uuid},
${serial}, ${mac} and ${hostname} which substitute the device UUID,
DMI-sourced serial number, MAC address of the first network interface to
be up and the hostname respectively.

Fixes #3272

Signed-off-by: Philipp Sauter <philipp.sauter@siderolabs.com>
2022-06-24 12:38:08 +02:00
Andrey Smirnov
103c942256
fix: update crypto library with support for RSA-SHA*
Previously crypto library handled only RSA-SHA512, as generated by
Talos, but this is a problem when migrating `kubeadm` cluster to Talos.

See https://github.com/siderolabs/crypto/pull/25

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-06-23 22:57:02 +04:00
Andrey Smirnov
3c263bb446
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-06-20 18:43:36 +04:00
Noel Georgi
e8113527f9
chore: bump kubernetes to v1.24.2
Bump kubernetes to [v1.24.2](https://github.com/kubernetes/kubernetes/releases/tag/v1.24.2)

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-06-17 23:23:06 +05:30
Andrey Smirnov
f2997c0f22
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-06-06 23:27:17 +04:00
Andrey Smirnov
98bbab12ea
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-31 22:42:52 +04:00
Artem Chernyshev
1ba8a6b94e
chore: update go yaml to the latest version
The updated version has several important bugfixes.

Signed-off-by: Artem Chernyshev <artem.chernyshev@talos-systems.com>
2022-05-31 19:48:32 +03:00
Andrey Smirnov
7a4062904e
chore: update Sidero Labs go modules to released versions
In preparation for beta release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-27 22:04:42 +04:00
Andrey Smirnov
3ed254976b
feat: update Kubernetes to 1.24.1
See https://github.com/kubernetes/kubernetes/releases/tag/v1.24.1

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-27 19:33:07 +04:00
Philipp Sauter
c5297009e0
feat: support join token as part of siderolink kernel parameter
To enable authorization to services via siderolink on startup we extend
the kernel parameter siderolink.api to accept an optional join token as
a parameter as in grpc://<host>:<port>?jointoken=1234

Fixes #5592

Signed-off-by: Philipp Sauter <philipp.sauter@siderolabs.com>
2022-05-26 15:12:35 +02:00
Andrey Smirnov
a1b6f21a82
chore: bump dependencies
dependabot-based, go-mod-outdated is broken due to sum issue with Azure
SDK package :(

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-23 21:25:04 +04:00
Andrey Smirnov
33a631f026
feat: look up Links PCI vendor/product via PCI ID database
This increases `initramfs` size by 356060 bytes (raw text database is
1.3 MiB).

In QEMU:

```
$ talosctl -n 172.20.0.2 get links eth0 -o yaml
spec:
    ...
    productID: "0x1000"
    vendorID: "0x1af4"
    product: Virtio network device
    vendor: Red Hat, Inc.
```

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-23 17:21:49 +04:00
Andrey Smirnov
c3f29031b7
feat: add ethtool ioctl as additional source of information
This expands `LinkStatus` information when available.

Example, for QEMU:

```
$ talosctl -n 172.20.0.6 get links eth0 -o yaml
    busPath: "0000:00:02.0"
    driver: virtio_net
    driverVersion: "1.0.0\00-talos"
```

```
$ talosctl -n 172.20.0.6 get links bond0 -o yaml
    driver: bonding
    driverVersion: 5.15.40-talos
    firmwareVersion: "2"
```

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-18 23:54:38 +03:00
Noel Georgi
34d9a875ac
chore: go-smbios updates
go-smbios library updates

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-05-18 19:27:06 +05:30
Andrey Smirnov
554edd3e89
chore: bump dependencies
dependabot + go-mod-outdated

`arp` library is now using Go stdlib `netip.Addr`, so we need an ugly
way to convert `netaddr.IP` to `netip.Addr`. We should soon refactor to
use `netip.Addr` everywhere (starting with `siderolabs/net` package).

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-16 16:11:54 +03:00
Philipp Sauter
f2d89735fd
feat: extend the extension service spec with container security options
We extend the extension service spec with three security options,
WithWriteableSysfs, WithMaskedPaths, WithReadonlyPaths

Fixes #5411

Signed-off-by: Philipp Sauter <philipp.sauter@siderolabs.com>
2022-05-16 14:33:04 +02:00
Andrey Smirnov
290f968fea
release(v1.1.0-alpha.2): prepare release
This is the official v1.1.0-alpha.2 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-13 16:12:56 +03:00
Andrey Smirnov
b52962c440
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-11 20:30:03 +03:00
Noel Georgi
89cab200b8
chore: bump kubernetes to v1.24.0
Bump kubernetes to v1.24.0

Ref: https://github.com/siderolabs/kubelet/pull/45

Also update coredns [manifests](https://github.com/coredns/deployment/blob/master/kubernetes/coredns.yaml.sed)

Signed-off-by: Noel Georgi <git@frezbo.dev>
2022-05-05 00:34:35 +05:30
Andrey Smirnov
bd089e702d
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-05-03 16:30:59 +03:00
Dmitriy Matrenichev
6351928611
chore: redo pointer with github.com/siderolabs/go-pointer module
With the advent of generics, redo pointer functionality and remove github.com/AlekSi/pointer dependency.

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2022-05-02 02:17:13 +04:00
Andrey Smirnov
71d04c4d5c
refactor: rewrite runtime resources to use typed.Resource
No functional changes.

Also bump bumped cosi-runtime with the fix for the UnmarshalProto.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-27 16:47:50 +03:00
Andrey Smirnov
1973095d14
feat: update containerd to 1.6.3
This includes a fix for image pull slowness from
https://github.com/containerd/containerd/pull/6702.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-26 21:43:28 +03:00
Andrey Smirnov
85b328e997
refactor: convert secrets resources to use typed.Resource
No functional changes.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-26 14:51:56 +03:00
Andrey Smirnov
45464412e0
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-25 16:26:41 +03:00
Andrey Smirnov
0af6b35a66
feat: update etcd to 3.5.4
See https://github.com/etcd-io/etcd/releases/tag/v3.5.4

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-25 15:49:02 +03:00
Andrey Smirnov
55ff876dc6
chore: bump K8s Go modules to 1.24.0-rc.0
This was skipped due to https://github.com/kubernetes/kubernetes/issues/109565

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-22 20:32:42 +03:00
Andrey Smirnov
8057d076ad
release(v1.1.0-alpha.1): prepare release
This is the official v1.1.0-alpha.1 release.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-20 20:56:48 +03:00
Andrey Smirnov
39721ee939
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-18 21:20:14 +03:00
Dmitriy Matrenichev
be00d77492
chore: implement cluster resources using cosi typed resource
Bump github.com/cosi-project/runtime and use typed.Resource

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2022-04-18 16:28:12 +04:00
Andrey Smirnov
8af50fcd27
fix: correct cri package import path
Containerd CRI plugin was merged into the main repo, but we were using
old import path, so our constants coming from the module were outdated.

This fixes the image version for the pause container.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-14 16:27:45 +03:00
Andrey Smirnov
ce09ede839
feat: update etcd to 3.5.3
See https://github.com/etcd-io/etcd/releases/tag/v3.5.3

This release should contain a fix for data consistency issue when etcd
is killed under high load.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-14 13:56:03 +03:00
Andrey Smirnov
0aad0df2eb
refactor: remove String() for resource implementation
See https://github.com/cosi-project/runtime/pull/69

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-12 20:51:02 +03:00
Andrey Smirnov
8499b7e7dc
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-11 16:53:39 +03:00
Dmitriy Matrenichev
a7ba7ea679
feat: migrate to go 1.18
Increase go.mod version from 1.17 to 1.18 in all projects. Update Makefile
to use latest tooling. Fix golangci by disable nolintlint for now.

Signed-off-by: Dmitriy Matrenichev <dmitry.matrenichev@siderolabs.com>
2022-04-11 17:17:54 +04:00
Andrey Smirnov
b3f1bb2cff
fix: add support for FAT12/16 filesystems
This can be used when probing filesystems with config data in the
`metal-iso` case or in the `nocloud` platform.

Small disk images by default are created with small bits FAT
filesystems.

See https://github.com/siderolabs/go-blockdevice/pull/59

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-05 18:14:04 +03:00
Andrey Smirnov
8619f95c5c
chore: bump dependencies
dependabot + go-mod-outdated

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2022-04-04 17:29:49 +03:00