]> SALOME platform Git repositories - tools/sat.git/blobdiff - commands/package.py
Salome HOME
decode pip version
[tools/sat.git] / commands / package.py
index 2117ee4dff62f8a461524e975935f388c33a8238..f91476e2d6b6b87c7027b2a4ba37431b0af6de62 100644 (file)
@@ -1001,8 +1001,12 @@ def get_archives(config, logger):
                 src.product.product_test_property(p_info,"pip", "yes")):
                 # if pip mode is activated, and product is managed by pip
                 pip_wheels_dir=os.path.join(config.LOCAL.archive_dir,"wheels")
-                pip_wheel_pattern=os.path.join(pip_wheels_dir,
-                    "%s-%s*" % (p_info.name, p_info.version))
+                if "archive_prefix" in p_info.archive_info and p_info.archive_info.archive_prefix:
+                    pip_wheel_pattern=os.path.join(pip_wheels_dir,
+                                                   "%s-%s*" % (p_info.archive_info.archive_prefix, p_info.version))
+                else:
+                    pip_wheel_pattern=os.path.join(pip_wheels_dir,
+                                                   "%s-%s*" % (p_info.name, p_info.version))
                 pip_wheel_path=glob.glob(pip_wheel_pattern)
                 msg_pip_not_found="Error in get_archive, pip wheel for "\
                                   "product %s-%s was not found in %s directory"
@@ -1183,6 +1187,9 @@ def create_project_for_src_package(config, tmp_working_dir, with_vcs, with_ftp):
     compil_scripts_tmp_dir = os.path.join(project_tmp_dir,
                                          "products",
                                          "compil_scripts")
+    post_scripts_tmp_dir = os.path.join(project_tmp_dir,
+                                         "products",
+                                         "post_scripts")
     env_scripts_tmp_dir = os.path.join(project_tmp_dir,
                                          "products",
                                          "env_scripts")
@@ -1194,6 +1201,7 @@ def create_project_for_src_package(config, tmp_working_dir, with_vcs, with_ftp):
     for directory in [project_tmp_dir,
                       compil_scripts_tmp_dir,
                       env_scripts_tmp_dir,
+                      post_scripts_tmp_dir,
                       patches_tmp_dir,
                       application_tmp_dir]:
         src.ensure_path_exists(directory)
@@ -1237,6 +1245,7 @@ def create_project_for_src_package(config, tmp_working_dir, with_vcs, with_ftp):
                                         with_vcs,
                                         compil_scripts_tmp_dir,
                                         env_scripts_tmp_dir,
+                                        post_scripts_tmp_dir,
                                         patches_tmp_dir,
                                         products_pyconf_tmp_dir)
 
@@ -1254,6 +1263,7 @@ def find_product_scripts_and_pyconf(p_name,
                                     with_vcs,
                                     compil_scripts_tmp_dir,
                                     env_scripts_tmp_dir,
+                                    post_scripts_tmp_dir,
                                     patches_tmp_dir,
                                     products_pyconf_tmp_dir):
     '''Create a specific pyconf file for a given product. Get its environment
@@ -1271,6 +1281,8 @@ def find_product_scripts_and_pyconf(p_name,
                                        scripts directory of the project.
     :param env_scripts_tmp_dir str: The path to the temporary environment script
                                     directory of the project.
+    :param post_scripts_tmp_dir str: The path to the temporary post-processing script
+                                    directory of the project.
     :param patches_tmp_dir str: The path to the temporary patch scripts
                                 directory of the project.
     :param products_pyconf_tmp_dir str: The path to the temporary product
@@ -1290,6 +1302,11 @@ def find_product_scripts_and_pyconf(p_name,
         env_script_path = src.Path(p_info.environ.env_script)
         env_script_path.copy(env_scripts_tmp_dir)
 
+    # find the post script if any
+    if src.product.product_has_post_script(p_info):
+        post_script_path = src.Path(p_info.post_script)
+        post_script_path.copy(post_scripts_tmp_dir)
+
     # find the patches if any
     if src.product.product_has_patches(p_info):
         patches = src.pyconf.Sequence()