Upgrading Your Kubos Development Environment ============================================ New updates will be announced to the Kubos community and the new releases will be published through GitHub. There will may instructions depending on the specific release details of all the steps needed to upgrade for the newest release. Upgrading Kubos CLI ------------------- Inside of a Vagrant box lives the Kubos CLI. Upon new Kubos releases there may be updates for the Kubos CLI. First SSH into your kubos-dev box: :: $ cd $ vagrant up $ vagrant ssh Then, upgrade the Kubos CLI: :: $ kubos update --cli New releases of the Kubos CLI may add or remove specific commands or command options. Tab completion is a feature that allows partially typed commands to be fully completed. Tab completion can also suggest possible arguments by pressing the key while typing a command. To keep tab completion synchronized with the Kubos CLI, run the following command: :: $ kubos update --tab-completion Upgrading the Kubos Source Modules ---------------------------------- To update the Kubos source modules your project will be built with run the following command: :: $ kubos update To check which version of the CLI you're using, use ``kubos version`` To list all of the available versions of the Kubos source modules run: :: $ kubos versions To activate and use a new version of the Kubos source run: :: $ kubos use The ``use`` command will checkout and replace the existing Kubos source modules. After running the ``use`` command, modules from the new version will be linked. If the new release holds new modules or has removed existing modules it may be necessary to re-link all modules to get rid of any module conflicts between new and old versions. To relink all of the Kubos source modules simply run: :: $ kubos link --all Downgrading the Kubos Source Modules ------------------------------------ In the event you want to downgrade to an older version of the Kubos source modules simply use the ``kubos use `` command with the older version number you want to downgrade to. Upgrading the Vagrant Box ------------------------- Occasionally there will be an update or addition to one of the components of the Vagrant environment. When any of these components is changes we will package and release a new version of the `kubos-dev` box. If there's a new version of the box available you will see something similar to the following when you start the box: :: $ vagrant up ... ==> default: A newer version of the box 'kubos/kubos-dev' is available! You currently ==> default: have version '0.2.2'. The latest is version '0.2.3'. Run ==> default: `vagrant box update` to update. ... To manually check if your box is up-to-date you can run: :: $ vagrant box outdated .. warning:: Updating your box will overwrite the filesystem inside the environment. Moving projects into synced folders prevents them from being overwritten since their actual location is external to the box. For more information on setting up synced folders see the :ref:`mount-directory` section. To update the box run: :: $ vagrant box update $ vagrant destroy $ vagrant up .. note:: ``vagrant destroy`` must be used if you want your current box to be updated to use the new version.