Commit Graph

357 Commits

Author SHA1 Message Date
Andrey Smirnov
1f7dad234b chore: update PKGS version (512 cpus, new ca-certficates)
This pulls in a change to bump number of max CPUs in the kernel to 512
and update ca-certificates.

Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
2021-08-09 06:54:14 -07:00
Alexey Palazhchenko
09d70b7eaf feat: update Kubernetes to v1.22.0
Closes #3967.
Closes #3997.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@talos-systems.com>
2021-08-06 09:06:32 -07:00
Andrey Smirnov
628902297d feat: update GRUB to 2.06
See https://github.com/talos-systems/pkgs/pull/310

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-08-04 10:07:21 -07:00
Andrey Smirnov
79b8fa64b9 feat: update containerd to 1.5.5
* https://github.com/containerd/containerd/releases/tag/v1.5.5

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-08-03 10:26:21 -07:00
Alexey Palazhchenko
585152a0be chore: bump dependencies
Closes #3983.
Closes #3984.
Closes #3985.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-26 04:37:25 -07:00
Spencer Smith
7332d63695 fix: bump pkgs for new kernel 5.10.52
This PR pulls in new pkgs to ensure we're patched against CVE-2021-33909

Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
2021-07-22 13:18:42 -07:00
Alexey Palazhchenko
0953b19985 chore: update extras to bring a new CNI bundle
https://github.com/containernetworking/plugins/releases/tag/v0.9.1

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-20 07:27:13 -07:00
Alexey Palazhchenko
c780821d0b feat: update containerd to 1.5.3, runc to 1.0.1
Update pkgs and constants.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-07-19 08:56:32 -07:00
Artem Chernyshev
55e17ccdd1 chore: bump dependencies
Fixes: https://github.com/talos-systems/talos/pull/3954 https://github.com/talos-systems/talos/pull/3955 https://github.com/talos-systems/talos/pull/3956 https://github.com/talos-systems/talos/pull/3957 https://github.com/talos-systems/talos/pull/3958 https://github.com/talos-systems/talos/pull/3959 https://github.com/talos-systems/talos/pull/3960 https://github.com/talos-systems/talos/pull/3961 https://github.com/talos-systems/talos/pull/3962 https://github.com/talos-systems/talos/pull/3963 https://github.com/talos-systems/talos/pull/3964

And update kubelet to 1.21.3.

Signed-off-by: Artem Chernyshev <artem.0xD2@gmail.com>
2021-07-19 06:06:01 -07:00
Andrey Smirnov
9c73257cb1 feat: update Go to 1.16.6
See:

* https://github.com/talos-systems/tools/pull/140
* https://github.com/talos-systems/pkgs/pull/300
* https://github.com/talos-systems/extras/pull/21

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-14 06:44:22 -07:00
Andrey Smirnov
d930a26502 chore: implement DeepCopy for machine configuration
Resources code extensively uses DeepCopy to prevent in-memory copy of
the resource to be mutated outside of the resource model.

Previous implementation relied on YAML serialization to copy the
machine configuration which was slow, potentially might lead to panics
and it generates pressure on garbage collection.

This implementation uses k8s code generator to generate DeepCopy methods
with some manual helpers when code generator can't handle it.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-08 07:21:24 -07:00
Andrey Smirnov
fe4ed3c734 chore: ignore tags which don't look like semantic version
This allows us to use tags for Go submodules `pkg/machinery/v0.11.0` and
still keeps Talos tag follow semantic version `v0.11.0`.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-07-08 07:20:04 -07:00
Spencer Smith
444d72b4d7 feat: update pkgs version
This PR bumps pkgs to v0.7.0-alpha.0, so that we gain a fix for
hotplugging of nvme drives.

Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
2021-07-01 07:55:00 -07:00
Andrey Smirnov
84817f7334 chore: bump Talos version in upgrade tests
Preparing for 0.11 to be stable release soon.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-29 07:24:48 -07:00
Alexey Palazhchenko
ad047a7dee chore: small RBAC improvements
* `talosctl config new` now sets endpoints in the generated config.
* Avoid duplication of roles in metadata.
* Remove method name prefix handling. All methods should be set explicitly.
* Add tests.

Closes #3421.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-25 05:50:38 -07:00
Andrey Smirnov
8d60abff7a chore: use tagged versions of bldr dependencies for 0.11
No actual changes, just tag updates.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-24 07:17:16 -07:00
Andrew Rynhard
0fd9ea2d63 feat: enable MACVTAP support
Brings in the latest version of `pkgs` with a kernel that has MACVTAP
support.

Signed-off-by: Andrew Rynhard <andrew@rynhard.io>
2021-06-23 05:17:33 -07:00
Spencer Smith
898673e8d3 chore: update e2e tests to use latest capi releases
This PR version bumps cacppt, cabpt, capa, capg, and cluster api itself

Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
2021-06-22 12:37:22 -07:00
Andrey Smirnov
004885a379 feat: update Linux kernel to 5.10.45, etcd to 3.4.16
This also pulls in HP ILO driver, dmesg restrict mode by default and
dm-crypt options.

See talos-systems/pkgs#289, talos-systems/pkgs#290,
talos-systems/pkgs#287

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-06-22 02:42:09 -07:00
Alexey Palazhchenko
42c16f67f4 chore: bump dependencies
Update k8s to 1.21.2.

See #3787 #3788 #3789 #3790 #3791 #3792 #3793 #3794 #3795 #3796 #3798.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-21 07:05:41 -07:00
Jorik Jonker
973069b611 feat: support NFS 4.1
Talos lacked NFS 4.1 support, which is enabled through this patch.

Signed-off-by: Jorik Jonker <jorik.jonker@eu.equinix.com>
2021-06-16 08:10:26 -07:00
Alexey Palazhchenko
c031be8139 chore: use Go 1.16.5
Bump tools, pkgs, extras.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-06-07 09:02:43 -07:00
Andrey Smirnov
046b229b13 chore: skip building multi-arch installer for race-enabled build
Go cross-compilation is not quite compatible with Go race detector, as C
toolchain is not cross-compilation ready.

Workaround is really simple: for race-enabled builds, don't build
multi-arch installer image (that is installer image which contains both
amd64 and arm64 Talos artifacts), but build installer artifacts only for
the target arch (skipping cross-compilation).

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-05-31 11:04:55 -07:00
Andrey Smirnov
c096294663 chore: prepare for 0.11 release series
Remove `parsebool.sh` script as it's causing issues when the
release-tool is running `Makefile` commands to extract variable values.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-05-26 08:49:22 -07:00
Andrey Smirnov
04ddda962f feat: update containerd to 1.5.2, runc to 1.0.0-rc95
This also updates libseccomp and add support for `netxen` networkd card.

