Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use the same version of teuthology and ceph-qa-suite for a whole run #1599

Merged
merged 4 commits into from Jan 27, 2021

Commits on Jan 19, 2021

  1. repo_utils: allow checking out a specific commit

    Since we're cloning a particular branch with git clone --shallow,
    assume we're still passed a branch that contains the commit. Otherwise
    we'd waste time and space cloning all the branches in the repo.
    
    Assume that this is only used for checking out a particular sha1 once,
    to avoid repetitive work.
    
    There are two use cases for these utilities:
    
    1) on the user's machine when they're scheduling a suite - there it
    will make sense to maintain a single checkout of a branch e.g. teuthology master
    
    2) on the queue consumer side - here it's best if we use the same commit for an
    entire run, so checking out by sha1 makes more sense
    
    Signed-off-by: Josh Durgin <jdurgin@redhat.com>
    jdurgin committed Jan 19, 2021
    Configuration menu
    Copy the full SHA
    10c86d9 View commit details
    Browse the repository at this point in the history
  2. suite: pass the commit of teuthology with each job's config

    We already pass the suite sha1, but do not use it yet. This is the
    missing piece to be able to use the same version of everything across
    a whole run.
    
    Signed-off-by: Josh Durgin <jdurgin@redhat.com>
    jdurgin committed Jan 19, 2021
    Configuration menu
    Copy the full SHA
    6c7f93b View commit details
    Browse the repository at this point in the history
  3. repo_utils: allow fetching a specific sha1 to per-commit directories

    Using a checkout of a single branch used by potentially many
    workers/teuthology processes can result in errors when one job
    updates the local branch while another job is reading it.
    
    This causes issues particularly easily when using non-master
    teuthology branches, and with the teuthology-dispatcher.
    
    This also allows us to guarantee we're using the same
    version across an entire run, even if e.g. the master
    qa suite is updated between jobs.
    
    Signed-off-by: Josh Durgin <jdurgin@redhat.com>
    jdurgin committed Jan 19, 2021
    Configuration menu
    Copy the full SHA
    125e832 View commit details
    Browse the repository at this point in the history
  4. worker, run: use exact commits for teuthology and qa suite

    This ensures we use the same version across all jobs in a run.
    
    We already have suite_sha1 set by older versions of teuthology, but
    for folks who haven't updated their suite command, and thus don't set
    teuthology_sha1 in the job config, look up the sha1 of in the worker.
    
    Signed-off-by: Josh Durgin <jdurgin@redhat.com>
    jdurgin committed Jan 19, 2021
    Configuration menu
    Copy the full SHA
    85a266b View commit details
    Browse the repository at this point in the history