Page MenuHomePhabricator

charlie should support --services_dir
Closed, ResolvedPublicFeature

Description

charlie currently has the root directory /srv/deployment-charts/helmfile.d/services as a module-level constant, meaning it's only usable on wikikube. We should make that configurable via command-line flag so that it can be used in other clusters too.

As a side effect, that will also mean it can be used from e.g. /home/elitehacker/my-local-checkouts/deployment-charts/helmfile.d/services. That's exactly as error-prone, but exactly as powerful in certain situations, as running helmfile apply in the same way, so (this being a power tool for power users) we ought to support it.

Event Timeline

RLazarus changed the task status from Open to In Progress.Fri, Feb 13, 9:59 PM
RLazarus claimed this task.
RLazarus moved this task from Inbox to In Progress on the ServiceOps new board.

Change #1239428 had a related patch set uploaded (by RLazarus; author: RLazarus):

[operations/puppet@production] deployment_server: Add services_dir arg to charlie helper functions

https://gerrit.wikimedia.org/r/1239428

Change #1239429 had a related patch set uploaded (by RLazarus; author: RLazarus):

[operations/puppet@production] deployment_server: Add a ServiceInventory convenience class to charlie

https://gerrit.wikimedia.org/r/1239429

Change #1239430 had a related patch set uploaded (by RLazarus; author: RLazarus):

[operations/puppet@production] deployment_server: Make SKIP_DIRS relative to the repo root in charlie

https://gerrit.wikimedia.org/r/1239430

Change #1239431 had a related patch set uploaded (by RLazarus; author: RLazarus):

[operations/puppet@production] deployment_server: Add --services_dir flag to charlie

https://gerrit.wikimedia.org/r/1239431

Change #1239428 merged by RLazarus:

[operations/puppet@production] deployment_server: Add services_dir arg to charlie helper functions

https://gerrit.wikimedia.org/r/1239428

Change #1239429 merged by RLazarus:

[operations/puppet@production] deployment_server: Add a ServiceInventory convenience class to charlie

https://gerrit.wikimedia.org/r/1239429

Change #1239430 merged by RLazarus:

[operations/puppet@production] deployment_server: Make SKIP_DIRS relative to the repo root in charlie

https://gerrit.wikimedia.org/r/1239430

Change #1239431 merged by RLazarus:

[operations/puppet@production] deployment_server: Add --services_dir flag to charlie

https://gerrit.wikimedia.org/r/1239431

Change #1240401 had a related patch set uploaded (by RLazarus; author: RLazarus):

[operations/puppet@production] deployment_server: Really read namespaces in charlie --dangerously_fast

https://gerrit.wikimedia.org/r/1240401

@RLazarus could you please set a priority for this task?

Change #1240401 merged by RLazarus:

[operations/puppet@production] deployment_server: Really read namespaces in charlie --dangerously_fast

https://gerrit.wikimedia.org/r/1240401

rzl@deploy2002:/srv/deployment-charts/helmfile.d/ml-services$ charlie --services_dir . list
_example_: ml-serve-eqiad, ml-serve-codfw
article-descriptions: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
article-models: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
articletopic-outlink: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
edit-check: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
experimental: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
llm: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
logo-detection: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
ores-legacy: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
readability: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
recommendation-api-ng: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revertrisk: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revise-tone-task-generator: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revision-models: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-articlequality: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-articletopic: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-draftquality: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-drafttopic: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-editquality-damaging: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-editquality-goodfaith: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw
revscoring-editquality-reverted: ml-staging-codfw, ml-serve-eqiad, ml-serve-codfw

rzl@deploy2002:/srv/deployment-charts/helmfile.d/ml-services$ cd ../dse-k8s-services

rzl@deploy2002:/srv/deployment-charts/helmfile.d/dse-k8s-services$ charlie --services_dir . -e dse-k8s-codfw --dry_run apply --dangerously_fast
Found pods in namespaces: echoserver, kafka-mirrormaker, opensearch-ipoid, opensearch-ipoid-test, opensearch-operator, opensearch-semantic-search, opensearch-semantic-search-test, opensearch-test
Cluster dse-k8s-codfw is not wiped, can't use --dangerously_fast.

Change #1240780 had a related patch set uploaded (by RLazarus; author: RLazarus):

[operations/puppet@production] deployment_server: Add to charlie's ignored services and environments

https://gerrit.wikimedia.org/r/1240780

Change #1240780 merged by RLazarus:

[operations/puppet@production] deployment_server: Add to charlie's ignored services and environments

https://gerrit.wikimedia.org/r/1240780