This addresses[CVE-2021-30465](https://github.com/opencontainers/runc/security/advisories/GHSA-c3xm-pvg7-gh7r).

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-05-19 15:24:28 -07:00
Andrey Smirnov
6bc6658b51 feat: update containerd to 1.5.1
See https://github.com/containerd/containerd/releases/tag/v1.5.1

Also brings Talos kernel with Geneve encapsulation for Openvswitch (see
talos-systems/pkgs#278).

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-05-17 10:33:49 -07:00
Alexey Palazhchenko
61ccbb3f5a chore: keep debug symbols in debug builds
Makes debugging easier.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-05-17 04:58:46 -07:00
Andrey Smirnov
76e38b7b82 feat: update Kubernetes to 1.21.1
See https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.21.md

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-05-13 08:05:08 -07:00
Alexey Palazhchenko
9b1338d989 chore: parse "boolean" variables
Makes `make WITH_DEBUG=1` work.

Refs #3534.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-05-13 03:54:33 -07:00
Alexey Palazhchenko
c81cfb2167 chore: allow building with debug handlers
Refs #3534.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-05-13 02:20:15 -07:00
Andrey Smirnov
95c656fb72 feat: update containerd to 1.5.0, runc to 1.0.0-rc94
Fixes #3538

See also talos-systems/pkgs#276

As new containerd is now Go module-based, it pulls many more
dependencies if simply imported in `go.mod`, so I had to replace the
reference to the constant in `pkg/machinery/` to `containerd` volume
with simple value to avoid pulling Kubernetes dependencies into
`pkg/machinery`.

Also updates the kernel to include PR talos-systems/pkgs#275 for AES-NI
support.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-05-11 14:43:27 -07:00
Jorik Jonker
5de8dbc06c fix: repair pine64 support
Apparently, I submitted non working board support earlier. This commit
fixes that and also adds the boards to both `sbcs` target and drone CI.

Signed-off-by: Jorik Jonker <jorik@kippendief.biz>
2021-05-05 11:11:53 -07:00
Jorik Jonker
e480fedff0 feat: add USB serial drivers
This commit adds support for:
- PL2303
- CP210x
- CH341
- FTDI SIO

Signed-off-by: Jorik Jonker <jorik.jonker@eu.equinix.com>
2021-04-29 09:36:45 -07:00
Jorik Jonker
1092c3a506 feat: add Pine64 SBC support
This add support for the Pine64 and Pine64+ ARM64 SBCs.

Signed-off-by: Jorik Jonker <jorik@kippendief.biz>
2021-04-29 07:16:11 -07:00
Artem Chernyshev
63e0175437 feat: pull kernel with VMware balloon module enabled
Enable memory overcommit for VMware setup.

Signed-off-by: Artem Chernyshev <artem.0xD2@gmail.com>
2021-04-28 13:14:28 -07:00
Andrey Smirnov
5fb38d3e5f chore: refactor Dockerfile for cross-compilation
This has two big visible changes:

* `installer` image now contains assets for both `amd64` and `arm64`, so
it can be used to generate any Talos image (including RPi on amd64 host)
* Talos is using cross-compilation instead of emulation to build
non-native architectures: on amd64, Go amd64 compiler produces binaries
for both arm64 and amd64
(before this change: Go arm64 compiler via QEMU produces arm64 binaries on amd64)

CI implications: we no longer require arm64 nodes.

Changes walkthrough:

* `installer` container now keeps assets under `/usr/install/<arch>`
* Dockerfile build starts forcing toolchain/base image to use the build
host native architecture, not target architecture
* lots of duplication for amd64/arm64 as we want to combine assets for
both arches in a single image (e.g. we have multi-arch amd64/arm64
installer image, each arch has native installer binary, but both arches
contain full set of amd64/arm64 assets)
* fixed a small bug preventing arm64 on amd64 talosctl cluster create

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-20 13:11:38 -07:00
Spencer Smith
bb40d6dd06 feat: update pkgs version
This updates the pkgs version to pull in a fix for CPU scaling on
raspberry pi. It will be backported to release-0.10 upon merge.

Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
2021-04-16 09:50:30 -07:00
Andrey Smirnov
f98185408d chore: fix conform with scopes
In recent versions of conform, scope is regexp so `*` is not a valid
regexp.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-13 15:00:36 -07:00
Andrey Smirnov
04dbafca72 feat: update Linux to 5.10.29
Also brings tools/pkgs/extras re-tagged from a stable branch for Talos
0.10 release.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-12 14:09:45 -07:00
Alexey Palazhchenko
cae25909f3 chore: use Go 1.16 global install command
Plus add stringer tool.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-04-12 07:40:29 -07:00
Andrey Smirnov
e3585f24bc chore: update Linux to 5.10.28, u-boot to final 2021.04 release
See talos-systems/pkgs#261 talos-systems/pkgs#262

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-10 07:30:10 -07:00
Andrey Smirnov
daf2208749 test: update upgrade tests to 0.10 release
In preparation for going 0.10 beta, start testing upgrades to 0.10, drop
0.8 and self-hosted control plane handling in the tests.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-09 12:57:04 -07:00
Alexey Palazhchenko
37a5edf04a feat: update Kubernetes to 1.21.0 release
See CHANGELOG:
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.21.md

Closes #3329.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-04-09 20:08:20 +03:00
Alexey Palazhchenko
aca63b8829 docs: fix "DigitalOcean" spelling
Refs #3427.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-04-07 09:13:24 -07:00
Alexey Palazhchenko
8737ea716a feat: allow external cloud provides configration
Closes #3312.

Signed-off-by: Alexey Palazhchenko <alexey.palazhchenko@gmail.com>
2021-04-06 22:54:24 -07:00
Andrey Smirnov
3909e2d011 chore: update Go to 1.16.3
See talos-systems/tools#134 talos-systems/pkgs#260
talos-systems/extras#16

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-06 13:53:53 -07:00
Andrey Smirnov
abc2e17ebb test: update 0.9.x version in upgrade tests to 0.9.1
Version 0.9.1 contains a fix for concurrent map write on unmount which
was frequently breaking our upgrade tests.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-02 03:59:36 -07:00
Andrey Smirnov
a43acb2150 feat: bring in Linux 5.10.27, support for 32-bit time syscalls
This provides binary compatibility for really old binaries using 32-bit
time.

See also: talos-systems/pkgs#259

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-04-01 08:21:37 -07:00
Andrey Smirnov
8309312a3d chore: build components with race detector enabled in dev mode
This provides a variable to build core Talos components with race
detector enabled: `make initramfs WITH_RACE=yes`.

Also refactored and DRYed up the build code exposing common build/link
flags via the Makefile.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-03-31 10:55:50 -07:00
Andrey Smirnov
204caf8eb9 test: fix apply-config integration test, bump clusterctl version
Tests for ApplyConfig API were relying on not really supported behavior
of modifying config via the `Provider` interface (and it was "fixed" in
another PR which cleans up such access to the configuration).

Cluster version bumped to try to workaround strange CAPI bootstrap
failures in e2e-capi.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
2021-03-31 09:55:53 -07:00