findmissing: Implemented logic to push fix CL

Implemented logic to generate commit message for the fix CL.
Added functions to parse upstream and chrome linux git logs for
important information like BUG, TEST and Change-Id tags, which are used
in creating the fixer commit.

Modified the kernel repositories(upstream, stable, chrome) to be under
kernel_repositories directory.

e.g stable fix generated CL:
https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/2107285
e.g chrome fix generated CL:
https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/2106903

BUG=None
TEST=None

Change-Id: If5c51a8871ee91abdac32aeaae1516b3e2df8761
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/dev-util/+/2104042
Tested-by: Hirthanan Subenderan <hirthanan@google.com>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
diff --git a/contrib/findmissing/common.py b/contrib/findmissing/common.py
index 5452b57..2df97af 100755
--- a/contrib/findmissing/common.py
+++ b/contrib/findmissing/common.py
@@ -105,12 +105,15 @@
 
     db.commit()
 
+def get_kernel_absolute_path(repo_name):
+    """Returns absolute path to kernel repositories"""
+    return os.path.join(WORKDIR, 'kernel_repositories', repo_name)
+
 
 def update_kernel_db(db, kernel_metadata):
     """Update (upstream/stable/chrome) previous_fetch, fixes and commits SQL tables."""
     path = kernel_metadata.path
-
-    os.chdir(path)
+    os.chdir(get_kernel_absolute_path(path))
 
     for branch in kernel_metadata.branches:
         start = kernel_metadata.tag_template % branch
@@ -147,7 +150,7 @@
             SUPPORTED_BRANCHES, 'v%s', stable_branch, initdb_stable.update_stable_table)
     chrome_kernel_metadata = KernelMetadata(CHROMEOS_PATH, CHROMEOS_REPO, 'chrome_fixes',
             SUPPORTED_BRANCHES, 'v%s', chromeos_branch, initdb_chromeos.update_chrome_table)
-    upstream_kernel_metadata = KernelMetadata(UPSTREAM_PATH, 'upstream_fixes', UPSTREAM_REPO,
+    upstream_kernel_metadata = KernelMetadata(UPSTREAM_PATH, UPSTREAM_REPO, 'upstream_fixes',
             [UPSTREAM_START_BRANCH], '%s', lambda *args: 'master',
             initdb_upstream.update_upstream_table)