Refactoring linux packages deploy (#853)

* Fix deploy desktop editors linux packages (#842)

* Small fix

* Fix make targets

* Small fix

* Refactoring linux packages deploy
This commit is contained in:
Semyon Bezrukov
2024-07-31 14:18:27 +03:00
committed by GitHub
parent 9d000b2284
commit 8e7db87554
4 changed files with 72 additions and 127 deletions

View File

@ -30,6 +30,59 @@ if utils.is_macos():
builder_product_name = "Document Builder" builder_product_name = "Document Builder"
if utils.is_linux(): if utils.is_linux():
desktop_make_targets = ["deb", "rpm", "suse-rpm", "tar"] builder_make_targets = [
builder_make_targets = ["deb", "rpm"] # tar {
server_make_targets = ["deb", "rpm", "tar"] "make": "tar",
"src": "tar/*.tar*",
"dst": "builder/linux/generic/"
},
{
"make": "deb",
"src": "deb/*.deb",
"dst": "builder/linux/debian/"
},
{
"make": "rpm",
"src": "rpm/builddir/RPMS/*/*.rpm",
"dst": "builder/linux/rhel/"
}
]
desktop_make_targets = [
{
"make": "tar",
"src": "tar/*.tar*",
"dst": "desktop/linux/generic/"
},
{
"make": "deb",
"src": "deb/*.deb",
"dst": "desktop/linux/debian/"
},
{
"make": "rpm",
"src": "rpm/build/RPMS/*/*.rpm",
"dst": "desktop/linux/rhel/"
},
{
"make": "rpm-suse",
"src": "rpm-suse/build/RPMS/*/*.rpm",
"dst": "desktop/linux/suse/"
}
]
server_make_targets = [
{
"make": "deb",
"src": "deb/*.deb",
"dst": "server/linux/debian/"
},
{
"make": "rpm",
"src": "rpm/builddir/RPMS/*/*.rpm",
"dst": "server/linux/rhel/"
},
{
"make": "tar",
"src": "*.tar*",
"dst": "server/linux/snap/"
}
]

View File

@ -137,7 +137,7 @@ def make_linux():
utils.set_cwd("document-builder-package") utils.set_cwd("document-builder-package")
utils.log_h2("builder build") utils.log_h2("builder build")
make_args = branding.builder_make_targets make_args = [t["make"] for t in branding.builder_make_targets]
if common.platform == "linux_aarch64": if common.platform == "linux_aarch64":
make_args += ["-e", "UNAME_M=aarch64"] make_args += ["-e", "UNAME_M=aarch64"]
if not branding.onlyoffice: if not branding.onlyoffice:
@ -146,32 +146,10 @@ def make_linux():
utils.set_summary("builder build", ret) utils.set_summary("builder build", ret)
if common.deploy: if common.deploy:
if ret: for t in branding.builder_make_targets:
if "tar" in branding.builder_make_targets: utils.log_h2("builder " + t["make"] + " deploy")
utils.log_h2("builder tar deploy") ret = s3_upload(utils.glob_path(t["src"]), t["dst"])
ret = s3_upload( utils.set_summary("builder " + t["make"] + " deploy", ret)
utils.glob_path("tar/*.tar.gz"),
"builder/linux/generic/")
utils.set_summary("builder tar deploy", ret)
if "deb" in branding.builder_make_targets:
utils.log_h2("builder deb deploy")
ret = s3_upload(
utils.glob_path("deb/*.deb"),
"builder/linux/debian/")
utils.set_summary("builder deb deploy", ret)
if "rpm" in branding.builder_make_targets:
utils.log_h2("builder rpm deploy")
ret = s3_upload(
utils.glob_path("rpm/builddir/RPMS/*/*.rpm"),
"builder/linux/rhel/")
utils.set_summary("builder rpm deploy", ret)
else:
if "tar" in branding.builder_make_targets:
utils.set_summary("builder tar deploy", False)
if "deb" in branding.builder_make_targets:
utils.set_summary("builder deb deploy", False)
if "rpm" in branding.builder_make_targets:
utils.set_summary("builder rpm deploy", False)
utils.set_cwd(common.workspace_dir) utils.set_cwd(common.workspace_dir)
return return

View File

@ -329,7 +329,7 @@ def make_linux():
utils.set_cwd("desktop-apps/win-linux/package/linux") utils.set_cwd("desktop-apps/win-linux/package/linux")
utils.log_h2("desktop build") utils.log_h2("desktop build")
make_args = branding.desktop_make_targets make_args = [t["make"] for t in branding.desktop_make_targets]
if common.platform == "linux_aarch64": if common.platform == "linux_aarch64":
make_args += ["-e", "UNAME_M=aarch64"] make_args += ["-e", "UNAME_M=aarch64"]
if not branding.onlyoffice: if not branding.onlyoffice:
@ -337,68 +337,11 @@ def make_linux():
ret = utils.sh("make clean && make " + " ".join(make_args), verbose=True) ret = utils.sh("make clean && make " + " ".join(make_args), verbose=True)
utils.set_summary("desktop build", ret) utils.set_summary("desktop build", ret)
rpm_arch = "*"
if common.platform == "linux_aarch64": rpm_arch = "aarch64"
if common.deploy: if common.deploy:
if ret: for t in branding.desktop_make_targets:
utils.log_h2("desktop tar deploy") utils.log_h2("desktop " + t["make"] + " deploy")
if "tar" in branding.desktop_make_targets: ret = s3_upload(utils.glob_path(t["src"]), t["dst"])
ret = s3_upload( utils.set_summary("desktop " + t["make"] + " deploy", ret)
utils.glob_path("tar/*.tar*"),
"desktop/linux/generic/")
utils.set_summary("desktop tar deploy", ret)
if "deb" in branding.desktop_make_targets:
utils.log_h2("desktop deb deploy")
ret = s3_upload(
utils.glob_path("deb/*.deb"),
"desktop/linux/debian/")
utils.set_summary("desktop deb deploy", ret)
if "deb-astra" in branding.desktop_make_targets:
utils.log_h2("desktop deb-astra deploy")
ret = s3_upload(
utils.glob_path("deb-astra/*.deb"),
"desktop/linux/astra/")
utils.set_summary("desktop deb-astra deploy", ret)
if "rpm" in branding.desktop_make_targets:
utils.log_h2("desktop rpm deploy")
ret = s3_upload(
utils.glob_path("rpm/builddir/RPMS/" + rpm_arch + "/*.rpm"),
"desktop/linux/rhel/")
utils.set_summary("desktop rpm deploy", ret)
if "suse-rpm" in branding.desktop_make_targets:
utils.log_h2("desktop suse-rpm deploy")
ret = s3_upload(
utils.glob_path("suse-rpm/builddir/RPMS/" + rpm_arch + "/*.rpm"),
"desktop/linux/suse/")
utils.set_summary("desktop suse-rpm deploy", ret)
if "apt-rpm" in branding.desktop_make_targets:
utils.log_h2("desktop apt-rpm deploy")
ret = s3_upload(
utils.glob_path("apt-rpm/builddir/RPMS/" + rpm_arch + "/*.rpm"),
"desktop/linux/altlinux/")
utils.set_summary("desktop apt-rpm deploy", ret)
if "urpmi" in branding.desktop_make_targets:
utils.log_h2("desktop urpmi deploy")
ret = s3_upload(
utils.glob_path("urpmi/builddir/RPMS/" + rpm_arch + "/*.rpm"),
"desktop/linux/rosa/")
utils.set_summary("desktop urpmi deploy", ret)
else:
if "tar" in branding.desktop_make_targets:
utils.set_summary("desktop tar deploy", False)
if "deb" in branding.desktop_make_targets:
utils.set_summary("desktop deb deploy", False)
if "deb-astra" in branding.desktop_make_targets:
utils.set_summary("desktop deb-astra deploy", False)
if "rpm" in branding.desktop_make_targets:
utils.set_summary("desktop rpm deploy", False)
if "suse-rpm" in branding.desktop_make_targets:
utils.set_summary("desktop suse-rpm deploy", False)
if "apt-rpm" in branding.desktop_make_targets:
utils.set_summary("desktop apt-rpm deploy", False)
if "urpmi" in branding.desktop_make_targets:
utils.set_summary("desktop urpmi deploy", False)
utils.set_cwd(common.workspace_dir) utils.set_cwd(common.workspace_dir)
return return

View File

@ -61,7 +61,8 @@ def make_linux(edition):
utils.set_cwd("document-server-package") utils.set_cwd("document-server-package")
utils.log_h2("server " + edition + " build") utils.log_h2("server " + edition + " build")
make_args = branding.server_make_targets + ["-e", "PRODUCT_NAME=" + product_name] make_args = [t["make"] for t in branding.server_make_targets]
make_args += ["-e", "PRODUCT_NAME=" + product_name]
if common.platform == "linux_aarch64": if common.platform == "linux_aarch64":
make_args += ["-e", "UNAME_M=aarch64"] make_args += ["-e", "UNAME_M=aarch64"]
if not branding.onlyoffice: if not branding.onlyoffice:
@ -70,40 +71,10 @@ def make_linux(edition):
utils.set_summary("server " + edition + " build", ret) utils.set_summary("server " + edition + " build", ret)
if common.deploy: if common.deploy:
if ret: for t in branding.server_make_targets:
if "deb" in branding.server_make_targets: utils.log_h2("server " + edition + " " + t["make"] + " deploy")
utils.log_h2("server " + edition + " deb deploy") ret = s3_upload(utils.glob_path(t["src"]), t["dst"])
ret = s3_upload( utils.set_summary("server " + edition + " " + t["make"] + " deploy", ret)
utils.glob_path("deb/*.deb"),
"server/linux/debian/")
utils.set_summary("server " + edition + " deb deploy", ret)
if "rpm" in branding.server_make_targets:
utils.log_h2("server " + edition + " rpm deploy")
ret = s3_upload(
utils.glob_path("rpm/builddir/RPMS/*/*.rpm"),
"server/linux/rhel/")
utils.set_summary("server " + edition + " rpm deploy", ret)
if "apt-rpm" in branding.server_make_targets:
utils.log_h2("server " + edition + " apt-rpm deploy")
ret = s3_upload(
utils.glob_path("apt-rpm/builddir/RPMS/*/*.rpm"),
"server/linux/altlinux/")
utils.set_summary("server " + edition + " apt-rpm deploy", ret)
if "tar" in branding.server_make_targets:
utils.log_h2("server " + edition + " snap deploy")
ret = s3_upload(
utils.glob_path("*.tar.gz"),
"server/linux/snap/")
utils.set_summary("server " + edition + " snap deploy", ret)
else:
if "deb" in branding.server_make_targets:
utils.set_summary("server " + edition + " deb deploy", False)
if "rpm" in branding.server_make_targets:
utils.set_summary("server " + edition + " rpm deploy", False)
if "apt-rpm" in branding.server_make_targets:
utils.set_summary("server " + edition + " apt-rpm deploy", False)
if "tar" in branding.server_make_targets:
utils.set_summary("server " + edition + " snap deploy", False)
utils.set_cwd(common.workspace_dir) utils.set_cwd(common.workspace_dir)
return return