Skip to content

How to upgrade the definition version?

If you want to upgrade the current definition to a new version, use the following CHANGELOG together with this step-by-step guide, or use VS Code Extension command.

How to proceed:

  1. Take your current definition, and in config.yml, check the version.

  2. Change the version in config.yml to a new version.

  3. Use the CHANGELOG and start making changes step by step from your current version to the newest version that is compatible with IXP.

  4. Make one single change at a time.

  5. Be sure to make the change for all the concerning files and their attributes before proceeding with the following change.

  6. Each version contains information about changes and a structured description of affected files and their arguments.

  7. Note that not every change is reflected in the files; some changes are only concerned with the behavior of certain definition aspects rather than syntax changes in the YAML files.

  8. Lastly, check the new version against definition documentation to see if the fields in the files are the same.

  9. Zip the definition and upload it to the IXP for the last validation.

  10. Done. Enjoy your upgraded version!

Example:

  • Current version: 0.24.7

  • New version: 0.25.0

  • In the config.yml change the field version from 0.24.7 to 0.25.0.

0.24.7 to 0.24.8

  1. In the CHANGELOG, find the first subsequent definition version to the current version, which is 0.24.8 in this case.
  2. The change lies in adding a new optional feature commands, for activating milestones based on commands run in the sandboxes. The feature does not break the syntax of the previous version of the definition.
  3. Skip the change.

0.24.8 to 0.24.9

  1. In the CHANGELOG, find the first subsequent definition version to the current version, which is 0.24.9 in this case.
  2. The change lies in extending the control block of emails with milestone_condition. The feature does not break the syntax of the previous version of the definition.
  3. Skip the change.

0.24.9 to 0.24.10

  1. In the CHANGELOG, find the first subsequent definition version to the current version, which is 0.24.10 in this case.
  2. The change lies in adding the optional field type to learning activities, which is used by the editor. The feature does not break the syntax of the previous version of the definition.
  3. Skip the change.

0.24.10 to 0.25.0

  1. In the CHANGELOG, find the first subsequent definition version to the current version, which is 0.25.0 in this case.
  2. The change lies in removing all links except milestones from learning activities. Milestones are now the only element that can be linked to a learning activity. All other elements are linked implicitly through milestones.
  3. Remove all fields tools, injects, addresses, and questionnaires from the objectives.yml.
  4. Check all the edited files against the structure in the definition documentation.

Note

The validation process does not allow fields other than those mentioned in definition documentation. Before proceeding, please check that no definition file has extra fields. If it has, remove it, or the validation will fail.

  • Create a new .zip archive and upload it to the IXP.
  • The upload process will check the definition for errors.

You have successfully upgraded the definition version.