Release Checklist

Important

When building documentation for multiple versions of Zuar Runner (e.g., make versions), the sphinx-multiversion command is used instead of sphinx-build. For sphinx-multiversion to work properly, all documentation must be checked-in to the repository. Changes made locally, but not checked-in, will not appear in the generated documentation.

Steps to build and publish a new Zuar Runner release.

  • Release number

    Some commands require knowledge of the current Zuar Runner release number that is being built. This must exactly match the tag for the release.

    Some examples on this page use 2.8.11 as an example of the current release number.

  • Documentation

    • Setup documentation build environment

      cd docs
      make pyenv
      
    • Ensure that all JSON schema documents are up-to-date and checked-in.

      cd docs
      make schemas
      make PVT=y schemas
      

      This will create JSON schema documentation in:

      docs/src/schemas
      docs/srcp/schemas
      
    • Update the release notes.

      cd docs
      MITTO_REL=2.8.11 make release_notes
      

      This will create docs/src/release_notes/2.8.11.md.

      Manually update docs/src/release_notes/index.md.

    • Update mitto/docs/conf.py

      • Set version to the release’s version number.

      • release_tags__ contains all of the tags for which documentation will be built. Add the release’s version number to the list, if necessary.

      • Set smv_branch_whitelist to match any branches (not tags) for which documentation should be created. This documentation is built in addition to that for release_tags__. Typically, this should just be set to r'^master$'.

    • Build the documentation.

      cd docs
      
      MITTO_REL=2.8.11 make versions
      MITTO_REL=2.8.11 make versions-index
      

      Generated documentation is placed under docs/build/html.

    • View the local documentation.

      cd docs
      make serve
      
    • Ensure that any changes to documentation, conf.py, etc. are added to the Zuar Runner repo.

      git status
      git add/commit/push etc.
      

      Important

      The generated HTML is never checked-in to the repo; only the source documents are controlled.

  • Testing

    • Continuous integration

      • CI workflow ran without error

    • Local tests

      • Database credentials present in ~/.mitto_test

        • bigquery.ini

        • mongodb.ini

        • snowflake.ini

        • mariadb.ini

        • redshift.ini

        • sqlserver.ini

      • Service credentials present in ~/.mitto_test

        • job_rest_export.env

        • job_subscriptions-admin.env

        • job_subscriptions-non_admin.env

        • job_tableau_export.ini

        • job_vizql_export.env

      • Test configurations present in ~/.mitto_test

        • sampling.ini

      • Run make all then make test_all locally.

        • Tests run without error

  • Build

  • Publish

  • Jira