)]}'
{
  "log": [
    {
      "commit": "ad5f858517349746dce0673454535f41b69d0167",
      "tree": "62caeb80533084f921c49c7949f6ad572a2924e4",
      "parents": [
        "91bb7c969a8280695725c2d73f6fa89c63be9110"
      ],
      "author": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Fri Apr 12 13:15:08 2019 +0300"
      },
      "committer": {
        "name": "Dennis Dmitriev",
        "email": "dis.xcom@gmail.com",
        "time": "Wed Apr 17 13:19:52 2019 +0000"
      },
      "message": "Replace env_* scripts with static scripts\n\nGenerate env_* files with static variables, instead of\nexecuting the scripts every time when they are sourced.\n\nAccessing salt may be not suitable in some cases, so let\u0027s\njust generate the necessary env_* files with.\n\nDepending on the model, some files may not be created:\n\n- utils/env_salt - always created for cfg01 node\n- utils/env_jenkins_day01 - always created for cfg01 node\n- utils/env_jenkins_cicd - created only if the pillar\n      jenkins:client:master exists for cid01 node\n- utils/env_k8s - created only if the pillars\n      haproxy:proxy:listen:k8s_secure:binds and\n      kubernetes:master:admin exist.\n\n* Also, skip time sync on cfg01 node because of race conditions\n  with MaaS self-monitoring services in rack controller and\n  region controller.\n\nRelated-task: #PROD-27687\nChange-Id: Id37eb475e718ad337e21247769126b7d983b3489\n"
    },
    {
      "commit": "445b4326dc9b3c0af46a1b37989e0e734d87a983",
      "tree": "630106d93977cfa8c92973b0b25647cb89ae08b0",
      "parents": [
        "9cc41be4f056f8599554666cddc5c20a6b70f386"
      ],
      "author": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Mon Oct 08 14:32:07 2018 +0300"
      },
      "committer": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Mon Oct 08 16:45:56 2018 +0300"
      },
      "message": "Store kubernetes server version after conformance tests\n\nTo use with xunit_reporter\n\nLog output example:\n\n  -- Kubernetes server version is stored to ./env_k8s_version:\n  export KUBE_SERVER_VERSION\u003d1.10\n  export KUBE_SERVER_GIT_VERSION\u003dv1.10.4-4+971831eb5eb3db\n\nUsage example:\n\n  . ./env_k8s_version\n  report ... --testrail-suite \"[MCP][k8s]Hyperkube ${KUBE_SERVER_VERSION}.x\"\n\nChange-Id: Ia27b9e16142d5bb30f5dee5030095c2eb4e8e08c\n"
    },
    {
      "commit": "eb50ce1855b1f59e98f6cc336412194b549bff22",
      "tree": "746a243c647b982a61c88045930549726f39f7a4",
      "parents": [
        "d30bf85aeba5e79f50b2d6d8dd08e8ce5bdebac9"
      ],
      "author": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Thu Sep 27 13:34:32 2018 +0300"
      },
      "committer": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Fri Sep 28 19:58:54 2018 +0300"
      },
      "message": "Improve cicd test runner and reported\n\n- run pytest code without capturing stderr, to get solid output\n  in the Jenkins log\n- do not print the error message if something failed,\n  it is already shown in the exception message\n- add re-tries while getting the job results. Jenkins may return\n  \u0027None\u0027 for the job workflow right after the job is finished.\n- add getting k8s version to utils/env_k8s\n- add reporting k8s_conformance suite to TestRail\n- increase number of cmp nodes to 4 on k8s cicd envs\n- increase memory on k8s cmp nodes from 2Gb to 4Gb\n- increase memory on k8s ctl nodes from 2Gb to 8Gb\n- enable verbose in k8s_conformance tests\n\nChange-Id: I672279007fe4d7e3d684f0e49d1bcb7ff42a430f\n"
    },
    {
      "commit": "3ec2e53d4b55ecf267671dcd0ac1745c5f69aaf8",
      "tree": "73797b09f3ee58a7711ed6ebb250d50642ce391c",
      "parents": [
        "a397f2649cbda6f976583ec6b145035a848c6243"
      ],
      "author": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Fri Jun 08 04:33:34 2018 +0300"
      },
      "committer": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Fri Jun 08 20:58:08 2018 +0300"
      },
      "message": "Add tools to run jenkins jobs and remote commands\n\n- ./tcp_tests/utils/create_devops_env.py\n  Creates a fuel-devops enviromnet with VMs in disabled\n  state, to generate networks and addresses for inventory.\n  Required parameters:\n    export ENV_NAME\u003dtest\n    export LAB_CONFIG_NAME\u003d\u003ctemplate directory with underlay.yml\u003e\n    export MANAGER\u003ddevops\n  Other parameters may be required for the underlay.yml\n\n  CLI example:\n    export PYTHONPATH\u003d$(pwd)\n    python ./tcp_tests/utils/create_devops_env.py\n\n- ./tcp_tests/utils/run_jenkins_job.py\n  Run a jenkins job with parameters, wait for completion,\n  print the console output to stdout while waiting.\n  Required parameters:\n    export JENKINS_URL\u003dhttp://host:port/\n    export JENKINS_USER\u003dadmin\n    export JENKINS_PASS\u003dadmin\n  CLI example:\n\n    JOB_PARAMETERS\u003d\"{\n      \\\"SALT_MASTER_URL\\\": \\\"${SALTAPI_URL}\\\",\n      \\\"STACK_INSTALL\\\": \\\"core,cicd\\\"\n    }\"\n    JOB_PREFIX\u003d\"[ {job_name} #{build_number}:cicd {time} ] \"\n\n    python ./tcp_tests/utils/run_jenkins_job.py \\\n        --verbose \\\n        --job-name\u003ddeploy_openstack \\\n        --job-parameters\u003d\"$JOB_PARAMETERS\" \\\n        --job-output-prefix\u003d\"$JOB_PREFIX\"\n\n- ./tcp_tests/utils/get_param.py\n  Get a single parameter from the salt pillar.\n  Useful to get addresses and other scalar values.\n  Required parameters are the same as for \u0027pepper\u0027 CLI:\n    export SALTAPI_URL\u003dhttp://${SALT_MASTER_IP}:6969/\n    export SALTAPI_USER\u003d\u0027salt\u0027\n    export SALTAPI_PASS\u003d\u0027icecream12345!\u0027\n    export SALTAPI_EAUTH\u003d\u0027pam\u0027\n  CLI example:\n  export JENKINS_HOST\u003d$(./tcp_tests/utils/get_param.py \\\n    -C \u0027I@docker:client:stack:jenkins\u0027 \\\n    pillar.get jenkins:client:master:host)\n\n- ./tcp_tests/utils/run_template_commands.py\n  Run remote commands from the ./tcp_tests/templates/\n  No environment varialbes are required, but may be\n  useful to provide the INI config from some completed\n  deployment.\n  CLI example:\n\n    export TESTS_CONFIGS\u003d$(pwd)/test_salt_deployed.ini\n    ./tcp_tests/utils/run_template_commands.py \\\n        ./tcp_tests/templates/\u003clab_name\u003e/common_services.yaml\n\n- some env files for sourcing to get access to different APIs.\n  This will simplify using the scripts above.\n\n    . ./tcp_tests/utils/env_salt          # salt-api access\n    . ./tcp_tests/utils/env_jenkins_day01 # jenkins on salt-master\n    . ./tcp_tests/utils/env_jenkins_cicd  # jenkins on cicd\n    . ./tcp_tests/utils/env_k8s           # k8s api access\n\n- fixed UnderlayManager.sudo_check_call() to remove\n  deprecation warning.\n\nImprovements to JenkisClient:\n- Add JenkinsWrapper class to workaround the bug\n  https://bugs.launchpad.net/python-jenkins/+bug/1775047\n  which is happened to CICD Jenkins behind the haproxy\n- improved waiting for start of the job in run_build()\n- new argument \u0027interval\u0027 in wait_end_of_build(), to set\n  the polling interval while waiting the job\n- new argument \u0027job_output_prefix\u0027 in wait_end_of_build(),\n  which allows to set the prefix to each line of the console\n  output of the job; with some pre-defined template keys.\n- improved printing the job output in case of non-unicode characters\n\nChange-Id: Ie7d1324d8247e55ba9c0f0492ca39fc176ff4935\n"
    }
  ]
}
