Skip to content

Releases: Mirantis/blueprint-cli

v1.0.0-rc.1

28 Feb 17:32
8fea6cd
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.2.0...v1.0.0-rc.1

v0.2.0

13 Feb 18:03
817c7f0
Compare
Choose a tag to compare

What's Changed

Support upgrading K0s

Users can now successfully upgrade the k0s version present in the cluster by upgrading the blueprint and running bctl update

Create cluster & deploy Blueprint with k0s provider:

  kubernetes:
    provider: k0s
    version: 1.27.4+k0s.0
...

Attempt to upgrade patch version (1.27.4 -> 1.27.5):

  kubernetes:
    provider: k0s
    version: 1.27.5+k0s.0
...

Cluster gets upgraded:

 ~/Projects/boundless-cli/bin/bctl -f exampleblueprint.yaml update
INF downloading new version of k0s binary
INF validating existing config with new version of k0s binary
INF new provider version validated
INF Updating provider
...
INFO ==> Running phase: Gather k0s facts
INFO [ssh] 54.204.76.190:22: found existing configuration
INFO [ssh] 54.204.76.190:22: is running k0s controller version v1.27.4+k0s.0
WARN [ssh] 54.204.76.190:22: k0s will be upgraded
INFO [ssh] 18.212.137.28:22: is running k0s worker version v1.27.4+k0s.0
WARN [ssh] 18.212.137.28:22: k0s will be upgraded
INFO [ssh] 54.204.76.190:22: checking if worker ip-172-31-16-192 has joined
INFO ==> Running phase: Validate facts
INFO ==> Running phase: Download k0s on hosts
INFO [ssh] 18.212.137.28:22: downloading k0s v1.27.5+k0s.0
INFO [ssh] 54.204.76.190:22: downloading k0s v1.27.5+k0s.0
INFO ==> Running phase: Configure k0s
INFO [ssh] 54.204.76.190:22: validating configuration
INFO ==> Running phase: Upgrade controllers
INFO [ssh] 54.204.76.190:22: starting upgrade
INFO [ssh] 54.204.76.190:22: waiting for the k0s service to start
WARN [ssh] 54.204.76.190:22: skipping scheduler and system pod checks because --no-wait given
INFO ==> Running phase: Upgrade workers
INFO Upgrading max 1 workers in parallel
INFO [ssh] 18.212.137.28:22: starting upgrade
INFO [ssh] 18.212.137.28:22: upgrade successful

Verify nodes have new version:

tpolkowski@tpolkowski-MBP16-1947 k0s-in-aws % kubectl get node
NAME               STATUS                     ROLES    AGE     VERSION
ip-172-31-16-192   Ready,SchedulingDisabled   <none>   5m17s   v1.27.5+k0s

Certain k0s version upgrades may not work automatically and may require user edits to the k0s config. In these cases bctl will prevent the upgrade and inform the user to prevent the cluster from entering a broken state

 ~/Projects/boundless-cli/bin/bctl -f exampleblueprint.yaml update
INF downloading new version of k0s binary
INF validating existing config with new version of k0s binary
ERR validation of new provider version failed on host 54.204.76.190 : Error: failed to read config: error unmarshaling JSON: while decoding JSON: json: unknown field "tunneledNetworkingMode"
Error: provider failed pre-upgrade validation and may require manual changes: Process exited with status 1

FailurePolicy and Timeout fields in Manifest addons

Added new fields in Manifest addon spec that allow for users to specify how and when manifests should be recreated/reapplied.

Example:

- name: calico
  kind: manifest
  enabled: true
  manifest:
    url: https://raw.githubusercontent.com/projectcalico/calico/v3.26.3/manifests/calico.yaml
    failurePolicy: Retry
    timeout: 45s

Support for Kustomize for Manifest addons

The users can now customize the static resources for URL based Manifest addons. These customization are based on Kustomize.

Following kustomize primitives are currently supported:

  1. Built-in images transformer.
  2. Inline patches

Example usage

