From 9ed174a2430a5b257c4e8be7068d37f85d89f800 Mon Sep 17 00:00:00 2001 From: Teodora Mihoc Date: Wed, 4 Dec 2024 17:58:34 +0100 Subject: [PATCH] docs: add docs for RTD --- docs/.sphinx/requirements.txt | 4 +- docs/conf.py | 8 +- docs/custom_conf.py | 4 +- .../how-to/create-new-mongo-db-collection.md | 164 ----- docs/dev/how-to/create-unit-test-suite.md | 46 -- .../debug-bootstrap-machine-failures.md | 154 ---- docs/dev/how-to/index.md | 10 - docs/dev/how-to/merge-forward.md | 45 -- docs/dev/how-to/write-a-unit-test.md | 156 ----- docs/dev/how-to/write-an-integration-test.md | 98 --- docs/dev/index.md | 4 +- docs/index.md | 26 +- docs/user/cli/actions.md | 30 - docs/user/cli/add-cloud.md | 103 --- docs/user/cli/add-credential.md | 92 --- docs/user/cli/add-k8s.md | 82 --- docs/user/cli/add-machine.md | 138 ---- docs/user/cli/add-model.md | 60 -- docs/user/cli/add-secret-backend.md | 35 - docs/user/cli/add-secret.md | 41 -- docs/user/cli/add-space.md | 27 - docs/user/cli/add-ssh-key.md | 41 -- docs/user/cli/add-storage.md | 75 -- docs/user/cli/add-unit.md | 88 --- docs/user/cli/add-user.md | 33 - docs/user/cli/agree.md | 40 -- docs/user/cli/agreements.md | 27 - docs/user/cli/attach-resource.md | 47 -- docs/user/cli/attach-storage.md | 25 - docs/user/cli/autoload-credentials.md | 64 -- docs/user/cli/bind.md | 41 -- docs/user/cli/bootstrap.md | 657 ------------------ docs/user/cli/cancel-task.md | 32 - docs/user/cli/change-user-password.md | 41 -- docs/user/cli/charm-resources.md | 39 -- docs/user/cli/clouds.md | 55 -- docs/user/cli/config.md | 126 ---- docs/user/cli/constraints.md | 35 - docs/user/cli/consume.md | 33 - docs/user/cli/controller-config.md | 213 ------ docs/user/cli/controllers.md | 25 - docs/user/cli/create-backup.md | 40 -- docs/user/cli/create-storage-pool.md | 46 -- docs/user/cli/credentials.md | 74 -- docs/user/cli/dashboard.md | 34 - docs/user/cli/debug-code.md | 64 -- docs/user/cli/debug-hook.md | 61 -- docs/user/cli/debug-hooks.md | 60 -- docs/user/cli/debug-log.md | 121 ---- docs/user/cli/default-credential.md | 37 - docs/user/cli/default-region.md | 29 - docs/user/cli/deploy.md | 291 -------- docs/user/cli/destroy-controller.md | 75 -- docs/user/cli/destroy-model.md | 59 -- docs/user/cli/detach-storage.md | 32 - docs/user/cli/diff-bundle.md | 45 -- docs/user/cli/disable-command.md | 99 --- docs/user/cli/disable-user.md | 25 - docs/user/cli/disabled-commands.md | 78 --- docs/user/cli/documentation.md | 46 -- docs/user/cli/download-backup.md | 28 - docs/user/cli/download.md | 42 -- docs/user/cli/enable-command.md | 99 --- docs/user/cli/enable-destroy-controller.md | 20 - docs/user/cli/enable-ha.md | 49 -- docs/user/cli/enable-user.md | 23 - docs/user/cli/exec.md | 102 --- docs/user/cli/export-bundle.md | 27 - docs/user/cli/expose.md | 80 --- docs/user/cli/find-offers.md | 34 - docs/user/cli/find.md | 30 - docs/user/cli/firewall-rules.md | 28 - docs/user/cli/grant-cloud.md | 27 - docs/user/cli/grant-secret.md | 24 - docs/user/cli/grant.md | 64 -- docs/user/cli/help-tool.md | 65 -- docs/user/cli/help.md | 12 - docs/user/cli/import-filesystem.md | 46 -- docs/user/cli/import-ssh-key.md | 42 -- docs/user/cli/index.md | 205 ------ docs/user/cli/info.md | 35 - docs/user/cli/integrate.md | 166 ----- docs/user/cli/kill-controller.md | 33 - docs/user/cli/list-actions.md | 31 - docs/user/cli/list-agreements.md | 28 - docs/user/cli/list-charm-resources.md | 40 -- docs/user/cli/list-clouds.md | 56 -- docs/user/cli/list-controllers.md | 26 - docs/user/cli/list-credentials.md | 75 -- docs/user/cli/list-disabled-commands.md | 79 --- docs/user/cli/list-firewall-rules.md | 29 - docs/user/cli/list-machines.md | 28 - docs/user/cli/list-models.md | 32 - docs/user/cli/list-offers.md | 54 -- docs/user/cli/list-operations.md | 47 -- docs/user/cli/list-payloads.md | 33 - docs/user/cli/list-regions.md | 35 - docs/user/cli/list-resources.md | 40 -- docs/user/cli/list-secret-backends.md | 25 - docs/user/cli/list-secrets.md | 25 - docs/user/cli/list-spaces.md | 35 - docs/user/cli/list-ssh-keys.md | 32 - docs/user/cli/list-storage-pools.md | 45 -- docs/user/cli/list-storage.md | 39 -- docs/user/cli/list-subnets.md | 44 -- docs/user/cli/list-users.md | 38 - docs/user/cli/login.md | 56 -- docs/user/cli/logout.md | 33 - docs/user/cli/machines.md | 27 - docs/user/cli/migrate.md | 37 - docs/user/cli/model-config.md | 335 --------- docs/user/cli/model-constraints.md | 30 - docs/user/cli/model-default.md | 116 ---- docs/user/cli/model-defaults.md | 115 --- docs/user/cli/model-secret-backend.md | 30 - docs/user/cli/models.md | 31 - docs/user/cli/move-to-space.md | 29 - docs/user/cli/offer.md | 29 - docs/user/cli/offers.md | 53 -- docs/user/cli/operations.md | 46 -- docs/user/cli/payloads.md | 32 - docs/user/cli/refresh.md | 120 ---- docs/user/cli/regions.md | 34 - docs/user/cli/register.md | 49 -- docs/user/cli/relate.md | 167 ----- docs/user/cli/reload-spaces.md | 20 - docs/user/cli/remove-application.md | 50 -- docs/user/cli/remove-cloud.md | 32 - docs/user/cli/remove-credential.md | 45 -- docs/user/cli/remove-k8s.md | 32 - docs/user/cli/remove-machine.md | 47 -- docs/user/cli/remove-offer.md | 35 - docs/user/cli/remove-relation.md | 52 -- docs/user/cli/remove-saas.md | 29 - docs/user/cli/remove-secret-backend.md | 28 - docs/user/cli/remove-secret.md | 25 - docs/user/cli/remove-space.md | 35 - docs/user/cli/remove-ssh-key.md | 30 - docs/user/cli/remove-storage-pool.md | 26 - docs/user/cli/remove-storage.md | 44 -- docs/user/cli/remove-unit.md | 73 -- docs/user/cli/remove-user.md | 27 - docs/user/cli/rename-space.md | 27 - docs/user/cli/resolve.md | 26 - docs/user/cli/resolved.md | 25 - docs/user/cli/resources.md | 39 -- docs/user/cli/resume-relation.md | 27 - docs/user/cli/retry-provisioning.md | 23 - docs/user/cli/revoke-cloud.md | 36 - docs/user/cli/revoke-secret.md | 24 - docs/user/cli/revoke.md | 55 -- docs/user/cli/run.md | 82 --- docs/user/cli/scale-application.md | 26 - docs/user/cli/scp.md | 117 ---- docs/user/cli/secret-backends.md | 24 - docs/user/cli/secrets.md | 24 - docs/user/cli/set-constraints.md | 35 - docs/user/cli/set-credential.md | 44 -- docs/user/cli/set-default-credentials.md | 38 - docs/user/cli/set-default-region.md | 30 - docs/user/cli/set-firewall-rule.md | 34 - docs/user/cli/set-model-constraints.md | 30 - docs/user/cli/show-action.md | 24 - docs/user/cli/show-application.md | 32 - docs/user/cli/show-cloud.md | 41 -- docs/user/cli/show-controller.md | 27 - docs/user/cli/show-credential.md | 43 -- docs/user/cli/show-credentials.md | 44 -- docs/user/cli/show-machine.md | 31 - docs/user/cli/show-model.md | 19 - docs/user/cli/show-offer.md | 45 -- docs/user/cli/show-operation.md | 38 - docs/user/cli/show-secret-backend.md | 27 - docs/user/cli/show-secret.md | 39 -- docs/user/cli/show-space.md | 29 - docs/user/cli/show-status-log.md | 73 -- docs/user/cli/show-storage.md | 29 - docs/user/cli/show-task.md | 42 -- docs/user/cli/show-unit.md | 50 -- docs/user/cli/show-user.md | 29 - docs/user/cli/spaces.md | 34 - docs/user/cli/ssh-keys.md | 31 - docs/user/cli/ssh.md | 115 --- docs/user/cli/status.md | 106 --- docs/user/cli/storage-pools.md | 44 -- docs/user/cli/storage.md | 38 - docs/user/cli/subnets.md | 43 -- docs/user/cli/suspend-relation.md | 29 - docs/user/cli/switch.md | 51 -- docs/user/cli/sync-agent-binary.md | 34 - docs/user/cli/trust.md | 30 - docs/user/cli/unexpose.md | 45 -- docs/user/cli/unregister.md | 26 - docs/user/cli/update-cloud.md | 41 -- docs/user/cli/update-credential.md | 58 -- docs/user/cli/update-credentials.md | 59 -- docs/user/cli/update-k8s.md | 43 -- docs/user/cli/update-public-clouds.md | 31 - docs/user/cli/update-secret-backend.md | 42 -- docs/user/cli/update-secret.md | 43 -- docs/user/cli/update-storage-pool.md | 30 - docs/user/cli/upgrade-controller.md | 41 -- docs/user/cli/upgrade-model.md | 47 -- docs/user/cli/users.md | 37 - docs/user/cli/version.md | 26 - docs/user/cli/whoami.md | 21 - docs/user/cli_index.template | 11 - docs/user/index.md | 93 ++- 208 files changed, 121 insertions(+), 11132 deletions(-) delete mode 100644 docs/dev/how-to/create-new-mongo-db-collection.md delete mode 100644 docs/dev/how-to/create-unit-test-suite.md delete mode 100644 docs/dev/how-to/debug-bootstrap-machine-failures.md delete mode 100644 docs/dev/how-to/index.md delete mode 100644 docs/dev/how-to/merge-forward.md delete mode 100644 docs/dev/how-to/write-a-unit-test.md delete mode 100644 docs/dev/how-to/write-an-integration-test.md delete mode 100644 docs/user/cli/actions.md delete mode 100644 docs/user/cli/add-cloud.md delete mode 100644 docs/user/cli/add-credential.md delete mode 100644 docs/user/cli/add-k8s.md delete mode 100644 docs/user/cli/add-machine.md delete mode 100644 docs/user/cli/add-model.md delete mode 100644 docs/user/cli/add-secret-backend.md delete mode 100644 docs/user/cli/add-secret.md delete mode 100644 docs/user/cli/add-space.md delete mode 100644 docs/user/cli/add-ssh-key.md delete mode 100644 docs/user/cli/add-storage.md delete mode 100644 docs/user/cli/add-unit.md delete mode 100644 docs/user/cli/add-user.md delete mode 100644 docs/user/cli/agree.md delete mode 100644 docs/user/cli/agreements.md delete mode 100644 docs/user/cli/attach-resource.md delete mode 100644 docs/user/cli/attach-storage.md delete mode 100644 docs/user/cli/autoload-credentials.md delete mode 100644 docs/user/cli/bind.md delete mode 100644 docs/user/cli/bootstrap.md delete mode 100644 docs/user/cli/cancel-task.md delete mode 100644 docs/user/cli/change-user-password.md delete mode 100644 docs/user/cli/charm-resources.md delete mode 100644 docs/user/cli/clouds.md delete mode 100644 docs/user/cli/config.md delete mode 100644 docs/user/cli/constraints.md delete mode 100644 docs/user/cli/consume.md delete mode 100644 docs/user/cli/controller-config.md delete mode 100644 docs/user/cli/controllers.md delete mode 100644 docs/user/cli/create-backup.md delete mode 100644 docs/user/cli/create-storage-pool.md delete mode 100644 docs/user/cli/credentials.md delete mode 100644 docs/user/cli/dashboard.md delete mode 100644 docs/user/cli/debug-code.md delete mode 100644 docs/user/cli/debug-hook.md delete mode 100644 docs/user/cli/debug-hooks.md delete mode 100644 docs/user/cli/debug-log.md delete mode 100644 docs/user/cli/default-credential.md delete mode 100644 docs/user/cli/default-region.md delete mode 100644 docs/user/cli/deploy.md delete mode 100644 docs/user/cli/destroy-controller.md delete mode 100644 docs/user/cli/destroy-model.md delete mode 100644 docs/user/cli/detach-storage.md delete mode 100644 docs/user/cli/diff-bundle.md delete mode 100644 docs/user/cli/disable-command.md delete mode 100644 docs/user/cli/disable-user.md delete mode 100644 docs/user/cli/disabled-commands.md delete mode 100644 docs/user/cli/documentation.md delete mode 100644 docs/user/cli/download-backup.md delete mode 100644 docs/user/cli/download.md delete mode 100644 docs/user/cli/enable-command.md delete mode 100644 docs/user/cli/enable-destroy-controller.md delete mode 100644 docs/user/cli/enable-ha.md delete mode 100644 docs/user/cli/enable-user.md delete mode 100644 docs/user/cli/exec.md delete mode 100644 docs/user/cli/export-bundle.md delete mode 100644 docs/user/cli/expose.md delete mode 100644 docs/user/cli/find-offers.md delete mode 100644 docs/user/cli/find.md delete mode 100644 docs/user/cli/firewall-rules.md delete mode 100644 docs/user/cli/grant-cloud.md delete mode 100644 docs/user/cli/grant-secret.md delete mode 100644 docs/user/cli/grant.md delete mode 100644 docs/user/cli/help-tool.md delete mode 100644 docs/user/cli/help.md delete mode 100644 docs/user/cli/import-filesystem.md delete mode 100644 docs/user/cli/import-ssh-key.md delete mode 100644 docs/user/cli/index.md delete mode 100644 docs/user/cli/info.md delete mode 100644 docs/user/cli/integrate.md delete mode 100644 docs/user/cli/kill-controller.md delete mode 100644 docs/user/cli/list-actions.md delete mode 100644 docs/user/cli/list-agreements.md delete mode 100644 docs/user/cli/list-charm-resources.md delete mode 100644 docs/user/cli/list-clouds.md delete mode 100644 docs/user/cli/list-controllers.md delete mode 100644 docs/user/cli/list-credentials.md delete mode 100644 docs/user/cli/list-disabled-commands.md delete mode 100644 docs/user/cli/list-firewall-rules.md delete mode 100644 docs/user/cli/list-machines.md delete mode 100644 docs/user/cli/list-models.md delete mode 100644 docs/user/cli/list-offers.md delete mode 100644 docs/user/cli/list-operations.md delete mode 100644 docs/user/cli/list-payloads.md delete mode 100644 docs/user/cli/list-regions.md delete mode 100644 docs/user/cli/list-resources.md delete mode 100644 docs/user/cli/list-secret-backends.md delete mode 100644 docs/user/cli/list-secrets.md delete mode 100644 docs/user/cli/list-spaces.md delete mode 100644 docs/user/cli/list-ssh-keys.md delete mode 100644 docs/user/cli/list-storage-pools.md delete mode 100644 docs/user/cli/list-storage.md delete mode 100644 docs/user/cli/list-subnets.md delete mode 100644 docs/user/cli/list-users.md delete mode 100644 docs/user/cli/login.md delete mode 100644 docs/user/cli/logout.md delete mode 100644 docs/user/cli/machines.md delete mode 100644 docs/user/cli/migrate.md delete mode 100644 docs/user/cli/model-config.md delete mode 100644 docs/user/cli/model-constraints.md delete mode 100644 docs/user/cli/model-default.md delete mode 100644 docs/user/cli/model-defaults.md delete mode 100644 docs/user/cli/model-secret-backend.md delete mode 100644 docs/user/cli/models.md delete mode 100644 docs/user/cli/move-to-space.md delete mode 100644 docs/user/cli/offer.md delete mode 100644 docs/user/cli/offers.md delete mode 100644 docs/user/cli/operations.md delete mode 100644 docs/user/cli/payloads.md delete mode 100644 docs/user/cli/refresh.md delete mode 100644 docs/user/cli/regions.md delete mode 100644 docs/user/cli/register.md delete mode 100644 docs/user/cli/relate.md delete mode 100644 docs/user/cli/reload-spaces.md delete mode 100644 docs/user/cli/remove-application.md delete mode 100644 docs/user/cli/remove-cloud.md delete mode 100644 docs/user/cli/remove-credential.md delete mode 100644 docs/user/cli/remove-k8s.md delete mode 100644 docs/user/cli/remove-machine.md delete mode 100644 docs/user/cli/remove-offer.md delete mode 100644 docs/user/cli/remove-relation.md delete mode 100644 docs/user/cli/remove-saas.md delete mode 100644 docs/user/cli/remove-secret-backend.md delete mode 100644 docs/user/cli/remove-secret.md delete mode 100644 docs/user/cli/remove-space.md delete mode 100644 docs/user/cli/remove-ssh-key.md delete mode 100644 docs/user/cli/remove-storage-pool.md delete mode 100644 docs/user/cli/remove-storage.md delete mode 100644 docs/user/cli/remove-unit.md delete mode 100644 docs/user/cli/remove-user.md delete mode 100644 docs/user/cli/rename-space.md delete mode 100644 docs/user/cli/resolve.md delete mode 100644 docs/user/cli/resolved.md delete mode 100644 docs/user/cli/resources.md delete mode 100644 docs/user/cli/resume-relation.md delete mode 100644 docs/user/cli/retry-provisioning.md delete mode 100644 docs/user/cli/revoke-cloud.md delete mode 100644 docs/user/cli/revoke-secret.md delete mode 100644 docs/user/cli/revoke.md delete mode 100644 docs/user/cli/run.md delete mode 100644 docs/user/cli/scale-application.md delete mode 100644 docs/user/cli/scp.md delete mode 100644 docs/user/cli/secret-backends.md delete mode 100644 docs/user/cli/secrets.md delete mode 100644 docs/user/cli/set-constraints.md delete mode 100644 docs/user/cli/set-credential.md delete mode 100644 docs/user/cli/set-default-credentials.md delete mode 100644 docs/user/cli/set-default-region.md delete mode 100644 docs/user/cli/set-firewall-rule.md delete mode 100644 docs/user/cli/set-model-constraints.md delete mode 100644 docs/user/cli/show-action.md delete mode 100644 docs/user/cli/show-application.md delete mode 100644 docs/user/cli/show-cloud.md delete mode 100644 docs/user/cli/show-controller.md delete mode 100644 docs/user/cli/show-credential.md delete mode 100644 docs/user/cli/show-credentials.md delete mode 100644 docs/user/cli/show-machine.md delete mode 100644 docs/user/cli/show-model.md delete mode 100644 docs/user/cli/show-offer.md delete mode 100644 docs/user/cli/show-operation.md delete mode 100644 docs/user/cli/show-secret-backend.md delete mode 100644 docs/user/cli/show-secret.md delete mode 100644 docs/user/cli/show-space.md delete mode 100644 docs/user/cli/show-status-log.md delete mode 100644 docs/user/cli/show-storage.md delete mode 100644 docs/user/cli/show-task.md delete mode 100644 docs/user/cli/show-unit.md delete mode 100644 docs/user/cli/show-user.md delete mode 100644 docs/user/cli/spaces.md delete mode 100644 docs/user/cli/ssh-keys.md delete mode 100644 docs/user/cli/ssh.md delete mode 100644 docs/user/cli/status.md delete mode 100644 docs/user/cli/storage-pools.md delete mode 100644 docs/user/cli/storage.md delete mode 100644 docs/user/cli/subnets.md delete mode 100644 docs/user/cli/suspend-relation.md delete mode 100644 docs/user/cli/switch.md delete mode 100644 docs/user/cli/sync-agent-binary.md delete mode 100644 docs/user/cli/trust.md delete mode 100644 docs/user/cli/unexpose.md delete mode 100644 docs/user/cli/unregister.md delete mode 100644 docs/user/cli/update-cloud.md delete mode 100644 docs/user/cli/update-credential.md delete mode 100644 docs/user/cli/update-credentials.md delete mode 100644 docs/user/cli/update-k8s.md delete mode 100644 docs/user/cli/update-public-clouds.md delete mode 100644 docs/user/cli/update-secret-backend.md delete mode 100644 docs/user/cli/update-secret.md delete mode 100644 docs/user/cli/update-storage-pool.md delete mode 100644 docs/user/cli/upgrade-controller.md delete mode 100644 docs/user/cli/upgrade-model.md delete mode 100644 docs/user/cli/users.md delete mode 100644 docs/user/cli/version.md delete mode 100644 docs/user/cli/whoami.md delete mode 100644 docs/user/cli_index.template diff --git a/docs/.sphinx/requirements.txt b/docs/.sphinx/requirements.txt index c1cc388eeaa2..0223be7222ea 100644 --- a/docs/.sphinx/requirements.txt +++ b/docs/.sphinx/requirements.txt @@ -1,3 +1,3 @@ -canonical-sphinx[full] @ git+https://github.com/canonical/canonical-sphinx@main +canonical-sphinx[full] sphinx-autobuild -sphinxcontrib-svg2pdfconverter[CairoSVG] \ No newline at end of file +sphinx-tabs diff --git a/docs/conf.py b/docs/conf.py index 153ae80f60a7..643eedde35d1 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -27,7 +27,7 @@ # # TODO: Update with the official name of your project or product -project = "Juju CLI and core" +project = "Juju" author = "Canonical Ltd." @@ -201,9 +201,9 @@ # - youtube-links extensions = [ - "canonical_sphinx", - "sphinxcontrib.cairosvgconverter", -] + 'canonical_sphinx', + 'sphinx_design', + ] # Excludes files or directories from processing diff --git a/docs/custom_conf.py b/docs/custom_conf.py index c2d8aaa6f89b..b26e94b35134 100644 --- a/docs/custom_conf.py +++ b/docs/custom_conf.py @@ -2,7 +2,7 @@ import subprocess import shutil -cli_dir = "user/cli/" +cli_dir = "user/reference/cli/" # Remove existing cli folder to regenerate it if os.path.exists(cli_dir): @@ -30,7 +30,7 @@ # Add the template for the index file containing the command list. if (not os.path.isfile(cli_dir + 'index.md')): - os.system('cp ' + 'user/cli_index.template ' + cli_dir + 'index.md') + os.system('cp ' + 'user/reference/cli_index.template ' + cli_dir + 'index.md') # Write the list of commands to the index file toctree. with open(cli_dir + "index.md", 'a') as index: diff --git a/docs/dev/how-to/create-new-mongo-db-collection.md b/docs/dev/how-to/create-new-mongo-db-collection.md deleted file mode 100644 index 13f2a6f2a37e..000000000000 --- a/docs/dev/how-to/create-new-mongo-db-collection.md +++ /dev/null @@ -1,164 +0,0 @@ -# Create a new MongoDB collection -Sometimes developers need to store some new entities in Juju DB. This document provides key points for adding a new -collection to MongoDB. - - -* [Define a new collection in Juju DB](#define-a-new-collection-in-juju-db) -* [Define a new entity collection structure](#define-a-new-entity-collection-structure) -* [Develop an API to manipulate collection entities](#develop-an-api-to-manipulate-collection-entities) - * [Add a new doc](#add-a-new-doc) - * [Remove a new doc](#remove-a-new-doc) - - -# Define a new collection in Juju DB - -All collections are represented in the package `state`. This package enables reading, observing, and changing the state -stored in MongoDB of a whole model managed by juju. - -A developer can define a new collection in: https://github.com/juju/juju/blob/main/state/allcollections.go - -Example of a new collection definition: - -```text -... -// ---------------------- -newEntitiesC: { - indexes: []mgo.Index{{ - Key: []string{"model-uuid", "unit-id"}, - }}, -}, -... -newEntitiesC = "newEntities" - -``` - -# Define a new entity collection structure - -Create a golang file in the state subfolder: `state/new_entites.go` - -Add state shim to interact with the Juju global state in your API: - -```text -// NewEntitiesState returns the new entities for the current state. -func (st *State) NewEntityState() *new EntityPersistence { - return &newEntityPersistence{ - st: st, - } -} -// serviceLocatorPersistence provides the persistence -// functionality for service locators. -type serviceLocatorPersistence struct { - st *State -} - -``` - -Define a logger to be able to write logs from your API: - -```text -var neLogger = logger.Child("new-entity") - -``` - -Define a `New Entity` structure: - -```text -type NewEntity struct { - st *State - doc newEntityDoc -} - -``` - -Define the document structure for the new MongoDB collection: - -```text -type newEntityDoc struct { - DocId string `bson:"_id"` - Id int `bson:"id"` - UnitId string `bson:"unit-id"` - Param1 string `bson:"param-1"` - Param2 string `bson:"param-2"` - OtherParams map[string]interface{} `bson:"other-params"` - ... -} - -``` - -# Develop an API to manipulate collection entities - -You then need to implement methods that will help you interact with new collection docs. Let’s define some simple CRUD -methods for ‘new entity’. - -## Add a new doc - -Here is an example of a way to add a new doc to a MongoDB collocation: - -```text -// AddNewEntity creates a new entity record, which ... -func (ne *newEntityPersistence) AddNewEntity(args params.AddNewEntityParams) (*NewEntity, error) { - id, err := sequenceWithMin(sp.st, "new-entity", 1) - if err != nil { - return nil, errors.Trace(err) - } - defer errors.DeferredAnnotatef(&err, "cannot add new entity %q", args.Name) - - model, err := ne.st.Model() - if err != nil { - return nil, errors.Trace(err) - } else if model.Life() != Alive { - return nil, errors.Errorf("model is no longer alive") - } - - newEntityDoc := newEntityDoc{ - DocId: fmt.Sprintf("%s.%s", args.Name, args.UnitId), - Id: id, - Param1: args.Param1, - Param2: args.Param2, - UnitId: args.UnitId, - Params: args.Params, - } - buildTxn := func(attempt int) ([]txn.Op, error) { - // If we've tried once already and failed, check that - // model may have been destroyed. - if attempt > 0 { - if err := checkModelActive(sp.st); err != nil { - return nil, errors.Trace(err) - } - return nil, errors.AlreadyExistsf("new entity name: %s unit-id: %s", args.Name, args.UnitId) - } - ops := []txn.Op{ - model.assertActiveOp(), - { - C: newEntitiesC, - Id: newEntityDoc.DocId, - Assert: txn.DocMissing, - Insert: &newEntityDoc, - }, - } - return ops, nil - } - if err = sp.st.db().Run(buildTxn); err != nil { - return nil, errors.Trace(err) - } - return &NewEntity{doc: newEntityDoc}, nil -} - -``` - -## Remove a new doc - -Here is an example of a way to remove a new doc from a MongoDB collocation: - -```text -// RemoveNewEntities removes a service locator record -func (ne *newEntitiesPersistence) RemoveNewEntity(neId string) []txn.Op { - op := txn.Op{ - C: newEntitiesC, - Id: neId, - Remove: true, - } - return []txn.Op{op} -} - -``` \ No newline at end of file diff --git a/docs/dev/how-to/create-unit-test-suite.md b/docs/dev/how-to/create-unit-test-suite.md deleted file mode 100644 index 840d73619efe..000000000000 --- a/docs/dev/how-to/create-unit-test-suite.md +++ /dev/null @@ -1,46 +0,0 @@ -# Create a unit test suite -> See also: [Unit test suite](/doc/dev/reference/testing/unit-testing/unit-test-suite.md) - -To create a new unit test suite, you can do something like: - -```go - -type ToolsSuite struct { - -testing.BaseSuite - -dataDir string - -} - -var _ = gc.Suite(&ToolsSuite{}) - -``` - -If there is no extra setup needed, then you don't need to specify any set-up or tear-down methods as the LoggingSuite -has them, and they are called by default. - -If you did want to do something, say, create a directory and save it in the dataDir, you would do something like this: - -```go - -func (t *ToolsSuite) SetUpTest(c *gc.C) { - -t.BaseSuite.SetUpTest(c) - -t.dataDir = c.MkDir() - -} - -``` - -If the test suite has multiple contained suites, please call them in the order that they are defined, and make sure -something that is composed from the BaseSuite is first. They should be torn down in the reverse order. - -Even if the code that is being tested currently has no logging or outbound network access in it, it is a good idea to -use the BaseSuite as a base: - -* it isolates the user's home directory against accidental modification -* if someone does add outbound network access later, it will be caught -* it brings in something composed of the CleanupSuite -* if someone does add logging later, it is captured and doesn't pollute the logging output \ No newline at end of file diff --git a/docs/dev/how-to/debug-bootstrap-machine-failures.md b/docs/dev/how-to/debug-bootstrap-machine-failures.md deleted file mode 100644 index df039e0437ab..000000000000 --- a/docs/dev/how-to/debug-bootstrap-machine-failures.md +++ /dev/null @@ -1,154 +0,0 @@ -# Debug bootstrap machine failures - -This guide will show you how to diagnose and fix issues with bootstrapping and starting new machines. - -Juju's bootstrapping process can be broken down into several steps: - -1. Provision resources/a machine `M` from the relevant cloud - -2. Install the Juju agent `jujud` on machine `M` - -3. Poll the newly created instance for an IP address, and attempt to connect to `M` - -4. Run the machine configuration script for `M`, which e.g. installs relevant packages - -The output of `juju bootstrap` will tell you which step you're at. If your failure is at step 1, then the issue is most -likely with your cloud provider or configuration - see the guides [here](https://juju.is/docs/olm/manage-clouds). - -Otherwise, we need to connect to the machine and look at the logs to find out what's gone wrong. - - - -* [Connect to the machine](#connect-to-the-machine) - * [Via ssh](#via-ssh) - * [Via the cloud provider](#via-the-cloud-provider) - * [LXC / LXD](#lxc--lxd) - * [Kubernetes](#kubernetes) -* [Examine the logs](#examine-the-logs) - - - -# Connect to the machine - -## Via ssh - -The easiest way to connect to the machine is via ssh. We can do this ***if*** Juju has been successfully able to connect -to your controller. In this case, you will see the line - -``` -Connected to [ip-address] -``` - -in your `juju bootstrap` output. - -A common type of failure here is when the terminal hangs on the line - -``` -Running machine configuration script... -``` - -The machine configuration should take less than 10 minutes - any longer than this is a sign that something has gone -wrong. - -Luckily, the machine is already reachable at this step, so we can directly `ssh` into it to find out what's happening. -Copy the IP address that Juju connected to above, and run - -``` -ssh ubuntu@[ip-address] -i [juju-data-dir]/ssh/juju_id_rsa -``` - -Here, `[juju-data-dir]` defaults to `~/.local/share/juju`, but if you've set the `JUJU_DATA` environment variable, it -will be equal to that instead. - -See [here](https://juju.is/docs/olm/accessing-individual-machines-with-ssh) for a more in-depth guide on using SSH to -connect to a machine. - -## Via the cloud provider - -If Juju wasn't able to connect to your machine's IP address, then `ssh` probably won't be able to either. With this type -of failure, you'll often see your terminal hang after the step - -``` -Attempting to connect to [ip-address]:[port] -``` - -In this case, we will need to go through the cloud provider to connect to the machine. The process here depends on what -cloud you're using. - -### LXC / LXD - -In the `juju bootstrap` output, you should see a line like - -``` -Launching controller instance(s) on localhost/localhost... -``` - -which will be followed by the LXD container name (in the form `juju-XXXXXX-0`). We can use the `lxc` command line tool -to get a shell inside the machine. Copy the container name, then run - -``` -lxc exec [container-name] bash -``` - -Now, we should have a shell inside the machine, and can use the steps below to search the logs. - -### Kubernetes - -In the `juju bootstrap` output, you should see a line like - -``` -Creating k8s resources for controller [namespace] -``` - -where `[namespace]` is something like `controller-foobar`. Inside this namespace, Juju will have created a pod called -`controller-0` - we want to access the `api-server` container in this pod. To do this, we use `kubectl`: - -``` -kubectl exec controller-0 -itc api-server -n [namespace] -- bash -``` - -(If using MicroK8s, call this command via `microk8s kubectl`). - -# Examine the logs - -Once we have a shell inside the machine, we can - -``` -ls /var/log -``` - -which will show you all the available logs. Which log to look at depends on the type of failure, but generally speaking, -`syslog`, `cloud-init.log` and `cloud-init-output.log` are good ones to look at. - -Some good tools for examining logs are - -``` -less [log-file] -``` - -which will let you scroll through the log file, and - -``` -tail -f [log-file] -``` - -which will track updates to the log file. - -Errors (especially fatal ones) will often be near the end of a log file. You may also have luck searching your logs for -phrases such as "error" or "fail". - - \ No newline at end of file diff --git a/docs/dev/how-to/index.md b/docs/dev/how-to/index.md deleted file mode 100644 index d30b7ec06dc8..000000000000 --- a/docs/dev/how-to/index.md +++ /dev/null @@ -1,10 +0,0 @@ -(how-to)= -# How-to guides -How-to guides for Juju developers - -```{toctree} -:titlesonly: -:glob: - -/dev/how-to/* -``` \ No newline at end of file diff --git a/docs/dev/how-to/merge-forward.md b/docs/dev/how-to/merge-forward.md deleted file mode 100644 index 87694d4f42a4..000000000000 --- a/docs/dev/how-to/merge-forward.md +++ /dev/null @@ -1,45 +0,0 @@ -# Merge forward - -Juju generally has multiple versions in concurrent development, and we keep a separate Git branch for each. Often, a bug -fix or change needs to happen in multiple versions. In this case, we target the fix to the **lowest** relevant version, -and later merge the patch forward into later versions. - -For example, for a bug that affects Juju 3.1, 3.2 and 3.3, we target the original fix to the `3.1` branch, then merge -this patch forward into `3.2`, then `3.3`, making changes as needed. - -You should make a habit of following up your patches with a forward merge, especially if they are complex changes, or -create merge conflicts. - -This document will describe how to do a forward merge. In the following example, we will consider a merge of `2.9` into -`3.1` - but you can replace these with any source and target branch. - -1. Ensure your local copies of the source and target branch are up-to-date. - ``` - git pull 2.9 - git pull 3.1 - ``` - -2. Create a new merge branch based on the target branch. We suggest giving this a descriptive name such as - `merge-SRC-TGT-YYYYMMDD`. - ``` - git checkout -b 'merge-2.9-3.1-20231231' '3.1' - ``` - -3. Merge the source branch into your new merge branch. - ``` - git merge 2.9 -m 'Merge 2.9 into 3.1' - ``` - -4. If there are no merge conflicts, the above command will merge the branches and create a merge commit. Skip to step 6. - -5. If there are merge conflicts, you will have to resolve these manually. Your IDE might have tools to assist here. - After resolving conflicts in a file, run `git add ` to add it to the index. Then, run `git merge --continue` to - finish the merge. - -5. Push your branch to GitHub and open a new PR to the target branch. In the PR description, please include a list of - the patches being merged, and list any merge conflicts you encountered. To get - the PR numbers of the patches in your merge up, use `git log - upstream/..upstream/ --first-parent - --oneline --no-decorate | sed 's~.*\(#.*\)/.*~- \1~g'` - -**Exercise**: write a Bash script to automate the above process. \ No newline at end of file diff --git a/docs/dev/how-to/write-a-unit-test.md b/docs/dev/how-to/write-a-unit-test.md deleted file mode 100644 index 2473c7e074b5..000000000000 --- a/docs/dev/how-to/write-a-unit-test.md +++ /dev/null @@ -1,156 +0,0 @@ -# Write a unit test -> See also: [Unit testing](/doc/dev/reference/testing/unit-testing/index.md) - -This document demonstrates how to write a unit test for Juju. - - - -* [Prepare for the test](#prepare-for-the-test) - * [Create `package_test.go`](#create-package_testgo) - * [Create](#create) - * [Import `gocheck`](#import-gocheck) - * [Add a unit test suite](#add-a-unit-test-suite) -* [Write the test](#write-the-test) -* [Run the test](#run-the-test) - - - -# Prepare for the test - -## Create `package_test.go` - -[note type=caution] -This step is necessary only if this file doesn't already exist. -[/note] - -Each package requires a `package_test.go` file if we wish any of our tests to run. - -Below is a standard `package_test.go` file for an example package called `magic`. We import the "testing" package from -the standard library and then the `gocheck` package as `gc`. We also create a function `Test` that will be the -entry-point into our test suites. - - - - -```go -// Copyright 20XX Canonical Ltd. -// Licensed under the AGPLv3, see LICENCE file for details. - -package magic_test - -import ( - "testing" - - gc "gopkg.in/check.v1" -) - -func Test(t *testing.T) { - gc.TestingT(t) -} -``` - -[note type=caution] -You will sometimes see `package_test.go` files which use `testing.MgoTestPackage` as their entrypoint. This is required -to run old-style `JujuConnSuite` tests, which test against a running instance of MongoDB. - -These tests are deprecated and are actively being removed. No more should be added. -[/note] - -## Create - -` - -In the code directory, for each file that you want to test (say, a source code file called `magic1.go`), create a -`_test.go` (e.g. `magic1_test.go`). - -## Import `gocheck` -> See also: [`gocheck`]( https://labix.org/gocheck) - -In `magic1_test.go`, import the `gocheck` package as `gc`: - -```go -import ( -gc "gopkg.in/check.v1" -) -``` - -[note type=information] -`gc` is the usual alias for [gocheck](https://labix.org/gocheck) across all the Juju repositories. -[/note] - -## Add a unit test suite - -> See also: [Unit test suite](/doc/dev/reference/testing/unit-testing/unit-test-suite.md) - -Also in `magic1_test.go`, add a unit test suite. - -> See more: [How to create a unit test suite](create-unit-test-suite.md) - -Once the test suite structure has been created, it needs to be registered with `gc` or the tests will not run. You can -do by passing a pointer to an instance of our suite to the `gc.Suite` function. - -```go -type magicSuite struct{} - -var _ = gc.Suite(&magicSuite{}) -``` - -# Write the test - -> See also: [Checker](/doc/dev/reference/testing/unit-testing/checker.md) - -In `magic1_test.go`, below the test suite, start adding your unit test functions. - -The process is as follows: You target some behavior (usually a function) in the code file (in our case, `magic1`). You -then write a test for it, where the test usually follows the same Given, When, Then logic. - -For example, suppose your `magic1.go` file defines a simple function called `Sum`: - -```go -func Sum(a, b int) int { -return a + b -} -``` - -Then, in your `magic1_test.go` file you can write a test for it as follows (where `gc.Equals` is -a [Checker](/doc/dev/reference/testing/unit-testing/checker.md)): - -```go -// GIVEN a equals 5 AND b equals 3 -// WHEN a and b are summed -// THEN we get 8 -func (s *magicSuite) TestSum(c *gc.C) { -a := 5 -b := 3 - -res := magic.Sum(a, b) - -c.Assert(res, gc.Equals, 8) -} -``` - -# Run the test - -Finally, to run the test, do: - -```bash -go test github.com/juju/juju/x/y/magic/ -``` - -This will run all the tests registered in the `magic` package, including the one we just wrote. - -You can also chose to run specific tests or suites, using the `-check.f` flag for gocheck - -```bash -go test github.com/juju/juju/x/y/magic/ -check.f magicSuite # run the magicSuite only -go test github.com/juju/juju/x/y/magic/ -check.f magicSuite.TestSum # run the test TestSum in magicSuite only -``` - -[note type=information] -See more here [`gocheck` > Selecting which tests to run](https://labix.org/gocheck) . -[/note] - - -> Contributors: @jack-shaw \ No newline at end of file diff --git a/docs/dev/how-to/write-an-integration-test.md b/docs/dev/how-to/write-an-integration-test.md deleted file mode 100644 index 83682c845fde..000000000000 --- a/docs/dev/how-to/write-an-integration-test.md +++ /dev/null @@ -1,98 +0,0 @@ -# Write an integration test -> See also: [Integration testing](/doc/dev/reference/testing/integration-testing/index.md) - -This document demonstrates how to write an integration test for `juju`. - -First, navigate to https://github.com/juju/juju/tree/develop/tests/suites. - -In this directory, create a subdirectory named after the integration test suite you want to use. Let's call ours -`example_integration_test_suite`. - -In your test suite directory, create a file called `task.sh`. This file typically includes a skip block, a line where -you set verbosity, a block where you check dependencies, then a bootstrapping block, a test-listing block, and a -tear-down block. An example is given below. Note: The various blocks are created using -multiple [test includes](/doc/dev/reference/testing/integration-testing/test-includes.md) (e.g., `destroy-controller`). - -```bash -test_examples() { - if [ "$(skip 'test_examples')" ]; then - echo "==> TEST SKIPPED: example tests" - return - fi - - set_verbosity - - echo "==> Checking for dependencies" - check_dependencies juju - - file="${TEST_DIR}/test-example.log" - - bootstrap "test-example" "${file}" - - # Test that need to be run are added here! - test_example - test_other - - destroy_controller "test-example" -} -``` - -Also in your test suite directory, create a `.sh` file for every integration test you want to write. For -example, we'll create one called `example_integration_test`, with contents as below. This file consists of a series of -subtests (below, `run_example1` and `run_example2`) and a main function (below, `test_example`), which is the entrypoint -to your integration test and which contains some standard logic and also runs the subtests. - -```bash -run_example1() { - # Echo out to ensure nice output to the test suite. - echo - - # The following ensures that a bootstrap juju exists - file="${TEST_DIR}/test-example1.log" - ensure "example1" "${file}" - - # Run your checks here - echo "Hello example 1!" | check "Hello example 1!" - - # Clean up! - destroy_model "example1" -} - -run_example2() { - echo - - file="${TEST_DIR}/test-example2.log" - ensure "example2" "${file}" - - echo "Hello example 2!" | check "Hello example 2!" - - destroy_model "example2" -} - -test_example() { - if [ -n "$(skip 'test_example')" ]; then - echo "==> SKIP: Asked to skip example tests" - return - fi - - ( - set_verbosity - - cd .. || exit - - run "run_example1" - run "run_example2" - ) -} -``` - -When you are done with your test file, navigate to [test folder](/tests), open the `main.sh` -file (which is the entrypoint to your integration testing overall) and add your test suite name to the -[`TEST_NAMES` variable](https://github.com/juju/juju/blob/main/tests/main.sh#L42). - -Finally, run your integration test, following the instructions in the [test folder](/tests) . -Essentially, what you need to do is as below: - -```bash -./main.sh [ []] -``` \ No newline at end of file diff --git a/docs/dev/index.md b/docs/dev/index.md index f11fcb02246e..d636339a0222 100644 --- a/docs/dev/index.md +++ b/docs/dev/index.md @@ -26,7 +26,7 @@ on [GitHub](https://github.com/juju/juju/tree/3.6/doc). -# CLI reference - -Juju supports the following commands: -```{toctree} -:titlesonly: -:glob: -actions -add-cloud -add-credential -add-k8s -add-machine -add-model -add-secret -add-secret-backend -add-space -add-ssh-key -add-storage -add-unit -add-user -agree -agreements -attach-resource -attach-storage -autoload-credentials -bind -bootstrap -cancel-task -change-user-password -charm-resources -clouds -config -constraints -consume -controller-config -controllers -create-backup -create-storage-pool -credentials -dashboard -debug-code -debug-hook -debug-hooks -debug-log -default-credential -default-region -deploy -destroy-controller -destroy-model -detach-storage -diff-bundle -disable-command -disable-user -disabled-commands -documentation -download -download-backup -enable-command -enable-destroy-controller -enable-ha -enable-user -exec -export-bundle -expose -find -find-offers -firewall-rules -grant -grant-cloud -grant-secret -help -help-tool -import-filesystem -import-ssh-key -info -integrate -kill-controller -list-actions -list-agreements -list-charm-resources -list-clouds -list-controllers -list-credentials -list-disabled-commands -list-firewall-rules -list-machines -list-models -list-offers -list-operations -list-payloads -list-regions -list-resources -list-secret-backends -list-secrets -list-spaces -list-ssh-keys -list-storage -list-storage-pools -list-subnets -list-users -login -logout -machines -migrate -model-config -model-constraints -model-default -model-defaults -model-secret-backend -models -move-to-space -offer -offers -operations -payloads -refresh -regions -register -relate -reload-spaces -remove-application -remove-cloud -remove-credential -remove-k8s -remove-machine -remove-offer -remove-relation -remove-saas -remove-secret -remove-secret-backend -remove-space -remove-ssh-key -remove-storage -remove-storage-pool -remove-unit -remove-user -rename-space -resolve -resolved -resources -resume-relation -retry-provisioning -revoke -revoke-cloud -revoke-secret -run -scale-application -scp -secret-backends -secrets -set-constraints -set-credential -set-default-credentials -set-default-region -set-firewall-rule -set-model-constraints -show-action -show-application -show-cloud -show-controller -show-credential -show-credentials -show-machine -show-model -show-offer -show-operation -show-secret -show-secret-backend -show-space -show-status-log -show-storage -show-task -show-unit -show-user -spaces -ssh -ssh-keys -status -storage -storage-pools -subnets -suspend-relation -switch -sync-agent-binary -trust -unexpose -unregister -update-cloud -update-credential -update-credentials -update-k8s -update-public-clouds -update-secret -update-secret-backend -update-storage-pool -upgrade-controller -upgrade-model -users -version -whoami -``` \ No newline at end of file diff --git a/docs/user/cli/info.md b/docs/user/cli/info.md deleted file mode 100644 index 967d7a2ec71a..000000000000 --- a/docs/user/cli/info.md +++ /dev/null @@ -1,35 +0,0 @@ -(info.md)= -# `info` -> See also: [find](#find), [download](#download) - -## Summary -Displays detailed information about CharmHub charms. - -## Usage -```juju info [options] [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--arch` | all | specify an arch <all|amd64|arm64|ppc64el|riscv64|s390x> | -| `--base` | | specify a base | -| `--channel` | | specify a channel to use instead of the default release | -| `--charmhub-url` | https://api.charmhub.io | specify the Charmhub URL for querying the store | -| `--config` | false | display config for this charm | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--unicode` | auto | display output using unicode <auto|never|always> | - -## Examples - - juju info postgresql - - -## Details - -The charm can be specified by name or by path. - -Channels displayed are supported by any base. -To see channels supported for only a specific base, use the --base flag. ---base can be specified using the OS name and the version of the OS, -separated by @. For example, --base ubuntu@22.04. \ No newline at end of file diff --git a/docs/user/cli/integrate.md b/docs/user/cli/integrate.md deleted file mode 100644 index 17b86acdd131..000000000000 --- a/docs/user/cli/integrate.md +++ /dev/null @@ -1,166 +0,0 @@ -(integrate.md)= -# `integrate` -> See also: [consume](#consume), [find-offers](#find-offers), [set-firewall-rule](#set-firewall-rule), [suspend-relation](#suspend-relation) - -## Summary -Integrate two applications. - -## Usage -```juju integrate [options] [:] [:]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--via` | | for cross model integrations, specify the egress subnets for outbound traffic | - -## Examples - -Integrate wordpress and percona-cluster, asking Juju to resolve - the endpoint names. Expands to "wordpress:db" (with the requires role) and - "percona-cluster:server" (with the provides role). - - juju integrate wordpress percona-cluster - -Integrate wordpress and postgresql, using an explicit -endpoint name. - - juju integrate wordpress postgresql:db - -Integrate an etcd instance within the current model to centrally managed -EasyRSA Certificate Authority hosted in the "secrets" model. - - juju integrate etcd secrets.easyrsa - -Integrate a wordpress application with a mysql application hosted within the -"prod" model, using the "automation" user. Facilitate firewall management -by specifying the routes used for integration data. - - juju integrate wordpress automation/prod.mysql --via 192.168.0.0/16,10.0.0.0/8 - - -## Details - -Integrate two applications. Integrated applications communicate over a common -interface provided by the Juju controller that enables units to share information. -This topology allows units to share data, without needing direct connectivity -between units is restricted by firewall rules. Charms define the logic for -transferring and interpreting integration data. - -The most common use of 'juju integrate' specifies two applications that co-exist -within the same model: - - juju integrate - -Occasionally, more explicit syntax is required. Juju is able to integrate -units that span models, controllers and clouds, as described below. - - -Integrating applications in the same model - -The most common case specifies two applications, adding specific endpoint -name(s) when required. - - juju integrate [:] [:] - -The role and endpoint names are described by charms' metadata.yaml file. - -The order does not matter, however each side must implement complementary roles. -One side implements the "provides" role and the other implements the "requires" -role. Juju can always infer the role that each side is implementing, so specifying -them is not necessary as command-line arguments. - -<application> is the name of an application that has already been added to the -model. The Applications section of 'juju status' provides a list of current -applications. - -<endpoint> is the name of an endpoint defined within the metadata.yaml -of the charm for <application>. Valid endpoint names are defined within the -"provides:" and "requires:" section of that file. Juju will request that you -specify the <endpoint> if there is more than one possible integration between -the two applications. - - -Subordinate applications - -Subordinate applications are designed to be deployed alongside a primary -application. They must define a container scoped endpoint. When that endpoint -is related to a primary application, wherever a unit of the primary application -is deployed, a corresponding unit of the subordinate application will also be -deployed. Integration with the primary application has the same syntax as -integration any two applications within the same model. - - -Peer integrations - -Integrations within an application between units (known as "peer integrations") do -not need to be added manually. They are created when the 'juju add-unit' and -'juju scale-application' commands are executed. - - -Cross-model integrations - -Applications can be integrated, even when they are deployed to different models. -Those models may be managed by different controllers and/or be hosted on -different clouds. This functionality is known as "cross-model integration" or CMI. - - -Cross-model integrations: different model on the same controller - -Integrating applications in models managed by the same controller -is very similar to adding an integration between applications in the same model: - - juju integrate [:] .[:] - -<model> is the name of the model outside of the current context. This enables the -Juju controller to bridge two models. You can list the currently available -models with 'juju models'. - -To integrate models outside of the current context, add the '-m <model>' option: - - juju integrate -m [:] \ - .[:] - - -Cross-model integrations: different controllers - -Applications can be integrated with a remote application via an "offer URL" that has -been generated by the 'juju offer' command. The syntax for adding a cross-model -integration is similar to adding a local integration: - - juju integrate [:] - -<offer-endpoint> describes the remote application, from the point of view of the -local one. An <offer-endpoint> takes one of two forms: - - - [:] - -<offer-alias> is an alias that has been defined by the 'juju consume' command. -Use the 'juju find-offers' command to list aliases. - -<offer-url> is a path to enable Juju to resolve communication between -controllers and the models they control. - - [[:]/]. - -<controller> is the name of a controller. The 'juju controllers' command -provides a list of controllers. - -<user> is the user account of the model's owner. - - -Cross-model integration: network management - -When the consuming side (the local application) is behind a firewall and/or -NAT is used for outbound traffic, it is possible to use the '--via' option to -inform the offering side (the remote application) the source of traffic to -enable network ports to be opened. - - ... --via [,[, ...]] - - -Further reading: - - https://juju.is/docs/juju/integration - https://juju.is/docs/juju/cross-model-integration \ No newline at end of file diff --git a/docs/user/cli/kill-controller.md b/docs/user/cli/kill-controller.md deleted file mode 100644 index 8e8551149a0b..000000000000 --- a/docs/user/cli/kill-controller.md +++ /dev/null @@ -1,33 +0,0 @@ -(kill-controller.md)= -# `kill-controller` -> See also: [destroy-controller](#destroy-controller), [unregister](#unregister) - -## Summary -Forcibly terminate all machines and other associated resources for a Juju controller. - -## Usage -```juju kill-controller [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--no-prompt` | false | Do not ask for confirmation | -| `-t`, `--timeout` | 5m0s | Timeout before direct destruction | - -## Details - -Forcibly destroy the specified controller. If the API server is accessible, -this command will attempt to destroy the controller model and all models -and their resources. - -If the API server is unreachable, the machines of the controller model will be -destroyed through the cloud provisioner. If there are additional machines, -including machines within models, these machines will not be destroyed -and will never be reconnected to the Juju controller being destroyed. - -The normal process of killing the controller will involve watching the -models as they are brought down in a controlled manner. If for some reason the -models do not stop cleanly, there is a default five minute timeout. If no change -in the model state occurs for the duration of this timeout, the command will -stop watching and destroy the models directly through the cloud provider. \ No newline at end of file diff --git a/docs/user/cli/list-actions.md b/docs/user/cli/list-actions.md deleted file mode 100644 index 145425d78733..000000000000 --- a/docs/user/cli/list-actions.md +++ /dev/null @@ -1,31 +0,0 @@ -(list-actions.md)= -# `list-actions` -> See also: [run](#run), [show-action](#show-action) -**Alias:** actions - -## Summary -List actions defined for an application. - -## Usage -```juju list-actions [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | default | Specify output format (default|json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--schema` | false | Display the full action schema | - -## Examples - - juju actions postgresql - juju actions postgresql --format yaml - juju actions postgresql --schema - - -## Details - -List the actions available to run on the target application, with a short -description. To show the full schema for the actions, use --schema. \ No newline at end of file diff --git a/docs/user/cli/list-agreements.md b/docs/user/cli/list-agreements.md deleted file mode 100644 index ec6e3ea57e4e..000000000000 --- a/docs/user/cli/list-agreements.md +++ /dev/null @@ -1,28 +0,0 @@ -(list-agreements.md)= -# `list-agreements` -> See also: [agree](#agree) -**Alias:** agreements - -## Summary -List user's agreements. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju agreements - - -## Details - -Charms may require a user to accept its terms in order for it to be deployed. -In other words, some applications may only be installed if a user agrees to -accept some terms defined by the charm. - -This command lists the terms that the user has agreed to. \ No newline at end of file diff --git a/docs/user/cli/list-charm-resources.md b/docs/user/cli/list-charm-resources.md deleted file mode 100644 index 0a40e0c612e1..000000000000 --- a/docs/user/cli/list-charm-resources.md +++ /dev/null @@ -1,40 +0,0 @@ -(list-charm-resources.md)= -# `list-charm-resources` -> See also: [resources](#resources), [attach-resource](#attach-resource) -**Alias:** charm-resources - -## Summary -Display the resources for a charm in a repository. - -## Usage -```juju list-charm-resources [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--channel` | stable | the channel of the charm | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - -Display charm resources for the postgresql charm: - - juju charm-resources postgresql - -Display charm resources for mycharm in the 2.0/edge channel: - - juju charm-resources mycharm --channel 2.0/edge - - - -## Details - -This command will report the resources and the current revision of each -resource for a charm in a repository. - -Channel can be specified with --channel. If not provided, stable is used. - -Where a channel is not supplied, stable is used. \ No newline at end of file diff --git a/docs/user/cli/list-clouds.md b/docs/user/cli/list-clouds.md deleted file mode 100644 index f2e5b91016fa..000000000000 --- a/docs/user/cli/list-clouds.md +++ /dev/null @@ -1,56 +0,0 @@ -(list-clouds.md)= -# `list-clouds` -> See also: [add-cloud](#add-cloud), [credentials](#credentials), [controllers](#controllers), [regions](#regions), [default-credential](#default-credential), [default-region](#default-region), [show-cloud](#show-cloud), [update-cloud](#update-cloud), [update-public-clouds](#update-public-clouds) -**Alias:** clouds - -## Summary -Lists all clouds available to Juju. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--all` | false | Show all available clouds | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju clouds - juju clouds --format yaml - juju clouds --controller mycontroller - juju clouds --controller mycontroller --client - juju clouds --client - - -## Details -Display the fundamental properties for each cloud known to Juju: -name, number of regions, number of registered credentials, default region, type, etc... - -Clouds known to this client are the clouds known to Juju out of the box -along with any which have been added with `add-cloud --client`. These clouds can be -used to create a controller and can be displayed using --client option. - -Clouds may be listed that are co-hosted with the Juju client. When the LXD hypervisor -is detected, the 'localhost' cloud is made available. When a microk8s installation is -detected, the 'microk8s' cloud is displayed. - -Use --controller option to list clouds from a controller. -Use --client option to list clouds from this client. -This command's default output format is 'tabular'. Use 'json' and 'yaml' for -machine-readable output. - -Cloud metadata sometimes changes, e.g. providers add regions. Use the `update-public-clouds` -command to update public clouds or `update-cloud` to update other clouds. - -Use the `regions` command to list a cloud's regions. - -Use the `show-cloud` command to get more detail, such as regions and endpoints. - -Further reading: - - Documentation: https://juju.is/docs/olm/manage-clouds - microk8s: https://microk8s.io/docs - LXD hypervisor: https://documentation.ubuntu.com/lxd \ No newline at end of file diff --git a/docs/user/cli/list-controllers.md b/docs/user/cli/list-controllers.md deleted file mode 100644 index 3f38cfba3eee..000000000000 --- a/docs/user/cli/list-controllers.md +++ /dev/null @@ -1,26 +0,0 @@ -(list-controllers.md)= -# `list-controllers` -> See also: [models](#models), [show-controller](#show-controller) -**Alias:** controllers - -## Summary -Lists all controllers. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--refresh` | false | Connect to each controller to download the latest details | - -## Examples - - juju controllers - juju controllers --format json --output ~/tmp/controllers.json - - - -## Details -The output format may be selected with the '--format' option. In the -default tabular output, the current controller is marked with an asterisk. \ No newline at end of file diff --git a/docs/user/cli/list-credentials.md b/docs/user/cli/list-credentials.md deleted file mode 100644 index 0f1361354dc9..000000000000 --- a/docs/user/cli/list-credentials.md +++ /dev/null @@ -1,75 +0,0 @@ -(list-credentials.md)= -# `list-credentials` -> See also: [add-credential](#add-credential), [update-credential](#update-credential), [remove-credential](#remove-credential), [default-credential](#default-credential), [autoload-credentials](#autoload-credentials), [show-credential](#show-credential) -**Alias:** credentials - -## Summary -Lists Juju credentials for a cloud. - -## Usage -```juju list-credentials [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--show-secrets` | false | Show secrets, applicable to yaml or json formats only | - -## Examples - - juju credentials - juju credentials aws - juju credentials aws --client - juju credentials --format yaml --show-secrets - juju credentials --controller mycontroller - juju credentials --controller mycontroller --client - - -## Details -This command list credentials from this client and credentials -from a controller. - -Locally stored credentials are client specific and -are used with `juju bootstrap` -and `juju add-model`. It's paramount to understand that -different client devices may have different locally stored credentials -for the same user. - -Remotely stored credentials or controller stored credentials are -stored on the controller. - -An arbitrary "credential name" is used to represent credentials, which are -added either via `juju add-credential` or `juju autoload-credentials`. -Note that there can be multiple sets of credentials and, thus, multiple -names. - -Actual authentication material is exposed with the '--show-secrets' -option in json or yaml formats. Secrets are not shown in tabular format. - -A controller, and subsequently created models, can be created with a -different set of credentials but any action taken within the model (e.g.: -`juju deploy`; `juju add-unit`) applies the credential used -to create that model. This model credential is stored on the controller. - -A credential for 'controller' model is determined at bootstrap time and -will be stored on the controller. It is considered to be controller default. - -Recall that when a controller is created a 'default' model is also -created. This model will use the controller default credential. -To see details of your credentials use "juju show-credential" command. - -When adding a new model, Juju will reuse the controller default credential. -To add a model that uses a different credential, specify a credential -from this client using --credential option. See `juju help add-model` -for more information. - -Credentials denoted with an asterisk '*' are currently set as the user default -for a given cloud. - -Use --controller option to list credentials from a controller. - -Use --client option to list credentials known locally on this client. \ No newline at end of file diff --git a/docs/user/cli/list-disabled-commands.md b/docs/user/cli/list-disabled-commands.md deleted file mode 100644 index 27daf56769e1..000000000000 --- a/docs/user/cli/list-disabled-commands.md +++ /dev/null @@ -1,79 +0,0 @@ -(list-disabled-commands.md)= -# `list-disabled-commands` -> See also: [disable-command](#disable-command), [enable-command](#enable-command) -**Alias:** disabled-commands - -## Summary -List disabled commands. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--all` | false | Lists for all models (administrative users only) | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Details - -List disabled commands for the model. - -Commands that can be disabled are grouped based on logical operations as follows: - -"destroy-model" prevents: - destroy-controller - destroy-model - -"remove-object" prevents: - destroy-controller - destroy-model - detach-storage - remove-application - remove-machine - remove-relation - remove-saas - remove-storage - remove-unit - -"all" prevents: - add-machine - integrate - add-unit - add-ssh-key - add-user - attach-resource - attach-storage - change-user-password - config - consume - deploy - destroy-controller - destroy-model - disable-user - enable-ha - enable-user - expose - import-filesystem - import-ssh-key - model-defaults - model-config - reload-spaces - remove-application - remove-machine - remove-relation - remove-ssh-key - remove-unit - remove-user - resolved - retry-provisioning - run - scale-application - set-application-base - set-credential - set-constraints - sync-agents - unexpose - refresh - upgrade-model - \ No newline at end of file diff --git a/docs/user/cli/list-firewall-rules.md b/docs/user/cli/list-firewall-rules.md deleted file mode 100644 index 5eb7875736f1..000000000000 --- a/docs/user/cli/list-firewall-rules.md +++ /dev/null @@ -1,29 +0,0 @@ -(list-firewall-rules.md)= -# `list-firewall-rules` -> See also: [set-firewall-rule](#set-firewall-rule) -**Alias:** firewall-rules - -## Summary -Prints the firewall rules. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju firewall-rules - - - -## Details - -Lists the firewall rules which control ingress to well known services -within a Juju model. - -DEPRECATION WARNING: Firewall rules have been moved to model-config settings "ssh-allow" and -"saas-ingress-allow". This command is deprecated in favour of -reading/writing directly to these settings. \ No newline at end of file diff --git a/docs/user/cli/list-machines.md b/docs/user/cli/list-machines.md deleted file mode 100644 index 7fca5b44078d..000000000000 --- a/docs/user/cli/list-machines.md +++ /dev/null @@ -1,28 +0,0 @@ -(list-machines.md)= -# `list-machines` -> See also: [status](#status) -**Alias:** machines - -## Summary -Lists machines in a model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--color` | false | Force use of ANSI color codes | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--utc` | false | Display time as UTC in RFC3339 format | - -## Examples - - juju machines - - -## Details - -By default, the tabular format is used. -The following sections are included: ID, STATE, DNS, INS-ID, SERIES, AZ -Note: AZ above is the cloud region's availability zone. \ No newline at end of file diff --git a/docs/user/cli/list-models.md b/docs/user/cli/list-models.md deleted file mode 100644 index f8db5b336601..000000000000 --- a/docs/user/cli/list-models.md +++ /dev/null @@ -1,32 +0,0 @@ -(list-models.md)= -# `list-models` -> See also: [add-model](#add-model) -**Alias:** models - -## Summary -Lists models a user can access on a controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--all` | false | Lists all models, regardless of user accessibility (administrative users only) | -| `-c`, `--controller` | | Controller to operate in | -| `--exact-time` | false | Use full timestamps | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--user` | | The user to list models for (administrative users only) | -| `--uuid` | false | Display UUID for models | - -## Examples - - juju models - juju models --user bob - - -## Details - -The models listed here are either models you have created yourself, or -models which have been shared with you. Default values for user and -controller are, respectively, the current user and the current controller. -The active model is denoted by an asterisk. \ No newline at end of file diff --git a/docs/user/cli/list-offers.md b/docs/user/cli/list-offers.md deleted file mode 100644 index 7941106f543e..000000000000 --- a/docs/user/cli/list-offers.md +++ /dev/null @@ -1,54 +0,0 @@ -(list-offers.md)= -# `list-offers` -> See also: [find-offers](#find-offers), [show-offer](#show-offer) -**Alias:** offers - -## Summary -Lists shared endpoints. - -## Usage -```juju list-offers [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--active-only` | false | only return results where the offer is in use | -| `--allowed-consumer` | | return results where the user is allowed to consume the offer | -| `--application` | | return results matching the application | -| `--connected-user` | | return results where the user has a connection to the offer | -| `--format` | tabular | Specify output format (json|summary|tabular|yaml) | -| `--interface` | | return results matching the interface name | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju offers - juju offers -m model - juju offers --interface db2 - juju offers --application mysql - juju offers --connected-user fred - juju offers --allowed-consumer mary - juju offers hosted-mysql - juju offers hosted-mysql --active-only - - -## Details - -List information about applications' endpoints that have been shared and who is connected. - -The default tabular output shows each user connected (relating to) the offer, and the -relation id of the relation. - -The summary output shows one row per offer, with a count of active/total relations. - -The YAML output shows additional information about the source of connections, including -the source model UUID. - -The output can be filtered by: - - interface: the interface name of the endpoint - - application: the name of the offered application - - connected user: the name of a user who has a relation to the offer - - allowed consumer: the name of a user allowed to consume the offer - - active only: only show offers which are in use (are related to) \ No newline at end of file diff --git a/docs/user/cli/list-operations.md b/docs/user/cli/list-operations.md deleted file mode 100644 index 71c32290e0ea..000000000000 --- a/docs/user/cli/list-operations.md +++ /dev/null @@ -1,47 +0,0 @@ -(list-operations.md)= -# `list-operations` -> See also: [run](#run), [show-operation](#show-operation), [show-task](#show-task) -**Alias:** operations - -## Summary -Lists pending, running, or completed operations for specified application, units, machines, or all. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--actions` | | Comma separated list of actions names to filter on | -| `--apps`, `--applications` | | Comma separated list of applications to filter on | -| `--format` | plain | Specify output format (json|plain|yaml) | -| `--limit` | 0 | The maximum number of operations to return | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--machines` | | Comma separated list of machines to filter on | -| `-o`, `--output` | | Specify an output file | -| `--offset` | 0 | Return operations from offset onwards | -| `--status` | | Comma separated list of operation status values to filter on | -| `--units` | | Comma separated list of units to filter on | -| `--utc` | false | Show times in UTC | - -## Examples - - juju operations - juju operations --format yaml - juju operations --actions juju-exec - juju operations --actions backup,restore - juju operations --apps mysql,mediawiki - juju operations --units mysql/0,mediawiki/1 - juju operations --machines 0,1 - juju operations --status pending,completed - juju operations --apps mysql --units mediawiki/0 --status running --actions backup - - - -## Details - -List the operations with the specified query criteria. -When an application is specified, all units from that application are relevant. - -When run without any arguments, operations corresponding to actions for all -application units are returned. -To see operations corresponding to juju run tasks, specify an action name -"juju-exec" and/or one or more machines. \ No newline at end of file diff --git a/docs/user/cli/list-payloads.md b/docs/user/cli/list-payloads.md deleted file mode 100644 index b2a8239fdf21..000000000000 --- a/docs/user/cli/list-payloads.md +++ /dev/null @@ -1,33 +0,0 @@ -(list-payloads.md)= -# `list-payloads` -**Alias:** payloads - -## Summary -Display status information about known payloads. - -## Usage -```juju list-payloads [options] [pattern ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Details - -This command will report on the runtime state of defined payloads. - -When one or more pattern is given, Juju will limit the results to only -those payloads which match *any* of the provided patterns. Each pattern -will be checked against the following info in Juju: - -- unit name -- machine id -- payload type -- payload class -- payload id -- payload tag -- payload status \ No newline at end of file diff --git a/docs/user/cli/list-regions.md b/docs/user/cli/list-regions.md deleted file mode 100644 index ec5606e15af4..000000000000 --- a/docs/user/cli/list-regions.md +++ /dev/null @@ -1,35 +0,0 @@ -(list-regions.md)= -# `list-regions` -> See also: [add-cloud](#add-cloud), [clouds](#clouds), [show-cloud](#show-cloud), [update-cloud](#update-cloud), [update-public-clouds](#update-public-clouds) -**Alias:** regions - -## Summary -Lists regions for a given cloud. - -## Usage -```juju list-regions [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju regions aws - juju regions aws --controller mycontroller - juju regions aws --client - juju regions aws --client --controller mycontroller - - -## Details - -List regions for a given cloud. - -Use --controller option to list regions from the cloud from a controller. - -Use --client option to list regions known locally on this client. \ No newline at end of file diff --git a/docs/user/cli/list-resources.md b/docs/user/cli/list-resources.md deleted file mode 100644 index 943bd36449b3..000000000000 --- a/docs/user/cli/list-resources.md +++ /dev/null @@ -1,40 +0,0 @@ -(list-resources.md)= -# `list-resources` -> See also: [attach-resource](#attach-resource), [charm-resources](#charm-resources) -**Alias:** resources - -## Summary -Show the resources for an application or unit. - -## Usage -```juju list-resources [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--details` | false | show detailed information about resources used by each unit. | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - -To list resources for an application: - - juju resources mysql - -To list resources for a unit: - - juju resources mysql/0 - -To show detailed information about resources used by a unit: - - juju resources mysql/0 --details - - -## Details - -This command shows the resources required by and those in use by an existing -application or unit in your model. When run for an application, it will also show any -updates available for resources from a store. \ No newline at end of file diff --git a/docs/user/cli/list-secret-backends.md b/docs/user/cli/list-secret-backends.md deleted file mode 100644 index cc06c3ee3018..000000000000 --- a/docs/user/cli/list-secret-backends.md +++ /dev/null @@ -1,25 +0,0 @@ -(list-secret-backends.md)= -# `list-secret-backends` -> See also: [add-secret-backend](#add-secret-backend), [remove-secret-backend](#remove-secret-backend), [show-secret-backend](#show-secret-backend), [update-secret-backend](#update-secret-backend) -**Alias:** secret-backends - -## Summary -Lists secret backends available in the controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-c`, `--controller` | | Controller to operate in | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--reveal` | false | Include sensitive backend config content | - -## Examples - - juju secret-backends - juju secret-backends --format yaml - - -## Details - -Displays the secret backends available for storing secret content. \ No newline at end of file diff --git a/docs/user/cli/list-secrets.md b/docs/user/cli/list-secrets.md deleted file mode 100644 index 20462eefa07b..000000000000 --- a/docs/user/cli/list-secrets.md +++ /dev/null @@ -1,25 +0,0 @@ -(list-secrets.md)= -# `list-secrets` -> See also: [add-secret](#add-secret), [remove-secret](#remove-secret), [show-secret](#show-secret), [update-secret](#update-secret) -**Alias:** secrets - -## Summary -Lists secrets available in the model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--owner` | | Include secrets for the specified owner | - -## Examples - - juju secrets - juju secrets --format yaml - - -## Details - -Displays the secrets available for charms to use if granted access. \ No newline at end of file diff --git a/docs/user/cli/list-spaces.md b/docs/user/cli/list-spaces.md deleted file mode 100644 index e0276667c571..000000000000 --- a/docs/user/cli/list-spaces.md +++ /dev/null @@ -1,35 +0,0 @@ -(list-spaces.md)= -# `list-spaces` -> See also: [add-space](#add-space), [reload-spaces](#reload-spaces) -**Alias:** spaces - -## Summary -List known spaces, including associated subnets. - -## Usage -```juju list-spaces [options] [--short] [--format yaml|json] [--output ]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--short` | false | only display spaces. | - -## Examples - -List spaces and their subnets: - - juju spaces - -List spaces: - - juju spaces --short - - -## Details -Displays all defined spaces. By default both spaces and their subnets are displayed. -Supplying the --short option will list just the space names. -The --output argument allows the command's output to be redirected to a file. \ No newline at end of file diff --git a/docs/user/cli/list-ssh-keys.md b/docs/user/cli/list-ssh-keys.md deleted file mode 100644 index eda9f89b45d2..000000000000 --- a/docs/user/cli/list-ssh-keys.md +++ /dev/null @@ -1,32 +0,0 @@ -(list-ssh-keys.md)= -# `list-ssh-keys` -> See also: [add-ssh-key](#add-ssh-key), [remove-ssh-key](#remove-ssh-key) -**Alias:** ssh-keys - -## Summary -Lists the currently known SSH keys for the current (or specified) model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--full` | false | Show full key instead of just the fingerprint | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju ssh-keys - -To examine the full key, use the '--full' option: - - juju ssh-keys -m jujutest --full - - -## Details -Juju maintains a per-model cache of SSH keys which it copies to each newly -created unit. -This command will display a list of all the keys currently used by Juju in -the current model (or the model specified, if the '-m' option is used). -By default a minimal list is returned, showing only the fingerprint of -each key and its text identifier. By using the '--full' option, the entire -key may be displayed. \ No newline at end of file diff --git a/docs/user/cli/list-storage-pools.md b/docs/user/cli/list-storage-pools.md deleted file mode 100644 index d6c754c4825c..000000000000 --- a/docs/user/cli/list-storage-pools.md +++ /dev/null @@ -1,45 +0,0 @@ -(list-storage-pools.md)= -# `list-storage-pools` -> See also: [create-storage-pool](#create-storage-pool), [remove-storage-pool](#remove-storage-pool) -**Alias:** storage-pools - -## Summary -List storage pools. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--name` | | Only show pools with these names | -| `-o`, `--output` | | Specify an output file | -| `--provider` | | Only show pools of these provider types | - -## Examples - -List all storage pools: - - juju storage-pools - -List only pools of type kubernetes, azure, ebs: - - juju storage-pools --provider kubernetes,azure,ebs - -List only pools named pool1 and pool2: - - juju storage-pools --name pool1,pool2 - - -## Details - -The user can filter on pool type, name. - -If no filter is specified, all current pools are listed. -If at least 1 name and type is specified, only pools that match both a name -AND a type from criteria are listed. -If only names are specified, only mentioned pools will be listed. -If only types are specified, all pools of the specified types will be listed. - -Both pool types and names must be valid. -Valid pool types are pool types that are registered for Juju model. \ No newline at end of file diff --git a/docs/user/cli/list-storage.md b/docs/user/cli/list-storage.md deleted file mode 100644 index e6f89a4d78d7..000000000000 --- a/docs/user/cli/list-storage.md +++ /dev/null @@ -1,39 +0,0 @@ -(list-storage.md)= -# `list-storage` -> See also: [show-storage](#show-storage), [add-storage](#add-storage), [remove-storage](#remove-storage) -**Alias:** storage - -## Summary -Lists storage details. - -## Usage -```juju list-storage [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--filesystem` | false | List filesystem storage(deprecated) | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--volume` | false | List volume storage(deprecated) | - -## Examples - -List all storage: - - juju storage - -List only filesystem storage: - - juju storage --filesystem - -List only volume storage: - - juju storage --volume - - -## Details - -List information about storage. \ No newline at end of file diff --git a/docs/user/cli/list-subnets.md b/docs/user/cli/list-subnets.md deleted file mode 100644 index eacc7f158b0d..000000000000 --- a/docs/user/cli/list-subnets.md +++ /dev/null @@ -1,44 +0,0 @@ -(list-subnets.md)= -# `list-subnets` -**Alias:** subnets - -## Summary -List subnets known to Juju. - -## Usage -```juju list-subnets [options] [--space ] [--zone ] [--format yaml|json] [--output ]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--space` | | Filter results by space name | -| `--zone` | | Filter results by zone name | - -## Examples - -To list all subnets known to Juju: - - juju subnets - -To list subnets associated with a specific network space: - - juju subnets --space my-space - -To list subnets associated with a specific availability zone: - - juju subnets --zone my-zone - - -## Details -Displays a list of all subnets known to Juju. Results can be filtered -using the optional --space and/or --zone arguments to only display -subnets associated with a given network space and/or availability zone. - -Like with other Juju commands, the output and its format can be changed -using the --format and --output (or -o) optional arguments. Supported -output formats include "yaml" (default) and "json". To redirect the -output to a file, use --output. \ No newline at end of file diff --git a/docs/user/cli/list-users.md b/docs/user/cli/list-users.md deleted file mode 100644 index 48b7d67c1bdc..000000000000 --- a/docs/user/cli/list-users.md +++ /dev/null @@ -1,38 +0,0 @@ -(list-users.md)= -# `list-users` -> See also: [add-user](#add-user), [register](#register), [show-user](#show-user), [disable-user](#disable-user), [enable-user](#enable-user) -**Alias:** users - -## Summary -Lists Juju users allowed to connect to a controller or model. - -## Usage -```juju list-users [options] [model-name]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--all` | false | Include disabled users (on controller only) | -| `-c`, `--controller` | | Controller to operate in | -| `--exact-time` | false | Use full timestamp for connection times | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - -Print the users relevant to the current controller: - - juju users - -Print the users relevant to the controller "another": - - juju users -c another - -Print the users relevant to the model "mymodel": - - juju users mymodel - - -## Details -When used without a model name argument, users relevant to a controller are printed. -When used with a model name, users relevant to the specified model are printed. \ No newline at end of file diff --git a/docs/user/cli/login.md b/docs/user/cli/login.md deleted file mode 100644 index 2f6c39895ccd..000000000000 --- a/docs/user/cli/login.md +++ /dev/null @@ -1,56 +0,0 @@ -(login.md)= -# `login` -> See also: [disable-user](#disable-user), [enable-user](#enable-user), [logout](#logout), [register](#register), [unregister](#unregister) - -## Summary -Logs a user in to a controller. - -## Usage -```juju login [options] [controller host name or alias]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--no-prompt` | false | don't prompt for password just read a line from stdin | -| `--trust` | false | automatically trust controller CA certificate | -| `-u`, `--user` | | log in as this local user | - -## Examples - - juju login somepubliccontroller - juju login jimm.jujucharms.com - juju login -u bob - - -## Details - -By default, the juju login command logs the user into a controller. -The argument to the command can be a public controller -host name or alias (see Aliases below). - -If no argument is provided, the controller specified with -the -c argument will be used, or the current controller -if that's not provided. - -On success, the current controller is switched to the logged-in -controller. - -If the user is already logged in, the juju login command does nothing -except verify that fact. - -If the -u option is provided, the juju login command will attempt to log -into the controller as that user. - -After login, a token ("macaroon") will become active. It has an expiration -time of 24 hours. Upon expiration, no further Juju commands can be issued -and the user will be prompted to log in again. - -Aliases -------- - -Public controller aliases are provided by a directory service -that is queried to find the host name for a given alias. -The URL for the directory service may be configured -by setting the environment variable JUJU_DIRECTORY. \ No newline at end of file diff --git a/docs/user/cli/logout.md b/docs/user/cli/logout.md deleted file mode 100644 index 9aaad6f1a530..000000000000 --- a/docs/user/cli/logout.md +++ /dev/null @@ -1,33 +0,0 @@ -(logout.md)= -# `logout` -> See also: [change-user-password](#change-user-password), [login](#login) - -## Summary -Logs a Juju user out of a controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--force` | false | Force logout when a locally recorded password is detected | - -## Examples - - juju logout - - -## Details - -If another client has logged in as the same user, they will remain logged -in. This command only affects the local client. - -The command will fail if the user has not yet set a password -(`juju change-user-password`). This scenario is only possible after -`juju bootstrap`since `juju register` sets a password. The -failing behaviour can be overridden with the '--force' option. - -If the same user is logged in with another client system, that user session -will not be affected by this command; it only affects the local client. - -By default, the controller is the current controller. \ No newline at end of file diff --git a/docs/user/cli/machines.md b/docs/user/cli/machines.md deleted file mode 100644 index 0c1eb4972c3f..000000000000 --- a/docs/user/cli/machines.md +++ /dev/null @@ -1,27 +0,0 @@ -(machines.md)= -# `machines` -> See also: [status](#status) - -## Summary -Lists machines in a model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--color` | false | Force use of ANSI color codes | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--utc` | false | Display time as UTC in RFC3339 format | - -## Examples - - juju machines - - -## Details - -By default, the tabular format is used. -The following sections are included: ID, STATE, DNS, INS-ID, SERIES, AZ -Note: AZ above is the cloud region's availability zone. \ No newline at end of file diff --git a/docs/user/cli/migrate.md b/docs/user/cli/migrate.md deleted file mode 100644 index 93438332c311..000000000000 --- a/docs/user/cli/migrate.md +++ /dev/null @@ -1,37 +0,0 @@ -(migrate.md)= -# `migrate` -> See also: [login](#login), [controllers](#controllers), [status](#status) - -## Summary -Migrate a workload model to another controller. - -## Usage -```juju migrate [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | - -## Details - -The 'migrate' command begins the migration of a workload model from -its current controller to a new controller. This is useful for load -balancing when a controller is too busy, or as a way to upgrade a -model's controller to a newer Juju version. - -In order to start a migration, the target controller must be in the -juju client's local configuration cache. See the 'login' command -for details of how to do this. - -The 'migrate' command only starts a model migration - it does not wait -for its completion. The progress of a migration can be tracked using -the 'status' command and by consulting the logs. - -Once the migration is complete, the model's machine and unit agents -will be connected to the new controller. The model will no longer be -available at the source controller. - -If the migration fails for some reason, the model is returned to its -original state where it is managed by the original -controller. \ No newline at end of file diff --git a/docs/user/cli/model-config.md b/docs/user/cli/model-config.md deleted file mode 100644 index 623256dd16a2..000000000000 --- a/docs/user/cli/model-config.md +++ /dev/null @@ -1,335 +0,0 @@ -(model-config.md)= -# `model-config` -> See also: [models](#models), [model-defaults](#model-defaults), [show-cloud](#show-cloud), [controller-config](#controller-config) - -## Summary -Displays or sets configuration values on a model. - -## Usage -```juju model-config [options] [[=] ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--color` | false | Use ANSI color codes in output | -| `--file` | | path to yaml-formatted configuration file | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `--ignore-read-only-fields` | false | Ignore read only fields that might cause errors to be emitted while processing yaml documents | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-color` | false | Disable ANSI color codes in tabular output | -| `-o`, `--output` | | Specify an output file | -| `--reset` | | Reset the provided comma delimited keys | - -## Examples - -Print the value of default-base: - - juju model-config default-base - -Print the model config of model mycontroller:mymodel: - - juju model-config -m mycontroller:mymodel - -Set the value of ftp-proxy to 10.0.0.1:8000: - - juju model-config ftp-proxy=10.0.0.1:8000 - -Set the model config to key=value pairs defined in a file: - - juju model-config --file path/to/file.yaml - -Set model config values of a specific model: - - juju model-config -m othercontroller:mymodel default-base=ubuntu@22.04 test-mode=false - -Reset the values of the provided keys to model defaults: - - juju model-config --reset default-base,test-mode - - -## Details - -To view all configuration values for the current model, run - juju model-config -You can target a specific model using the -m flag: - juju model-config -m - juju model-config -m : -By default, the config will be printed in a tabular format. You can instead -print it in json or yaml format using the --format flag: - juju model-config --format json - juju model-config --format yaml - -To view the value of a single config key, run - juju model-config key -To set config values, run - juju model-config key1=val1 key2=val2 ... -You can also reset config keys to their default values: - juju model-config --reset key1 - juju model-config --reset key1,key2,key3 -You may simultaneously set some keys and reset others: - juju model-config key1=val1 key2=val2 --reset key3,key4 - -Config values can be imported from a yaml file using the --file flag: - juju model-config --file=path/to/cfg.yaml -This allows you to e.g. save a model's config to a file: - juju model-config --format=yaml > cfg.yaml -and then import the config later. Note that the output of model-config -may include read-only values, which will cause an error when importing later. -To prevent the error, use the --ignore-read-only-fields flag: - juju model-config --file=cfg.yaml --ignore-read-only-fields - -You can also read from stdin using "-", which allows you to pipe config values -from one model to another: - juju model-config -c c1 --format=yaml \ - | juju model-config -c c2 --file=- --ignore-read-only-fields -You can simultaneously read config from a yaml file and set config keys -as above. The command-line args will override any values specified in the file. - -The default-series key is deprecated in favour of default-base -e.g. default-base=ubuntu@22.04. - -The following keys are available: - - agent-metadata-url: - type: string - description: URL of private stream - agent-stream: - type: string - description: Version of Juju to use for deploy/upgrades. - apt-ftp-proxy: - type: string - description: The APT FTP proxy for the model - apt-http-proxy: - type: string - description: The APT HTTP proxy for the model - apt-https-proxy: - type: string - description: The APT HTTPS proxy for the model - apt-mirror: - type: string - description: The APT mirror for the model - apt-no-proxy: - type: string - description: List of domain addresses not to be proxied for APT (comma-separated) - automatically-retry-hooks: - type: bool - description: Determines whether the uniter should automatically retry failed hooks - backup-dir: - type: string - description: Directory used to store the backup working directory - charmhub-url: - type: string - description: The url for CharmHub API calls - cloudinit-userdata: - type: string - description: Cloud-init user-data (in yaml format) to be added to userdata for new - machines created in this model - container-image-metadata-defaults-disabled: - type: bool - description: Whether default simplestreams sources are used for image metadata with - containers. - container-image-metadata-url: - type: string - description: The URL at which the metadata used to locate container OS image ids - is located - container-image-stream: - type: string - description: The simplestreams stream used to identify which image ids to search - when starting a container. - container-inherit-properties: - type: string - description: List of properties to be copied from the host machine to new containers - created in this model (comma-separated) - container-networking-method: - type: string - description: Method of container networking setup - one of "provider", "local", - or "" (auto-configure). - default-base: - type: string - description: The default base image to use for deploying charms, will act like --base - when deploying charms - default-space: - type: string - description: The default network space used for application endpoints in this model - development: - type: bool - description: Whether the model is in development mode - disable-network-management: - type: bool - description: Whether the provider should control networks (on MAAS models, set to - true for MAAS to control networks - disable-telemetry: - type: bool - description: Disable telemetry reporting of model information - egress-subnets: - type: string - description: Source address(es) for traffic originating from this model - enable-os-refresh-update: - type: bool - description: Whether newly provisioned instances should run their respective OS's - update capability. - enable-os-upgrade: - type: bool - description: Whether newly provisioned instances should run their respective OS's - upgrade capability. - extra-info: - type: string - description: Arbitrary user specified string data that is stored against the model. - firewall-mode: - type: string - description: |- - The mode to use for network firewalling. - - 'instance' requests the use of an individual firewall per instance. - - 'global' uses a single firewall for all instances (access - for a network port is enabled to one instance if any instance requires - that port). - - 'none' requests that no firewalling should be performed - inside the model. It's useful for clouds without support for either - global or per instance security groups. - ftp-proxy: - type: string - description: The FTP proxy value to configure on instances, in the FTP_PROXY environment - variable - http-proxy: - type: string - description: The HTTP proxy value to configure on instances, in the HTTP_PROXY environment - variable - https-proxy: - type: string - description: The HTTPS proxy value to configure on instances, in the HTTPS_PROXY - environment variable - ignore-machine-addresses: - type: bool - description: Whether the machine worker should discover machine addresses on startup - image-metadata-defaults-disabled: - type: bool - description: Whether default simplestreams sources are used for image metadata. - image-metadata-url: - type: string - description: The URL at which the metadata used to locate OS image ids is located - image-stream: - type: string - description: The simplestreams stream used to identify which image ids to search - when starting an instance. - juju-ftp-proxy: - type: string - description: The FTP proxy value to pass to charms in the JUJU_CHARM_FTP_PROXY environment - variable - juju-http-proxy: - type: string - description: The HTTP proxy value to pass to charms in the JUJU_CHARM_HTTP_PROXY - environment variable - juju-https-proxy: - type: string - description: The HTTPS proxy value to pass to charms in the JUJU_CHARM_HTTPS_PROXY - environment variable - juju-no-proxy: - type: string - description: List of domain addresses not to be proxied (comma-separated), may contain - CIDRs. Passed to charms in the JUJU_CHARM_NO_PROXY environment variable - logging-config: - type: string - description: The configuration string to use when configuring Juju agent logging - (see http://godoc.org/github.com/juju/loggo#ParseConfigurationString for details) - lxd-snap-channel: - type: string - description: The channel to use when installing LXD from a snap (cosmic and later) - max-action-results-age: - type: string - description: The maximum age for action entries before they are pruned, in human-readable - time format - max-action-results-size: - type: string - description: The maximum size for the action collection, in human-readable memory - format - max-status-history-age: - type: string - description: The maximum age for status history entries before they are pruned, - in human-readable time format - max-status-history-size: - type: string - description: The maximum size for the status history collection, in human-readable - memory format - mode: - type: string - description: |- - Mode is a comma-separated list which sets the - mode the model should run in. So far only one is implemented - - If 'requires-prompts' is present, clients will ask for confirmation before removing - potentially valuable resources. - (default "") - net-bond-reconfigure-delay: - type: int - description: The amount of time in seconds to sleep between ifdown and ifup when - bridging - no-proxy: - type: string - description: List of domain addresses not to be proxied (comma-separated) - num-container-provision-workers: - type: int - description: The number of container provisioning workers to use per machine - num-provision-workers: - type: int - description: The number of provisioning workers to use per model - provisioner-harvest-mode: - type: string - description: What to do with unknown machines (default destroyed) - proxy-ssh: - type: bool - description: Whether SSH commands should be proxied through the API server - resource-tags: - type: attrs - description: resource tags - saas-ingress-allow: - type: string - description: |- - Application-offer ingress allowlist is a comma-separated list of - CIDRs specifying what ingress can be applied to offers in this model. - snap-http-proxy: - type: string - description: The HTTP proxy value for installing snaps - snap-https-proxy: - type: string - description: The HTTPS proxy value for installing snaps - snap-store-assertions: - type: string - description: The assertions for the defined snap store proxy - snap-store-proxy: - type: string - description: The snap store proxy for installing snaps - snap-store-proxy-url: - type: string - description: The URL for the defined snap store proxy - ssh-allow: - type: string - description: |- - SSH allowlist is a comma-separated list of CIDRs from - which machines in this model will accept connections to the SSH service. - Currently only the aws & openstack providers support ssh-allow - ssl-hostname-verification: - type: bool - description: Whether SSL hostname verification is enabled (default true) - storage-default-block-source: - type: string - description: The default block storage source for the model - storage-default-filesystem-source: - type: string - description: The default filesystem storage source for the model - test-mode: - type: bool - description: |- - Whether the model is intended for testing. - If true, accessing the charm store does not affect statistical - data of the store. (default false) - transmit-vendor-metrics: - type: bool - description: Determines whether metrics declared by charms deployed into this model - are sent for anonymized aggregate analytics - update-status-hook-interval: - type: string - description: How often to run the charm update-status hook, in human-readable time - format (default 5m, range 1-60m) \ No newline at end of file diff --git a/docs/user/cli/model-constraints.md b/docs/user/cli/model-constraints.md deleted file mode 100644 index 15dae4b0f97e..000000000000 --- a/docs/user/cli/model-constraints.md +++ /dev/null @@ -1,30 +0,0 @@ -(model-constraints.md)= -# `model-constraints` -> See also: [models](#models), [constraints](#constraints), [set-constraints](#set-constraints), [set-model-constraints](#set-model-constraints) - -## Summary -Displays machine constraints for a model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | constraints | Specify output format (constraints|json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju model-constraints - juju model-constraints -m mymodel - - -## Details -Shows constraints that have been set on the model with -`juju set-model-constraints.` -By default, the model is the current model. -Model constraints are combined with constraints set on an application -with `juju set-constraints` for commands (such as 'deploy') that provision -machines/containers for applications. Where model and application constraints overlap, the -application constraints take precedence. -Constraints for a specific application can be viewed with `juju constraints`. \ No newline at end of file diff --git a/docs/user/cli/model-default.md b/docs/user/cli/model-default.md deleted file mode 100644 index 59b116378254..000000000000 --- a/docs/user/cli/model-default.md +++ /dev/null @@ -1,116 +0,0 @@ -(model-default.md)= -# `model-default` -> See also: [models](#models), [model-config](#model-config) -**Alias:** model-defaults - -## Summary -Displays or sets default configuration settings for new models. - -## Usage -```juju model-default [options] [[<=value>] ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--cloud` | | The cloud to target | -| `--color` | false | Use ANSI color codes in output | -| `--file` | | path to yaml-formatted configuration file | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `--ignore-read-only-fields` | false | Ignore read only fields that might cause errors to be emitted while processing yaml documents | -| `--no-color` | false | Disable ANSI color codes in tabular output | -| `-o`, `--output` | | Specify an output file | -| `--region` | | The region or cloud/region to target | -| `--reset` | | Reset the provided comma delimited keys | - -## Examples - -Display all model config default values: - - juju model-defaults - -Display the value of http-proxy model config default: - - juju model-defaults http-proxy - -Display the value of http-proxy model config default for the aws cloud: - - juju model-defaults --cloud=aws http-proxy - -Display the value of http-proxy model config default for the aws cloud -and us-east-1 region: - - juju model-defaults --region=aws/us-east-1 http-proxy - -Display the value of http-proxy model config default for the us-east-1 region: - - juju model-defaults --region=us-east-1 http-proxy - -Set the value of ftp-proxy model config default to 10.0.0.1:8000: - - juju model-defaults ftp-proxy=10.0.0.1:8000 - -Set the value of ftp-proxy model config default to 10.0.0.1:8000 in the -us-east-1 region: - - juju model-defaults --region=us-east-1 ftp-proxy=10.0.0.1:8000 - -Set model default values for the aws cloud as defined in path/to/file.yaml: - - juju model-defaults --cloud=aws --file path/to/file.yaml - -Reset the value of default-base and test-mode to default: - - juju model-defaults --reset default-base,test-mode - -Reset the value of http-proxy for the us-east-1 region to default: - - juju model-defaults --region us-east-1 --reset http-proxy - - -## Details - -To view all model default values for the current controller, run - juju model-defaults -You can target a specific controller using the -c flag: - juju model-defaults -c -By default, the output will be printed in a tabular format. You can instead -print it in json or yaml format using the --format flag: - juju model-defaults --format json - juju model-defaults --format yaml - -To view the value of a single model default, run - juju model-defaults key -To set default model config values, run - juju model-defaults key1=val1 key2=val2 ... -You can also reset default keys to their original values: - juju model-defaults --reset key1 - juju model-defaults --reset key1,key2,key3 -You may simultaneously set some keys and reset others: - juju model-defaults key1=val1 key2=val2 --reset key3,key4 - -Default values can be imported from a yaml file using the --file flag: - juju model-defaults --file=path/to/cfg.yaml -This allows you to e.g. save a controller's model defaults to a file: - juju model-defaults --format=yaml > cfg.yaml -and then import these later. Note that the output of model-defaults may -include read-only values, which will cause an error when importing later. -To prevent the error, use the --ignore-read-only-fields flag: - juju model-defaults --file=cfg.yaml --ignore-read-only-fields - -You can also read from stdin using "-", which allows you to pipe default model -values from one controller to another: - juju model-defaults -c c1 --format=yaml \ - | juju model-defaults -c c2 --file=- --ignore-read-only-fields -You can simultaneously read config from a yaml file and set config keys -as above. The command-line args will override any values specified in the file. - -Model default configuration settings are specific to the cloud on which the -model is deployed. If the controller hosts more than one cloud, the cloud -(and optionally region) must be specified using the --cloud flag. This flag -accepts arguments in the following forms: - --cloud= (specified cloud, all regions) - --region= (default cloud, specified region) - --region=/ (specified cloud and region) - --cloud= --region= (specified cloud and region) \ No newline at end of file diff --git a/docs/user/cli/model-defaults.md b/docs/user/cli/model-defaults.md deleted file mode 100644 index 51e83b9cbc2e..000000000000 --- a/docs/user/cli/model-defaults.md +++ /dev/null @@ -1,115 +0,0 @@ -(model-defaults.md)= -# `model-defaults` -> See also: [models](#models), [model-config](#model-config) - -## Summary -Displays or sets default configuration settings for new models. - -## Usage -```juju model-defaults [options] [[<=value>] ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--cloud` | | The cloud to target | -| `--color` | false | Use ANSI color codes in output | -| `--file` | | path to yaml-formatted configuration file | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `--ignore-read-only-fields` | false | Ignore read only fields that might cause errors to be emitted while processing yaml documents | -| `--no-color` | false | Disable ANSI color codes in tabular output | -| `-o`, `--output` | | Specify an output file | -| `--region` | | The region or cloud/region to target | -| `--reset` | | Reset the provided comma delimited keys | - -## Examples - -Display all model config default values: - - juju model-defaults - -Display the value of http-proxy model config default: - - juju model-defaults http-proxy - -Display the value of http-proxy model config default for the aws cloud: - - juju model-defaults --cloud=aws http-proxy - -Display the value of http-proxy model config default for the aws cloud -and us-east-1 region: - - juju model-defaults --region=aws/us-east-1 http-proxy - -Display the value of http-proxy model config default for the us-east-1 region: - - juju model-defaults --region=us-east-1 http-proxy - -Set the value of ftp-proxy model config default to 10.0.0.1:8000: - - juju model-defaults ftp-proxy=10.0.0.1:8000 - -Set the value of ftp-proxy model config default to 10.0.0.1:8000 in the -us-east-1 region: - - juju model-defaults --region=us-east-1 ftp-proxy=10.0.0.1:8000 - -Set model default values for the aws cloud as defined in path/to/file.yaml: - - juju model-defaults --cloud=aws --file path/to/file.yaml - -Reset the value of default-base and test-mode to default: - - juju model-defaults --reset default-base,test-mode - -Reset the value of http-proxy for the us-east-1 region to default: - - juju model-defaults --region us-east-1 --reset http-proxy - - -## Details - -To view all model default values for the current controller, run - juju model-defaults -You can target a specific controller using the -c flag: - juju model-defaults -c -By default, the output will be printed in a tabular format. You can instead -print it in json or yaml format using the --format flag: - juju model-defaults --format json - juju model-defaults --format yaml - -To view the value of a single model default, run - juju model-defaults key -To set default model config values, run - juju model-defaults key1=val1 key2=val2 ... -You can also reset default keys to their original values: - juju model-defaults --reset key1 - juju model-defaults --reset key1,key2,key3 -You may simultaneously set some keys and reset others: - juju model-defaults key1=val1 key2=val2 --reset key3,key4 - -Default values can be imported from a yaml file using the --file flag: - juju model-defaults --file=path/to/cfg.yaml -This allows you to e.g. save a controller's model defaults to a file: - juju model-defaults --format=yaml > cfg.yaml -and then import these later. Note that the output of model-defaults may -include read-only values, which will cause an error when importing later. -To prevent the error, use the --ignore-read-only-fields flag: - juju model-defaults --file=cfg.yaml --ignore-read-only-fields - -You can also read from stdin using "-", which allows you to pipe default model -values from one controller to another: - juju model-defaults -c c1 --format=yaml \ - | juju model-defaults -c c2 --file=- --ignore-read-only-fields -You can simultaneously read config from a yaml file and set config keys -as above. The command-line args will override any values specified in the file. - -Model default configuration settings are specific to the cloud on which the -model is deployed. If the controller hosts more than one cloud, the cloud -(and optionally region) must be specified using the --cloud flag. This flag -accepts arguments in the following forms: - --cloud= (specified cloud, all regions) - --region= (default cloud, specified region) - --region=/ (specified cloud and region) - --cloud= --region= (specified cloud and region) \ No newline at end of file diff --git a/docs/user/cli/model-secret-backend.md b/docs/user/cli/model-secret-backend.md deleted file mode 100644 index ba9681db730d..000000000000 --- a/docs/user/cli/model-secret-backend.md +++ /dev/null @@ -1,30 +0,0 @@ -(model-secret-backend.md)= -# `model-secret-backend` -> See also: [add-secret-backend](#add-secret-backend), [secret-backends](#secret-backends), [remove-secret-backend](#remove-secret-backend), [show-secret-backend](#show-secret-backend), [update-secret-backend](#update-secret-backend) - -## Summary -Displays or sets the secret backend for a model. - -## Usage -```juju model-secret-backend [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - -Display the secret backend for the current model: - - juju model-secret-backend - -Set the secret backend to myVault for the current model: - - juju model-secret-backend myVault - - -## Details - -Sets or displays the secret backend for the current model. \ No newline at end of file diff --git a/docs/user/cli/models.md b/docs/user/cli/models.md deleted file mode 100644 index 2d3ad57a039e..000000000000 --- a/docs/user/cli/models.md +++ /dev/null @@ -1,31 +0,0 @@ -(models.md)= -# `models` -> See also: [add-model](#add-model) - -## Summary -Lists models a user can access on a controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--all` | false | Lists all models, regardless of user accessibility (administrative users only) | -| `-c`, `--controller` | | Controller to operate in | -| `--exact-time` | false | Use full timestamps | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--user` | | The user to list models for (administrative users only) | -| `--uuid` | false | Display UUID for models | - -## Examples - - juju models - juju models --user bob - - -## Details - -The models listed here are either models you have created yourself, or -models which have been shared with you. Default values for user and -controller are, respectively, the current user and the current controller. -The active model is denoted by an asterisk. \ No newline at end of file diff --git a/docs/user/cli/move-to-space.md b/docs/user/cli/move-to-space.md deleted file mode 100644 index e373649ad0a2..000000000000 --- a/docs/user/cli/move-to-space.md +++ /dev/null @@ -1,29 +0,0 @@ -(move-to-space.md)= -# `move-to-space` -> See also: [add-space](#add-space), [spaces](#spaces), [reload-spaces](#reload-spaces), [rename-space](#rename-space), [show-space](#show-space), [remove-space](#remove-space) - -## Summary -Update a network space's CIDR. - -## Usage -```juju move-to-space [options] [--format yaml|json] [ ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--force` | false | Allow to force a move of subnets to a space even if they are in use on another machine. | -| `--format` | human | Specify output format (human|json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - -Move a list of CIDRs from their space to a new space: - - juju move-to-space db-space 172.31.1.0/28 172.31.16.0/20 - - -## Details -Replaces the list of associated subnets of the space. Since subnets -can only be part of a single space, all specified subnets (using their -CIDRs) "leave" their current space and "enter" the one we're updating. \ No newline at end of file diff --git a/docs/user/cli/offer.md b/docs/user/cli/offer.md deleted file mode 100644 index 58f94fa7e191..000000000000 --- a/docs/user/cli/offer.md +++ /dev/null @@ -1,29 +0,0 @@ -(offer.md)= -# `offer` -> See also: [consume](#consume), [integrate](#integrate), [remove-saas](#remove-saas) - -## Summary -Offer application endpoints for use in other models. - -## Usage -```juju offer [options] [model-name.]:[,...] [offer-name]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | - -## Examples - - juju offer mysql:db - juju offer mymodel.mysql:db - juju offer db2:db hosted-db2 - juju offer db2:db,log hosted-db2 - - -## Details - -Deployed application endpoints are offered for use by consumers. -By default, the offer is named after the application, unless -an offer name is explicitly specified. \ No newline at end of file diff --git a/docs/user/cli/offers.md b/docs/user/cli/offers.md deleted file mode 100644 index 14c6a326af90..000000000000 --- a/docs/user/cli/offers.md +++ /dev/null @@ -1,53 +0,0 @@ -(offers.md)= -# `offers` -> See also: [find-offers](#find-offers), [show-offer](#show-offer) - -## Summary -Lists shared endpoints. - -## Usage -```juju offers [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--active-only` | false | only return results where the offer is in use | -| `--allowed-consumer` | | return results where the user is allowed to consume the offer | -| `--application` | | return results matching the application | -| `--connected-user` | | return results where the user has a connection to the offer | -| `--format` | tabular | Specify output format (json|summary|tabular|yaml) | -| `--interface` | | return results matching the interface name | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju offers - juju offers -m model - juju offers --interface db2 - juju offers --application mysql - juju offers --connected-user fred - juju offers --allowed-consumer mary - juju offers hosted-mysql - juju offers hosted-mysql --active-only - - -## Details - -List information about applications' endpoints that have been shared and who is connected. - -The default tabular output shows each user connected (relating to) the offer, and the -relation id of the relation. - -The summary output shows one row per offer, with a count of active/total relations. - -The YAML output shows additional information about the source of connections, including -the source model UUID. - -The output can be filtered by: - - interface: the interface name of the endpoint - - application: the name of the offered application - - connected user: the name of a user who has a relation to the offer - - allowed consumer: the name of a user allowed to consume the offer - - active only: only show offers which are in use (are related to) \ No newline at end of file diff --git a/docs/user/cli/operations.md b/docs/user/cli/operations.md deleted file mode 100644 index 582abee06577..000000000000 --- a/docs/user/cli/operations.md +++ /dev/null @@ -1,46 +0,0 @@ -(operations.md)= -# `operations` -> See also: [run](#run), [show-operation](#show-operation), [show-task](#show-task) - -## Summary -Lists pending, running, or completed operations for specified application, units, machines, or all. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--actions` | | Comma separated list of actions names to filter on | -| `--apps`, `--applications` | | Comma separated list of applications to filter on | -| `--format` | plain | Specify output format (json|plain|yaml) | -| `--limit` | 0 | The maximum number of operations to return | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--machines` | | Comma separated list of machines to filter on | -| `-o`, `--output` | | Specify an output file | -| `--offset` | 0 | Return operations from offset onwards | -| `--status` | | Comma separated list of operation status values to filter on | -| `--units` | | Comma separated list of units to filter on | -| `--utc` | false | Show times in UTC | - -## Examples - - juju operations - juju operations --format yaml - juju operations --actions juju-exec - juju operations --actions backup,restore - juju operations --apps mysql,mediawiki - juju operations --units mysql/0,mediawiki/1 - juju operations --machines 0,1 - juju operations --status pending,completed - juju operations --apps mysql --units mediawiki/0 --status running --actions backup - - - -## Details - -List the operations with the specified query criteria. -When an application is specified, all units from that application are relevant. - -When run without any arguments, operations corresponding to actions for all -application units are returned. -To see operations corresponding to juju run tasks, specify an action name -"juju-exec" and/or one or more machines. \ No newline at end of file diff --git a/docs/user/cli/payloads.md b/docs/user/cli/payloads.md deleted file mode 100644 index 7f3921ce61fb..000000000000 --- a/docs/user/cli/payloads.md +++ /dev/null @@ -1,32 +0,0 @@ -(payloads.md)= -# `payloads` - -## Summary -Display status information about known payloads. - -## Usage -```juju payloads [options] [pattern ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Details - -This command will report on the runtime state of defined payloads. - -When one or more pattern is given, Juju will limit the results to only -those payloads which match *any* of the provided patterns. Each pattern -will be checked against the following info in Juju: - -- unit name -- machine id -- payload type -- payload class -- payload id -- payload tag -- payload status \ No newline at end of file diff --git a/docs/user/cli/refresh.md b/docs/user/cli/refresh.md deleted file mode 100644 index 827b76ea3394..000000000000 --- a/docs/user/cli/refresh.md +++ /dev/null @@ -1,120 +0,0 @@ -(refresh.md)= -# `refresh` -> See also: [deploy](#deploy) - -## Summary -Refresh an application's charm. - -## Usage -```juju refresh [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--bind` | | Configure application endpoint bindings to spaces | -| `--channel` | | Channel to use when getting the charm from Charmhub | -| `--config` | | Either a path to yaml-formatted application config file or a key=value pair | -| `--force` | false | Allow a charm to be refreshed which bypasses LXD profile allow list | -| `--force-series` | false | Refresh even if series of deployed applications are not supported by the new charm | -| `--force-units` | false | Refresh all units immediately, even if in error state | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--path` | | Refresh to a charm package located at path | -| `--resource` | | Resource to be uploaded to the controller | -| `--revision` | -1 | Explicit revision of current charm | -| `--storage` | | Charm storage directives | -| `--switch` | | Crossgrade to a different charm | -| `--trust` | unset | Allows charm to run hooks that require access credentials | - -## Examples - -To refresh the storage constraints for the application foo: - - juju refresh foo --storage cache=ssd,10G - -To refresh the application config from a file for application foo: - - juju refresh foo --config config.yaml - -To refresh the resources for application foo: - - juju refresh foo --resource bar=/some/file.tgz --resource baz=./docs/cfg.xml - - -## Details - -When no options are set, the application's charm will be refreshed to the latest -revision available in the repository from which it was originally deployed. An -explicit revision can be chosen with the --revision option. - -Refreshing a local packaged charm will require a path to be supplied to allow an -updated copy of the charm. - -Deploying from a path is intended to suit the workflow of a charm author working -on a single client machine; use of this deployment method from multiple clients -is not supported and may lead to confusing behaviour. Each local packaged charm -gets uploaded with the revision specified in the charm, if possible, otherwise -it gets a unique revision (highest in state + 1). - -When deploying from a path, the --path option is used to specify the location -of the packaged charm. Note that the charm must match what was originally used -to deploy the charm as a superficial check that the updated charm is compatible. - -Resources may be uploaded at upgrade time by specifying the --resource option. -Following the resource option should be name=filepath pair. This option may be -repeated more than once to upload more than one resource. - - juju refresh foo --resource bar=/some/file.tgz --resource baz=./docs/cfg.xml - -Where bar and baz are resources named in the metadata for the foo charm. - -Storage directives may be added or updated at upgrade time by specifying -the --storage option, with the same format as specified in "juju deploy". -If new required storage is added by the new charm revision, then you must -specify directives or the defaults will be applied. - - juju refresh foo --storage cache=ssd,10G - -Charm settings may be added or updated at upgrade time by specifying the ---config option, pointing to a YAML-encoded application config file. - - juju refresh foo --config config.yaml - -If the new version of a charm does not explicitly support the application's series, the -upgrade is disallowed unless the --force-series option is used. This option should be -used with caution since using a charm on a machine running an unsupported series may -cause unexpected behavior. - -The --switch option allows you to replace the charm with an entirely different one. -The new charm's URL and revision are inferred as they would be when running a -deploy command. - -Please note that --switch is dangerous, because juju only has limited -information with which to determine compatibility; the operation will succeed, -regardless of potential havoc, so long as the following conditions hold: - -- The new charm must declare all relations that the application is currently - participating in. -- All config settings shared by the old and new charms must - have the same types. - -The new charm may add new relations and configuration settings. - -The new charm may also need to be granted access to trusted credentials. -Use --trust to grant such access. -Or use --trust=false to revoke such access. - ---switch and --path are mutually exclusive. - ---path and --revision are mutually exclusive. The revision of the updated charm -is determined by the contents of the charm at the specified path. - ---switch and --revision are mutually exclusive. - -Use of the --force-units option is not generally recommended; units upgraded -while in an error state will not have upgrade-charm hooks executed, and may -cause unexpected behavior. - ---force option for LXD Profiles is not generally recommended when upgrading an -application; overriding profiles on the container may cause unexpected -behavior. \ No newline at end of file diff --git a/docs/user/cli/regions.md b/docs/user/cli/regions.md deleted file mode 100644 index 2423553d7201..000000000000 --- a/docs/user/cli/regions.md +++ /dev/null @@ -1,34 +0,0 @@ -(regions.md)= -# `regions` -> See also: [add-cloud](#add-cloud), [clouds](#clouds), [show-cloud](#show-cloud), [update-cloud](#update-cloud), [update-public-clouds](#update-public-clouds) - -## Summary -Lists regions for a given cloud. - -## Usage -```juju regions [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju regions aws - juju regions aws --controller mycontroller - juju regions aws --client - juju regions aws --client --controller mycontroller - - -## Details - -List regions for a given cloud. - -Use --controller option to list regions from the cloud from a controller. - -Use --client option to list regions known locally on this client. \ No newline at end of file diff --git a/docs/user/cli/register.md b/docs/user/cli/register.md deleted file mode 100644 index 58d18626b670..000000000000 --- a/docs/user/cli/register.md +++ /dev/null @@ -1,49 +0,0 @@ -(register.md)= -# `register` -> See also: [add-user](#add-user), [change-user-password](#change-user-password), [unregister](#unregister) - -## Summary -Registers a controller. - -## Usage -```juju register [options] |``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--replace` | false | replace any existing controller | - -## Examples - - juju register MFATA3JvZDAnExMxMDQuMTU0LjQyLjQ0OjE3MDcwExAxMC4xMjguMC4yOjE3MDcwBCBEFCaXerhNImkKKabuX5ULWf2Bp4AzPNJEbXVWgraLrAA= - - juju register --replace MFATA3JvZDAnExMxMDQuMTU0LjQyLjQ0OjE3MDcwExAxMC4xMjguMC4yOjE3MDcwBCBEFCaXerhNImkKKabuX5ULWf2Bp4AzPNJEbXVWgraLrAA= - - juju register public-controller.example.com - - -## Details - -The register command adds details of a controller to the local system. -This is done either by completing the user registration process that -began with the 'juju add-user' command, or by providing the DNS host -name of a public controller. - -To complete the user registration process, you should have been provided -with a base64-encoded blob of data (the output of 'juju add-user') -which can be copied and pasted as the <string> argument to 'register'. -You will be prompted for a password, which, once set, causes the -registration string to be voided. In order to start using Juju the user -can now either add a model or wait for a model to be shared with them. -Some machine providers will require the user to be in possession of -certain credentials in order to add a model. - -If a new controller has been spun up to replace an existing one, and you want -to start using that replacement controller instead of the original one, -use the --replace option to overwrite any existing controller details based -on either a name or UUID match. - -When adding a controller at a public address, authentication via some -external third party (for example Ubuntu SSO) will be required, usually -by using a web browser. \ No newline at end of file diff --git a/docs/user/cli/relate.md b/docs/user/cli/relate.md deleted file mode 100644 index 24142a2226c7..000000000000 --- a/docs/user/cli/relate.md +++ /dev/null @@ -1,167 +0,0 @@ -(relate.md)= -# `relate` -> See also: [consume](#consume), [find-offers](#find-offers), [set-firewall-rule](#set-firewall-rule), [suspend-relation](#suspend-relation) -**Alias:** integrate - -## Summary -Integrate two applications. - -## Usage -```juju relate [options] [:] [:]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--via` | | for cross model integrations, specify the egress subnets for outbound traffic | - -## Examples - -Integrate wordpress and percona-cluster, asking Juju to resolve - the endpoint names. Expands to "wordpress:db" (with the requires role) and - "percona-cluster:server" (with the provides role). - - juju integrate wordpress percona-cluster - -Integrate wordpress and postgresql, using an explicit -endpoint name. - - juju integrate wordpress postgresql:db - -Integrate an etcd instance within the current model to centrally managed -EasyRSA Certificate Authority hosted in the "secrets" model. - - juju integrate etcd secrets.easyrsa - -Integrate a wordpress application with a mysql application hosted within the -"prod" model, using the "automation" user. Facilitate firewall management -by specifying the routes used for integration data. - - juju integrate wordpress automation/prod.mysql --via 192.168.0.0/16,10.0.0.0/8 - - -## Details - -Integrate two applications. Integrated applications communicate over a common -interface provided by the Juju controller that enables units to share information. -This topology allows units to share data, without needing direct connectivity -between units is restricted by firewall rules. Charms define the logic for -transferring and interpreting integration data. - -The most common use of 'juju integrate' specifies two applications that co-exist -within the same model: - - juju integrate - -Occasionally, more explicit syntax is required. Juju is able to integrate -units that span models, controllers and clouds, as described below. - - -Integrating applications in the same model - -The most common case specifies two applications, adding specific endpoint -name(s) when required. - - juju integrate [:] [:] - -The role and endpoint names are described by charms' metadata.yaml file. - -The order does not matter, however each side must implement complementary roles. -One side implements the "provides" role and the other implements the "requires" -role. Juju can always infer the role that each side is implementing, so specifying -them is not necessary as command-line arguments. - -<application> is the name of an application that has already been added to the -model. The Applications section of 'juju status' provides a list of current -applications. - -<endpoint> is the name of an endpoint defined within the metadata.yaml -of the charm for <application>. Valid endpoint names are defined within the -"provides:" and "requires:" section of that file. Juju will request that you -specify the <endpoint> if there is more than one possible integration between -the two applications. - - -Subordinate applications - -Subordinate applications are designed to be deployed alongside a primary -application. They must define a container scoped endpoint. When that endpoint -is related to a primary application, wherever a unit of the primary application -is deployed, a corresponding unit of the subordinate application will also be -deployed. Integration with the primary application has the same syntax as -integration any two applications within the same model. - - -Peer integrations - -Integrations within an application between units (known as "peer integrations") do -not need to be added manually. They are created when the 'juju add-unit' and -'juju scale-application' commands are executed. - - -Cross-model integrations - -Applications can be integrated, even when they are deployed to different models. -Those models may be managed by different controllers and/or be hosted on -different clouds. This functionality is known as "cross-model integration" or CMI. - - -Cross-model integrations: different model on the same controller - -Integrating applications in models managed by the same controller -is very similar to adding an integration between applications in the same model: - - juju integrate [:] .[:] - -<model> is the name of the model outside of the current context. This enables the -Juju controller to bridge two models. You can list the currently available -models with 'juju models'. - -To integrate models outside of the current context, add the '-m <model>' option: - - juju integrate -m [:] \ - .[:] - - -Cross-model integrations: different controllers - -Applications can be integrated with a remote application via an "offer URL" that has -been generated by the 'juju offer' command. The syntax for adding a cross-model -integration is similar to adding a local integration: - - juju integrate [:] - -<offer-endpoint> describes the remote application, from the point of view of the -local one. An <offer-endpoint> takes one of two forms: - - - [:] - -<offer-alias> is an alias that has been defined by the 'juju consume' command. -Use the 'juju find-offers' command to list aliases. - -<offer-url> is a path to enable Juju to resolve communication between -controllers and the models they control. - - [[:]/]. - -<controller> is the name of a controller. The 'juju controllers' command -provides a list of controllers. - -<user> is the user account of the model's owner. - - -Cross-model integration: network management - -When the consuming side (the local application) is behind a firewall and/or -NAT is used for outbound traffic, it is possible to use the '--via' option to -inform the offering side (the remote application) the source of traffic to -enable network ports to be opened. - - ... --via [,[, ...]] - - -Further reading: - - https://juju.is/docs/juju/integration - https://juju.is/docs/juju/cross-model-integration \ No newline at end of file diff --git a/docs/user/cli/reload-spaces.md b/docs/user/cli/reload-spaces.md deleted file mode 100644 index fdb47a1c484b..000000000000 --- a/docs/user/cli/reload-spaces.md +++ /dev/null @@ -1,20 +0,0 @@ -(reload-spaces.md)= -# `reload-spaces` -> See also: [spaces](#spaces), [add-space](#add-space), [show-space](#show-space), [move-to-space](#move-to-space) - -## Summary -Reloads spaces and subnets from substrate. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju reload-spaces - - -## Details -Reloades spaces and subnets from substrate. \ No newline at end of file diff --git a/docs/user/cli/remove-application.md b/docs/user/cli/remove-application.md deleted file mode 100644 index 98badbf8dc46..000000000000 --- a/docs/user/cli/remove-application.md +++ /dev/null @@ -1,50 +0,0 @@ -(remove-application.md)= -# `remove-application` -> See also: [scale-application](#scale-application), [show-application](#show-application) - -## Summary -Remove applications from the model. - -## Usage -```juju remove-application [options] [...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--destroy-storage` | false | Destroy storage attached to application units | -| `--dry-run` | false | Print what this command would remove without removing | -| `--force` | false | Completely remove an application and all its dependencies | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-prompt` | false | Do not ask for confirmation. Overrides `mode` model config setting | -| `--no-wait` | false | Rush through application removal without waiting for each individual step to complete | - -## Examples - - juju remove-application hadoop - juju remove-application --force hadoop - juju remove-application --force --no-wait hadoop - juju remove-application -m test-model mariadb - - -## Details -Removing an application will terminate any relations that application has, remove -all units of the application, and in the case that this leaves machines with -no running applications, Juju will also remove the machine. For this reason, -you should retrieve any logs or data required from applications and units -before removing them. Removing units which are co-located with units of -other charms or a Juju controller will not result in the removal of the -machine. - -Sometimes, the removal of the application may fail as Juju encounters errors -and failures that need to be dealt with before an application can be removed. -For example, Juju will not remove an application if there are hook failures. -However, at times, there is a need to remove an application ignoring -all operational errors. In these rare cases, use --force option but note -that --force will also remove all units of the application, its subordinates -and, potentially, machines without given them the opportunity to shutdown cleanly. - -Application removal is a multi-step process. Under normal circumstances, Juju will not -proceed to the next step until the current step has finished. -However, when using --force, users can also specify --no-wait to progress through steps -without delay waiting for each step to complete. \ No newline at end of file diff --git a/docs/user/cli/remove-cloud.md b/docs/user/cli/remove-cloud.md deleted file mode 100644 index cdb731731379..000000000000 --- a/docs/user/cli/remove-cloud.md +++ /dev/null @@ -1,32 +0,0 @@ -(remove-cloud.md)= -# `remove-cloud` -> See also: [add-cloud](#add-cloud), [update-cloud](#update-cloud), [clouds](#clouds) - -## Summary -Removes a cloud from Juju. - -## Usage -```juju remove-cloud [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | - -## Examples - - juju remove-cloud mycloud - juju remove-cloud mycloud --client - juju remove-cloud mycloud --controller mycontroller - - -## Details - -Remove a cloud from Juju. - -If --controller is used, also remove the cloud from the specified controller, -if it is not in use. - -If --client is specified, Juju removes the cloud from this client. \ No newline at end of file diff --git a/docs/user/cli/remove-credential.md b/docs/user/cli/remove-credential.md deleted file mode 100644 index 43b31295c846..000000000000 --- a/docs/user/cli/remove-credential.md +++ /dev/null @@ -1,45 +0,0 @@ -(remove-credential.md)= -# `remove-credential` -> See also: [add-credential](#add-credential), [autoload-credentials](#autoload-credentials), [credentials](#credentials), [default-credential](#default-credential), [set-credential](#set-credential), [update-credential](#update-credential) - -## Summary -Removes Juju credentials for a cloud. - -## Usage -```juju remove-credential [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--force` | false | Force remove controller side credential, ignore validation errors | - -## Examples - - juju remove-credential google credential_name - juju remove-credential google credential_name --client - juju remove-credential google credential_name -c mycontroller - juju remove-credential google credential_name -c mycontroller --force - - - -## Details -The credential to be removed is specified by a "credential name". -Credential names, and optionally the corresponding authentication -material, can be listed with `juju credentials`. - -Use --controller option to remove credentials from a controller. - -When removing cloud credential from a controller, Juju performs additional -checks to ensure that there are no models using this credential. -Occasionally, these check may not be desired by the user and can be by-passed using --force. -If force remove was performed and some models were still using the credential, these models -will be left with un-reachable machines. -Consequently, it is not recommended as a default remove action. -Models with un-reachable machines are most commonly fixed by using another cloud credential, -see ' + "'juju set-credential'" + ' for more information. - - -Use --client option to remove credentials from the current client. \ No newline at end of file diff --git a/docs/user/cli/remove-k8s.md b/docs/user/cli/remove-k8s.md deleted file mode 100644 index 788d6a5ea1fa..000000000000 --- a/docs/user/cli/remove-k8s.md +++ /dev/null @@ -1,32 +0,0 @@ -(remove-k8s.md)= -# `remove-k8s` -> See also: [add-k8s](#add-k8s) - -## Summary -Removes a k8s cloud from Juju. - -## Usage -```juju remove-k8s [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | - -## Examples - - juju remove-k8s myk8scloud - juju remove-k8s myk8scloud --client - juju remove-k8s --controller mycontroller myk8scloud - - -## Details - -Removes the specified k8s cloud from this client. - -If --controller is used, also removes the cloud -from the specified controller (if it is not in use). - -Use --client option to update your current client. \ No newline at end of file diff --git a/docs/user/cli/remove-machine.md b/docs/user/cli/remove-machine.md deleted file mode 100644 index 1641a0b51d2a..000000000000 --- a/docs/user/cli/remove-machine.md +++ /dev/null @@ -1,47 +0,0 @@ -(remove-machine.md)= -# `remove-machine` -> See also: [add-machine](#add-machine) - -## Summary -Removes one or more machines from a model. - -## Usage -```juju remove-machine [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--dry-run` | false | Print what this command would be removed without removing | -| `--force` | false | Completely remove a machine and all its dependencies | -| `--keep-instance` | false | Do not stop the running cloud instance | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-prompt` | false | Do not ask for confirmation. Overrides `mode` model config setting | -| `--no-wait` | false | Rush through machine removal without waiting for each individual step to complete | - -## Examples - - juju remove-machine 5 - juju remove-machine 6 --force - juju remove-machine 6 --force --no-wait - juju remove-machine 7 --keep-instance - - -## Details - -Machines are specified by their numbers, which may be retrieved from the -output of `juju status`. - -It is possible to remove machine from Juju model without affecting -the corresponding cloud instance by using --keep-instance option. - -Machines responsible for the model cannot be removed. - -Machines running units or containers can be removed using the '--force' -option; this will also remove those units and containers without giving -them an opportunity to shut down cleanly. - -Machine removal is a multi-step process. Under normal circumstances, Juju will not -proceed to the next step until the current step has finished. -However, when using --force, users can also specify --no-wait to progress through steps -without delay waiting for each step to complete. \ No newline at end of file diff --git a/docs/user/cli/remove-offer.md b/docs/user/cli/remove-offer.md deleted file mode 100644 index 45299a707e85..000000000000 --- a/docs/user/cli/remove-offer.md +++ /dev/null @@ -1,35 +0,0 @@ -(remove-offer.md)= -# `remove-offer` -> See also: [find-offers](#find-offers), [offer](#offer) - -## Summary -Removes one or more offers specified by their URL. - -## Usage -```juju remove-offer [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--force` | false | remove the offer as well as any relations to the offer | -| `-y`, `--yes` | false | Do not prompt for confirmation | - -## Examples - - juju remove-offer prod.model/hosted-mysql - juju remove-offer prod.model/hosted-mysql --force - juju remove-offer hosted-mysql - - -## Details - -Remove one or more application offers. - -If the --force option is specified, any existing relations to the -offer will also be removed. - -Offers to remove are normally specified by their URL. -It's also possible to specify just the offer name, in which case -the offer is considered to reside in the current model. \ No newline at end of file diff --git a/docs/user/cli/remove-relation.md b/docs/user/cli/remove-relation.md deleted file mode 100644 index 404da51ccf83..000000000000 --- a/docs/user/cli/remove-relation.md +++ /dev/null @@ -1,52 +0,0 @@ -(remove-relation.md)= -# `remove-relation` -> See also: [integrate](#integrate), [remove-application](#remove-application) - -## Summary -Removes an existing relation between two applications. - -## Usage -```juju remove-relation [options] [:] [:] | ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--force` | false | Force remove a relation | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju remove-relation mysql wordpress - juju remove-relation 4 - juju remove-relation 4 --force - -In the case of multiple relations, the relation name should be specified -at least once - the following examples will all have the same effect: - - juju remove-relation mediawiki:db mariadb:db - juju remove-relation mediawiki mariadb:db - juju remove-relation mediawiki:db mariadb - - -## Details -An existing relation between the two specified applications will be removed. -This should not result in either of the applications entering an error state, -but may result in either or both of the applications being unable to continue -normal operation. In the case that there is more than one relation between -two applications it is necessary to specify which is to be removed (see -examples). Relations will automatically be removed when using the`juju -remove-application` command. - -The relation is specified using the relation endpoint names, eg - mysql wordpress, or - mediawiki:db mariadb:db - -It is also possible to specify the relation ID, if known. This is useful to -terminate a relation originating from a different model, where only the ID is known. - -Sometimes, the removal of the relation may fail as Juju encounters errors -and failures that need to be dealt with before a relation can be removed. -However, at times, there is a need to remove a relation ignoring -all operational errors. In these rare cases, use --force option but note -that --force will remove a relation without giving it the opportunity to be removed cleanly. \ No newline at end of file diff --git a/docs/user/cli/remove-saas.md b/docs/user/cli/remove-saas.md deleted file mode 100644 index f0b142db6a3b..000000000000 --- a/docs/user/cli/remove-saas.md +++ /dev/null @@ -1,29 +0,0 @@ -(remove-saas.md)= -# `remove-saas` -> See also: [consume](#consume), [offer](#offer) - -## Summary -Remove consumed applications (SAAS) from the model. - -## Usage -```juju remove-saas [options] [...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--force` | false | Completely remove a SAAS and all its dependencies | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-wait` | false | Rush through SAAS removal without waiting for each individual step to complete | - -## Examples - - juju remove-saas hosted-mysql - juju remove-saas -m test-model hosted-mariadb - - - -## Details -Removing a consumed (SAAS) application will terminate any relations that -application has, potentially leaving any related local applications -in a non-functional state. \ No newline at end of file diff --git a/docs/user/cli/remove-secret-backend.md b/docs/user/cli/remove-secret-backend.md deleted file mode 100644 index c0a1ab4f140c..000000000000 --- a/docs/user/cli/remove-secret-backend.md +++ /dev/null @@ -1,28 +0,0 @@ -(remove-secret-backend.md)= -# `remove-secret-backend` -> See also: [add-secret-backend](#add-secret-backend), [secret-backends](#secret-backends), [show-secret-backend](#show-secret-backend), [update-secret-backend](#update-secret-backend) - -## Summary -Removes a secret backend from the controller. - -## Usage -```juju remove-secret-backend [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-c`, `--controller` | | Controller to operate in | -| `--force` | false | force removal even if the backend stores in-use secrets | - -## Examples - - juju remove-secret-backend myvault - juju remove-secret-backend myvault --force - - -## Details - -Removes a secret backend, used for storing secret content. -If the backend is being used to store secrets currently in use, -the --force option can be supplied to force the removal, but be -warned, this will affect charms which use those secrets. \ No newline at end of file diff --git a/docs/user/cli/remove-secret.md b/docs/user/cli/remove-secret.md deleted file mode 100644 index 28635e52c745..000000000000 --- a/docs/user/cli/remove-secret.md +++ /dev/null @@ -1,25 +0,0 @@ -(remove-secret.md)= -# `remove-secret` - -## Summary -Remove a existing secret. - -## Usage -```juju remove-secret [options] |``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--revision` | 0 | remove the specified revision | - -## Examples - - juju remove-secret my-secret - juju remove-secret secret:9m4e2mr0ui3e8a215n4g - juju remove-secret secret:9m4e2mr0ui3e8a215n4g --revision 4 - - -## Details - -Remove all the revisions of a secret with the specified URI or remove the provided revision only. \ No newline at end of file diff --git a/docs/user/cli/remove-space.md b/docs/user/cli/remove-space.md deleted file mode 100644 index dc2a869ba130..000000000000 --- a/docs/user/cli/remove-space.md +++ /dev/null @@ -1,35 +0,0 @@ -(remove-space.md)= -# `remove-space` -> See also: [add-space](#add-space), [spaces](#spaces), [reload-spaces](#reload-spaces), [rename-space](#rename-space), [show-space](#show-space) - -## Summary -Remove a network space. - -## Usage -```juju remove-space [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--force` | false | remove the offer as well as any relations to the offer | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-y`, `--yes` | false | Do not prompt for confirmation | - -## Examples - -Remove a space by name: - - juju remove-space db-space - -Remove a space by name with force, without need for confirmation: - - juju remove-space db-space --force -y - - -## Details -Removes an existing Juju network space with the given name. Any subnets -associated with the space will be transferred to the default space. -The command will fail if existing constraints, bindings or controller settings are bound to the given space. - -If the --force option is specified, the space will be deleted even if there are existing bindings, constraints or settings. \ No newline at end of file diff --git a/docs/user/cli/remove-ssh-key.md b/docs/user/cli/remove-ssh-key.md deleted file mode 100644 index dd6279ed5d38..000000000000 --- a/docs/user/cli/remove-ssh-key.md +++ /dev/null @@ -1,30 +0,0 @@ -(remove-ssh-key.md)= -# `remove-ssh-key` -> See also: [ssh-keys](#ssh-keys), [add-ssh-key](#add-ssh-key), [import-ssh-key](#import-ssh-key) - -## Summary -Removes a public SSH key (or keys) from a model. - -## Usage -```juju remove-ssh-key [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju remove-ssh-key ubuntu@ubuntu - juju remove-ssh-key 45:7f:33:2c:10:4e:6c:14:e3:a1:a4:c8:b2:e1:34:b4 - juju remove-ssh-key bob@ubuntu carol@ubuntu - - -## Details -Juju maintains a per-model cache of public SSH keys which it copies to -each unit. This command will remove a specified key (or space separated -list of keys) from the model cache and all current units deployed in that -model. The keys to be removed may be specified by the key's fingerprint -using a SHA256 sum or by the text label associated with them. Keys may also be -removed by specifying the key verbatim. \ No newline at end of file diff --git a/docs/user/cli/remove-storage-pool.md b/docs/user/cli/remove-storage-pool.md deleted file mode 100644 index 7cbd6d9c9f00..000000000000 --- a/docs/user/cli/remove-storage-pool.md +++ /dev/null @@ -1,26 +0,0 @@ -(remove-storage-pool.md)= -# `remove-storage-pool` -> See also: [create-storage-pool](#create-storage-pool), [update-storage-pool](#update-storage-pool), [storage-pools](#storage-pools) - -## Summary -Remove an existing storage pool. - -## Usage -```juju remove-storage-pool [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - -Remove the storage-pool named fast-storage: - - juju remove-storage-pool fast-storage - - -## Details - -Remove a single existing storage pool. \ No newline at end of file diff --git a/docs/user/cli/remove-storage.md b/docs/user/cli/remove-storage.md deleted file mode 100644 index cdd4dda35041..000000000000 --- a/docs/user/cli/remove-storage.md +++ /dev/null @@ -1,44 +0,0 @@ -(remove-storage.md)= -# `remove-storage` -> See also: [add-storage](#add-storage), [attach-storage](#attach-storage), [detach-storage](#detach-storage), [list-storage](#list-storage), [show-storage](#show-storage), [storage](#storage) - -## Summary -Removes storage from the model. - -## Usage -```juju remove-storage [options] [ ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--force` | false | Remove storage even if it is currently attached | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-destroy` | false | Remove the storage without destroying it | - -## Examples - -Remove the detached storage pgdata/0: - - juju remove-storage pgdata/0 - -Remove the possibly attached storage pgdata/0: - - juju remove-storage --force pgdata/0 - -Remove the storage pgdata/0, without destroying -the corresponding cloud storage: - - juju remove-storage --no-destroy pgdata/0 - - - -## Details - -Removes storage from the model. Specify one or more -storage IDs, as output by "juju storage". - -By default, remove-storage will fail if the storage -is attached to any units. To override this behaviour, -you can use "juju remove-storage --force". -Note: forced detach is not available on container models. \ No newline at end of file diff --git a/docs/user/cli/remove-unit.md b/docs/user/cli/remove-unit.md deleted file mode 100644 index 93895f9b2d85..000000000000 --- a/docs/user/cli/remove-unit.md +++ /dev/null @@ -1,73 +0,0 @@ -(remove-unit.md)= -# `remove-unit` -> See also: [remove-application](#remove-application), [scale-application](#scale-application) - -## Summary -Remove application units from the model. - -## Usage -```juju remove-unit [options] [...] | ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--destroy-storage` | false | Destroy storage attached to the unit | -| `--dry-run` | false | Print what this command would remove without removing | -| `--force` | false | Completely remove an unit and all its dependencies | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-prompt` | false | Do not ask for confirmation. Overrides `mode` model config setting | -| `--no-wait` | false | Rush through unit removal without waiting for each individual step to complete | -| `--num-units` | 0 | Number of units to remove (k8s models only) | - -## Examples - - juju remove-unit wordpress/2 wordpress/3 wordpress/4 - - juju remove-unit wordpress/2 --destroy-storage - - juju remove-unit wordpress/2 --force - - juju remove-unit wordpress/2 --force --no-wait - - -## Details - -Remove application units from the model. - -The usage of this command differs depending on whether it is being used on a -k8s or cloud model. - -Removing all units of a application is not equivalent to removing the -application itself; for that, the `juju remove-application` command -is used. - -For k8s models only a single application can be supplied and only the ---num-units argument supported. -Specific units cannot be targeted for removal as that is handled by k8s, -instead the total number of units to be removed is specified. - -Examples: - juju remove-unit wordpress --num-units 2 - -For cloud models specific units can be targeted for removal. -Units of a application are numbered in sequence upon creation. For example, the -fourth unit of wordpress will be designated "wordpress/3". These identifiers -can be supplied in a space delimited list to remove unwanted units from the -model. - -Juju will also remove the machine if the removed unit was the only unit left -on that machine (including units in containers). - -Sometimes, the removal of the unit may fail as Juju encounters errors -and failures that need to be dealt with before a unit can be removed. -For example, Juju will not remove a unit if there are hook failures. -However, at times, there is a need to remove a unit ignoring -all operational errors. In these rare cases, use --force option but note -that --force will remove a unit and, potentially, its machine without -given them the opportunity to shutdown cleanly. - -Unit removal is a multi-step process. Under normal circumstances, Juju will not -proceed to the next step until the current step has finished. -However, when using --force, users can also specify --no-wait to progress through steps -without delay waiting for each step to complete. \ No newline at end of file diff --git a/docs/user/cli/remove-user.md b/docs/user/cli/remove-user.md deleted file mode 100644 index 141ba4c96206..000000000000 --- a/docs/user/cli/remove-user.md +++ /dev/null @@ -1,27 +0,0 @@ -(remove-user.md)= -# `remove-user` -> See also: [unregister](#unregister), [revoke](#revoke), [show-user](#show-user), [users](#users), [disable-user](#disable-user), [enable-user](#enable-user), [change-user-password](#change-user-password) - -## Summary -Deletes a Juju user from a controller. - -## Usage -```juju remove-user [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `-y`, `--yes` | false | Confirm deletion of the user | - -## Examples - - juju remove-user bob - juju remove-user bob --yes - - -## Details -This removes a user permanently. - -By default, the controller is the current controller. \ No newline at end of file diff --git a/docs/user/cli/rename-space.md b/docs/user/cli/rename-space.md deleted file mode 100644 index b188dbb448bc..000000000000 --- a/docs/user/cli/rename-space.md +++ /dev/null @@ -1,27 +0,0 @@ -(rename-space.md)= -# `rename-space` -> See also: [add-space](#add-space), [spaces](#spaces), [reload-spaces](#reload-spaces), [remove-space](#remove-space), [show-space](#show-space) - -## Summary -Rename a network space. - -## Usage -```juju rename-space [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--rename` | | the new name for the network space | - -## Examples - -Rename a space from db to fe: - - juju rename-space db fe - - -## Details -Renames an existing space from "old-name" to "new-name". Does not change the -associated subnets and "new-name" must not match another existing space. \ No newline at end of file diff --git a/docs/user/cli/resolve.md b/docs/user/cli/resolve.md deleted file mode 100644 index 60648053ed9a..000000000000 --- a/docs/user/cli/resolve.md +++ /dev/null @@ -1,26 +0,0 @@ -(resolve.md)= -# `resolve` -**Alias:** resolved - -## Summary -Marks unit errors resolved and re-executes failed hooks. - -## Usage -```juju resolve [options] [ ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--all` | false | Marks all units in error as resolved | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-retry` | false | Do not re-execute failed hooks on the unit | - -## Examples - - - juju resolved mysql/0 - - juju resolved mysql/0 mysql/1 - - juju resolved --all \ No newline at end of file diff --git a/docs/user/cli/resolved.md b/docs/user/cli/resolved.md deleted file mode 100644 index bbb92ba38aaf..000000000000 --- a/docs/user/cli/resolved.md +++ /dev/null @@ -1,25 +0,0 @@ -(resolved.md)= -# `resolved` - -## Summary -Marks unit errors resolved and re-executes failed hooks. - -## Usage -```juju resolved [options] [ ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--all` | false | Marks all units in error as resolved | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-retry` | false | Do not re-execute failed hooks on the unit | - -## Examples - - - juju resolved mysql/0 - - juju resolved mysql/0 mysql/1 - - juju resolved --all \ No newline at end of file diff --git a/docs/user/cli/resources.md b/docs/user/cli/resources.md deleted file mode 100644 index 3597714f11cd..000000000000 --- a/docs/user/cli/resources.md +++ /dev/null @@ -1,39 +0,0 @@ -(resources.md)= -# `resources` -> See also: [attach-resource](#attach-resource), [charm-resources](#charm-resources) - -## Summary -Show the resources for an application or unit. - -## Usage -```juju resources [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--details` | false | show detailed information about resources used by each unit. | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - -To list resources for an application: - - juju resources mysql - -To list resources for a unit: - - juju resources mysql/0 - -To show detailed information about resources used by a unit: - - juju resources mysql/0 --details - - -## Details - -This command shows the resources required by and those in use by an existing -application or unit in your model. When run for an application, it will also show any -updates available for resources from a store. \ No newline at end of file diff --git a/docs/user/cli/resume-relation.md b/docs/user/cli/resume-relation.md deleted file mode 100644 index 4807321b732c..000000000000 --- a/docs/user/cli/resume-relation.md +++ /dev/null @@ -1,27 +0,0 @@ -(resume-relation.md)= -# `resume-relation` -> See also: [integrate](#integrate), [offers](#offers), [remove-relation](#remove-relation), [suspend-relation](#suspend-relation) - -## Summary -Resumes a suspended relation to an application offer. - -## Usage -```juju resume-relation [options] [,]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju resume-relation 123 - juju resume-relation 123 456 - - -## Details - -A relation between an application in another model and an offer in this model will be resumed. -The relation-joined and relation-changed hooks will be run for the relation, and the relation -status will be set to joined. The relation is specified using its id. \ No newline at end of file diff --git a/docs/user/cli/retry-provisioning.md b/docs/user/cli/retry-provisioning.md deleted file mode 100644 index e79fbd78e05c..000000000000 --- a/docs/user/cli/retry-provisioning.md +++ /dev/null @@ -1,23 +0,0 @@ -(retry-provisioning.md)= -# `retry-provisioning` - -## Summary -Retries provisioning for failed machines. - -## Usage -```juju retry-provisioning [options] [...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--all` | false | retry provisioning all failed machines | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - - juju retry-provisioning 0 - - juju retry-provisioning 0 1 - - juju retry-provisioning --all \ No newline at end of file diff --git a/docs/user/cli/revoke-cloud.md b/docs/user/cli/revoke-cloud.md deleted file mode 100644 index bfb57dba2ed3..000000000000 --- a/docs/user/cli/revoke-cloud.md +++ /dev/null @@ -1,36 +0,0 @@ -(revoke-cloud.md)= -# `revoke-cloud` -> See also: [grant-cloud](#grant-cloud) - -## Summary -Revokes access from a Juju user for a cloud. - -## Usage -```juju revoke-cloud [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | - -## Examples - -Revoke 'add-model' (and 'admin') access from user 'joe' for cloud 'fluffy': - - juju revoke-cloud joe add-model fluffy - -Revoke 'admin' access from user 'sam' for clouds 'fluffy' and 'rainy': - - juju revoke-cloud sam admin fluffy rainy - - - -## Details -Revoking admin access, from a user who has that permission, will leave -that user with add-model access. Revoking add-model access, however, also revokes -admin access. - -Valid access levels are: - admin - add-model \ No newline at end of file diff --git a/docs/user/cli/revoke-secret.md b/docs/user/cli/revoke-secret.md deleted file mode 100644 index 703ddfbc5e93..000000000000 --- a/docs/user/cli/revoke-secret.md +++ /dev/null @@ -1,24 +0,0 @@ -(revoke-secret.md)= -# `revoke-secret` - -## Summary -Revoke access to a secret. - -## Usage -```juju revoke-secret [options] | [,...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju revoke-secret my-secret ubuntu-k8s - juju revoke-secret 9m4e2mr0ui3e8a215n4g ubuntu-k8s,prometheus-k8s - - -## Details - -Revoke applications' access to view the value of a specified secret. \ No newline at end of file diff --git a/docs/user/cli/revoke.md b/docs/user/cli/revoke.md deleted file mode 100644 index f4e9022652bd..000000000000 --- a/docs/user/cli/revoke.md +++ /dev/null @@ -1,55 +0,0 @@ -(revoke.md)= -# `revoke` -> See also: [grant](#grant) - -## Summary -Revokes access from a Juju user for a model, controller, or application offer. - -## Usage -```juju revoke [options] [ ... | ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | - -## Examples - -Revoke 'read' (and 'write') access from user 'joe' for model 'mymodel': - - juju revoke joe read mymodel - -Revoke 'write' access from user 'sam' for models 'model1' and 'model2': - - juju revoke sam write model1 model2 - -Revoke 'read' (and 'write') access from user 'joe' for application offer 'fred/prod.hosted-mysql': - - juju revoke joe read fred/prod.hosted-mysql - -Revoke 'consume' access from user 'sam' for models 'fred/prod.hosted-mysql' and 'mary/test.hosted-mysql': - - juju revoke sam consume fred/prod.hosted-mysql mary/test.hosted-mysql - - -## Details -By default, the controller is the current controller. - -Revoking write access, from a user who has that permission, will leave -that user with read access. Revoking read access, however, also revokes -write access. - -Valid access levels for models are: - read - write - admin - -Valid access levels for controllers are: - login - superuser - -Valid access levels for application offers are: - read - consume - admin \ No newline at end of file diff --git a/docs/user/cli/run.md b/docs/user/cli/run.md deleted file mode 100644 index 6afaa9a301aa..000000000000 --- a/docs/user/cli/run.md +++ /dev/null @@ -1,82 +0,0 @@ -(run.md)= -# `run` -> See also: [operations](#operations), [show-operation](#show-operation), [show-task](#show-task) - -## Summary -Run an action on a specified unit. - -## Usage -```juju run [options] [ ...] [= [[. ...]=]]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--background` | false | Run the task in the background | -| `--color` | false | Use ANSI color codes in output | -| `--format` | plain | Specify output format (json|plain|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-color` | false | Disable ANSI color codes in output | -| `-o`, `--output` | | Specify an output file | -| `--params` | | Path to yaml-formatted params file | -| `--string-args` | false | Use raw string values of CLI args | -| `--utc` | false | Show times in UTC | -| `--wait` | 0s | Maximum wait time for a task to complete | - -## Examples - - juju run mysql/3 backup --background - juju run mysql/3 backup --wait=2m - juju run mysql/3 backup --format yaml - juju run mysql/3 backup --utc - juju run mysql/3 backup - juju run mysql/leader backup - juju show-operation - juju run mysql/3 backup --params parameters.yml - juju run mysql/3 backup out=out.tar.bz2 file.kind=xz file.quality=high - juju run mysql/3 backup --params p.yml file.kind=xz file.quality=high - juju run sleeper/0 pause time=1000 - juju run sleeper/0 pause --string-args time=1000 - - -## Details - -Run a charm action for execution on the given unit(s), with a given set of params. -An ID is returned for use with 'juju show-operation <ID>'. - -All units must be of the same application. - -A action executed on a given unit becomes a task with an ID that can be -used with 'juju show-task <ID>'. - -Running an action returns the overall operation ID as well as the individual -task ID(s) for each unit. - -To queue a action to be run in the background without waiting for it to finish, -use the --background option. - -To set the maximum time to wait for a action to complete, use the --wait option. - -By default, a single action will output its failure message if the action fails, -followed by any results set by the action. For multiple actions, each action's -results will be printed with the action id and action status. To see more detailed -information about run timings etc, use --format yaml. - -Valid unit identifiers are: - a standard unit ID, such as mysql/0 or; - leader syntax of the form <application>/leader, such as mysql/leader. - -If the leader syntax is used, the leader unit for the application will be -resolved before the action is enqueued. - -Params are validated according to the charm for the unit's application. The -valid params can be seen using "juju actions <application> --schema". -Params may be in a yaml file which is passed with the --params option, or they -may be specified by a key.key.key...=value format (see examples below.) - -Params given in the CLI invocation will be parsed as YAML unless the ---string-args option is set. This can be helpful for values such as 'y', which -is a boolean true in YAML. - -If --params is passed, along with key.key...=value explicit arguments, the -explicit arguments will override the parameter file. \ No newline at end of file diff --git a/docs/user/cli/scale-application.md b/docs/user/cli/scale-application.md deleted file mode 100644 index 0a5df4b60338..000000000000 --- a/docs/user/cli/scale-application.md +++ /dev/null @@ -1,26 +0,0 @@ -(scale-application.md)= -# `scale-application` -> See also: [remove-application](#remove-application), [add-unit](#add-unit), [remove-unit](#remove-unit) - -## Summary -Set the desired number of k8s application units. - -## Usage -```juju scale-application [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju scale-application mariadb 2 - - -## Details - -Scale a k8s application by specifying how many units there should be. -The new number of units can be greater or less than the current number, thus -allowing both scale up and scale down. \ No newline at end of file diff --git a/docs/user/cli/scp.md b/docs/user/cli/scp.md deleted file mode 100644 index f78ba90ff6fc..000000000000 --- a/docs/user/cli/scp.md +++ /dev/null @@ -1,117 +0,0 @@ -(scp.md)= -# `scp` -> See also: [ssh](#ssh) - -## Summary -Securely transfer files within a model. - -## Usage -```juju scp [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--container` | | the container name of the target pod | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-host-key-checks` | false | Skip host key checking (INSECURE) | -| `--proxy` | false | Proxy through the API server | - -## Examples - -Copy the config of a Charmed Kubernetes cluster to ~/.kube/config: - - juju scp kubernetes-master/0:config ~/.kube/config - -Copy file /var/log/syslog from machine 2 to the client's -current working directory: - - juju scp 2:/var/log/syslog . - -Recursively copy the /var/log/mongodb directory from the -mongodb/0 unit to the client's local remote-logs directory: - - juju scp -- -r mongodb/0:/var/log/mongodb/ remote-logs - -Copy foo.txt from the client's current working directory to a -the apache2/1 unit model "prod" (-m prod). Proxy the SSH connection -through the controller (--proxy) and enable compression (-- -C): - - juju scp -m prod --proxy -- -C foo.txt apache2/1: - -Copy multiple files from the client's current working directory to -the /home/ubuntu directory of machine 2: - - juju scp file1 file2 2: - -Copy multiple files from machine 3 as user "bob" to the client's -current working directory: - - juju scp bob@3:'file1 file2' . - -Copy file.dat from machine 0 to the machine hosting unit foo/0 -(-- -3): - - juju scp -- -3 0:file.dat foo/0: - -Copy a file ('chunks-inspect') from localhost to /loki directory -in a specific container in a juju unit running in Kubernetes: - - juju scp --container loki chunks-inspect loki-k8s/0:/loki - - -## Details - -Transfer files to, from and between Juju machine(s), unit(s) and the -Juju client. - -The basic syntax for the command requires the location of 1 or more source -files or directories and their intended destination: - - - -The <source> and <destination> arguments may either be a path to a local file -or a remote location. Here is a fuller syntax diagram: - - # - [[@]:] [@]:[] - -<user> is a user account that exists on the remote host. Juju defaults to the -"ubuntu" user when this is omitted. - -<target> may be either a unit or machine. Units are specified in form -'<application-name>/<n>', where '<n>' is either the unit number or the value -"leader" when targeting the leader unit for an application e.g. postgresql/0 or -haproxy/leader. Machines are specified in form '<n>', e.g. 0 or 12. The units -and machines in your model can be obtained from the output of "juju status". - -<path> is a file path. Local relative paths are resolved relative to the -current working directory. Remote relative paths are resolved relative to the -home directory of the remote user account. - - -Providing arguments directly to scp - -Send arguments directly to the underlying scp utility for full control by -adding two hyphens to the argument list and adding arguments to the right -(-- <arg> [...]). Common arguments to scp include - - - "-r" recursively copy files from a directory - - "-3" use the client as a proxy for transfers between machines - - "-C" enable SSH compression - - -Transfers between machines - -Machines do not have SSH connectivity to each other by default. Within a Juju -model, all communication is facilitated by the Juju controller. To transfer -files between machines, you can use the -3 option to scp, e.g. add "-- -3" -to the command-line arguments. - - -Security considerations - -To enable transfers to/from machines that do not have internet access, you can use -the Juju controller as a proxy with the --proxy option. - -The SSH host keys of the target are verified by default. To disable this, add - --no-host-key-checks option. Using this option is strongly discouraged. \ No newline at end of file diff --git a/docs/user/cli/secret-backends.md b/docs/user/cli/secret-backends.md deleted file mode 100644 index 91b72540424c..000000000000 --- a/docs/user/cli/secret-backends.md +++ /dev/null @@ -1,24 +0,0 @@ -(secret-backends.md)= -# `secret-backends` -> See also: [add-secret-backend](#add-secret-backend), [remove-secret-backend](#remove-secret-backend), [show-secret-backend](#show-secret-backend), [update-secret-backend](#update-secret-backend) - -## Summary -Lists secret backends available in the controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-c`, `--controller` | | Controller to operate in | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--reveal` | false | Include sensitive backend config content | - -## Examples - - juju secret-backends - juju secret-backends --format yaml - - -## Details - -Displays the secret backends available for storing secret content. \ No newline at end of file diff --git a/docs/user/cli/secrets.md b/docs/user/cli/secrets.md deleted file mode 100644 index 4dc4d7433bb2..000000000000 --- a/docs/user/cli/secrets.md +++ /dev/null @@ -1,24 +0,0 @@ -(secrets.md)= -# `secrets` -> See also: [add-secret](#add-secret), [remove-secret](#remove-secret), [show-secret](#show-secret), [update-secret](#update-secret) - -## Summary -Lists secrets available in the model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--owner` | | Include secrets for the specified owner | - -## Examples - - juju secrets - juju secrets --format yaml - - -## Details - -Displays the secrets available for charms to use if granted access. \ No newline at end of file diff --git a/docs/user/cli/set-constraints.md b/docs/user/cli/set-constraints.md deleted file mode 100644 index 9469b280bf61..000000000000 --- a/docs/user/cli/set-constraints.md +++ /dev/null @@ -1,35 +0,0 @@ -(set-constraints.md)= -# `set-constraints` -> See also: [constraints](#constraints), [model-constraints](#model-constraints), [set-model-constraints](#set-model-constraints) - -## Summary -Sets machine constraints for an application. - -## Usage -```juju set-constraints [options] = ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju set-constraints mysql mem=8G cores=4 - juju set-constraints -m mymodel apache2 mem=8G arch=amd64 - - -## Details -Sets constraints for an application, which are used for all new machines -provisioned for that application. They can be viewed with `juju constraints`. -By default, the model is the current model. -Application constraints are combined with model constraints, set with `juju -set-model-constraints`, for commands (such as 'juju deploy') that -provision machines for applications. Where model and application constraints -overlap, the application constraints take precedence. -Constraints for a specific model can be viewed with `juju model-constraints`. -This command requires that the application to have at least one unit. To apply -constraints to -the first unit set them at the model level or pass them as an argument -when deploying. \ No newline at end of file diff --git a/docs/user/cli/set-credential.md b/docs/user/cli/set-credential.md deleted file mode 100644 index 05c10abfcc1d..000000000000 --- a/docs/user/cli/set-credential.md +++ /dev/null @@ -1,44 +0,0 @@ -(set-credential.md)= -# `set-credential` -> See also: [credentials](#credentials), [show-credential](#show-credential), [update-credential](#update-credential) - -## Summary -Relates a remote credential to a model. - -## Usage -```juju set-credential [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - -For cloud 'aws', relate remote credential 'bob' to model 'trinity': - - juju set-credential -m trinity aws bob - - -## Details - -This command relates a credential cached on a controller to a specific model. -It does not change/update the contents of an existing active credential. See -command `update-credential` for that. - -The credential specified may exist locally (on the client), remotely (on the -controller), or both. The command will error out if the credential is stored -neither remotely nor locally. - -When remote, the credential will be related to the specified model. - -When local and not remote, the credential will first be uploaded to the -controller and then related. - -This command does not affect an existing relation between the specified -credential and another model. If the credential is already related to a model -this operation will result in that credential being related to two models. - -Use the `show-credential` command to see how remote credentials are related -to models. \ No newline at end of file diff --git a/docs/user/cli/set-default-credentials.md b/docs/user/cli/set-default-credentials.md deleted file mode 100644 index 367d0a92c2e3..000000000000 --- a/docs/user/cli/set-default-credentials.md +++ /dev/null @@ -1,38 +0,0 @@ -(set-default-credentials.md)= -# `set-default-credentials` -> See also: [credentials](#credentials), [add-credential](#add-credential), [remove-credential](#remove-credential), [autoload-credentials](#autoload-credentials) -**Alias:** default-credential - -## Summary -Sets local default credentials for a cloud on this client. - -## Usage -```juju set-default-credentials [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--reset` | false | Reset default credential for the cloud | - -## Examples - - juju default-credential google credential_name - juju default-credential google - juju default-credential google --reset - - -## Details -The default credentials are specified with a "credential name". - -A credential name is created during the process of adding credentials either -via `juju add-credential` or `juju autoload-credentials`. -Credential names can be listed with `juju credentials`. - -This command sets a locally stored credential to be used as a default. -Default credentials avoid the need to specify a particular set of -credentials when more than one are available for a given cloud. - -To unset previously set default credential for a cloud, use --reset option. - -To view currently set default credential for a cloud, use the command -without a credential name argument. \ No newline at end of file diff --git a/docs/user/cli/set-default-region.md b/docs/user/cli/set-default-region.md deleted file mode 100644 index c0c6ace9d3c2..000000000000 --- a/docs/user/cli/set-default-region.md +++ /dev/null @@ -1,30 +0,0 @@ -(set-default-region.md)= -# `set-default-region` -> See also: [add-credential](#add-credential) -**Alias:** default-region - -## Summary -Sets the default region for a cloud. - -## Usage -```juju set-default-region [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--reset` | false | Reset default region for the cloud | - -## Examples - - juju default-region azure-china chinaeast - juju default-region azure-china - juju default-region azure-china --reset - - -## Details -The default region is specified directly as an argument. - -To unset previously set default region for a cloud, use --reset option. - -To confirm what region is currently set to be default for a cloud, -use the command without region argument. \ No newline at end of file diff --git a/docs/user/cli/set-firewall-rule.md b/docs/user/cli/set-firewall-rule.md deleted file mode 100644 index 1d051e948862..000000000000 --- a/docs/user/cli/set-firewall-rule.md +++ /dev/null @@ -1,34 +0,0 @@ -(set-firewall-rule.md)= -# `set-firewall-rule` -> See also: [firewall-rules](#firewall-rules) - -## Summary -Sets a firewall rule. - -## Usage -```juju set-firewall-rule [options] , --allowlist [,...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--allowlist` | | list of subnets to allowlist | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--whitelist` | | | - -## Examples - - juju set-firewall-rule ssh --allowlist 192.168.1.0/16 - - -## Details - -Firewall rules control ingress to a well known services -within a Juju model. A rule consists of the service name -and a allowlist of allowed ingress subnets. -The currently supported services are: -- ssh -- juju-application-offer - -DEPRECATION WARNING: Firewall rules have been moved to model-config settings "ssh-allow" and -"saas-ingress-allow". This command is deprecated in favour of -reading/writing directly to these settings. \ No newline at end of file diff --git a/docs/user/cli/set-model-constraints.md b/docs/user/cli/set-model-constraints.md deleted file mode 100644 index f3708400ebc6..000000000000 --- a/docs/user/cli/set-model-constraints.md +++ /dev/null @@ -1,30 +0,0 @@ -(set-model-constraints.md)= -# `set-model-constraints` -> See also: [models](#models), [model-constraints](#model-constraints), [constraints](#constraints), [set-constraints](#set-constraints) - -## Summary -Sets machine constraints on a model. - -## Usage -```juju set-model-constraints [options] = ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju set-model-constraints cores=8 mem=16G - juju set-model-constraints -m mymodel root-disk=64G - - -## Details -Sets constraints on the model that can be viewed with -`juju model-constraints`. By default, the model is the current model. -Model constraints are combined with constraints set for an application with -`juju set-constraints` for commands (such as 'deploy') that provision -machines/containers for applications. Where model and application constraints overlap, the -application constraints take precedence. -Constraints for a specific application can be viewed with `juju constraints`. \ No newline at end of file diff --git a/docs/user/cli/show-action.md b/docs/user/cli/show-action.md deleted file mode 100644 index 83701d219884..000000000000 --- a/docs/user/cli/show-action.md +++ /dev/null @@ -1,24 +0,0 @@ -(show-action.md)= -# `show-action` -> See also: [actions](#actions), [run](#run) - -## Summary -Shows detailed information about an action. - -## Usage -```juju show-action [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju show-action postgresql backup - - -## Details - -Show detailed information about an action on the target application. \ No newline at end of file diff --git a/docs/user/cli/show-application.md b/docs/user/cli/show-application.md deleted file mode 100644 index d775f604c194..000000000000 --- a/docs/user/cli/show-application.md +++ /dev/null @@ -1,32 +0,0 @@ -(show-application.md)= -# `show-application` - -## Summary -Displays information about an application. - -## Usage -```juju show-application [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|smart|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju show-application mysql - juju show-application mysql wordpress - - juju show-application myapplication - -where "myapplication" is the application name alias; see "juju help deploy" for more information. - - -## Details - -The command takes deployed application names or aliases as an argument. - -The command does an exact search. It does not support wildcards. \ No newline at end of file diff --git a/docs/user/cli/show-cloud.md b/docs/user/cli/show-cloud.md deleted file mode 100644 index ce32e68326f9..000000000000 --- a/docs/user/cli/show-cloud.md +++ /dev/null @@ -1,41 +0,0 @@ -(show-cloud.md)= -# `show-cloud` -> See also: [clouds](#clouds), [add-cloud](#add-cloud), [update-cloud](#update-cloud) - -## Summary -Shows detailed information for a cloud. - -## Usage -```juju show-cloud [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | display | Specify output format (display|json|yaml) | -| `--include-config` | false | Print available config option details specific to the specified cloud | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju show-cloud google - juju show-cloud azure-china --output ~/azure_cloud_details.txt - juju show-cloud myopenstack --controller mycontroller - juju show-cloud myopenstack --client - juju show-cloud myopenstack --client --controller mycontroller - - -## Details - -Provided information includes 'defined' (public, built-in), 'type', -'auth-type', 'regions', 'endpoints', and cloud specific configuration -options. - -If ‘--include-config’ is used, additional configuration (key, type, and -description) specific to the cloud are displayed if available. - -Use --controller option to show a cloud from a controller. - -Use --client option to show a cloud known on this client. \ No newline at end of file diff --git a/docs/user/cli/show-controller.md b/docs/user/cli/show-controller.md deleted file mode 100644 index f86ed8068e82..000000000000 --- a/docs/user/cli/show-controller.md +++ /dev/null @@ -1,27 +0,0 @@ -(show-controller.md)= -# `show-controller` -> See also: [controllers](#controllers) - -## Summary -Shows detailed information of a controller. - -## Usage -```juju show-controller [options] [ ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--show-password` | false | Show password for logged in user | - -## Examples - - juju show-controller - juju show-controller aws google - - -## Details -Shows extended information about a controller(s) as well as related models -and user login details. \ No newline at end of file diff --git a/docs/user/cli/show-credential.md b/docs/user/cli/show-credential.md deleted file mode 100644 index 6e852ec6fd80..000000000000 --- a/docs/user/cli/show-credential.md +++ /dev/null @@ -1,43 +0,0 @@ -(show-credential.md)= -# `show-credential` -> See also: [credentials](#credentials), [add-credential](#add-credential), [update-credential](#update-credential), [remove-credential](#remove-credential), [autoload-credentials](#autoload-credentials) - -## Summary -Shows credential information stored either on this client or on a controller. - -## Usage -```juju show-credential [options] [ ]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | yaml | Specify output format (yaml) | -| `-o`, `--output` | | Specify an output file | -| `--show-secrets` | false | Display credential secret attributes | - -## Examples - - juju show-credential google my-admin-credential - juju show-credentials - juju show-credentials --controller mycontroller --client - juju show-credentials --controller mycontroller - juju show-credentials --client - juju show-credentials --show-secrets - - -## Details - -This command displays information about cloud credential(s) stored -either on this client or on a controller for this user. - -To see the contents of a specific credential, supply its cloud and name. -To see all credentials stored for you, supply no arguments. - -To see secrets, content attributes marked as hidden, use --show-secrets option. - -To see credentials from this client, use "--client" option. - -To see credentials from a controller, use "--controller" option. \ No newline at end of file diff --git a/docs/user/cli/show-credentials.md b/docs/user/cli/show-credentials.md deleted file mode 100644 index aadba7fee942..000000000000 --- a/docs/user/cli/show-credentials.md +++ /dev/null @@ -1,44 +0,0 @@ -(show-credentials.md)= -# `show-credentials` -> See also: [credentials](#credentials), [add-credential](#add-credential), [update-credential](#update-credential), [remove-credential](#remove-credential), [autoload-credentials](#autoload-credentials) -**Alias:** show-credential - -## Summary -Shows credential information stored either on this client or on a controller. - -## Usage -```juju show-credentials [options] [ ]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `--format` | yaml | Specify output format (yaml) | -| `-o`, `--output` | | Specify an output file | -| `--show-secrets` | false | Display credential secret attributes | - -## Examples - - juju show-credential google my-admin-credential - juju show-credentials - juju show-credentials --controller mycontroller --client - juju show-credentials --controller mycontroller - juju show-credentials --client - juju show-credentials --show-secrets - - -## Details - -This command displays information about cloud credential(s) stored -either on this client or on a controller for this user. - -To see the contents of a specific credential, supply its cloud and name. -To see all credentials stored for you, supply no arguments. - -To see secrets, content attributes marked as hidden, use --show-secrets option. - -To see credentials from this client, use "--client" option. - -To see credentials from a controller, use "--controller" option. \ No newline at end of file diff --git a/docs/user/cli/show-machine.md b/docs/user/cli/show-machine.md deleted file mode 100644 index cda4532eddcb..000000000000 --- a/docs/user/cli/show-machine.md +++ /dev/null @@ -1,31 +0,0 @@ -(show-machine.md)= -# `show-machine` -> See also: [add-machine](#add-machine) - -## Summary -Show a machine's status. - -## Usage -```juju show-machine [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--color` | false | Force use of ANSI color codes | -| `--format` | yaml | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--utc` | false | Display time as UTC in RFC3339 format | - -## Examples - - juju show-machine 0 - juju show-machine 1 2 3 - - -## Details - -Show a specified machine on a model. Default format is in yaml, -other formats can be specified with the "--format" option. -Available formats are yaml, tabular, and json \ No newline at end of file diff --git a/docs/user/cli/show-model.md b/docs/user/cli/show-model.md deleted file mode 100644 index 64cf1048cbd2..000000000000 --- a/docs/user/cli/show-model.md +++ /dev/null @@ -1,19 +0,0 @@ -(show-model.md)= -# `show-model` -> See also: [add-model](#add-model) - -## Summary -Shows information about the current or specified model. - -## Usage -```juju show-model [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Details -Show information about the current or specified model. \ No newline at end of file diff --git a/docs/user/cli/show-offer.md b/docs/user/cli/show-offer.md deleted file mode 100644 index 66e4cc92c47d..000000000000 --- a/docs/user/cli/show-offer.md +++ /dev/null @@ -1,45 +0,0 @@ -(show-offer.md)= -# `show-offer` -> See also: [find-offers](#find-offers) - -## Summary -Shows extended information about the offered application. - -## Usage -```juju show-offer [options] [:]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - -To show the extended information for the application 'prod' offered -from the model 'default' on the same Juju controller: - - juju show-offer default.prod - -The supplied URL can also include a username where offers require them. -This will be given as part of the URL retrieved from the -'juju find-offers' command. To show information for the application -'prod' from the model 'default' from the user 'admin': - - juju show-offer admin/default.prod - -To show the information regarding the application 'prod' offered from -the model 'default' on an accessible controller named 'controller': - - juju show-offer controller:default.prod - - - -## Details - -This command is intended to enable users to learn more about the -application offered from a particular URL. In addition to the URL of -the offer, extra information is provided from the readme file of the -charm being offered. \ No newline at end of file diff --git a/docs/user/cli/show-operation.md b/docs/user/cli/show-operation.md deleted file mode 100644 index 33b53af925fd..000000000000 --- a/docs/user/cli/show-operation.md +++ /dev/null @@ -1,38 +0,0 @@ -(show-operation.md)= -# `show-operation` -> See also: [run](#run), [operations](#operations), [show-task](#show-task) - -## Summary -Show results of an operation. - -## Usage -```juju show-operation [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--utc` | false | Show times in UTC | -| `--wait` | -1s | Wait for results | -| `--watch` | false | Wait indefinitely for results | - -## Examples - - juju show-operation 1 - juju show-operation 1 --wait=2m - juju show-operation 1 --watch - - -## Details - -Show the results returned by an operation with the given ID. -To block until the result is known completed or failed, use -the --wait option with a duration, as in --wait 5s or --wait 1h. -Use --watch to wait indefinitely. - -The default behavior without --wait or --watch is to immediately check and return; -if the results are "pending" then only the available information will be -displayed. This is also the behavior when any negative time is given. \ No newline at end of file diff --git a/docs/user/cli/show-secret-backend.md b/docs/user/cli/show-secret-backend.md deleted file mode 100644 index e44eca642429..000000000000 --- a/docs/user/cli/show-secret-backend.md +++ /dev/null @@ -1,27 +0,0 @@ -(show-secret-backend.md)= -# `show-secret-backend` -> See also: [add-secret-backend](#add-secret-backend), [secret-backends](#secret-backends), [remove-secret-backend](#remove-secret-backend), [update-secret-backend](#update-secret-backend) - -## Summary -Displays the specified secret backend. - -## Usage -```juju show-secret-backend [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-c`, `--controller` | | Controller to operate in | -| `--format` | yaml | Specify output format (json|yaml) | -| `-o`, `--output` | | Specify an output file | -| `--reveal` | false | Include sensitive backend config content | - -## Examples - - juju show-secret-backend myvault - juju secret-backends myvault --reveal - - -## Details - -Displays the specified secret backend. \ No newline at end of file diff --git a/docs/user/cli/show-secret.md b/docs/user/cli/show-secret.md deleted file mode 100644 index a1a6dd700b07..000000000000 --- a/docs/user/cli/show-secret.md +++ /dev/null @@ -1,39 +0,0 @@ -(show-secret.md)= -# `show-secret` -> See also: [add-secret](#add-secret), [update-secret](#update-secret), [remove-secret](#remove-secret) - -## Summary -Shows details for a specific secret. - -## Usage -```juju show-secret [options] |``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--format` | yaml | Specify output format (json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `-r`, `--revision` | 0 | | -| `--reveal` | false | Reveal secret values, applicable to yaml or json formats only | -| `--revisions` | false | Show the secret revisions metadata | - -## Examples - - juju show-secret my-secret - juju show-secret 9m4e2mr0ui3e8a215n4g - juju show-secret secret:9m4e2mr0ui3e8a215n4g --revision 2 - juju show-secret 9m4e2mr0ui3e8a215n4g --revision 2 --reveal - juju show-secret 9m4e2mr0ui3e8a215n4g --revisions - juju show-secret 9m4e2mr0ui3e8a215n4g --reveal - - -## Details - -Displays the details of a specified secret. - -For controller/model admins, the actual secret content is exposed -with the '--reveal' option in json or yaml formats. - -Use --revision to inspect a particular revision, else latest is used. -Use --revisions to see the metadata for each revision. \ No newline at end of file diff --git a/docs/user/cli/show-space.md b/docs/user/cli/show-space.md deleted file mode 100644 index 06cb667a34d3..000000000000 --- a/docs/user/cli/show-space.md +++ /dev/null @@ -1,29 +0,0 @@ -(show-space.md)= -# `show-space` -> See also: [add-space](#add-space), [spaces](#spaces), [reload-spaces](#reload-spaces), [rename-space](#rename-space), [remove-space](#remove-space) - -## Summary -Shows information about the network space. - -## Usage -```juju show-space [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - -Show a space by name: - - juju show-space alpha - - -## Details -Displays extended information about a given space. -Output includes the space subnets, applications with bindings to the space, -and a count of machines connected to the space. \ No newline at end of file diff --git a/docs/user/cli/show-status-log.md b/docs/user/cli/show-status-log.md deleted file mode 100644 index 27446e001dd4..000000000000 --- a/docs/user/cli/show-status-log.md +++ /dev/null @@ -1,73 +0,0 @@ -(show-status-log.md)= -# `show-status-log` -> See also: [status](#status) - -## Summary -Output past statuses for the specified entity. - -## Usage -```juju show-status-log [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--days` | 0 | Returns the logs for the past <days> days (cannot be combined with -n or --date) | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `--from-date` | | Returns logs for any date after the passed one, the expected date format is YYYY-MM-DD (cannot be combined with -n or --days) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-n` | 0 | Returns the last N logs (cannot be combined with --days or --date) | -| `-o`, `--output` | | Specify an output file | -| `--type` | unit | Type of statuses to be displayed [application|container|juju-container|juju-machine|juju-unit|machine|model|saas|unit|workload] | -| `--utc` | false | Display time as UTC in RFC3339 format | - -## Examples - -Show the status history for the specified unit: - - juju show-status-log mysql/0 - -Show the status history for the specified unit with the last 30 logs: - - juju show-status-log mysql/0 -n 30 - -Show the status history for the specified unit with the logs for the past 2 days: - - juju show-status-log mysql/0 -days 2 - -Show the status history for the specified unit with the logs for any date after 2020-01-01: - - juju show-status-log mysql/0 --from-date 2020-01-01 - -Show the status history for the specified application: - - juju show-status-log -type application wordpress - -Show the status history for the specified machine: - - juju show-status-log 0 - -Show the status history for the model: - - juju show-status-log -type model - - -## Details - -This command will report the history of status changes for -a given entity. -The statuses are available for the following types. --type supports: - application: statuses for the specified application - container: statuses from the agent that is managing containers - juju-container: statuses from the containers only and not their host machines - juju-machine: status of the agent that is managing a machine - juju-unit: statuses from the agent that is managing a unit - machine: statuses that occur due to provisioning of a machine - model: statuses for the model itself - saas: statuses for the specified SAAS application - unit: statuses for specified unit and its workload - workload: statuses for unit's workload - - and sorted by time of occurrence. - The default is unit. \ No newline at end of file diff --git a/docs/user/cli/show-storage.md b/docs/user/cli/show-storage.md deleted file mode 100644 index f7f23f1e22f4..000000000000 --- a/docs/user/cli/show-storage.md +++ /dev/null @@ -1,29 +0,0 @@ -(show-storage.md)= -# `show-storage` -> See also: [storage](#storage), [attach-storage](#attach-storage), [detach-storage](#detach-storage), [remove-storage](#remove-storage) - -## Summary -Shows storage instance information. - -## Usage -```juju show-storage [options] [...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju show-storage storage-id - - -## Details - -Show extended information about storage instances. -Storage instances to display are specified by storage IDs. -Storage IDs are positional arguments to the command and do not need to be comma -separated when more than one ID is desired. \ No newline at end of file diff --git a/docs/user/cli/show-task.md b/docs/user/cli/show-task.md deleted file mode 100644 index 646cee99887b..000000000000 --- a/docs/user/cli/show-task.md +++ /dev/null @@ -1,42 +0,0 @@ -(show-task.md)= -# `show-task` -> See also: [cancel-task](#cancel-task), [run](#run), [operations](#operations), [show-operation](#show-operation) - -## Summary -Show results of a task by ID. - -## Usage -```juju show-task [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | plain | Specify output format (json|plain|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--utc` | false | Show times in UTC | -| `--wait` | -1s | Maximum wait time for a task to complete | -| `--watch` | false | Wait indefinitely for results | - -## Examples - - juju show-task 1 - juju show-task 1 --wait=2m - juju show-task 1 --watch - - -## Details - -Show the results returned by a task with the given ID. -To block until the result is known completed or failed, use -the --wait option with a duration, as in --wait 5s or --wait 1h. -Use --watch to wait indefinitely. - -The default behavior without --wait or --watch is to immediately check and return; -if the results are "pending" then only the available information will be -displayed. This is also the behavior when any negative time is given. - -Note: if Juju has been upgraded from 2.6 and there are old action UUIDs still in use, -and you want to specify just the UUID prefix to match on, you will need to include up -to at least the first "-" to disambiguate from a newer numeric id. \ No newline at end of file diff --git a/docs/user/cli/show-unit.md b/docs/user/cli/show-unit.md deleted file mode 100644 index e1e00003c26b..000000000000 --- a/docs/user/cli/show-unit.md +++ /dev/null @@ -1,50 +0,0 @@ -(show-unit.md)= -# `show-unit` -> See also: [add-unit](#add-unit), [remove-unit](#remove-unit) - -## Summary -Displays information about a unit. - -## Usage -```juju show-unit [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--app` | false | only show application relation data | -| `--endpoint` | | only show relation data for the specified endpoint | -| `--format` | yaml | Specify output format (json|smart|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--related-unit` | | only show relation data for the specified unit | - -## Examples - -To show information about a unit: - - juju show-unit mysql/0 - -To show information about multiple units: - - juju show-unit mysql/0 wordpress/1 - -To show only the application relation data for a unit: - - juju show-unit mysql/0 --app - -To show only the relation data for a specific endpoint: - - juju show-unit mysql/0 --endpoint db - -To show only the relation data for a specific related unit: - - juju show-unit mysql/0 --related-unit wordpress/2 - - -## Details - -The command takes deployed unit names as an argument. - -Optionally, relation data for only a specified endpoint -or related unit may be shown, or just the application data. \ No newline at end of file diff --git a/docs/user/cli/show-user.md b/docs/user/cli/show-user.md deleted file mode 100644 index 091c32300e48..000000000000 --- a/docs/user/cli/show-user.md +++ /dev/null @@ -1,29 +0,0 @@ -(show-user.md)= -# `show-user` -> See also: [add-user](#add-user), [register](#register), [users](#users) - -## Summary -Show information about a user. - -## Usage -```juju show-user [options] []``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-c`, `--controller` | | Controller to operate in | -| `--exact-time` | false | Use full timestamp for connection times | -| `--format` | yaml | Specify output format (json|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju show-user - juju show-user jsmith - juju show-user --format json - juju show-user --format yaml - - -## Details -By default, the YAML format is used and the user name is the current -user. \ No newline at end of file diff --git a/docs/user/cli/spaces.md b/docs/user/cli/spaces.md deleted file mode 100644 index 78125c4c5eea..000000000000 --- a/docs/user/cli/spaces.md +++ /dev/null @@ -1,34 +0,0 @@ -(spaces.md)= -# `spaces` -> See also: [add-space](#add-space), [reload-spaces](#reload-spaces) - -## Summary -List known spaces, including associated subnets. - -## Usage -```juju spaces [options] [--short] [--format yaml|json] [--output ]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--short` | false | only display spaces. | - -## Examples - -List spaces and their subnets: - - juju spaces - -List spaces: - - juju spaces --short - - -## Details -Displays all defined spaces. By default both spaces and their subnets are displayed. -Supplying the --short option will list just the space names. -The --output argument allows the command's output to be redirected to a file. \ No newline at end of file diff --git a/docs/user/cli/ssh-keys.md b/docs/user/cli/ssh-keys.md deleted file mode 100644 index 25fd56700f74..000000000000 --- a/docs/user/cli/ssh-keys.md +++ /dev/null @@ -1,31 +0,0 @@ -(ssh-keys.md)= -# `ssh-keys` -> See also: [add-ssh-key](#add-ssh-key), [remove-ssh-key](#remove-ssh-key) - -## Summary -Lists the currently known SSH keys for the current (or specified) model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--full` | false | Show full key instead of just the fingerprint | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju ssh-keys - -To examine the full key, use the '--full' option: - - juju ssh-keys -m jujutest --full - - -## Details -Juju maintains a per-model cache of SSH keys which it copies to each newly -created unit. -This command will display a list of all the keys currently used by Juju in -the current model (or the model specified, if the '-m' option is used). -By default a minimal list is returned, showing only the fingerprint of -each key and its text identifier. By using the '--full' option, the entire -key may be displayed. \ No newline at end of file diff --git a/docs/user/cli/ssh.md b/docs/user/cli/ssh.md deleted file mode 100644 index 2c0a354683cf..000000000000 --- a/docs/user/cli/ssh.md +++ /dev/null @@ -1,115 +0,0 @@ -(ssh.md)= -# `ssh` -> See also: [scp](#scp) - -## Summary -Initiates an SSH session or executes a command on a Juju machine or container. - -## Usage -```juju ssh [options] <[user@]target> [openssh options] [command]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--container` | | the container name of the target pod | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-host-key-checks` | false | Skip host key checking (INSECURE) | -| `--proxy` | false | Proxy through the API server | -| `--pty` | <auto> | Enable pseudo-tty allocation | - -## Examples - -Connect to machine 0: - - juju ssh 0 - -Connect to machine 1 and run command 'uname -a': - - juju ssh 1 uname -a - -Connect to the leader mysql unit: - - juju ssh mysql/leader - -Connect to a specific mysql unit: - - juju ssh mysql/0 - -Connect to a jenkins unit as user jenkins: - - juju ssh jenkins@jenkins/0 - -Connect to a mysql unit with an identity not known to juju (ssh option -i): - - juju ssh mysql/0 -i ~/.ssh/my_private_key echo hello - -**For k8s charms running the workload in a separate pod:** - -Connect to a k8s unit targeting the operator pod by default: - - juju ssh mysql/0 - juju ssh mysql/0 bash - -Connect to a k8s unit targeting the workload pod by specifying --remote: - - juju ssh --remote mysql/0 - -**For k8s charms using the sidecar pattern:** - -Connect to a k8s unit targeting the charm container (the default): - - juju ssh --container charm snappass/0 - -Connect to a k8s unit targeting the redis container: - - juju ssh --container redis snappass/0 - -**For k8s controller:** - -Connect to the api server pod: - - juju ssh --container api-server 0 - -Connect to the mongo db pod: - - juju ssh --container mongodb 0 - - -## Details - -The ssh target is identified by the <target> argument which is either a 'unit -name' or a 'machine id'. Both can be obtained by examining the output to "juju -status". - -Valid unit identifiers are: - a standard unit ID, such as mysql/0 or; - leader syntax of the form <application>/leader, such as mysql/leader. - -If 'user' is specified then the connection is made to that user -account; otherwise, the default 'ubuntu' account, created by Juju, is used. - -The optional command is executed on the remote machine, and any output is sent -back to the user. If no command is specified, then an interactive shell session -will be initiated. - -When "juju ssh" is executed without a terminal attached, e.g. when piping the -output of another command into it, then the default behavior is to not allocate -a pseudo-terminal (pty) for the ssh session; otherwise a pty is allocated. This -behavior can be overridden by explicitly specifying the behavior with -"--pty=true" or "--pty=false". - -The SSH host keys of the target are verified. The --no-host-key-checks option -can be used to disable these checks. Use of this option is not recommended as -it opens up the possibility of a man-in-the-middle attack. - -The default identity known to Juju and used by this command is ~/.ssh/id_ed25519 - -Options can be passed to the local OpenSSH client (ssh) on platforms -where it is available. This is done by inserting them between the target and -a possible remote command. Refer to the ssh man page for an explanation -of those options. - -For k8s charms, the --container argument is used to identity a specific -container in the pod. For charms which run the workload in a separate pod -to that of the charm, the default ssh target is the charm operator pod. -The workload pod may be specified using the --remote argument. \ No newline at end of file diff --git a/docs/user/cli/status.md b/docs/user/cli/status.md deleted file mode 100644 index 3b5e3bdaa885..000000000000 --- a/docs/user/cli/status.md +++ /dev/null @@ -1,106 +0,0 @@ -(status.md)= -# `status` -> See also: [machines](#machines), [show-model](#show-model), [show-status-log](#show-status-log), [storage](#storage) - -## Summary -Report the status of the model, its machines, applications and units. - -## Usage -```juju status [options] [ [...]]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--color` | false | Use ANSI color codes in tabular output | -| `--format` | tabular | Specify output format (json|line|oneline|short|summary|tabular|yaml) | -| `--integrations` | false | Show 'integrations' section in tabular output | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--no-color` | false | Disable ANSI color codes in tabular output | -| `-o`, `--output` | | Specify an output file | -| `--relations` | false | The same as '--integrations' | -| `--retry-count` | 3 | Number of times to retry API failures | -| `--retry-delay` | 100ms | Time to wait between retry attempts | -| `--storage` | false | Show 'storage' section in tabular output | -| `--utc` | false | Display timestamps in the UTC timezone | -| `--watch` | 0s | Watch the status every period of time | - -## Examples - -Report the status of units hosted on machine 0: - - juju status 0 - -Report the status of the the mysql application: - - juju status mysql - -Report the status for applications that start with nova-: - - juju status nova-* - -Include information about storage and integrations in output: - - juju status --storage --integrations - -Provide output as valid JSON: - - juju status --format=json - -Watch the status every five seconds: - - juju status --watch 5s - -Show only applications/units in active status: - - juju status active - -Show only applications/units in error status: - - juju status error - - -## Details - -Report the model's status, optionally filtered by names of applications or -units. When selectors are present, filter the report to exclude entities that -do not match. - - juju status [ [...]] - -<selector> selects machines, units or applications from the model to display. -Wildcard characters (*) enable multiple entities to be matched at the same -time. - - (||)[*] - -When an entity that matches <selector> is integrated with other applications, the -status of those applications will also be presented. By default (without a -<selector>) the status of all applications and their units will be displayed. - - -Altering the output format - -The '--format' option allows you to specify how the status report is formatted. - - --format=tabular (default) - Display information about all aspects of the model in a - human-centric manner. Omits some information by default. - Use the '--integrations' and '--storage' options to include - all available information. - - --format=line - --format=short - --format=oneline - Reports information from units. Includes their IP address, - open ports and the status of the workload and agent. - - --format=summary - Reports aggregated information about the model. Includes - a description of subnets and ports that are in use, the - counts of applications, units, and machines by status code. - - --format=json - --format=yaml - Provide information in a JSON or YAML formats for - programmatic use. \ No newline at end of file diff --git a/docs/user/cli/storage-pools.md b/docs/user/cli/storage-pools.md deleted file mode 100644 index e75b8d0ad6b0..000000000000 --- a/docs/user/cli/storage-pools.md +++ /dev/null @@ -1,44 +0,0 @@ -(storage-pools.md)= -# `storage-pools` -> See also: [create-storage-pool](#create-storage-pool), [remove-storage-pool](#remove-storage-pool) - -## Summary -List storage pools. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--name` | | Only show pools with these names | -| `-o`, `--output` | | Specify an output file | -| `--provider` | | Only show pools of these provider types | - -## Examples - -List all storage pools: - - juju storage-pools - -List only pools of type kubernetes, azure, ebs: - - juju storage-pools --provider kubernetes,azure,ebs - -List only pools named pool1 and pool2: - - juju storage-pools --name pool1,pool2 - - -## Details - -The user can filter on pool type, name. - -If no filter is specified, all current pools are listed. -If at least 1 name and type is specified, only pools that match both a name -AND a type from criteria are listed. -If only names are specified, only mentioned pools will be listed. -If only types are specified, all pools of the specified types will be listed. - -Both pool types and names must be valid. -Valid pool types are pool types that are registered for Juju model. \ No newline at end of file diff --git a/docs/user/cli/storage.md b/docs/user/cli/storage.md deleted file mode 100644 index 52f70a0feef6..000000000000 --- a/docs/user/cli/storage.md +++ /dev/null @@ -1,38 +0,0 @@ -(storage.md)= -# `storage` -> See also: [show-storage](#show-storage), [add-storage](#add-storage), [remove-storage](#remove-storage) - -## Summary -Lists storage details. - -## Usage -```juju storage [options] ...``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--filesystem` | false | List filesystem storage(deprecated) | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--volume` | false | List volume storage(deprecated) | - -## Examples - -List all storage: - - juju storage - -List only filesystem storage: - - juju storage --filesystem - -List only volume storage: - - juju storage --volume - - -## Details - -List information about storage. \ No newline at end of file diff --git a/docs/user/cli/subnets.md b/docs/user/cli/subnets.md deleted file mode 100644 index c058baa638cd..000000000000 --- a/docs/user/cli/subnets.md +++ /dev/null @@ -1,43 +0,0 @@ -(subnets.md)= -# `subnets` - -## Summary -List subnets known to Juju. - -## Usage -```juju subnets [options] [--space ] [--zone ] [--format yaml|json] [--output ]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | yaml | Specify output format (json|yaml) | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `-o`, `--output` | | Specify an output file | -| `--space` | | Filter results by space name | -| `--zone` | | Filter results by zone name | - -## Examples - -To list all subnets known to Juju: - - juju subnets - -To list subnets associated with a specific network space: - - juju subnets --space my-space - -To list subnets associated with a specific availability zone: - - juju subnets --zone my-zone - - -## Details -Displays a list of all subnets known to Juju. Results can be filtered -using the optional --space and/or --zone arguments to only display -subnets associated with a given network space and/or availability zone. - -Like with other Juju commands, the output and its format can be changed -using the --format and --output (or -o) optional arguments. Supported -output formats include "yaml" (default) and "json". To redirect the -output to a file, use --output. \ No newline at end of file diff --git a/docs/user/cli/suspend-relation.md b/docs/user/cli/suspend-relation.md deleted file mode 100644 index 92d3f1efcbec..000000000000 --- a/docs/user/cli/suspend-relation.md +++ /dev/null @@ -1,29 +0,0 @@ -(suspend-relation.md)= -# `suspend-relation` -> See also: [integrate](#integrate), [offers](#offers), [remove-relation](#remove-relation), [resume-relation](#resume-relation) - -## Summary -Suspends a relation to an application offer. - -## Usage -```juju suspend-relation [options] [ ...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--message` | | reason for suspension | - -## Examples - - juju suspend-relation 123 - juju suspend-relation 123 --message "reason for suspending" - juju suspend-relation 123 456 --message "reason for suspending" - - -## Details - -A relation between an application in another model and an offer in this model will be suspended. -The relation-departed and relation-broken hooks will be run for the relation, and the relation -status will be set to suspended. The relation is specified using its id. \ No newline at end of file diff --git a/docs/user/cli/switch.md b/docs/user/cli/switch.md deleted file mode 100644 index 9dd5588c2a8c..000000000000 --- a/docs/user/cli/switch.md +++ /dev/null @@ -1,51 +0,0 @@ -(switch.md)= -# `switch` -> See also: [controllers](#controllers), [models](#models), [show-controller](#show-controller) - -## Summary -Selects or identifies the current controller and model. - -## Usage -```juju switch [options] [||:|:|:]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name> | - -## Examples - - juju switch - juju switch mymodel - juju switch mycontroller - juju switch mycontroller:mymodel - juju switch mycontroller: - juju switch :mymodel - juju switch -m mymodel - juju switch -m mycontroller:mymodel - juju switch -c mycontroller - juju switch - # switch to previous controller:model - juju switch -m - # switch to previous controller on its current model - juju switch -c - # switch to previous model on the current controller - - -## Details -When used without an argument, the command shows the current controller -and its active model. - -When a single argument without a colon is provided juju first looks for a -controller by that name and switches to it, and if it's not found it tries -to switch to a model within current controller. - -Colon allows to disambiguate model over controller: -- mycontroller: switches to default model in mycontroller, -- :mymodel switches to mymodel in current controller -- mycontroller:mymodel switches to mymodel on mycontroller. - -The special arguments - (hyphen) instead of a model or a controller allows to return -to previous model or controller. It can be used as main argument or as flag argument. - -The `juju models` command can be used to determine the active model -(of any controller). An asterisk denotes it. \ No newline at end of file diff --git a/docs/user/cli/sync-agent-binary.md b/docs/user/cli/sync-agent-binary.md deleted file mode 100644 index 4487c0354a3a..000000000000 --- a/docs/user/cli/sync-agent-binary.md +++ /dev/null @@ -1,34 +0,0 @@ -(sync-agent-binary.md)= -# `sync-agent-binary` -> See also: [upgrade-controller](#upgrade-controller) - -## Summary -Copy agent binaries from the official agent store into a local controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--agent-version` | | Copy a specific major[.minor] version | -| `--dry-run` | false | Don't copy, just print what would be copied | -| `--local-dir` | | Local destination directory | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--public` | false | Tools are for a public cloud, so generate mirrors information | -| `--source` | | Local source directory | -| `--stream` | | Simplestreams stream for which to sync metadata | - -## Examples - - juju sync-agent-binary --debug --agent-version 2.0 - juju sync-agent-binary --debug --agent-version 2.0 --local-dir=/home/ubuntu/sync-agent-binary - - -## Details - -This copies the Juju agent software from the official agent binaries store -(located at https://streams.canonical.com/juju) into the controller. -It is generally done when the controller is without Internet access. - -Instead of the above site, a local directory can be specified as source. -The online store will, of course, need to be contacted at some point to get -the software. \ No newline at end of file diff --git a/docs/user/cli/trust.md b/docs/user/cli/trust.md deleted file mode 100644 index f4d463482adc..000000000000 --- a/docs/user/cli/trust.md +++ /dev/null @@ -1,30 +0,0 @@ -(trust.md)= -# `trust` -> See also: [config](#config) - -## Summary -Sets the trust status of a deployed application to true. - -## Usage -```juju trust [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--remove` | false | Remove trusted access from a trusted application | -| `--scope` | | k8s models only - needs to be set to 'cluster' | - -## Examples - - juju trust media-wiki - juju trust metallb --scope=cluster - - -## Details -Sets the trust configuration value to true. - -On k8s models, the trust operation currently grants the charm full access to the cluster. -Until the permissions model is refined to grant more granular role based access, the use of -'--scope=cluster' is required to confirm this choice. \ No newline at end of file diff --git a/docs/user/cli/unexpose.md b/docs/user/cli/unexpose.md deleted file mode 100644 index 0acb5f0ccc67..000000000000 --- a/docs/user/cli/unexpose.md +++ /dev/null @@ -1,45 +0,0 @@ -(unexpose.md)= -# `unexpose` -> See also: [expose](#expose) - -## Summary -Removes public availability over the network for an application. - -## Usage -```juju unexpose [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--endpoints` | | Unexpose only the ports that charms have opened for this comma-delimited list of endpoints | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - - juju unexpose apache2 - -To unexpose only the ports that charms have opened for the "www", or "www" and "logs" endpoints: - - juju unexpose apache2 --endpoints www - - juju unexpose apache2 --endpoints www,logs - - -## Details -Adjusts the firewall rules and any relevant security mechanisms of the -cloud to deny public access to the application. - -Applications are unexposed by default when they get created. If exposed via -the "juju expose" command, they can be unexposed by running the "juju unexpose" -command. - -If no additional options are specified, the command will unexpose the -application (if exposed). - -The --endpoints option may be used to restrict the effect of this command to -the list of ports opened for a comma-delimited list of endpoints. - -Note that when the --endpoints option is provided, the application will still -remain exposed if any other of its endpoints are still exposed. However, if -none of its endpoints remain exposed, the application will be instead unexposed. \ No newline at end of file diff --git a/docs/user/cli/unregister.md b/docs/user/cli/unregister.md deleted file mode 100644 index e9c76ab1fed9..000000000000 --- a/docs/user/cli/unregister.md +++ /dev/null @@ -1,26 +0,0 @@ -(unregister.md)= -# `unregister` -> See also: [destroy-controller](#destroy-controller), [kill-controller](#kill-controller), [register](#register) - -## Summary -Unregisters a Juju controller. - -## Usage -```juju unregister [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--no-prompt` | false | Do not ask for confirmation | - -## Examples - - juju unregister my-controller - - -## Details - -Removes local connection information for the specified controller. This -command does not destroy the controller. In order to regain access to an -unregistered controller, it will need to be added again using the juju register -command. \ No newline at end of file diff --git a/docs/user/cli/update-cloud.md b/docs/user/cli/update-cloud.md deleted file mode 100644 index 2d0898d182a9..000000000000 --- a/docs/user/cli/update-cloud.md +++ /dev/null @@ -1,41 +0,0 @@ -(update-cloud.md)= -# `update-cloud` -> See also: [add-cloud](#add-cloud), [remove-cloud](#remove-cloud), [clouds](#clouds) - -## Summary -Updates cloud information available to Juju. - -## Usage -```juju update-cloud [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `-f` | | The path to a cloud definition file | - -## Examples - - juju update-cloud mymaas -f path/to/maas.yaml - juju update-cloud mymaas -f path/to/maas.yaml --controller mycontroller - juju update-cloud mymaas --controller mycontroller - juju update-cloud mymaas --client --controller mycontroller - juju update-cloud mymaas --client -f path/to/maas.yaml - - -## Details - -Update cloud information on this client and/or on a controller. - -A cloud can be updated from a file. This requires a <cloud name> and a yaml file -containing the cloud details. -This method can be used for cloud updates on the client side and on a controller. - -A cloud on the controller can also be updated just by using a name of a cloud -from this client. - -Use --controller option to update a cloud on a controller. - -Use --client to update cloud definition on this client. \ No newline at end of file diff --git a/docs/user/cli/update-credential.md b/docs/user/cli/update-credential.md deleted file mode 100644 index cd3212974f25..000000000000 --- a/docs/user/cli/update-credential.md +++ /dev/null @@ -1,58 +0,0 @@ -(update-credential.md)= -# `update-credential` -> See also: [add-credential](#add-credential), [credentials](#credentials), [remove-credential](#remove-credential), [set-credential](#set-credential) - -## Summary -Updates a controller credential for a cloud. - -## Usage -```juju update-credential [options] [ []]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `-f`, `--file` | | The YAML file containing credential details to update | -| `--force` | false | Force update controller side credential, ignore validation errors | -| `--region` | | Cloud region that credential is valid for | - -## Examples - - juju update-credential aws mysecrets - juju update-credential -f mine.yaml - juju update-credential -f mine.yaml --client - juju update-credential aws -f mine.yaml - juju update-credential azure --region brazilsouth -f mine.yaml - juju update-credential -f mine.yaml --controller mycontroller --force - - -## Details -Cloud credentials are used for model operations and manipulations. -Since it is common to have long-running models, it is also common to -have these cloud credentials become invalid during models' lifetime. -When this happens, a user must update the cloud credential that -a model was created with to the new and valid details on controller. - -This command allows to update an existing, already-stored, named, -cloud-specific credential on a controller as well as the one from this client. - -Use --controller option to update a credential definition on a controller. - -When updating cloud credential on a controller, Juju performs additional -checks to ensure that the models that use this credential can still -access cloud instances after the update. Occasionally, these checks may not be desired -by the user and can be by-passed using --force option. -Force update may leave some models with un-reachable machines. -Consequently, it is not recommended as a default update action. -Models with un-reachable machines are most commonly fixed by using another cloud credential, -see ' + "'juju set-credential'" + ' for more information. - -Use --client to update a credential definition on this client. -If a user will use a different client, say a different laptop, -the update will not affect that client's (laptop's) copy. - -Before credential is updated, the new content is validated. For some providers, -cloud credentials are region specific. To validate the credential for a non-default region, -use --region. \ No newline at end of file diff --git a/docs/user/cli/update-credentials.md b/docs/user/cli/update-credentials.md deleted file mode 100644 index 070f0b2410ce..000000000000 --- a/docs/user/cli/update-credentials.md +++ /dev/null @@ -1,59 +0,0 @@ -(update-credentials.md)= -# `update-credentials` -> See also: [add-credential](#add-credential), [credentials](#credentials), [remove-credential](#remove-credential), [set-credential](#set-credential) -**Alias:** update-credential - -## Summary -Updates a controller credential for a cloud. - -## Usage -```juju update-credentials [options] [ []]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `-f`, `--file` | | The YAML file containing credential details to update | -| `--force` | false | Force update controller side credential, ignore validation errors | -| `--region` | | Cloud region that credential is valid for | - -## Examples - - juju update-credential aws mysecrets - juju update-credential -f mine.yaml - juju update-credential -f mine.yaml --client - juju update-credential aws -f mine.yaml - juju update-credential azure --region brazilsouth -f mine.yaml - juju update-credential -f mine.yaml --controller mycontroller --force - - -## Details -Cloud credentials are used for model operations and manipulations. -Since it is common to have long-running models, it is also common to -have these cloud credentials become invalid during models' lifetime. -When this happens, a user must update the cloud credential that -a model was created with to the new and valid details on controller. - -This command allows to update an existing, already-stored, named, -cloud-specific credential on a controller as well as the one from this client. - -Use --controller option to update a credential definition on a controller. - -When updating cloud credential on a controller, Juju performs additional -checks to ensure that the models that use this credential can still -access cloud instances after the update. Occasionally, these checks may not be desired -by the user and can be by-passed using --force option. -Force update may leave some models with un-reachable machines. -Consequently, it is not recommended as a default update action. -Models with un-reachable machines are most commonly fixed by using another cloud credential, -see ' + "'juju set-credential'" + ' for more information. - -Use --client to update a credential definition on this client. -If a user will use a different client, say a different laptop, -the update will not affect that client's (laptop's) copy. - -Before credential is updated, the new content is validated. For some providers, -cloud credentials are region specific. To validate the credential for a non-default region, -use --region. \ No newline at end of file diff --git a/docs/user/cli/update-k8s.md b/docs/user/cli/update-k8s.md deleted file mode 100644 index 272526b34dc6..000000000000 --- a/docs/user/cli/update-k8s.md +++ /dev/null @@ -1,43 +0,0 @@ -(update-k8s.md)= -# `update-k8s` -> See also: [add-k8s](#add-k8s), [remove-k8s](#remove-k8s) - -## Summary -Updates an existing k8s endpoint used by Juju. - -## Usage -```juju update-k8s [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | -| `-f` | | The path to a cloud definition file | - -## Examples - - juju update-k8s microk8s - juju update-k8s myk8s -f path/to/k8s.yaml - juju update-k8s myk8s -f path/to/k8s.yaml --controller mycontroller - juju update-k8s myk8s --controller mycontroller - juju update-k8s myk8s --client --controller mycontroller - juju update-k8s myk8s --client -f path/to/k8s.yaml - - -## Details - -Update k8s cloud information on this client and/or on a controller. - -The k8s cloud can be a built-in cloud like microk8s. - -A k8s cloud can also be updated from a file. This requires a <cloud name> and -a yaml file containing the cloud details. - -A k8s cloud on the controller can also be updated just by using a name of a k8s cloud -from this client. - -Use --controller option to update a k8s cloud on a controller. - -Use --client to update a k8s cloud definition on this client. \ No newline at end of file diff --git a/docs/user/cli/update-public-clouds.md b/docs/user/cli/update-public-clouds.md deleted file mode 100644 index e0f1f428d9f5..000000000000 --- a/docs/user/cli/update-public-clouds.md +++ /dev/null @@ -1,31 +0,0 @@ -(update-public-clouds.md)= -# `update-public-clouds` -> See also: [clouds](#clouds) - -## Summary -Updates public cloud information available to Juju. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-c`, `--controller` | | Controller to operate in | -| `--client` | false | Client operation | - -## Examples - - juju update-public-clouds - juju update-public-clouds --client - juju update-public-clouds --controller mycontroller - - -## Details - -If any new information for public clouds (such as regions and connection -endpoints) are available this command will update Juju accordingly. It is -suggested to run this command periodically. - -Use --controller option to update public cloud(s) on a controller. The command -will only update the clouds that a controller knows about. - -Use --client to update a definition of public cloud(s) on this client. \ No newline at end of file diff --git a/docs/user/cli/update-secret-backend.md b/docs/user/cli/update-secret-backend.md deleted file mode 100644 index 96b46601470f..000000000000 --- a/docs/user/cli/update-secret-backend.md +++ /dev/null @@ -1,42 +0,0 @@ -(update-secret-backend.md)= -# `update-secret-backend` -> See also: [add-secret-backend](#add-secret-backend), [secret-backends](#secret-backends), [remove-secret-backend](#remove-secret-backend), [show-secret-backend](#show-secret-backend) - -## Summary -Update an existing secret backend on the controller. - -## Usage -```juju update-secret-backend [options] ``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-c`, `--controller` | | Controller to operate in | -| `--config` | | path to yaml-formatted configuration file | -| `--force` | false | force update even if the backend is unreachable | -| `--reset` | | Reset the provided comma delimited config keys | - -## Examples - - juju update-secret-backend myvault --config /path/to/cfg.yaml - juju update-secret-backend myvault name=myvault2 - juju update-secret-backend myvault token-rotate=10m --config /path/to/cfg.yaml - juju update-secret-backend myvault endpoint=https://vault.io:8200 token=s.1wshwhw - juju update-secret-backend myvault token-rotate=0 - juju update-secret-backend myvault --reset namespace,ca-cert - - -## Details - -Updates a new secret backend for storing secret content. - -You must specify a name for the backend to update, -followed by any necessary backend specific config values. -Config may be specified as key values ot read from a file. -Any key values override file content if both are specified. - -Config attributes may be reset back to the default value using --reset. - -To rotate the backend access credential/token (if specified), use -the "token-rotate" config and supply a duration. To reset any existing -token rotation period, supply a value of 0. \ No newline at end of file diff --git a/docs/user/cli/update-secret.md b/docs/user/cli/update-secret.md deleted file mode 100644 index c8e2a7f849af..000000000000 --- a/docs/user/cli/update-secret.md +++ /dev/null @@ -1,43 +0,0 @@ -(update-secret.md)= -# `update-secret` - -## Summary -Update an existing secret. - -## Usage -```juju update-secret [options] | [key[#base64|#file]=value...]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--auto-prune` | nil | used to allow Juju to automatically remove revisions which are no longer being tracked by any observers | -| `--file` | | a YAML file containing secret key values | -| `--info` | | the secret description | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--name` | | the new secret name | - -## Examples - - juju update-secret secret:9m4e2mr0ui3e8a215n4g token=34ae35facd4 - juju update-secret secret:9m4e2mr0ui3e8a215n4g key#base64 AA== - juju update-secret secret:9m4e2mr0ui3e8a215n4g token=34ae35facd4 --auto-prune - juju update-secret secret:9m4e2mr0ui3e8a215n4g --name db-password \ - --info "my database password" \ - data#base64 s3cret== - juju update-secret db-pass --name db-password \ - --info "my database password" - juju update-secret secret:9m4e2mr0ui3e8a215n4g --name db-password \ - --info "my database password" \ - --file=/path/to/file - - -## Details - -Update a secret with a list of key values, or info. -If a value has the '#base64' suffix, it is already in base64 format and no -encoding will be performed, otherwise the value will be base64 encoded -prior to being stored. -The --auto-prune option is used to allow Juju to automatically remove revisions -which are no longer being tracked by any observers (see Rotation and Expiry). -This is configured per revision. This feature is opt-in because Juju -automatically removing secret content might result in data loss. \ No newline at end of file diff --git a/docs/user/cli/update-storage-pool.md b/docs/user/cli/update-storage-pool.md deleted file mode 100644 index 33e5b68fd6d6..000000000000 --- a/docs/user/cli/update-storage-pool.md +++ /dev/null @@ -1,30 +0,0 @@ -(update-storage-pool.md)= -# `update-storage-pool` -> See also: [create-storage-pool](#create-storage-pool), [remove-storage-pool](#remove-storage-pool), [storage-pools](#storage-pools) - -## Summary -Update storage pool attributes. - -## Usage -```juju update-storage-pool [options] [= [=...]]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | - -## Examples - -Update the storage-pool named iops with new configuration details: - - juju update-storage-pool operator-storage volume-type=provisioned-iops iops=40 - -Update which provider the pool is for: - - juju update-storage-pool lxd-storage type=lxd-zfs - - -## Details - -Update configuration attributes for a single existing storage pool. \ No newline at end of file diff --git a/docs/user/cli/upgrade-controller.md b/docs/user/cli/upgrade-controller.md deleted file mode 100644 index e29108b008ba..000000000000 --- a/docs/user/cli/upgrade-controller.md +++ /dev/null @@ -1,41 +0,0 @@ -(upgrade-controller.md)= -# `upgrade-controller` -> See also: [upgrade-model](#upgrade-model) - -## Summary -Upgrades Juju on a controller. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--agent-stream` | | Check this agent stream for upgrades | -| `--agent-version` | | Upgrade to specific version | -| `--build-agent` | false | Build a local version of the agent binary; for development use only | -| `-c`, `--controller` | | Controller to operate in | -| `--dry-run` | false | Don't change anything, just report what would be changed | -| `--ignore-agent-versions` | false | Don't check if all agents have already reached the current version | -| `--timeout` | 10m0s | Timeout before upgrade is aborted | -| `-y`, `--yes` | false | Answer 'yes' to confirmation prompts | - -## Examples - - juju upgrade-controller --dry-run - juju upgrade-controller --agent-version 2.0.1 - - -## Details -This command upgrades the Juju agent for a controller. - -A controller's agent version can be shown with `juju model-config -m controller agent-version`. -A version is denoted by: major.minor.patch - -You can upgrade the controller to a new patch version by specifying -the '--agent-version' flag. If not specified, the upgrade candidate -will default to the most recent patch version matching the current -major and minor version. Upgrading to a new major or minor version is -not supported. - -The command will abort if an upgrade is in progress. It will also abort if -a previous upgrade was not fully completed (e.g.: if one of the -controllers in a high availability model failed to upgrade). \ No newline at end of file diff --git a/docs/user/cli/upgrade-model.md b/docs/user/cli/upgrade-model.md deleted file mode 100644 index 794787d2713b..000000000000 --- a/docs/user/cli/upgrade-model.md +++ /dev/null @@ -1,47 +0,0 @@ -(upgrade-model.md)= -# `upgrade-model` -> See also: [sync-agent-binary](#sync-agent-binary) - -## Summary -Upgrades Juju on all machines in a model. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--agent-stream` | | Check this agent stream for upgrades | -| `--agent-version` | | Upgrade to specific version | -| `--dry-run` | false | Don't change anything, just report what would be changed | -| `--ignore-agent-versions` | false | Don't check if all agents have already reached the current version | -| `-m`, `--model` | | Model to operate in. Accepts [<controller name>:]<model name>|<model UUID> | -| `--timeout` | 10m0s | Timeout before upgrade is aborted | -| `-y`, `--yes` | false | Answer 'yes' to confirmation prompts | - -## Examples - - juju upgrade-model --dry-run - juju upgrade-model --agent-version 2.0.1 - juju upgrade-model --agent-stream proposed - - -## Details -Juju provides agent software to every machine it creates. This command -upgrades that software across an entire model, which is, by default, the -current model. -A model's agent version can be shown with `juju model-config agent-version`. -A version is denoted by: major.minor.patch - -If '--agent-version' is not specified, then the upgrade candidate is -selected to be the exact version the controller itself is running. - -If the controller is without internet access, the client must first supply -the software to the controller's cache via the `juju sync-agent-binary` command. -The command will abort if an upgrade is in progress. It will also abort if -a previous upgrade was not fully completed (e.g.: if one of the -controllers in a high availability model failed to upgrade). - -When looking for an agent to upgrade to, Juju will check the currently -configured agent stream for that model. It's possible to overwrite this for -the lifetime of this upgrade using --agent-stream - -Backups are recommended prior to upgrading. \ No newline at end of file diff --git a/docs/user/cli/users.md b/docs/user/cli/users.md deleted file mode 100644 index 08accaf8f298..000000000000 --- a/docs/user/cli/users.md +++ /dev/null @@ -1,37 +0,0 @@ -(users.md)= -# `users` -> See also: [add-user](#add-user), [register](#register), [show-user](#show-user), [disable-user](#disable-user), [enable-user](#enable-user) - -## Summary -Lists Juju users allowed to connect to a controller or model. - -## Usage -```juju users [options] [model-name]``` - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--all` | false | Include disabled users (on controller only) | -| `-c`, `--controller` | | Controller to operate in | -| `--exact-time` | false | Use full timestamp for connection times | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - -Print the users relevant to the current controller: - - juju users - -Print the users relevant to the controller "another": - - juju users -c another - -Print the users relevant to the model "mymodel": - - juju users mymodel - - -## Details -When used without a model name argument, users relevant to a controller are printed. -When used with a model name, users relevant to the specified model are printed. \ No newline at end of file diff --git a/docs/user/cli/version.md b/docs/user/cli/version.md deleted file mode 100644 index bb7efeacfe44..000000000000 --- a/docs/user/cli/version.md +++ /dev/null @@ -1,26 +0,0 @@ -(version.md)= -# `version` -> See also: [show-controller](#show-controller), [show-model](#show-model) - -## Summary -Print the Juju CLI client version. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `--all` | false | Prints all version information | -| `--format` | smart | Specify output format (json|smart|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju version - -Print all version information: - - juju version --all - - -## Details - -Print only the Juju CLI client version. \ No newline at end of file diff --git a/docs/user/cli/whoami.md b/docs/user/cli/whoami.md deleted file mode 100644 index f73ef98b57b7..000000000000 --- a/docs/user/cli/whoami.md +++ /dev/null @@ -1,21 +0,0 @@ -(whoami.md)= -# `whoami` -> See also: [controllers](#controllers), [login](#login), [logout](#logout), [models](#models), [users](#users) - -## Summary -Print current login details. - -### Options -| Flag | Default | Usage | -| --- | --- | --- | -| `-B`, `--no-browser-login` | false | Do not use web browser for authentication | -| `--format` | tabular | Specify output format (json|tabular|yaml) | -| `-o`, `--output` | | Specify an output file | - -## Examples - - juju whoami - - -## Details -Display the current controller, model and logged in user name. \ No newline at end of file diff --git a/docs/user/cli_index.template b/docs/user/cli_index.template deleted file mode 100644 index 623b01e5744a..000000000000 --- a/docs/user/cli_index.template +++ /dev/null @@ -1,11 +0,0 @@ -(cli)= - -# CLI reference - -Juju supports the following commands: -```{toctree} -:titlesonly: -:glob: diff --git a/docs/user/index.md b/docs/user/index.md index 5c60ae22f6fb..09e20b338abf 100644 --- a/docs/user/index.md +++ b/docs/user/index.md @@ -1,9 +1,94 @@ (user)= -# User documentation +# Juju user documentation ```{toctree} -:titlesonly: -:glob: +:maxdepth: 2 +:hidden: true -cli/index.md +Tutorial +howto/index +reference/index +explanation/index ``` + +**A single sentence that says what the product is, succinctly and memorably.** +Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et +dolore magna aliqua. + +**A paragraph of one to three short sentences, that describe what the product +does.** Urna cursus eget nunc scelerisque viverra mauris in. Nibh mauris +cursus mattis molestie a iaculis at vestibulum rhoncus est pellentesque +elit. Diam phasellus vestibulum lorem sed. + +**A third paragraph of similar length, this time explaining what need the +product meets.** Dui ut ornare lectus sit amet est. Nunc sed augue lacus +viverra vitae congue eu consequat ac libero id faucibus nisl tincidunt eget +nullam. + +**Finally, a paragraph that describes whom the product is useful for.** Nunc +non blandit massa enim nec dui nunc mattis enim. Ornare arcu odio ut sem +nulla pharetra diam porttitor leo a diam sollicitudin tempor id eu. Ipsum +dolor sit amet consectetur adipiscing elit pellentesque habitant. + +--------- + +## In this documentation + +````{grid} 1 1 2 2 + +```{grid-item-card} [Tutorial](tutorial) +:link: tutorial +:link-type: doc + +**Start here**: a hands-on introduction to Example Product for new users +``` + +```{grid-item-card} [How-to guides](/index) +:link: howto/index +:link-type: doc + +**Step-by-step guides** covering key operations and common tasks +``` + +```` + +````{grid} 1 1 2 2 +:reverse: + +```{grid-item-card} [Reference](/index) +:link: reference/index +:link-type: doc + +**Technical information** - specifications, APIs, architecture +``` + +```{grid-item-card} [Explanation](/index) +:link: explanation/index +:link-type: doc + +**Discussion and clarification** of key topics +``` + +```` + +--------- + + +## Project and community + +Example Project is a member of the Ubuntu family. It’s an open source project that warmly welcomes community projects, contributions, suggestions, fixes and constructive feedback. + +* **[Read our code of conduct](https://ubuntu.com/community/ethos/code-of-conduct)**: +As a community we adhere to the Ubuntu code of conduct. + +* **[Get support](https://askubuntu.com/)**: +Ask Ubuntu is a question and answer site for Ubuntu users and developers. + +* **[Join our online chat](https://web.libera.chat/gamja/?channels=%23channel)**: +Meet us in `#channel` on IRC Libera.Chat. + +* **[Report bugs](https://github.com/canonical/repo/issues/new)**: +We want to know about the problems so we can fix them. + +* **[Contribute docs](https://github.com/canonical/repo)**: +The documentation sources on GitHub.