From nobody Fri May 3 14:04:03 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+58969+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+58969+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1589080916; cv=none; d=zohomail.com; s=zohoarc; b=YUAcgUXNgVC59zRcZaozd/OK+V9/t6mR72Monj//APTAX6BnWgPg9WnYGaQW1IoNpPmDJ+6wEBqdQbJtnVGAAHxDu99/XO6faOz9iqwaCyedf0s4NrUQ82bJOFI8MK3QF6+ATQojmtEjOlfxuKbYCcvYnRzgjjDZlnpZ169+aXk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1589080916; h=Cc:Date:From:List-Id:List-Unsubscribe:Message-ID:Reply-To:Sender:Subject:To; bh=hP+qE8+amkK010+7lVjIiMn4cVnLs183noLLiVeMCxU=; b=B52HLd9tZVmFBAQgJQdnpzQauHgMzQxb/2k2NFQOYxYl7whyaZWhxKaEm6tdBI3ZUfKHZZaRwa07zEUeQfIPmTC+04EQGRd9i+9sObMapCVASFYui5WHBswz8MRsHztAugLmizeyr5+IKT7XC4263OJaBFZcY5ggdKuhNiqoJAk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+58969+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1589080916675775.1198831241605; Sat, 9 May 2020 20:21:56 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id h52CYY1788612xzPL6VeCNF6; Sat, 09 May 2020 20:21:56 -0700 X-Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web10.9630.1589080915457551711 for ; Sat, 09 May 2020 20:21:55 -0700 IronPort-SDR: PR2egBc40MunHJ9xPcE6QR/Du5uHLA9wsFricbl4ja0xuLGVoq+TONBOB81B1EFViAOR2sH7S0 hSvQygyQFP+A== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 May 2020 20:21:54 -0700 IronPort-SDR: DgbDcSaovE5zALPN+BxaRcf+WxTOfyLOdfAmTxO+zyKwwZi9yvhitEOA9Gy9vDRGaYbf/ENdvZ VswC3TTyHC/Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,374,1583222400"; d="scan'208";a="463004301" X-Received: from aedesimo-desk.amr.corp.intel.com ([10.212.16.28]) by fmsmga006.fm.intel.com with ESMTP; 09 May 2020 20:21:54 -0700 From: "Ashley E Desimone" To: devel@edk2.groups.io Cc: Nate DeSimone , Puja Pandya , Erik Bjorge , Bret Barkelew , Prince Agyeman Subject: [edk2-devel] [edk2-staging/EdkRepo] [PATCH V3] EdkRepo: Update Create-Pin to be support multiple manifest repositories Date: Sat, 9 May 2020 20:21:50 -0700 Message-Id: <20200510032150.17144-1-ashley.e.desimone@intel.com> Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ashley.e.desimone@intel.com X-Gm-Message-State: lMZv0rgCH9w4u0mpFXoyksyGx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1589080916; bh=flbYdJh0uxE8SXyoe8yPjYSXSZyXUFMjI8sIEgrAAaM=; h=Cc:Date:From:Reply-To:Subject:To; b=WKbpt6CLXJKkT52AyVCXNaXgWNjr4aZoQK1NiQwCXNsArHCfLZ5NxQGoCOaD7dH+JKS IN2napW+SoiyF0h0JeJNj1I08kJIHpCZI2B4CrcMdTMFdkTkQ5nEArodyZQGby3UwnZWR r82Bm0l4+t089Icrl6VjMGb9cVzpLwfA22s= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Update the create pin command to select and interact with only the workspaces source manifest repository. Signed-off-by: Ashley E Desimone Cc: Nate DeSimone Cc: Puja Pandya Cc: Erik Bjorge Cc: Bret Barkelew Cc: Prince Agyeman Reviewed-by: Nate DeSimone --- edkrepo/commands/create_pin_command.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/edkrepo/commands/create_pin_command.py b/edkrepo/commands/crea= te_pin_command.py index f8618e5..24180ba 100644 --- a/edkrepo/commands/create_pin_command.py +++ b/edkrepo/commands/create_pin_command.py @@ -12,14 +12,16 @@ from collections import namedtuple =20 from git import Repo =20 -from edkrepo.commands.edkrepo_command import EdkrepoCommand +from edkrepo.commands.edkrepo_command import EdkrepoCommand, SourceManifes= tRepoArgument import edkrepo.commands.arguments.create_pin_args as arguments -from edkrepo.common.common_repo_functions import pull_latest_manifest_repo from edkrepo.common.edkrepo_exception import EdkrepoManifestInvalidExcepti= on, EdkrepoInvalidParametersException from edkrepo.common.edkrepo_exception import EdkrepoWorkspaceCorruptExcept= ion from edkrepo.common.humble import WRITING_PIN_FILE, GENERATING_PIN_DATA, G= ENERATING_REPO_DATA, BRANCH, COMMIT from edkrepo.common.humble import COMMIT_MESSAGE, PIN_PATH_NOT_PRESENT, PI= N_FILE_ALREADY_EXISTS, PATH_AND_FILEPATH_USED from edkrepo.common.humble import MISSING_REPO +from edkrepo.common.workspace_maintenance.manifest_repos_maintenance impor= t find_source_manifest_repo +from edkrepo.common.workspace_maintenance.manifest_repos_maintenance impor= t list_available_manifest_repos +from edkrepo.common.workspace_maintenance.manifest_repos_maintenance impor= t pull_workspace_manifest_repo from edkrepo.config.config_factory import get_workspace_manifest, get_work= space_path from edkrepo_manifest_parser.edk_manifest import ManifestXml =20 @@ -49,6 +51,7 @@ class CreatePinCommand(EdkrepoCommand): 'positional': False, 'required': False, 'help-text': arguments.PUSH_HELP}) + args.append(SourceManifestRepoArgument) return metadata =20 def run_command(self, args, config): @@ -56,14 +59,21 @@ class CreatePinCommand(EdkrepoCommand): if args.push and os.path.dirname(args.PinFileName): raise EdkrepoInvalidParametersException(PATH_AND_FILEPATH_USED) =20 - pull_latest_manifest_repo(args, config) workspace_path =3D get_workspace_path() manifest =3D get_workspace_manifest() =20 + if args.push: + src_manifest_repo =3D find_source_manifest_repo(manifest, conf= ig['cfg_file'], config['user_cfg_file'], args.source_manifest_repo) + pull_workspace_manifest_repo(manifest, config['cfg_file'], con= fig['user_cfg_file'], args.source_manifest_repo, False) + cfg, user_cfg, conflicts =3D list_available_manifest_repos(con= fig['cfg_file'], config['user_cfg_file']) + if src_manifest_repo in cfg: + manifest_repo_path =3D config['cfg_file'].manifest_repo_ab= s_path(src_manifest_repo) + elif src_manifest_repo in user_cfg: + manifest_repo_path =3D config['user_cfg_file'].manifest_re= po_abs_path(src_manifest_repo) # If the push flag is enabled use general_config.pin_path to deter= mine global manifest relative location to save # pin file to. if args.push and manifest.general_config.pin_path is not None: - pin_dir =3D os.path.join(config['cfg_file'].manifest_repo_abs_= local_path, os.path.normpath(manifest.general_config.pin_path)) + pin_dir =3D os.path.join(manifest_repo_path, os.path.normpath(= manifest.general_config.pin_path)) pin_file_name =3D os.path.join(pin_dir, args.PinFileName) elif args.push and manifest.general_config.pin_path is None: raise EdkrepoManifestInvalidException(PIN_PATH_NOT_PRESENT) @@ -104,7 +114,7 @@ class CreatePinCommand(EdkrepoCommand): =20 # commit and push the pin file if args.push: - manifest_repo =3D Repo(config['cfg_file'].manifest_repo_abs_lo= cal_path) + manifest_repo =3D Repo(manifest_repo_path) # Create a local branch with the same name as the pin file arg= and check it out before attempting the push # to master master_branch =3D manifest_repo.active_branch @@ -124,4 +134,4 @@ class CreatePinCommand(EdkrepoCommand): manifest_repo.git.push('origin', 'HEAD:master') finally: manifest_repo.heads[master_branch.name].checkout() - manifest_repo.delete_head(local_branch, '-D') \ No newline at end of file + manifest_repo.delete_head(local_branch, '-D') --=20 2.16.2.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#58969): https://edk2.groups.io/g/devel/message/58969 Mute This Topic: https://groups.io/mt/74109309/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-