- name: metallb
  kind: manifest
  enabled: true
  namespace: boundless-system
  manifest:
    url: "https://raw.githubusercontent.com/metallb/metallb/v0.13.10/config/manifests/metallb-native.yaml"
    failurePolicy: None
    timeout: 45s
    values:
      images:
        - name: quay.io/metallb/speaker:v0.13.10
          newName: quay.io/metallb/speaker
          newTag: v0.13.11
        - name: quay.io/metallb/controller:v0.13.10
          newName: quay.io/metallb/controller
          newTag: v0.13.11
      patches:
        - patch: |-
            apiVersion: apps/v1
            kind: Deployment
            metadata:
              name: controller
              namespace: metallb-system
            spec:
              template:
                spec:
                  containers:
                    - name: controller
                      livenessProbe:
                        failureThreshold: 2

Full Changelog: v0.1.3...v0.2.0

v0.1.3

24 Jan 22:23
554d1f0
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.1...v0.1.3

v0.1.2

15 Dec 17:27
a446219
Compare
Choose a tag to compare

This release fixes CI issues in release process due to new MirantisContainers repo.

v0.1.1

14 Dec 22:23
a446219
Compare
Choose a tag to compare
v0.1.1 Pre-release
Pre-release

What's Changed

Status command shows high level cluster status

bin/bctl -f blueprint-kind.yaml status
No boundless operator installation detected
Deployment                     helm-controller                Desired: 1, Ready: 1/1, Available: 1/1
-------------------------------------------------------
NAME                 KIND       STATUS
calico               manifest   Progressing
my-grafana           chart      Progressing

Status command can also be used to drill on for detailed status of any addon

bin/bctl -f blueprint-kind.yaml status calico
NAME                 KIND       STATUS
calico               manifest   Available

Status Reason: Manifest Components Available
Detailed Status Message: Manifest Components Available

-------------------------------------------------------
ADDON RESOURCES
Daemonset                      calico-node                    Desired: 1, Ready: 1/1, Available: 1/1
Deployment                     calico-kube-controllers        Desired: 1, Ready: 1/1, Available: 1/1
-------------------------------------------------------

BOUNDLESS SYSTEM EVENTS
failed to update manifest object with finalizer boundless-system/calico
Created Manifest boundless-system/calico
Created Manifest Addon default/calico

Full Changelog: v0.1.0...v0.1.1

v0.1.0

06 Dec 16:59
49d5854
Compare
Choose a tag to compare

What's Changed

  • Add support for manifest based add-ons by @sakshisharma84
  • Remove kubectl dependency for installing boundless operator by @ranyodh
  • Deprecated flag:
    • --config. Use --file or -f to specify blueprint file
  • Removed flag:
    • --debug. Use --log-level=(trace, debug, info, warn, error)

Full Changelog: v0.0.17...v0.1.0

v0.0.17

22 Nov 23:24
dfa0887
Compare
Choose a tag to compare

What's Changed

  • [BOP-91] Build for arm mac by @nwneisen in #15
  • [BOP-84] Switch everything to the PAT by @nwneisen in #12
  • [BOP-44] Read/Write kubeconfig from default locations (explicit file, ENV variable and OS specific default location) by @ranyodh in #14
  • Delete dev tag first in CI by @nwneisen in #16
  • [BOP-109] add manifest support in CLI by @sakshisharma84 in #17
  • Quick-fix: fix kind to chart in bctl init by @sakshisharma84 in #19
  • Cleanup docs by @nwneisen in #18
  • [BOP-44] Set the kubeconfig current context to the cluster created by bctl by @ranyodh in #20
  • Suppress warning from runtime clint regarding logger by @ranyodh in #21

New Contributors

Full Changelog: v0.0.16-alpha...v0.0.17

v0.0.16-alpha

09 Nov 15:52
7d2ec67
Compare
Choose a tag to compare

What's Changed

  • [BOP-49] Add PR CI by @nwneisen in #6
  • [BOP-52] Add release CI by @nwneisen in #7
  • Fix api version in blueprint file that is generate with init by @ranyodh in #9
  • [BOP-50][BOP-74] Add CI during merge by @nwneisen in #8
  • Separate the dev and release publish workflows by @nwneisen in #11

Full Changelog: v0.0.15-alpha...v0.0.16-alpha

v0.0.15-alpha

06 Nov 18:18
a366dd1
Compare
Choose a tag to compare

Fix an issue that causes crash when spec.kubernetes or spec.components.core are not defined in the blueprint.

v0.0.14-alpha: Merge pull request #2 from Mirantis/fix-specs

01 Nov 15:15
27f0b73
Compare
Choose a tag to compare