Skip to content
This repository has been archived by the owner on May 3, 2022. It is now read-only.

shipperctl: split "shipperctl admin clusters apply" #292

Merged
merged 2 commits into from
Mar 12, 2020

Conversation

juliogreff
Copy link
Contributor

First of all, this does away with the "admin" namespace. Commands were
getting too long for our taste.

Second, shipperctl admin clusters apply is now split into two,
supposed to be called in order, like so:

shipperctl clusters setup management
shipperctl clusters join -f clusters.yaml

The first only installs Shipper in the management cluster, and the
second joins application clusters to the management one. This allows us
to roll out updates to shipper without necessarily having to specify
application clusters to be joined.

These already exist as go files in `pkg/crd`, and keeping both of those
in sync was annoying without a very good reason, besides being able to
only install them without running shipperctl. We're going to split
shipperctl into more commands in follow up commits, so this is no
longer necessary.
First of all, this does away with the "admin" namespace. Commands were
getting too long for our taste.

Second, `shipperctl admin clusters apply` is now split into two,
supposed to be called in order, like so:

```
shipperctl clusters setup management
shipperctl clusters join -f clusters.yaml
```

The first only installs Shipper in the management cluster, and the
second joins application clusters to the management one. This allows us
to roll out updates to shipper without necessarily having to specify
application clusters to be joined.
@juliogreff juliogreff added the enhancement New feature or request label Mar 5, 2020
@juliogreff juliogreff added this to the release-0.9 milestone Mar 5, 2020
@juliogreff juliogreff self-assigned this Mar 5, 2020
@parhamdoustdar parhamdoustdar merged commit 3b047ae into master Mar 12, 2020
@parhamdoustdar parhamdoustdar deleted the jgreff/shipperctl-split branch March 12, 2020 15:07
osdrv pushed a commit that referenced this pull request Mar 23, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
osdrv pushed a commit that referenced this pull request Apr 6, 2020
Up until now, shipper has been installing CRD objects to management
clusters only and this was a part of `shipperctl clusters setup
management` command. As we're splitting shipper in management and
application components, these components need their own CRDs to
operate on the relevant cluster.

Therefore, an updated list of CRD groups:
* Management
  - Application
  - Release
  - Cluster
  - RolloutBlock
* Application
  - InstallationTarget
  - CapacityTarget
  - TrafficTarget

Folow-up to: #292

Signed-off-by: Oleg Sidorov <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants